diff options
author | WBoerenkamps <wrj.boerenkamps@student.avans.nl> | 2025-01-08 13:52:43 +0100 |
---|---|---|
committer | WBoerenkamps <wrj.boerenkamps@student.avans.nl> | 2025-01-08 13:52:43 +0100 |
commit | fcec9d7598f0808d4081120a9cb2036bdea59737 (patch) | |
tree | 4963d2f791a4c3ba27d357ad38345094a8e65fc4 /game/player | |
parent | 1413beea3b506b15b9f0080cec29c745d1ef88da (diff) |
make format
Diffstat (limited to 'game/player')
-rw-r--r-- | game/player/PlayerBulletPool.cpp | 2 | ||||
-rw-r--r-- | game/player/PlayerBulletPool.h | 1 | ||||
-rw-r--r-- | game/player/PlayerBulletScript.cpp | 30 | ||||
-rw-r--r-- | game/player/PlayerBulletScript.h | 12 | ||||
-rw-r--r-- | game/player/PlayerBulletSubScene.cpp | 41 | ||||
-rw-r--r-- | game/player/PlayerBulletSubScene.h | 2 | ||||
-rw-r--r-- | game/player/PlayerScript.cpp | 32 | ||||
-rw-r--r-- | game/player/PlayerScript.h | 7 | ||||
-rw-r--r-- | game/player/PlayerSubScene.cpp | 3 |
9 files changed, 70 insertions, 60 deletions
diff --git a/game/player/PlayerBulletPool.cpp b/game/player/PlayerBulletPool.cpp index 4cd115e..5285ec8 100644 --- a/game/player/PlayerBulletPool.cpp +++ b/game/player/PlayerBulletPool.cpp @@ -1,5 +1,5 @@ -#include "PlayerBulletSubScene.h" #include "PlayerBulletPool.h" +#include "PlayerBulletSubScene.h" using namespace std; void PlayerBulletPool::create_bullets(crepe::Scene & scn) { diff --git a/game/player/PlayerBulletPool.h b/game/player/PlayerBulletPool.h index a8ba2fb..9618d54 100644 --- a/game/player/PlayerBulletPool.h +++ b/game/player/PlayerBulletPool.h @@ -5,6 +5,7 @@ class PlayerBulletPool { public: void create_bullets(crepe::Scene & scn); + private: static constexpr int MAXIMUM_AMOUNT = 20; }; diff --git a/game/player/PlayerBulletScript.cpp b/game/player/PlayerBulletScript.cpp index 6beb9f1..a76b7eb 100644 --- a/game/player/PlayerBulletScript.cpp +++ b/game/player/PlayerBulletScript.cpp @@ -1,41 +1,41 @@ #include <crepe/api/Camera.h> -#include <crepe/api/Rigidbody.h> #include <crepe/api/Metadata.h> +#include <crepe/api/Rigidbody.h> #include "PlayerBulletScript.h" using namespace crepe; using namespace std; -void PlayerBulletScript::init(){ - this->subscribe<CollisionEvent>([this](const CollisionEvent& e) -> bool { +void PlayerBulletScript::init() { + this->subscribe<CollisionEvent>([this](const CollisionEvent & e) -> bool { return this->on_collide(e); }); } -void PlayerBulletScript::fixed_update(crepe::duration_t dt){ - Transform& transform = this->get_component<Transform>(); - Camera& camera = this->get_components_by_name<Camera>("camera").front(); - Transform& cam_transform = this->get_components_by_name<Transform>("camera").front(); - Rigidbody& bullet_body = this->get_component<Rigidbody>(); +void PlayerBulletScript::fixed_update(crepe::duration_t dt) { + Transform & transform = this->get_component<Transform>(); + Camera & camera = this->get_components_by_name<Camera>("camera").front(); + Transform & cam_transform = this->get_components_by_name<Transform>("camera").front(); + Rigidbody & bullet_body = this->get_component<Rigidbody>(); transform.rotation += bullet_body.data.angular_velocity; transform.position += bullet_body.data.linear_velocity * dt.count(); vec2 half_screen = camera.viewport_size / 2; float despawn_location = cam_transform.position.x + half_screen.x + 50; - if(transform.position.x > despawn_location){ + if (transform.position.x > despawn_location) { this->despawn_bullet(); } } -void PlayerBulletScript::despawn_bullet(){ - Transform& transform = this->get_component<Transform>(); - Rigidbody& bullet_body = this->get_component<Rigidbody>(); +void PlayerBulletScript::despawn_bullet() { + Transform & transform = this->get_component<Transform>(); + Rigidbody & bullet_body = this->get_component<Rigidbody>(); bullet_body.active = false; - BehaviorScript& bullet_script = this->get_component<BehaviorScript>(); + BehaviorScript & bullet_script = this->get_component<BehaviorScript>(); bullet_script.active = false; - transform.position = {0,-850}; + transform.position = {0, -850}; } -bool PlayerBulletScript::on_collide(const CollisionEvent& e){ +bool PlayerBulletScript::on_collide(const CollisionEvent & e) { this->despawn_bullet(); return false; } diff --git a/game/player/PlayerBulletScript.h b/game/player/PlayerBulletScript.h index 559b815..0637790 100644 --- a/game/player/PlayerBulletScript.h +++ b/game/player/PlayerBulletScript.h @@ -2,10 +2,10 @@ #include <crepe/api/BehaviorScript.h> #include <crepe/api/Script.h> -class PlayerBulletScript : public crepe::Script{ - public: - void init() override; - void fixed_update(crepe::duration_t dt) override; - bool on_collide(const crepe::CollisionEvent& e); - void despawn_bullet(); +class PlayerBulletScript : public crepe::Script { +public: + void init() override; + void fixed_update(crepe::duration_t dt) override; + bool on_collide(const crepe::CollisionEvent & e); + void despawn_bullet(); }; diff --git a/game/player/PlayerBulletSubScene.cpp b/game/player/PlayerBulletSubScene.cpp index 96c6b9a..62bcf3e 100644 --- a/game/player/PlayerBulletSubScene.cpp +++ b/game/player/PlayerBulletSubScene.cpp @@ -1,51 +1,52 @@ #include <string> -#include <crepe/api/GameObject.h> -#include <crepe/api/Scene.h> +#include "../Config.h" +#include <crepe/api/AI.h> +#include <crepe/api/Animator.h> +#include <crepe/api/BehaviorScript.h> #include <crepe/api/BoxCollider.h> #include <crepe/api/CircleCollider.h> +#include <crepe/api/GameObject.h> #include <crepe/api/Rigidbody.h> -#include <crepe/api/BehaviorScript.h> -#include <crepe/api/Animator.h> +#include <crepe/api/Scene.h> #include <crepe/api/Sprite.h> -#include <crepe/api/AI.h> -#include "../Config.h" - +#include "PlayerBulletScript.h" #include "PlayerBulletSubScene.h" #include "PlayerScript.h" -#include "PlayerBulletScript.h" using namespace crepe; using namespace std; -int PlayerBulletSubScene::create(Scene & scn,int counter){ +int PlayerBulletSubScene::create(Scene & scn, int counter) { string unique_name = "player_bullet_" + to_string(counter++); - GameObject player_bullet = scn.new_object(unique_name.c_str(),"player_bullet",vec2{0,-850},0,1); - - Rigidbody& player_bullet_body = player_bullet.add_component<Rigidbody>(Rigidbody::Data { + GameObject player_bullet + = scn.new_object(unique_name.c_str(), "player_bullet", vec2 {0, -850}, 0, 1); + + Rigidbody & player_bullet_body = player_bullet.add_component<Rigidbody>(Rigidbody::Data { .gravity_scale = 0, .body_type = Rigidbody::BodyType::KINEMATIC, - .linear_velocity = vec2{300,0}, + .linear_velocity = vec2 {300, 0}, .angular_velocity = 150, .kinematic_collision = false, .collision_layers = {COLL_LAY_ENEMY}, - + .collision_layer = COLL_LAY_PLAYER_BULLET, - - + }); player_bullet_body.active = false; - BoxCollider& player_bullet_collider = player_bullet.add_component<BoxCollider>(vec2(30, 30)); + BoxCollider & player_bullet_collider + = player_bullet.add_component<BoxCollider>(vec2(30, 30)); Asset player_bullet_asset {"asset/other_effects/crepe.png"}; Sprite & player_bullet_sprite = player_bullet.add_component<Sprite>( player_bullet_asset, Sprite::Data { - .flip = {true,false}, + .flip = {true, false}, .sorting_in_layer = SORT_IN_LAY_OBSTACLES, .order_in_layer = 1, - .size = vec2(30,0), + .size = vec2(30, 0), } ); - player_bullet.add_component<BehaviorScript>().set_script<PlayerBulletScript>().active = false; + player_bullet.add_component<BehaviorScript>().set_script<PlayerBulletScript>().active + = false; return counter; } diff --git a/game/player/PlayerBulletSubScene.h b/game/player/PlayerBulletSubScene.h index 425d554..72eda62 100644 --- a/game/player/PlayerBulletSubScene.h +++ b/game/player/PlayerBulletSubScene.h @@ -6,5 +6,5 @@ class Scene; class PlayerBulletSubScene { public: - int create(crepe::Scene & scn,int counter); + int create(crepe::Scene & scn, int counter); }; diff --git a/game/player/PlayerScript.cpp b/game/player/PlayerScript.cpp index 7bc5e55..d32da0b 100644 --- a/game/player/PlayerScript.cpp +++ b/game/player/PlayerScript.cpp @@ -4,9 +4,9 @@ #include "../enemy/BattleScript.h" #include <crepe/api/Animator.h> #include <crepe/api/AudioSource.h> +#include <crepe/api/BoxCollider.h> #include <crepe/api/ParticleEmitter.h> #include <crepe/api/Rigidbody.h> -#include <crepe/api/BoxCollider.h> #include <crepe/api/Transform.h> #include <crepe/types.h> @@ -60,7 +60,8 @@ bool PlayerScript::on_collision(const CollisionEvent & ev) { audio.play(); 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 = true; anim.set_anim(5); @@ -91,19 +92,19 @@ void PlayerScript::fixed_update(crepe::duration_t dt) { for (ParticleEmitter & emitter : emitters) { emitter.data.boundary.offset = vec2(0, -transform.position.y); } - + Rigidbody & rb = this->get_components_by_name<Rigidbody>("player").front(); if (this->get_key_state(Keycode::P)) { - this->trigger_event<BattleStartEvent>(BattleStartEvent{ + this->trigger_event<BattleStartEvent>(BattleStartEvent { .num_enemies = 5, }); } - if(this->get_key_state(Keycode::ENTER)){ + if (this->get_key_state(Keycode::ENTER)) { auto now = std::chrono::steady_clock::now(); std::chrono::duration<float> elapsed = now - last_fired; if (elapsed > shot_delay) { - this->shoot(transform.position,0); + this->shoot(transform.position, 0); last_fired = now; } } @@ -155,18 +156,23 @@ void PlayerScript::fixed_update(crepe::duration_t dt) { } } -void PlayerScript::shoot(const vec2& location,float angle){ - RefVector<Transform> bullet_transforms = this->get_components_by_tag<Transform>("player_bullet"); +void PlayerScript::shoot(const vec2 & location, float angle) { + RefVector<Transform> bullet_transforms + = this->get_components_by_tag<Transform>("player_bullet"); - for(Transform& bullet_pos : bullet_transforms){ - if(bullet_pos.position.x == 0 && bullet_pos.position.y == -850){ + for (Transform & bullet_pos : bullet_transforms) { + if (bullet_pos.position.x == 0 && bullet_pos.position.y == -850) { bullet_pos.position = location; bullet_pos.position.x += 20; - Rigidbody& bullet_body = this->get_components_by_id<Rigidbody>(bullet_pos.game_object_id).front(); - BoxCollider bullet_collider = this->get_components_by_id<BoxCollider>(bullet_pos.game_object_id).front(); + Rigidbody & bullet_body + = this->get_components_by_id<Rigidbody>(bullet_pos.game_object_id).front(); + BoxCollider bullet_collider + = this->get_components_by_id<BoxCollider>(bullet_pos.game_object_id).front(); bullet_body.active = true; - BehaviorScript& bullet_script = this->get_components_by_id<BehaviorScript>(bullet_pos.game_object_id).front(); + BehaviorScript & bullet_script + = this->get_components_by_id<BehaviorScript>(bullet_pos.game_object_id) + .front(); bullet_script.active = true; return; } diff --git a/game/player/PlayerScript.h b/game/player/PlayerScript.h index 30f39c6..e7d860a 100644 --- a/game/player/PlayerScript.h +++ b/game/player/PlayerScript.h @@ -1,17 +1,18 @@ #pragma once +#include <chrono> #include <crepe/api/Event.h> #include <crepe/api/Script.h> -#include <chrono> class PlayerScript : public crepe::Script { public: void init(); void fixed_update(crepe::duration_t dt); - + private: bool on_collision(const crepe::CollisionEvent & ev); // bool on_key_up(const crepe::KeyReleaseEvent& ev); - void shoot(const crepe::vec2& location,float angle); + void shoot(const crepe::vec2 & location, float angle); + private: int prev_anim = 0; std::chrono::time_point<std::chrono::steady_clock> last_fired; diff --git a/game/player/PlayerSubScene.cpp b/game/player/PlayerSubScene.cpp index 1203ca0..cf11162 100644 --- a/game/player/PlayerSubScene.cpp +++ b/game/player/PlayerSubScene.cpp @@ -149,7 +149,8 @@ PlayerSubScene::PlayerSubScene(Scene & scn) { .body_type = Rigidbody::BodyType::DYNAMIC, //.linear_velocity = vec2(PLAYER_SPEED * 0.02, 0), .collision_layers - = {COLL_LAY_BOT_TOP, COLL_LAY_ZAPPER, COLL_LAY_LASER, COLL_LAY_MISSILE,COLL_LAY_BULLET}, + = {COLL_LAY_BOT_TOP, COLL_LAY_ZAPPER, COLL_LAY_LASER, COLL_LAY_MISSILE, COLL_LAY_BULLET + }, .collision_layer = COLL_LAY_PLAYER, }); player.add_component<BehaviorScript>().set_script<PlayerScript>().active = true; |