1

我游戏中的每个敌人都是一个可编写脚本的对象(Enemy1、Enemy2 等)。每个敌人也有自己独特的脚本来确定战斗的进行方式(BattleEvent1、BattleEvent2 等)

我的逻辑目前的工作方式是:

  1. BattleSystem组件已BattleEvent附加所有 s。
  2. 战斗开始时,检查namecurrent 的Enemy,并使用该字符串引用来选择BattleEvent要运行的(很多 if 语句)。

但这很糟糕,因为它都是字符串引用,所以我不能轻易确保每个敌人都有一个BattleEvent,并且有很多 if/else 语句。

我想做的是将每个BattleEvent脚本附加到其各自的EnemyScriptable Object 上。

在此处输入图像描述

但是我无法将那个战斗事件 SerializeField 中的脚本拖到那里。

理想情况下,我希望我的逻辑可以像这样工作:

  1. BattleSystem加载敌人,然后检查Enemy.BattleEvent以加载正确的脚本。

由于我无法将脚本附加到 SO,因此我无法使其正常工作。有什么办法可以实现这样的逻辑流程?

4

0 回答 0