首页 > 代码库 > Unity3D游戏开发之背包系统(三)

Unity3D游戏开发之背包系统(三)

背包系统(三)

10、修改物品脚本,完成物品个数加1的功能

    public UISprite sprite;

    public UILabel label;

    private int count = 1;

    public void AddCount(int number)

    {

        count += number;

        label.text = count + "";

    }

11、修改格子脚本,完成当前游戏物品的名字和我们捡到到的游戏物品的名字一样时,物品个数加1;当前游戏物品的名字和我们捡到到的游戏物品的名字不一样时,向新的格子里面添加物品【狗刨学习网】

bool flag = false;

        for (int i = 0; i < cells.Length; i++)

        {

            if (cells[i].transform.childCount > 0)//当前格子里面有物品

            {

                Knapsack kn = cells[i].GetComponentInChildren<Knapsack>();

                //当前游戏物品的名字和我们捡到到的游戏物品的名字一样

                if (kn.sprite.spriteName == name)

                {

                    flag = true;

                    kn.AddCount(1);

                    break;                

                }

            }

        }

 

        //当前游戏物品的名字和我们捡到到的游戏物品的名字不一样

        if (flag == false) {

            for (int i = 0; i < cells.Length; i++)

            {

                if (cells[i].transform.childCount == 0)//当前格子里面没有背包

                {

                    GameObject go = NGUITools.AddChild(cells[i], item);//把新生成的背包放入格子里面

 

                    go.GetComponent<UISprite>().spriteName = name;//为新生成的背包添加名称

                    go.transform.localPosition = Vector3.zero;//把背包居中

                    break;

                }

            }

        }

技术分享

技术分享

Unity3D游戏开发之背包系统(三)