From cb10827fd6f89c55aa70d326113fadcf8cdf5def Mon Sep 17 00:00:00 2001 From: Ziyu Date: Wed, 11 Jun 2025 21:50:03 +0800 Subject: [PATCH] =?UTF-8?q?minor-=E5=87=A0=E5=A4=84=E6=A0=BC=E5=BC=8F?= =?UTF-8?q?=E8=A7=84=E8=8C=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/game/scene/game_scene.cpp | 14 +++++++------- src/game/scene/game_scene.h | 6 +++--- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/src/game/scene/game_scene.cpp b/src/game/scene/game_scene.cpp index b548bbc..3ecfc63 100644 --- a/src/game/scene/game_scene.cpp +++ b/src/game/scene/game_scene.cpp @@ -25,7 +25,7 @@ namespace game::scene { // 构造函数:调用基类构造函数 -GameScene::GameScene(std::string name, engine::core::Context& context, engine::scene::SceneManager& scene_manager) +GameScene::GameScene(const std::string& name, engine::core::Context& context, engine::scene::SceneManager& scene_manager) : Scene(name, context, scene_manager) { spdlog::trace("GameScene 构造完成。"); } @@ -189,15 +189,15 @@ void GameScene::handleObjectCollisions() // 处理玩家与敌人的碰撞 if (obj1->getName() == "player" && obj2->getTag() == "enemy") { - PlayerVSEnemyCollision(obj1, obj2); + playerVSEnemyCollision(obj1, obj2); } else if (obj2->getName() == "player" && obj1->getTag() == "enemy") { - PlayerVSEnemyCollision(obj2, obj1); + playerVSEnemyCollision(obj2, obj1); } // 处理玩家与道具的碰撞 else if (obj1->getName() == "player" && obj2->getTag() == "item") { - PlayerVSItemCollision(obj1, obj2); + playerVSItemCollision(obj1, obj2); } else if (obj2->getName() == "player" && obj1->getTag() == "item") { - PlayerVSItemCollision(obj2, obj1); + playerVSItemCollision(obj2, obj1); } // 处理玩家与"hazard"对象碰撞 else if (obj1->getName() == "player" && obj2->getTag() == "hazard") { @@ -227,7 +227,7 @@ void GameScene::handleTileTriggers() } } -void GameScene::PlayerVSEnemyCollision(engine::object::GameObject *player, engine::object::GameObject *enemy) +void GameScene::playerVSEnemyCollision(engine::object::GameObject *player, engine::object::GameObject *enemy) { // --- 踩踏判断逻辑:1. 玩家中心点在敌人上方 2. 重叠区域:overlap.x > overlap.y auto player_aabb = player->getComponent()->getWorldAABB(); @@ -263,7 +263,7 @@ void GameScene::PlayerVSEnemyCollision(engine::object::GameObject *player, engin } } -void GameScene::PlayerVSItemCollision(engine::object::GameObject * player, engine::object::GameObject * item) +void GameScene::playerVSItemCollision(engine::object::GameObject * player, engine::object::GameObject * item) { if (item->getName() == "fruit") { player->getComponent()->heal(1); // 加血 diff --git a/src/game/scene/game_scene.h b/src/game/scene/game_scene.h index 7ffcc2c..92874dc 100644 --- a/src/game/scene/game_scene.h +++ b/src/game/scene/game_scene.h @@ -17,7 +17,7 @@ class GameScene final: public engine::scene::Scene { engine::object::GameObject* player_ = nullptr; ///< @brief 保存玩家对象的指针,方便访问 public: - GameScene(std::string name, engine::core::Context& context, engine::scene::SceneManager& scene_manager); + GameScene(const std::string& name, engine::core::Context& context, engine::scene::SceneManager& scene_manager); // 覆盖场景基类的核心方法 void init() override; @@ -33,8 +33,8 @@ private: void handleObjectCollisions(); ///< @brief 处理游戏对象间的碰撞逻辑(从PhysicsEngine获取信息) void handleTileTriggers(); ///< @brief 处理瓦片触发事件(从PhysicsEngine获取信息) - void PlayerVSEnemyCollision(engine::object::GameObject* player, engine::object::GameObject* enemy); ///< @brief 玩家与敌人碰撞处理 - void PlayerVSItemCollision(engine::object::GameObject* player, engine::object::GameObject* item); ///< @brief 玩家与道具碰撞处理 + void playerVSEnemyCollision(engine::object::GameObject* player, engine::object::GameObject* enemy); ///< @brief 玩家与敌人碰撞处理 + void playerVSItemCollision(engine::object::GameObject* player, engine::object::GameObject* item); ///< @brief 玩家与道具碰撞处理 /** * @brief 创建一个特效对象(一次性)。