コード例 #1
0
ファイル: Equipory.cs プロジェクト: k-t/SharpHaven
        public void SetItem(int i, Item item)
        {
            Action <Point2D>      itemTakeHandler     = (p) => ItemTake.Raise(i, p);
            Action <Point2D>      itemTransferHandler = (p) => ItemTransfer.Raise(i, p);
            Action <Point2D>      itemActHandler      = (p) => ItemAct.Raise(i, p);
            Action <KeyModifiers> itemInteractHandler = (mods) => ItemInteract.Raise(i);

            if (items[i] != null)
            {
                items[i].Take     -= itemTakeHandler;
                items[i].Transfer -= itemTransferHandler;
                items[i].Act      -= itemActHandler;
                items[i].Interact -= itemInteractHandler;
                items[i].Remove();
                items[i].Dispose();
            }

            if (item != null)
            {
                items[i]      = new ItemWidget(this, null);
                items[i].Item = item;
                items[i].Move(slotPositions[i].X, slotPositions[i].Y);

                items[i].Take     += itemTakeHandler;
                items[i].Transfer += itemTransferHandler;
                items[i].Act      += itemActHandler;
                items[i].Interact += itemInteractHandler;
            }
        }
コード例 #2
0
 private void OnTriggerEnter2D(Collider2D other)
 {
     if (other.CompareTag("interObject"))
     {
         Debug.Log(other.name);
         currentInterObj       = other.gameObject;
         currentInterObjScript = currentInterObj.GetComponent <ItemTake>();
     }
 }