前期工程已经构建了背包、格子、物品三者的关系。简单概括,就是背包管理格子,格子管理(生成、消除)物品,物品根据id或icon_name变更sprite。现在开始进行模拟物品的拾取功能。对Inventory脚本进行添加:
Class Inventory
{
public GameObject InventoryItem;
void Update( )
{
if(Inpt.GetKeyDown(keycode.x))
{
GetId(Randam.Range(1001,1004));
}
}
public void GetId(int id)
{
Inventory_grid grid = null;
foreach( var temp in GridList )
{
if(temp.id == id)
{
grid = temp;
break;
}
}
if( grid != null )
{
grid.PlusNumber( );
}
else
{
foreach( var temp in GridLsit )
{
if(temp.id == 0)
{
grid = temp;
break;
}
}
if(grid != null)
{
GameObject itemGo = NGUITools.AddChlid(grid,inventoryitem);
itemGo.transform.localPosition = Vector3.zero;
grid.SetId(id);
}
}
}
}
以上就实现了向背包格子中添加游戏物品。
时间: 2024-10-22 03:02:34