You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Unity中如何用通用类型禁用不同敌人的行为控制脚本?

解决方案:使用MonoBehaviour或Behaviour类型替代Component

你可以用MonoBehaviour类型来替代代码中的Component,因为所有Unity自定义脚本都默认继承自MonoBehaviour,而MonoBehaviour继承自Behaviour类——Behaviour正是拥有enabled属性的基类,能直接控制脚本的启用/禁用。

修改后的代码示例:

public MonoBehaviour ControllerScript; // 在编辑器中拖拽对应的控制脚本组件

void SomeMethod()
{
    ControllerScript.enabled = false;
}

或者也可以直接用Behaviour类型,效果完全一致:

public Behaviour ControllerScript;

void SomeMethod()
{
    ControllerScript.enabled = false;
}

这两种类型都能兼容你所有的敌人控制脚本(比如BomberController、ChargerController),因为它们本质都是MonoBehaviour的子类,编辑器里可以直接拖拽赋值,不需要针对每种敌人类型单独调整代码。

内容的提问来源于stack exchange,提问作者G-han

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 16:40:19