public void PickUpItem(ItemPickupMsg msg)
    {
        ItemData itemData = itemTable.GetItem <ItemData>(msg.itemType, msg.table_id);

        if (currentAmount + itemData.BackpackAmount > limitAmount)
        {
            Debug.Log("가방 공간이 부족함");
            return;
        }

        items.Add(itemData);

        switch (itemData.ItemType)
        {
        case CONST.eItemType.Backpack:
            BackpackItem backpackItem = itemData as BackpackItem;
            ChangeBackpack(backpackItem.BackpackCapacity);
            break;

        case CONST.eItemType.Weapon:
            break;

        case CONST.eItemType.Medicine:
            break;

        default:
            Debug.LogErrorFormat("{0} is not supported yet", itemData.ItemType);
            break;
        }

        currentAmount += itemData.BackpackAmount;
        transform.root.BroadcastMessage(eMessage.CompletePickup.ToString(), msg);
    }
    private void Update()
    {
        if (!Input.GetKeyDown(KeyCode.F))
        {
            return;
        }

        if (null == current_item)
        {
            return;
        }

        MsgParamBase msg = new ItemPickupMsg()
        {
            itemType = current_item.ItemType, table_id = current_item.TableIndex
        };

        transform.root.BroadcastMessage(eMessage.PickUpItem.ToString(), msg, SendMessageOptions.DontRequireReceiver);

        Destroy(current_item.gameObject);
    }
Beispiel #3
0
    public void CompletePickup(ItemPickupMsg msg)
    {
        switch (msg.itemType)
        {
        case CONST.eItemType.Weapon:
            WeaponItem weapon = itemTable.GetItem <WeaponItem>(msg.itemType, msg.table_id);
            currentWeapon.SetMember(weapon.IconPath, weapon.ItemName);
            break;

        case CONST.eItemType.Backpack:
            BackpackItem backpackData = itemTable.GetItem <BackpackItem>(msg.itemType, msg.table_id);
            backpack.SetMember(backpackData.IconPath, backpackData.ItemName);
            break;

        case CONST.eItemType.Helmet:
            HelmetItem helmetData = itemTable.GetItem <HelmetItem>(msg.itemType, msg.table_id);
            backpack.SetMember(helmetData.IconPath, helmetData.ItemName);
            break;

        case CONST.eItemType.Amour:
            AmourItem amourData = itemTable.GetItem <AmourItem>(msg.itemType, msg.table_id);
            backpack.SetMember(amourData.IconPath, amourData.ItemName);
            break;

        case CONST.eItemType.Bullet:
            break;

        case CONST.eItemType.Bandage:
            break;

        case CONST.eItemType.Medicine:
            break;

        default:
            break;
        }
    }