【问题标题】:Create a Multidimensional Array of GameObjects and floats创建游戏对象和浮点数的多维数组
【发布时间】:2017-10-14 01:25:32
【问题描述】:

我想创建一个包含 GameObject 和相应浮点数的数组。

我试图让每个敌人在他们死后都能掉落物品。该项目将是游戏对象之一,浮动是它被丢弃的概率。

所以我创建了这个类:

public class ItemToDrop : MonoBehaviour {
    public GameObject itemToDrop;
    public float probability;
}

并尝试在我的 Enemy 课程中使用它:

[SerializeField]
    private List<ItemToDrop> items;

我也试过做

Hastable<GameObject, float> items;

但它不喜欢被告知它应该持有什么物品。

但这不起作用。我试过 ArrayList 等。

有没有办法以这种方式创建 List、Hashtable(或其他容器)?

【问题讨论】:

  • List 应该可以工作
  • 我以前没有使用 Unity 的经验,但 Unity 是否完全支持列表??我也不明白你为什么尝试使用 hastable
  • @RJ- Unity 支持 List 很好,我在自己的项目中使用它们。我不知道这里的问题是什么。
  • @Draco18s 你能在一个简单的统一项目中创建类似的文件吗?
  • [System.Serializable] 您是否尝试在“ItemToDrop”类之上使用它?我用它在编辑器中使用 List 显示自定义类,并将 [SerializeField] 标签添加到列表中。还让我了解您想在编辑器中分配游戏对象和浮点值的问题吗?我说的对吗?

标签: c# list unity3d hashtable unity2d


【解决方案1】:

我猜,您想从检查器中分配您班级的变量。
我试过这个:

[System.Serializable]
public class ItemToDrop :System.Object {
    public GameObject itemToDrop;
    public float probability;
}

并在检查器中得到以下输出。

【讨论】:

    猜你喜欢
    • 2022-07-27
    • 1970-01-01
    • 2022-01-19
    • 2022-01-02
    • 1970-01-01
    • 2014-08-14
    • 1970-01-01
    • 2012-01-04
    • 2012-06-29
    相关资源
    最近更新 更多