diff options
Diffstat (limited to 'game/GameScene.cpp')
-rw-r--r-- | game/GameScene.cpp | 29 |
1 files changed, 22 insertions, 7 deletions
diff --git a/game/GameScene.cpp b/game/GameScene.cpp index 9376eab..f09272d 100644 --- a/game/GameScene.cpp +++ b/game/GameScene.cpp @@ -11,6 +11,12 @@ #include "hud/SpeedScript.h" #include "menus/endgame/EndGameSubScene.h" #include "player/PlayerSubScene.h" +#include "player/PlayerBulletPool.h" +#include "player/PlayerBulletSubScene.h" +#include "enemy/EnemyPool.h" +#include "enemy/EnemySubScene.h" +#include "enemy/EnemyBulletPool.h" +#include "enemy/BattleScript.h" #include "workers/WorkersSubScene.h" #include <cmath> @@ -23,6 +29,7 @@ #include <crepe/api/Color.h> #include <crepe/api/Event.h> #include <crepe/api/GameObject.h> +#include <crepe/api/AI.h> #include <crepe/api/ParticleEmitter.h> #include <crepe/api/Rigidbody.h> #include <crepe/api/Script.h> @@ -37,7 +44,7 @@ void GameScene::load_scene() { BackgroundSubScene background(*this); GameObject camera = new_object("camera", "camera", vec2(650, 0)); - camera.add_component<Camera>( + Camera& camera_cam = camera.add_component<Camera>( ivec2(990, 720), vec2(VIEWPORT_X, VIEWPORT_Y), Camera::Data { .bg_color = Color::RED, @@ -47,9 +54,15 @@ void GameScene::load_scene() { camera.add_component<BehaviorScript>().set_script<CoinSystemScript>(); camera.add_component<BehaviorScript>().set_script<HudScript>(); camera.add_component<BehaviorScript>().set_script<SpeedScript>(); - + camera.add_component<BehaviorScript>().set_script<BattleScript>(); camera.add_component<Rigidbody>(Rigidbody::Data {}); - + AI& enemy_path_1 = camera.add_component<AI>(400); + enemy_path_1.make_oval_path(100, 100, camera.transform.position, 1.5708, true); + AI& enemy_path_2 = camera.add_component<AI>(400); + enemy_path_2.make_oval_path(100, 100, {0, 0}, 1.5708, true); + AI& enemy_path_3 = camera.add_component<AI>(400); + enemy_path_3.make_oval_path(100, 100, {0, 0}, 1.5708, true); + // camer.add_component<AI> PlayerSubScene player(*this); WorkersSubScene workers(*this); @@ -84,7 +97,12 @@ void GameScene::load_scene() { //create coin pool CoinPoolSubScene coin_system; coin_system.create_coins(*this); - + EnemyBulletPool enemy_bullet_pool; + enemy_bullet_pool.create_bullets(*this); + PlayerBulletPool player_bullet_pool; + player_bullet_pool.create_bullets(*this); + EnemyPool enemy_pool; + enemy_pool.create_enemies(*this); HudSubScene hud; hud.create(*this); GameObject background_music = new_object("background_music", "audio", vec2(0, 0)); @@ -144,9 +162,6 @@ void GameScene::load_scene() { .collision_layer = COLL_LAY_MISSILE, }); missile.add_component<BoxCollider>(vec2(100, 100)); - - EndGameSubScene endgamewindow; - endgamewindow.create(*this); } string GameScene::get_name() const { return "scene1"; } |