我想制作一个类数组,并在检查器中查看所有这些类项目。
我有2个脚本。 1-预制,需要包含MonoBehaviour。 2-我在其中创建数组的脚本,但是在检查器中,我仅看到Element0,Element1 ... 当我从第一个脚本中删除MonoBehaviour时,我可以在检查器中看到所有项目,但是那样就不能与预制件一起使用...
1-
[System.Serializable]
public class LevelSetup : MonoBehaviour
{
public TextMeshProUGUI levelName;
public Image levelImage;
public bool locked;
public GameObject Description;
public string Text;
}
2-
public class LevelSpawn : MonoBehaviour
{
public LevelSetup[] levels;
想显示带有所有“ LevelSetup”字段(公共的)的数组,但是如果我离开MonoBehaviour,并且它与预制件配合得很好,它将显示仅包含Element0,Element1等的数组。 谢谢!
答案 0 :(得分:0)
当您放置从MonoBehaviour继承的字段时,Unity的检查器会期望一个对象具有“行为”,因此您不能在检查器中分配这些字段,因为不会被解释为常规字段。
例如,如果您将“材质”设置为字段,并且想要通过检查器更改color属性。
public Material mat; //This is actually a class
在检查器中,您只能分配材料,但不能在班级内部访问和更改颜色。