From 0729209117a4393e66d7f5b6d83083e2d7c0694c Mon Sep 17 00:00:00 2001 From: heavydemon21 Date: Wed, 8 Jan 2025 14:33:38 +0100 Subject: made my code work by adding it to the gamescene,main and config --- game/menus/MenusConfig.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'game/menus') diff --git a/game/menus/MenusConfig.h b/game/menus/MenusConfig.h index 6ec5689..968f8cc 100644 --- a/game/menus/MenusConfig.h +++ b/game/menus/MenusConfig.h @@ -6,7 +6,7 @@ static constexpr int STARTING_SORTING_IN_LAYER = 7; static constexpr const char * CAMERA_NAME = "camera"; //Scene names static constexpr const char * START_SCENE = "scene1"; -static constexpr const char * PREVIEW_SCENE = "scene1"; +static constexpr const char * PREVIEW_SCENE = "preview scene"; static constexpr const char * SHOP_SCENE = "shopmenu"; static constexpr const char * MAINMENU_SCENE = "mainmenu"; //button config -- cgit v1.2.3 From d989c1c51bf4d4fbb301493e73bc77e1873143b2 Mon Sep 17 00:00:00 2001 From: heavydemon21 Date: Wed, 8 Jan 2025 14:51:10 +0100 Subject: working zapper, missilies with scheduler --- game/CMakeLists.txt | 7 +------ game/menus/MenusConfig.h | 1 - game/prefab/ZapperPoolScript.cpp | 4 ---- game/scheduler/ObjectsScheduler.cpp | 6 ++++-- game/scheduler/ObjectsScheduler.h | 2 +- 5 files changed, 6 insertions(+), 14 deletions(-) (limited to 'game/menus') diff --git a/game/CMakeLists.txt b/game/CMakeLists.txt index dec161d..d1f49ed 100644 --- a/game/CMakeLists.txt +++ b/game/CMakeLists.txt @@ -10,7 +10,7 @@ add_subdirectory(../src crepe) add_executable(main) -add_executable(main PUBLIC +target_sources(main PUBLIC #background background/AquariumSubScene.cpp background/AquariumScript.cpp @@ -43,13 +43,8 @@ add_executable(main PUBLIC preview/NpcScript.cpp preview/PrevPlayerSubScene.cpp preview/PrevPlayerScript.cpp - main.cpp # scripts - -add_executable(main) - -target_sources(main PUBLIC GameScene.cpp MoveCameraManualyScript.cpp StartGameScript.cpp diff --git a/game/menus/MenusConfig.h b/game/menus/MenusConfig.h index 968f8cc..3e357a5 100644 --- a/game/menus/MenusConfig.h +++ b/game/menus/MenusConfig.h @@ -3,7 +3,6 @@ //generic menu config static constexpr int STARTING_SORTING_IN_LAYER = 7; -static constexpr const char * CAMERA_NAME = "camera"; //Scene names static constexpr const char * START_SCENE = "scene1"; static constexpr const char * PREVIEW_SCENE = "preview scene"; diff --git a/game/prefab/ZapperPoolScript.cpp b/game/prefab/ZapperPoolScript.cpp index ac6ce96..b9b2a76 100644 --- a/game/prefab/ZapperPoolScript.cpp +++ b/game/prefab/ZapperPoolScript.cpp @@ -30,10 +30,6 @@ void ZapperPoolScript::fixed_update(crepe::duration_t) { if (zapper.transform.position.x < threshold) zapper.set_active(false); } - - if (i-- > 0) return; - i = 200; - queue_event(); } void ZapperPoolScript::spawn_random() { diff --git a/game/scheduler/ObjectsScheduler.cpp b/game/scheduler/ObjectsScheduler.cpp index f354e70..21465e3 100644 --- a/game/scheduler/ObjectsScheduler.cpp +++ b/game/scheduler/ObjectsScheduler.cpp @@ -5,13 +5,13 @@ #include "../Random.h" #include "../missile/SpawnEvent.h" #include "api/Transform.h" +#include "prefab/ZapperPoolSubScene.h" #include using namespace crepe; - void ObjectsScheduler::preset_0() { trigger_event(MissileSpawnEvent {}); } void ObjectsScheduler::preset_1() { trigger_event(MissileSpawnEvent {}); } -void ObjectsScheduler::preset_2() {} +void ObjectsScheduler::preset_2() { trigger_event(CreateZapperEvent {}); } void ObjectsScheduler::preset_3() {} void ObjectsScheduler::preset_4() {} void ObjectsScheduler::boss_fight_1() { std::cout << "Boss fight" << std::endl; } @@ -19,6 +19,8 @@ void ObjectsScheduler::boss_fight_1() { std::cout << "Boss fight" << std::endl; void ObjectsScheduler::init() { this->obstacles.push_back([this]() { preset_0(); }); this->obstacles.push_back([this]() { preset_1(); }); + this->obstacles.push_back([this]() { preset_2(); }); + this->obstacles.push_back([this]() { boss_fight_1(); }); // subscribe to battlewonevent diff --git a/game/scheduler/ObjectsScheduler.h b/game/scheduler/ObjectsScheduler.h index d2d0f55..7bc9337 100644 --- a/game/scheduler/ObjectsScheduler.h +++ b/game/scheduler/ObjectsScheduler.h @@ -15,7 +15,7 @@ private: int last_boss_check = 0; int last_obstacle_check = 0; - int boss_fight_interval = 2000; + int boss_fight_interval = 2500; int obstacle_interval = 300; int start_offset = 1300; -- cgit v1.2.3 From 12cf43dd062f41af226e0ac038b2f2838391015f Mon Sep 17 00:00:00 2001 From: Loek Le Blansch Date: Wed, 8 Jan 2025 15:24:38 +0100 Subject: `make format` --- game/Config.h | 3 +-- game/Random.cpp | 5 +---- game/Random.h | 1 - game/menus/mainmenu/ITransitionScript.cpp | 2 +- game/menus/shop/ShopMenuScene.cpp | 3 +-- game/prefab/ZapperObject.cpp | 1 - game/prefab/ZapperPoolScript.cpp | 12 ++++++------ game/prefab/ZapperPoolScript.h | 1 - game/prefab/ZapperPoolSubScene.cpp | 5 ++--- game/prefab/ZapperPoolSubScene.h | 4 ++-- src/crepe/api/Vector2.hpp | 4 ++-- 11 files changed, 16 insertions(+), 25 deletions(-) (limited to 'game/menus') diff --git a/game/Config.h b/game/Config.h index 64f2828..580e9ec 100644 --- a/game/Config.h +++ b/game/Config.h @@ -58,5 +58,4 @@ static constexpr const char * PLAYER_NAME = "player"; static constexpr int PLAYER_SPEED = 7500; // In game units static constexpr int PLAYER_GRAVITY_SCALE = 60; // In game units -static constexpr const char* CAMERA_NAME = "camera"; - +static constexpr const char * CAMERA_NAME = "camera"; diff --git a/game/Random.cpp b/game/Random.cpp index 821ddc8..64cf1f3 100644 --- a/game/Random.cpp +++ b/game/Random.cpp @@ -26,7 +26,4 @@ unsigned Random::u(unsigned upper, unsigned lower) { return x + lower; } -bool Random::b() { - return rand() % 2; -} - +bool Random::b() { return rand() % 2; } diff --git a/game/Random.h b/game/Random.h index 4a1108a..94f98d2 100644 --- a/game/Random.h +++ b/game/Random.h @@ -8,4 +8,3 @@ public: static unsigned u(unsigned upper, unsigned lower = 0); static bool b(); }; - diff --git a/game/menus/mainmenu/ITransitionScript.cpp b/game/menus/mainmenu/ITransitionScript.cpp index 3e51a90..54b0875 100644 --- a/game/menus/mainmenu/ITransitionScript.cpp +++ b/game/menus/mainmenu/ITransitionScript.cpp @@ -1,8 +1,8 @@ #include "ITransitionScript.h" #include "MainMenuConfig.h" -#include "../MenusConfig.h" #include "../../Config.h" +#include "../MenusConfig.h" #include #include diff --git a/game/menus/shop/ShopMenuScene.cpp b/game/menus/shop/ShopMenuScene.cpp index f4d5e76..d4542ba 100644 --- a/game/menus/shop/ShopMenuScene.cpp +++ b/game/menus/shop/ShopMenuScene.cpp @@ -1,11 +1,10 @@ #include "ShopMenuScene.h" +#include "../../Config.h" #include "../BannerSubScene.h" #include "../ButtonSubScene.h" #include "../MenusConfig.h" -#include "../BannerSubScene.h" -#include "../../Config.h" #include #include diff --git a/game/prefab/ZapperObject.cpp b/game/prefab/ZapperObject.cpp index 6139d53..24bbbd2 100644 --- a/game/prefab/ZapperObject.cpp +++ b/game/prefab/ZapperObject.cpp @@ -116,4 +116,3 @@ void ZapperObject::set_active(bool active) { this->active = active; } - diff --git a/game/prefab/ZapperPoolScript.cpp b/game/prefab/ZapperPoolScript.cpp index 168637c..b832ddd 100644 --- a/game/prefab/ZapperPoolScript.cpp +++ b/game/prefab/ZapperPoolScript.cpp @@ -23,23 +23,24 @@ void ZapperPoolScript::init() { } void ZapperPoolScript::fixed_update(crepe::duration_t) { - float threshold = camera_transform->position.x - camera_camera->viewport_size.x / 2 - OFFSCREEN_MARGIN; + float threshold + = camera_transform->position.x - camera_camera->viewport_size.x / 2 - OFFSCREEN_MARGIN; for (ZapperObject & zapper : this->pool) { if (!zapper.active) continue; - if (zapper.transform.position.x < threshold) - zapper.set_active(false); + if (zapper.transform.position.x < threshold) zapper.set_active(false); } } void ZapperPoolScript::spawn_random() { OptionalRef zapper = this->get_next_zapper(); if (!zapper) return; // pool exhausted - + bool horizontal = Random::b(); vec2 pos; float rotation, length; - pos.x = camera_transform->position.x + camera_camera->viewport_size.x / 2 + OFFSCREEN_MARGIN; + pos.x + = camera_transform->position.x + camera_camera->viewport_size.x / 2 + OFFSCREEN_MARGIN; if (horizontal) { rotation = 90; @@ -67,4 +68,3 @@ OptionalRef ZapperPoolScript::get_next_zapper() { } return {}; } - diff --git a/game/prefab/ZapperPoolScript.h b/game/prefab/ZapperPoolScript.h index dd60071..2208c80 100644 --- a/game/prefab/ZapperPoolScript.h +++ b/game/prefab/ZapperPoolScript.h @@ -31,4 +31,3 @@ private: static constexpr float MAX_LENGTH = 400; static constexpr float OFFSCREEN_MARGIN = 50 + MAX_LENGTH; }; - diff --git a/game/prefab/ZapperPoolSubScene.cpp b/game/prefab/ZapperPoolSubScene.cpp index e341090..8422b8c 100644 --- a/game/prefab/ZapperPoolSubScene.cpp +++ b/game/prefab/ZapperPoolSubScene.cpp @@ -1,13 +1,13 @@ #include -#include "ZapperPoolSubScene.h" #include "ZapperPoolScript.h" +#include "ZapperPoolSubScene.h" using namespace crepe; using namespace std; ZapperPoolSubScene::ZapperPoolSubScene(Scene & scene) - : controller { scene.new_object("controller") } { + : controller {scene.new_object("controller")} { Log::logf(Log::DEBUG, "Building zapper pool..."); vector pool; @@ -16,4 +16,3 @@ ZapperPoolSubScene::ZapperPoolSubScene(Scene & scene) BehaviorScript & behavior = this->controller.add_component(); behavior.set_script(std::move(pool)); } - diff --git a/game/prefab/ZapperPoolSubScene.h b/game/prefab/ZapperPoolSubScene.h index f930e22..6f6e297 100644 --- a/game/prefab/ZapperPoolSubScene.h +++ b/game/prefab/ZapperPoolSubScene.h @@ -1,8 +1,8 @@ #pragma once -#include -#include #include +#include +#include #include class CreateZapperEvent : public crepe::Event {}; diff --git a/src/crepe/api/Vector2.hpp b/src/crepe/api/Vector2.hpp index e2f96ed..30441d2 100644 --- a/src/crepe/api/Vector2.hpp +++ b/src/crepe/api/Vector2.hpp @@ -180,7 +180,7 @@ Vector2 Vector2::rotate(float deg) const { } // namespace crepe template -std::format_context::iterator std::formatter>::format(crepe::Vector2 vec, format_context & ctx) const { +std::format_context::iterator +std::formatter>::format(crepe::Vector2 vec, format_context & ctx) const { return formatter::format(std::format("{{{}, {}}}", vec.x, vec.y), ctx); } - -- cgit v1.2.3 From bb976ed881a989b8b2cec90c905d906d9b652a9d Mon Sep 17 00:00:00 2001 From: Loek Le Blansch Date: Wed, 8 Jan 2025 16:20:10 +0100 Subject: `make format` --- game/GameScene.cpp | 2 +- game/enemy/EnemyBulletSubScene.cpp | 2 +- game/enemy/EnemyScript.cpp | 7 +++---- game/enemy/EnemySubScene.cpp | 5 ++--- game/menus/shop/ShopMenuScene.cpp | 1 - game/player/PlayerBulletSubScene.cpp | 2 +- game/scheduler/ObjectsScheduler.cpp | 12 +++++++----- game/scheduler/ObjectsScheduler.h | 6 +----- game/workers/CollisionScript.cpp | 3 ++- 9 files changed, 18 insertions(+), 22 deletions(-) (limited to 'game/menus') diff --git a/game/GameScene.cpp b/game/GameScene.cpp index 34b0fcb..3ae64fb 100644 --- a/game/GameScene.cpp +++ b/game/GameScene.cpp @@ -20,8 +20,8 @@ #include "player/PlayerBulletPool.h" #include "player/PlayerBulletSubScene.h" #include "player/PlayerSubScene.h" -#include "scheduler/ObjectsScheduler.h" #include "prefab/ZapperPoolSubScene.h" +#include "scheduler/ObjectsScheduler.h" #include "workers/WorkersSubScene.h" #include diff --git a/game/enemy/EnemyBulletSubScene.cpp b/game/enemy/EnemyBulletSubScene.cpp index 5c31f1d..ad2ca9d 100644 --- a/game/enemy/EnemyBulletSubScene.cpp +++ b/game/enemy/EnemyBulletSubScene.cpp @@ -30,7 +30,7 @@ int EnemyBulletSubScene::create(Scene & scn, int counter) { .linear_velocity = vec2 {-250, 0}, .kinematic_collision = false, - .collision_layers = {COLL_LAY_MISSILE,COLL_LAY_ZAPPER}, + .collision_layers = {COLL_LAY_MISSILE, COLL_LAY_ZAPPER}, .collision_layer = COLL_LAY_BULLET }); bullet_body.active = false; diff --git a/game/enemy/EnemyScript.cpp b/game/enemy/EnemyScript.cpp index 8cf8b80..5c03539 100644 --- a/game/enemy/EnemyScript.cpp +++ b/game/enemy/EnemyScript.cpp @@ -4,12 +4,11 @@ #include "EnemyConfig.h" #include #include +#include #include #include #include #include -#include -#include #include #include using namespace crepe; @@ -86,7 +85,7 @@ bool EnemyScript::on_collide(const CollisionEvent & e) { if (e.info.other.metadata.tag == "player_bullet") { this->despawn_enemy(); } - Animator& body_animator = this->get_components().front(); + Animator & body_animator = this->get_components().front(); body_animator.data.col = 2; //body_animator.play(); BehaviorScript & enemy_script = this->get_component(); @@ -115,7 +114,7 @@ void EnemyScript::shoot(const vec2 & location, float angle) { = this->get_components_by_id(bullet_pos.game_object_id).front(); bullet_collider.active = true; bullet_body.active = true; - AudioSource& audio = this->get_component(); + AudioSource & audio = this->get_component(); audio.play(); return; } diff --git a/game/enemy/EnemySubScene.cpp b/game/enemy/EnemySubScene.cpp index 8316db9..607b9a9 100644 --- a/game/enemy/EnemySubScene.cpp +++ b/game/enemy/EnemySubScene.cpp @@ -2,13 +2,13 @@ #include #include +#include #include #include #include #include #include #include -#include #include #include "../Config.h" @@ -91,8 +91,7 @@ int EnemySubScene::create(Scene & scn, int enemy_counter) { .looping = true, } ); - enemy.add_component(Asset("asset/sfx/bike_gun_2.ogg")).volume - = 0.1; + enemy.add_component(Asset("asset/sfx/bike_gun_2.ogg")).volume = 0.1; AI & ai_component = enemy.add_component(3000); ai_component.path_follow_on(); BehaviorScript & enemy_script diff --git a/game/menus/shop/ShopMenuScene.cpp b/game/menus/shop/ShopMenuScene.cpp index 5ada0d3..d1ea81d 100644 --- a/game/menus/shop/ShopMenuScene.cpp +++ b/game/menus/shop/ShopMenuScene.cpp @@ -6,7 +6,6 @@ #include "../ButtonSubScene.h" #include "../MenusConfig.h" #include "types.h" -#include "../../Config.h" #include #include diff --git a/game/player/PlayerBulletSubScene.cpp b/game/player/PlayerBulletSubScene.cpp index 2d237de..795747b 100644 --- a/game/player/PlayerBulletSubScene.cpp +++ b/game/player/PlayerBulletSubScene.cpp @@ -27,7 +27,7 @@ int PlayerBulletSubScene::create(Scene & scn, int counter) { .linear_velocity = vec2 {400, 0}, .angular_velocity = 10, .kinematic_collision = false, - .collision_layers = {COLL_LAY_ENEMY,COLL_LAY_ZAPPER}, + .collision_layers = {COLL_LAY_ENEMY, COLL_LAY_ZAPPER}, .collision_layer = COLL_LAY_PLAYER_BULLET, diff --git a/game/scheduler/ObjectsScheduler.cpp b/game/scheduler/ObjectsScheduler.cpp index 02d84c1..fca8fa2 100644 --- a/game/scheduler/ObjectsScheduler.cpp +++ b/game/scheduler/ObjectsScheduler.cpp @@ -2,8 +2,8 @@ #include "ObjectsScheduler.h" -#include "../Random.h" #include "../Config.h" +#include "../Random.h" #include "../missile/SpawnEvent.h" #include "api/Rigidbody.h" #include "api/Transform.h" @@ -16,15 +16,17 @@ void ObjectsScheduler::preset_1() { trigger_event(MissileSpaw void ObjectsScheduler::preset_2() { trigger_event(CreateZapperEvent {}); } void ObjectsScheduler::preset_3() {} void ObjectsScheduler::preset_4() {} -void ObjectsScheduler::boss_fight_1() { +void ObjectsScheduler::boss_fight_1() { this->get_components_by_name("camera").front().get().data.linear_velocity.x = 0; this->get_components_by_name("player").front().get().data.linear_velocity.x = 0; - this->trigger_event(BattleStartEvent{.num_enemies = 2}); + this->trigger_event(BattleStartEvent {.num_enemies = 2}); } bool ObjectsScheduler::boss_fight_1_event() { - this->get_components_by_name("camera").front().get().data.linear_velocity.x = PLAYER_SPEED * 0.02; - this->get_components_by_name("player").front().get().data.linear_velocity.x = PLAYER_SPEED * 0.02; + this->get_components_by_name("camera").front().get().data.linear_velocity.x + = PLAYER_SPEED * 0.02; + this->get_components_by_name("player").front().get().data.linear_velocity.x + = PLAYER_SPEED * 0.02; return false; } diff --git a/game/scheduler/ObjectsScheduler.h b/game/scheduler/ObjectsScheduler.h index 56d72cb..bd0701b 100644 --- a/game/scheduler/ObjectsScheduler.h +++ b/game/scheduler/ObjectsScheduler.h @@ -1,17 +1,14 @@ #pragma once - - #include "api/Script.h" #include #include - class ObjectsScheduler : public crepe::Script { private: std::vector> obstacles; - + int last_boss_check = 0; int last_obstacle_check = 0; @@ -32,5 +29,4 @@ private: public: void init(); void fixed_update(crepe::duration_t dt); - }; diff --git a/game/workers/CollisionScript.cpp b/game/workers/CollisionScript.cpp index 625044d..372bfec 100644 --- a/game/workers/CollisionScript.cpp +++ b/game/workers/CollisionScript.cpp @@ -49,7 +49,8 @@ bool CollisionScript::on_collision(const CollisionEvent & ev) { bs_panic.active = false; return false; - } else if (ev.info.other.metadata.tag == "missile" || ev.info.other.metadata.tag == "enemy_bullet") { + } else if (ev.info.other.metadata.tag == "missile" + || ev.info.other.metadata.tag == "enemy_bullet") { for (Animator & anim : animators) { anim.active = false; anim.set_anim(3); -- cgit v1.2.3