PlayerMovementConfigSO.cs
新增 WallHangSpeed = 1f:正常抓墙(低于等于 wallGrabY,可蹬墙跳区间)的缓慢下滑速度 WallSlideSpeed 语义调整为:受限模式(高于 wallGrabY)的较快下滑速度 PlayerMovement.cs ApplyWallSlide() 改为 ApplyWallSlide(float speed),由调用方传入对应速度 WallSlideState.cs OnStateFixedUpdate:正常模式用 WallHangSpeed,受限模式用 WallSlideSpeed(两档清晰分离) 恢复反方向键脱离:脱离时同样调用 StartWallCoyote,wall coyote 窗口内仍能触发蹬墙跳 更新类头注释完整描述脱离方式和下滑速度档位Two wall slide improvements:
This commit is contained in:
@@ -50,6 +50,9 @@
|
||||
| Layer 名称 | 挂载对象 | 用途说明 |
|
||||
|---|---|---|
|
||||
| `Platform` | 静态地面、移动平台、Tilemap 地形、障碍物 | 玩家与敌人站立的实体平台;`PlayerMovement` 的 `_groundLayer`、`PlayerWallDetector` 的 `_wallLayer`(默认)均包含此 Layer;投射物命中后销毁 |
|
||||
| `OneWayPlatform` | 单向平台(静态) | 玩家可从下方穿过、从上方站立的平台;挂载 `PhantomPlate`(`PlatformEffector2D` + `IDropThrough`);`_groundLayer` 必须包含此 Layer 才能检测 `OnOneWayPlatform` 状态 |
|
||||
| `MovingOneWayPlatform` | 单向平台(移动) | 会移动的单向平台;行为同 `OneWayPlatform`,独立层便于移动脚本、AI 路径查询按层筛选 |
|
||||
| `MidHeightOneWayPlatform` | 单向平台(半高) | 半腰高度的单向平台;角色可从侧方穿越;行为同 `OneWayPlatform` |
|
||||
| `Wall` | 墙壁碰撞体(垂直面) | 玩家攀墙检测(`PlayerWallDetector` 默认掩码包含 `Wall` 和 `Platform`);若地形使用统一的 Tilemap 则墙壁可合并到 `Platform` Layer |
|
||||
|
||||
### 2.4 触发区域
|
||||
@@ -81,8 +84,14 @@
|
||||
| `PlayerHitBox` | `EnemyHurtBox` | ✅ | 玩家攻击伤害敌人 |
|
||||
| `EnemyHitBox` | `PlayerHurtBox` | ✅ | 敌人攻击伤害玩家 |
|
||||
| `EnemyHitBox` | `EnemyHurtBox` | ✅ | 敌人可互相伤害(HitBox 运行时排除自身根节点) |
|
||||
| `Player` | `Platform` | ✅ | 玩家站在平台上 |
|
||||
| `Enemy` | `Platform` | ✅ | 敌人站在平台上 |
|
||||
| `Player` | `Platform` | ✅ | 玩家站在实体平台上 |
|
||||
| `Player` | `OneWayPlatform` | ✅ | 玩家站在单向平台上(PlatformEffector2D 控制单向穿透) |
|
||||
| `Player` | `MovingOneWayPlatform` | ✅ | 玩家站在移动单向平台上 |
|
||||
| `Player` | `MidHeightOneWayPlatform` | ✅ | 玩家站在半高单向平台上 |
|
||||
| `Enemy` | `Platform` | ✅ | 敌人站在实体平台上 |
|
||||
| `Enemy` | `OneWayPlatform` | ✅ | 敌人站在单向平台上 |
|
||||
| `Enemy` | `MovingOneWayPlatform` | ✅ | 敌人站在移动单向平台上 |
|
||||
| `Enemy` | `MidHeightOneWayPlatform` | ✅ | 敌人站在半高单向平台上 |
|
||||
| `PlayerProjectile` | `EnemyHurtBox` | ✅ | 玩家投射物伤害敌人 |
|
||||
| `PlayerProjectile` | `PlayerHurtBox` | ❌ | 玩家投射物不自伤 |
|
||||
| `PlayerProjectile` | `Platform` | ✅ | 玩家投射物命中地形 |
|
||||
|
||||
Reference in New Issue
Block a user