| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- #include "StateMap.h"
- #include "Graphics.h"
- #include "input/Input.h"
- #include "render/Text.h"
- #include "piaf/Archive.h"
- using WalrusRPG::States::StateMap;
- using namespace WalrusRPG;
- using namespace WalrusRPG::Graphics;
- using WalrusRPG::Utils::Rect;
- using WalrusRPG::PIAF::Archive;
- using WalrusRPG::PIAF::File;
- using WalrusRPG::Graphics::Texture;
- using namespace WalrusRPG::Input;
- using WalrusRPG::Input::Key;
- using WalrusRPG::Graphics::Font;
- using WalrusRPG::Textbox;
- namespace
- {
- void print_debug_camera_data(const Camera &camera, const Font &fnt)
- {
- fnt.draw_format(240, 1, Black, "CAM : X : %d Y: %d", camera.get_x(),
- camera.get_y());
- fnt.draw_format(240, 0, "CAM : X : %d Y: %d", camera.get_x(), camera.get_y());
- }
- void print_debug_map_data(const Map &map, const Font &fnt)
- {
- fnt.draw_format(240, 9, Black, "MAP : W: %d, H:%d", map.get_width(),
- map.get_height());
- fnt.draw_format(240, 8, "MAP : W: %d, H:%d", map.get_width(), map.get_height());
- }
- }
- // TODO : We definitely need a Resource Manager
- StateMap::StateMap(int x, int y, Map &map)
- : started(false), camera(x, y), map(map), data("data/out.wrf"),
- tex_haeccity(data.get("t_haecci")), txt(tex_haeccity, data.get("f_haecci")),
- box(txt)
- {
- box.set_text((
- char *) "Hello world! I am "
- "\xFF\x01\xf0\x00\x00Howard\xFF\x01\xff\xff\x00"
- ".\n"
- "\xFF\x81\x78\x00\x00"
- "\xFF\x81\x0a\x00\x00"
- "\xFF\x01\xf0\x00\x00"
- "Howard"
- "\xFF\x01\xff\xff\x00"
- " the Psyduck!\n"
- "How goes? I'm fine, headache-y but fine. Heh, it's normal, don't worry "
- "for me.\n"
- "I wonder... Heh, Let's see if it works correctly, shall we?");
- }
- void StateMap::update(unsigned dt)
- {
- unsigned t = dt * (key_down(K_B) ? 16 : 1);
- if (!started)
- {
- if (key_down(K_A))
- started = true;
- }
- else
- box.update(t);
- camera.update(t);
- }
- void StateMap::render(unsigned dt)
- {
- map.render(camera, dt);
- print_debug_camera_data(camera, txt);
- print_debug_map_data(map, txt);
- if (!started)
- return;
- box.render(dt);
- }
|