我在Unity 2017中有一个课程,只在检查员中显示一些公共方法。
using System.Collections.Generic;
using UnityEngine;
public class Inventory : MonoBehaviour
{
List<ShipPart> _inventory;
int currentInvPosition = 0;
bool invExists = false;
// Use this for initialization
void Start () {
CreateInventory(0, 0);
}
// Show all inventory parts as gameobjects
public void CreateInventory(int quality, int part)
{
...
}
void DestroyInventory()
{
...
}
public void ScrollInvLeft()
{
...
}
public void ScrollInvRight()
{
...
}
void UpdateInv(float offset)
{
...
}
public void AddInventoryItem(ShipPart newShipPart)
{
...
}
public void RemoveInventoryItem(ShipPart oldShipPart)
{
...
}
public void Test1(){}
public void Test2(int i){}
}
我认为可能是因为隐形方法有参数,所以我添加了最后两个方法。但是在检查员中可以看到它们!
我试图从下拉UI元素调用方法,但也从一个按钮进行测试,但也看不到它们。
我做错了什么?
答案 0 :(得分:3)
如here所示,如果要在检查器中为事件提供函数,则该函数必须满足以下要求:
public
void
int
float
string
bool
UnityEngine.Object
或从UnityEngine.Object
继承的任何类型(例如GameObject
,MonoBehaviour
,ScriptableObject
,...)