Loading Falcon_9.cpp +100 −2 Original line number Diff line number Diff line Loading @@ -15,6 +15,12 @@ Falcon_9::Falcon_9() abort(); } left_laser = false; up_laser = false; right_laser = false; down_laser = false; laser_bool = false; right_or_left_laser = true; sprite_cabine.setPosition(0, 0); sprite_cabine.setTexture(cabine_texture); Loading @@ -22,10 +28,11 @@ Falcon_9::Falcon_9() sprite_cabine.setScale(1, 1.05); sprite_cabine.setPosition(0, -40); scope_pos_x = 640; scope_pos_y = 360; sprite_scope.setTexture(scope_texture); sprite_scope.setPosition(640, 360); sprite_scope.setPosition(scope_pos_x, scope_pos_y); speed = 5; Loading @@ -42,3 +49,94 @@ int Falcon_9::get_speed() { return speed; } void Falcon_9::lasers(sf::RenderWindow &win) { sf::VertexArray laser1(sf::Quads,4); sf::VertexArray laser2(sf::Triangles,3); laser1[0].position = sf::Vector2f (339,541); laser1[1].position = sf::Vector2f (433,541); laser1[2].position = sf::Vector2f (444,575); laser1[3].position = sf::Vector2f (scope_pos_x+40,scope_pos_y+40); laser1[0].color = sf::Color::Green; laser1[1].color = sf::Color::Green; laser1[2].color = sf::Color::Green; laser1[3].color = sf::Color::Red; laser2[0].position = sf::Vector2f (945,515); laser2[1].position = sf::Vector2f (950,510); laser2[2].position = sf::Vector2f (scope_pos_x + 40,scope_pos_y + 40); laser2[0].color = sf::Color::Red; laser2[1].color = sf::Color::Red; laser2[2].color = sf::Color(137, 19, 145); if (laser_bool) { if (right_or_left_laser) { win.draw(laser1); } else { win.draw(laser2); } (right_or_left_laser)? right_or_left_laser = false : right_or_left_laser = true; } } void Falcon_9::set_laser_pos() { if (left_laser) scope_pos_x -= 5; if (up_laser) scope_pos_y -= 5; if (right_laser) scope_pos_x += 5; if (down_laser) scope_pos_y += 5; else return_laser(); sprite_scope.setPosition(scope_pos_x, scope_pos_y); } void Falcon_9::key_press(sf::Event &e, bool set) { int key = e.key.code; std::cout << key; switch (key) { case 71: left_laser = set; break; case 73: up_laser = set; break; case 72: right_laser = set; break; case 74: down_laser = set; break; case 57: laser_bool = set; } } void Falcon_9::return_laser() { if (!(left_laser || up_laser || right_laser || down_laser)) { if (scope_pos_x > 640) scope_pos_x -= 3; if (scope_pos_x < 640) scope_pos_x += 3; if (scope_pos_y > 360) scope_pos_y -= 3; if (scope_pos_y < 360) scope_pos_y += 3; } } Falcon_9.h +14 −0 Original line number Diff line number Diff line Loading @@ -9,10 +9,24 @@ class Falcon_9 { sf::Texture cabine_texture; sf::Sprite sprite_cabine; sf::Sprite sprite_scope; sf::VertexArray laser; bool left_laser; bool up_laser; bool right_laser; bool down_laser; bool laser_bool; bool right_or_left_laser; int scope_pos_x; int scope_pos_y; public: Falcon_9(); void draw_falcon(sf::RenderWindow &win) const; void lasers(sf::RenderWindow &win); void key_press(sf::Event &e, bool set); void set_laser_pos(); void return_laser(); int get_speed(); }; Loading IMG/moon.png 0 → 100644 +16.1 KiB Loading image diff... Menu.cpp +12 −2 Original line number Diff line number Diff line Loading @@ -19,10 +19,11 @@ Menu::Menu() void Menu::set_state(int key) { //36 - escape if (key == 36) if (key == 36 && start_screen == false) { current_state = last_state; state_int = 0; highlight_pos_y = 179; start_screen = true; } else Loading @@ -41,7 +42,9 @@ void Menu::set_state(int key) highlight_pos_y = 139; } else { ++state_int; } highlight_pos_y += 40; break; case 73: Loading @@ -51,12 +54,19 @@ void Menu::set_state(int key) highlight_pos_y = 299; } else { --state_int; } highlight_pos_y -= 40; break; case 58: last_state = current_state; if (state_int == 0) current_state = RUNNING; else current_state = static_cast<GameState>(state_int); start_screen = false; break; } Loading Menu.h +1 −1 Original line number Diff line number Diff line Loading @@ -2,7 +2,7 @@ #define SPACETOUR__MENU_H enum GameState : int {START= 0, SETTINGS = 1, HOW_TO_PLAY = 2, FINISHED = 333}; enum GameState : int {START= 0, SETTINGS = 1, HOW_TO_PLAY = 2, RUNNING = 332, FINISHED = 333}; class Menu { Loading Loading
Falcon_9.cpp +100 −2 Original line number Diff line number Diff line Loading @@ -15,6 +15,12 @@ Falcon_9::Falcon_9() abort(); } left_laser = false; up_laser = false; right_laser = false; down_laser = false; laser_bool = false; right_or_left_laser = true; sprite_cabine.setPosition(0, 0); sprite_cabine.setTexture(cabine_texture); Loading @@ -22,10 +28,11 @@ Falcon_9::Falcon_9() sprite_cabine.setScale(1, 1.05); sprite_cabine.setPosition(0, -40); scope_pos_x = 640; scope_pos_y = 360; sprite_scope.setTexture(scope_texture); sprite_scope.setPosition(640, 360); sprite_scope.setPosition(scope_pos_x, scope_pos_y); speed = 5; Loading @@ -42,3 +49,94 @@ int Falcon_9::get_speed() { return speed; } void Falcon_9::lasers(sf::RenderWindow &win) { sf::VertexArray laser1(sf::Quads,4); sf::VertexArray laser2(sf::Triangles,3); laser1[0].position = sf::Vector2f (339,541); laser1[1].position = sf::Vector2f (433,541); laser1[2].position = sf::Vector2f (444,575); laser1[3].position = sf::Vector2f (scope_pos_x+40,scope_pos_y+40); laser1[0].color = sf::Color::Green; laser1[1].color = sf::Color::Green; laser1[2].color = sf::Color::Green; laser1[3].color = sf::Color::Red; laser2[0].position = sf::Vector2f (945,515); laser2[1].position = sf::Vector2f (950,510); laser2[2].position = sf::Vector2f (scope_pos_x + 40,scope_pos_y + 40); laser2[0].color = sf::Color::Red; laser2[1].color = sf::Color::Red; laser2[2].color = sf::Color(137, 19, 145); if (laser_bool) { if (right_or_left_laser) { win.draw(laser1); } else { win.draw(laser2); } (right_or_left_laser)? right_or_left_laser = false : right_or_left_laser = true; } } void Falcon_9::set_laser_pos() { if (left_laser) scope_pos_x -= 5; if (up_laser) scope_pos_y -= 5; if (right_laser) scope_pos_x += 5; if (down_laser) scope_pos_y += 5; else return_laser(); sprite_scope.setPosition(scope_pos_x, scope_pos_y); } void Falcon_9::key_press(sf::Event &e, bool set) { int key = e.key.code; std::cout << key; switch (key) { case 71: left_laser = set; break; case 73: up_laser = set; break; case 72: right_laser = set; break; case 74: down_laser = set; break; case 57: laser_bool = set; } } void Falcon_9::return_laser() { if (!(left_laser || up_laser || right_laser || down_laser)) { if (scope_pos_x > 640) scope_pos_x -= 3; if (scope_pos_x < 640) scope_pos_x += 3; if (scope_pos_y > 360) scope_pos_y -= 3; if (scope_pos_y < 360) scope_pos_y += 3; } }
Falcon_9.h +14 −0 Original line number Diff line number Diff line Loading @@ -9,10 +9,24 @@ class Falcon_9 { sf::Texture cabine_texture; sf::Sprite sprite_cabine; sf::Sprite sprite_scope; sf::VertexArray laser; bool left_laser; bool up_laser; bool right_laser; bool down_laser; bool laser_bool; bool right_or_left_laser; int scope_pos_x; int scope_pos_y; public: Falcon_9(); void draw_falcon(sf::RenderWindow &win) const; void lasers(sf::RenderWindow &win); void key_press(sf::Event &e, bool set); void set_laser_pos(); void return_laser(); int get_speed(); }; Loading
Menu.cpp +12 −2 Original line number Diff line number Diff line Loading @@ -19,10 +19,11 @@ Menu::Menu() void Menu::set_state(int key) { //36 - escape if (key == 36) if (key == 36 && start_screen == false) { current_state = last_state; state_int = 0; highlight_pos_y = 179; start_screen = true; } else Loading @@ -41,7 +42,9 @@ void Menu::set_state(int key) highlight_pos_y = 139; } else { ++state_int; } highlight_pos_y += 40; break; case 73: Loading @@ -51,12 +54,19 @@ void Menu::set_state(int key) highlight_pos_y = 299; } else { --state_int; } highlight_pos_y -= 40; break; case 58: last_state = current_state; if (state_int == 0) current_state = RUNNING; else current_state = static_cast<GameState>(state_int); start_screen = false; break; } Loading
Menu.h +1 −1 Original line number Diff line number Diff line Loading @@ -2,7 +2,7 @@ #define SPACETOUR__MENU_H enum GameState : int {START= 0, SETTINGS = 1, HOW_TO_PLAY = 2, FINISHED = 333}; enum GameState : int {START= 0, SETTINGS = 1, HOW_TO_PLAY = 2, RUNNING = 332, FINISHED = 333}; class Menu { Loading