Unity,GUI,C# - 参数超出范围

时间:2014-08-19 23:09:32

标签: user-interface unity3d

我开始创建库存系统,我有一个恼人的错误。

我有3个脚本

  • 项目,用于创建项目“模板”
  • ItemsDatabase,用于存储所有项目
  • 库存,用于存储背包中物品的信息。

当我点击播放按钮时,一切正常,但我也有数百个错误:

  

ArgumentOutOfRangeException:参数超出范围。   参数名称:index   System.Collections.Generic.List`1 [Item] .get_Item(Int32 index)(at /Users/builduser/buildslave/mono-runtime-and-classlibs/build/mcs/class/corlib/System.Collections.Generic/List的.cs:633)   Inventory.OnGUI()(在Assets / Inventory.cs:23)

Unity说,这是“库存”的问题,所以有脚本:

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

public class Inventory : MonoBehaviour {

public List<Item> inventory = new List<Item>();
private ItemsDatabase database;

// Use this for initialization
void Start () {

    database = GameObject.FindGameObjectWithTag("Item Database").GetComponent<ItemsDatabase>();
    inventory.Add(database.items[0]);
    inventory.Add(database.items[1]);

}

void OnGUI()
{
    for (int i = 0; 1 < inventory.Count; i++)
    {
        GUI.Label(new Rect(10, i * 30, 200, 50), inventory[i].itemName); (THERE'S THE ERROR!)
    }
}

欢迎解决问题的每一个提示

0 个答案:

没有答案