示例#1
0
    public void Gain_Item(int item_id)
    {
        int idx = -1;

        //find item if it's in inventory
        for (int i = 0; i < inventory_length; i++)
        {
            if (item_kind[i] == item_id)
            {
                idx = i;
                break;
            }
        }
        //item not found
        if (idx == -1)
        {
            idx = EmptySlot();
            if (idx == -1)
            {
                Debug.Log("Inventory is Full");
            }
            else
            {
                item_kind[idx] = item_id;
                item_cnt[idx]++;
                item_img[idx].sprite = ItemDB.GetInstance().item_sprites[item_id];
            }
        }
        //item found
        else
        {
            item_cnt[idx]++;
        }
        Update_Cnt_Text();
    }
示例#2
0
    //slot index에 해당하는 아이템 사
    public void Use_Item(int idx)
    {
        if (item_cnt[idx] > 0)
        {
            //11~20 : seed
            if (item_kind[idx] > 10 && item_kind[idx] <= 20)
            {
                item_cnt[idx]--;
                //씨앗을 심으면 식물이 난다
                Instantiate(ItemDB.GetInstance().items[item_kind[idx] - 1 - 10],
                            new Vector2(player.transform.position.x + player.cur_dir_x,
                                        player.transform.position.y + player.cur_dir_y),
                            player.transform.rotation);
            }
            //1~10 : plant
            else if (item_kind[idx] > 0 && item_kind[idx] <= 10)
            {
                switch (item_kind[idx])
                {
                case 1:
                    Use_Rye();
                    item_cnt[idx]--;
                    break;

                case 2:
                    Use_Cattails();
                    item_cnt[idx]--;
                    break;

                case 3:
                    Use_Azaela();
                    item_cnt[idx]--;
                    break;

                case 4:
                    break;

                case 5:
                    Use_Pear();
                    item_cnt[idx]--;
                    break;

                case 6:
                    Use_Tomato();
                    item_cnt[idx]--;
                    break;
                }
            }
        }
        Update_Cnt_Text();
    }
示例#3
0
 private void Start()
 {
     item_id = Random.Range(11, 18);
     Debug.Log(item_id);
     icon.GetComponent <SpriteRenderer>().sprite = ItemDB.GetInstance().item_sprites[item_id];
 }
示例#4
0
    public void Buy_Item(int item_id)
    {
        int idx   = -1;
        int price = 0;

        switch (item_id)
        {
        case 11:
            price = 2;
            break;

        case 12:
            price = 4;
            break;

        case 13:
            price = 3;
            break;

        case 14:
            price = 4;
            break;

        case 15:
            price = 4;
            break;

        case 16:
            price = 2;
            break;

        case 17:
            price = 4;
            break;

        case 18:
            price = 8;
            break;
        }
        Debug.Log(price);
        if (price > player.player_money)
        {
            return;
        }

        //find item if it's in inventory
        for (int i = 0; i < inventory_length; i++)
        {
            if (item_kind[i] == item_id)
            {
                idx = i;
                break;
            }
        }
        //item not found
        if (idx == -1)
        {
            idx = EmptySlot();
            if (idx == -1)
            {
                Debug.Log("Inventory is Full");
            }
            else
            {
                player.player_money -= price;
                item_kind[idx]       = item_id;
                item_cnt[idx]++;
                item_img[idx].sprite = ItemDB.GetInstance().item_sprites[item_id];
            }
        }
        //item found
        else
        {
            player.player_money -= price;
            item_cnt[idx]++;
        }
        Update_Cnt_Text();
    }