feat(地图系统): 实现角色移动约束和地图切换功能

添加地图移动区域检测和角色移动约束逻辑
引入地图切换请求队列机制,支持延迟处理角色传送
在CharacterObject中实现地图边界检测和位置约束应用
This commit is contained in:
2026-04-05 12:04:07 +08:00
parent 2b0cfc6ce5
commit 6cd1b42fef
6 changed files with 117 additions and 4 deletions

View File

@@ -15,6 +15,8 @@
namespace frostbite2D {
class GameMap;
/// @brief 角色系统的主聚合对象。
///
/// 这个类可以理解为“角色外壳”:
@@ -170,6 +172,9 @@ private:
void CommitPendingActionContext(const std::string& defaultRequestedActionId,
const std::string& defaultSourceActionId,
CharacterStateId defaultSourceStateId);
GameMap* FindOwningMap() const;
void ApplyMapMovementConstraints(const CharacterWorldPosition& previousPosition);
void QueueMapTransitionIfNeeded();
void SyncActorPositionFromWorld();
bool SetActionStrict(const std::string& actionName,
const char* phase,