c# - 该脚本缺少一个复选框

标签 c# unity3d

我正在编写一个脚本,当我想将它添加到 GameObject 时,我注意到启用检查消失了,并且无法将脚本拖到该组件 Event Script 的检查器中。

我尝试更改脚本的名称,但没有任何变化。

要添加的脚本:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class EventScript : MonoBehaviour
{
    private GameObject obj;

    public SaveObjScript saveObjScript;
    public SpawnScript spawnScript;

    public void InitObject(){
        Debug.Log("OBJETO A ACCIONAR ES: " + saveObjScript.getObject().name);
        //obj = saveObjScript.getObject();
    }

    public void ChangeColor(){
        InitObject();
        Renderer rend = obj.GetComponent<Renderer>();
        rend.material.color = Random.ColorHSV();
    }

    public void RemoveObj(){
        InitObject();
        Destroy(obj);
        spawnScript.mTotalObjetos --;
    }
}

Script disabled

最佳答案

它没有复选框,因为它没有实现任何内置方法,如 StartUpdateFixedUpdate 关心是否组件已启用。

来自MonoBehaviour documentation :

Note: There is a checkbox for disabling MonoBehaviour on the Unity Editor. It disables functions when unticked. If none of these functions are present in the script, the Editor does not display the checkbox.

关于c# - 该脚本缺少一个复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58453028/

相关文章:

c# - C#中字符的权利

c# - 反射式地在 C# 中实现泛型类型推断

c# - 添加服务引用为枚举和方法创建重复的定义

c# - DataGridView 清除并重新获得焦点

android - Unity 与 Admob 和 Google Play 服务冲突

c# - 在 Unity 中显示实时摄像头提要

unity3d - 如何在Unity3d中删除切片的 Sprite

c# - 用 Regex.Replace() 替换字符串

unity3d - unity 刚体恒速

c# - 动态改变着色器的属性