コード例 #1
0
ファイル: Slot.cs プロジェクト: IchiSamaFR/InventorySystem
    // Update is called once per frame
    void Update()
    {
        MouseOver();


        if (isOver)
        {
            if (Input.GetMouseButtonDown(0) && itemsCollection.ItemExist(itemId))
            {
                if (Input.GetKey("left shift"))
                {
                    container.ShiftMoved(this);
                }
                else
                {
                    container.SlotToMove(this);
                    moveObj = Instantiate(moveObjPrefab, GameObject.Find("Canvas").transform);
                    moveObj.transform.GetChild(0).GetComponent <Image>().sprite = itemsCollection.GetItemSprite(itemId);
                }
            }
            else if (Input.GetMouseButtonUp(0))
            {
                container.SlotMoved(this);
            }
        }
        else
        {
            if (Input.GetMouseButtonUp(0))
            {
                StartCoroutine("MouseUp");
            }
        }

        if (moveObj)
        {
            moveObj.transform.position = new Vector3(Input.mousePosition.x, Input.mousePosition.y, 0);
            if (!Input.GetMouseButton(0))
            {
                Destroy(moveObj);
            }
        }
    }
コード例 #2
0
 public virtual bool AddItem(string id)
 {
     for (int i = 0; i < slotCount; i++)
     {
         if (!itemsCollection.ItemExist(items[i]))
         {
             items[i] = id;
             RefreshContainer();
             return(true);
         }
     }
     return(false);
 }