Example #1
0
    public void OnPointerClick(BaseEventData Data)
    {
        Debug.Log("클릭");
        Item_string      item      = this.GetComponent <Item_string>();
        PointerEventData eventData = Data as PointerEventData;

        if (eventData.button == PointerEventData.InputButton.Left)
        {
            Debug.Log("왼쪽클릭");
            if (Inventory.instance.isSHOP == false)
            {
                if (item.code != null)
                {
                    if (item.code.Substring(0, 1) == "2")
                    {
                        //퀵슬롯에 아이템이 있으면 감소
                        for (int i = 0; i < Itemslot.instance.slots.Count; i++)
                        {
                            if (Itemslot.instance.slots[i].GetComponent <Item_string>().code != null)
                            {
                                if (Itemslot.instance.slots[i].GetComponent <Item_string>().code.Equals(this.GetComponent <Item_string>().code))
                                {
                                    Itemslot.instance.slots[i].GetComponent <ItemquickSlot>().minus_item(Itemslot.instance.slots[i].GetComponent <Item_string>());
                                    break;
                                }
                            }
                        }
                        //인벤토리의 아이템을 감소 & consume실행
                        Inventory.instance.player.Consume(false, item.code.Substring(0, 4), InventorySlot.GetType(item.code),
                                                          ItemManager.instance.GetOpt1_1(int.Parse(item.code.Substring(0, 5))),
                                                          ItemManager.instance.GetOpt2_1(int.Parse(item.code.Substring(0, 5))));
                        int    count        = int.Parse(item.code.Substring(5, 2)) - 1;
                        string count_string = ((count < 10 ? "0" + count : "" + count));
                        item.code = Inventory.instance.copy(item.code.Substring(0, 5) + count_string);
                        //해당 슬롯의 갯수출력변경
                        this.GetComponentInChildren <Text>().text = (int.Parse(item.code.Substring(5, 2)) > 0 ?
                                                                     " " + int.Parse(item.code.Substring(5, 2)) : " ");
                        if (count <= 0)
                        {
                            Inventory.instance.pop_list(this.GetComponent <index>().Index);
                            return;
                        }
                    }
                }
            }
        }


        if (eventData.button == PointerEventData.InputButton.Right)
        {
            //오른쪽클릭
            Debug.Log("오른쪽 클릭");
            if (Inventory.instance.isSHOP == false)
            {//아이템 장착 및 소비
                if (item.code == null)
                {
                    return;
                }
                if (int.Parse(item.code.Substring(0, 1)) < 3)
                {
                    switch (item.code.Substring(0, 1))
                    {
                    case "2":
                        Itemslot.Add(this.gameObject);

                        /*int count = int.Parse(item.code.Substring(5,2)) - 1;
                         * this.GetComponentInChildren<Text>().text = (count > 0 ? " " + count : " ");
                         *
                         *  if (count < 1)
                         *  {
                         *      Inventory.instance.pop_list(this.GetComponent<index>().Index);
                         *  }
                         *  else
                         *      item.code = item.code.Substring(0, 5) + (count < 10 ? "0" + count : "" + count);
                         */
                        break;

                    case "1":
                        Debug.Log("이큅 실행");
                        equip(item);
                        break;
                    }
                }
            }
            else
            {
                GameObject slotnow = null;
                //돈버는 코드 필요
                for (int i = 0; i < Itemslot.instance.slots.Count; i++)
                {
                    slotnow = Itemslot.instance.slots[i];
                    if (slotnow.GetComponent <Item_string>().code.Equals(item.code))
                    {
                        slotnow.GetComponent <Item_string>().code    = null;
                        slotnow.GetComponent <Image>().sprite        = Inventory.instance.defaultImage;
                        slotnow.GetComponentInChildren <Text>().text = " ";
                        break;
                    }
                }
                Inventory.instance.pop_list(this.GetComponent <index>().Index);
            }
        }
    }