aboutsummaryrefslogtreecommitdiff
path: root/game/GameScene.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'game/GameScene.cpp')
-rw-r--r--game/GameScene.cpp29
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"; }