1 回答
TA贡献1873条经验 获得超9个赞
好吧,你应该建立一个自己的类或系统来处理你的通电机制。代码实际上只是您逻辑的体现。如果它适用于启用和禁用脚本,那么编写一个管理器类,它正是这样做的。引用检查器中的每个脚本。当玩家收集到一些东西时,禁用所有脚本并启用所需的目标脚本。使用枚举。
但是肯定有比为每个机制编写一个脚本更好的/其他方法来处理这个问题。如果你这样做,事情会很快失控,而且相当混乱。我敢打赌,90% 以上的效果都可以通过玩数字(缩放、移动速度、跳跃高度等)来实现,那么如果您创建一个实例体现浮动的类来处理这些呢?例如,您描述的将是:
public class Powerup
{
SpecialEffect SpecialE = SpecialEffect.Shrink; // (enum)
float SizeMod = 0.4f;
float JumpMod = 2.0f;
float SpeedMod = 1.0f; // (changes nothing)
float DamageMod = 1.0f; // (changes nothing)
public void ApplyEffects ()
{
// Do the changes to the player.
}
}
您可以向检查员公开这些 Powerups 的列表并填写您的元素,或者通过代码以启动的形式进行(我使用许多被解析的 excel 表来做这些事情,允许我在有一个很棒的概述)。
- 1 回答
- 0 关注
- 134 浏览
添加回答
举报