Exploring raycasters and possibly make a little "doom like" game based on it.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
raycaster/main.cpp

35 lines
719 B

#include "gui_fsm.hpp"
#include "textures.hpp"
#include "sound.hpp"
int main(int argc, char* argv[]) {
textures::init();
sound::init();
sound::mute(true);
gui::FSM main;
main.event(gui::Event::STARTED);
if(argc > 1 && argv[1][0] == 't') {
main.start_autowalk(0.1);
}
while(main.active()) {
main.render();
// ZED: need to sort out how to deal with this in the FSM
if(main.in_state(gui::State::IDLE)
|| main.in_state(gui::State::NEXT_LEVEL)
|| main.in_state(gui::State::MAPPING)
|| main.in_state(gui::State::IN_COMBAT))
{
main.keyboard_mouse();
} else{
main.event(gui::Event::TICK);
}
main.handle_world_events();
}
return 0;
}