v11 全量评审:修复 TD-13 至 TD-17
- TD-13: IQuestManager.CompleteQuest 改用 IRewardTarget,移除 using BaseGames.Player - TD-14: HurtFlashController 缓存 WaitForSeconds(_waitForFlash 字段) - TD-16: LiquidType 枚举迁移至 BaseGames.Core.Events;LiquidEvent.LiquidType 改为枚举直接比较 - TD-17: DeathScreenController 移除失效的 _onPlayerDied 订阅,改为 OnEnable 直接启动延迟显示 影响文件: IQuestManager.cs / HurtFlashController.cs / LiquidType.cs(迁移) / LiquidEvent.cs / LiquidZone.cs / WaterDangerState.cs / UnderwaterPostProcessingController.cs / UnderwaterAudioController.cs / DeathScreenController.cs 评审文档: Docs/Review/FrameworkReview_2026_May_v11.md(综合评分 9.30/10)
This commit is contained in:
@@ -1,12 +1,5 @@
|
||||
// Assets/Scripts/World/Liquid/LiquidType.cs
|
||||
namespace BaseGames.World.Liquid
|
||||
{
|
||||
public enum LiquidType
|
||||
{
|
||||
Water, // 可游泳(需 Swim 能力)
|
||||
ShallowWater, // 浅水(水中慢走,无需游泳能力,速度 ×0.65)
|
||||
Mud, // 泥水(移动极慢,无需游泳能力,速度 ×0.50)
|
||||
Acid, // 接触即死(HazardZone 处理)
|
||||
Lava, // 接触即死(HazardZone 处理)
|
||||
}
|
||||
}
|
||||
// LiquidType 已迁移至 BaseGames.Core.Events.LiquidType(同程序集的 LiquidEvent)。
|
||||
// 此文件保留以保持 .meta 文件对应,请勿在此添加代码。
|
||||
// 所有引用请使用 using BaseGames.Core.Events; 后直接写 LiquidType。
|
||||
|
||||
|
||||
@@ -41,14 +41,14 @@ namespace BaseGames.World.Liquid
|
||||
{
|
||||
if (!other.CompareTag("Player")) return;
|
||||
_splashEnterFeedback?.PlayFeedbacks();
|
||||
_onPlayerEntered?.Raise(new LiquidEvent(_zoneId, _liquidType.ToString()));
|
||||
_onPlayerEntered?.Raise(new LiquidEvent(_zoneId, _liquidType));
|
||||
}
|
||||
|
||||
private void OnTriggerExit2D(Collider2D other)
|
||||
{
|
||||
if (!other.CompareTag("Player")) return;
|
||||
_splashExitFeedback?.PlayFeedbacks();
|
||||
_onPlayerExited?.Raise(new LiquidEvent(_zoneId, _liquidType.ToString()));
|
||||
_onPlayerExited?.Raise(new LiquidEvent(_zoneId, _liquidType));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -27,7 +27,7 @@ namespace BaseGames.World.Liquid
|
||||
|
||||
private void OnLiquidEntered(LiquidEvent evt)
|
||||
{
|
||||
if (evt.LiquidType != nameof(LiquidType.Water)) return;
|
||||
if (evt.LiquidType != LiquidType.Water) return;
|
||||
BlendVolume(1f, _blendInDuration);
|
||||
}
|
||||
|
||||
|
||||
@@ -38,7 +38,7 @@ namespace BaseGames.World.Liquid
|
||||
|
||||
public void OnEnterLiquid(LiquidEvent evt)
|
||||
{
|
||||
if (evt.LiquidType != nameof(LiquidType.Water)) return;
|
||||
if (evt.LiquidType != LiquidType.Water) return;
|
||||
if (_playerStats != null && _playerStats.HasAbility(AbilityType.Swim)) return;
|
||||
_isActive = true;
|
||||
_drownTimer = _config.DrownTime;
|
||||
|
||||
Reference in New Issue
Block a user