Example #1
0
 public void Comelpete()
 {
     player  = GameObject.FindGameObjectWithTag("Player").transform;
     allItem = GameObject.Find("ItemInformationManager").GetComponent <J_ItemInformationManager>();
     for (int i = 0; i < allItem.comelpetes.Length; i++)
     {
         J_Item _Item = allItem.comelpetes[i].GetComponent <J_Item>();
         if (_Item.itemName == J_Mune.mune.buttonNmb.GetComponent <J_ToolButtonInfo>().completeName)
         {
             print("완성품입니다");
             GameObject a = Instantiate(allItem.comelpetes[i]);
             a.transform.position = player.position;
         }
     }
 }
Example #2
0
 //눈에 보이지는 않지만 내부적으로 인ㅂ넨토리 안을 채워줍니다
 public void ClicksItem(GameObject x)
 {
     for (int i = 0; i < items2.Length; i++)
     {
         J_Item j_Item = x.GetComponent <J_Item>();
         //가장 먼저 배열 클래스에 자신과 동일한 것이 있는지 확인해줍니다
         //있으면 갯수만 늘려주고 탈출합니다
         if (items2[i] != null)
         {
             if (items2[i].itemName == j_Item.itemName)
             {
                 //이름이 동일하지만 타입이 만약에 무기이면
                 if (j_Item.type == J_Item.ItemType.WEAPON)
                 {
                     continue;
                 }
                 items2[i].auount += j_Item.auount;
                 Destroy(x);
                 break;
             }
         }
         //해당 배열클래스의이름이 비어있으면 그 배열 클래스로 정해줍니다
         else if (items2[i] == null)
         {
             items2[i]           = j_Item;
             items2[i].auount    = x.GetComponent <J_Item>().auount;
             items2[i].itemImage = j_Item.itemImage;
             items2[i].my        = x;
             //받아드려오는 오브젝트의 내부속 이름
             // items2[i].itemName = j_Item.itemName;
             //오브젝트의 이미지 스프라이트 설정해줍니다
             // items2[i].itemImage = j_Item.itemImage;
             // items2[i].auount++;
             break;
         }
     }
 }
Example #3
0
    void Actions2()
    {
        J_Slots a = _Slots.GetComponent <J_Slots>();

        //자기 인벤토리에서 실행하는 상태입니다
        if (state == State.MYINVENYROY)
        {
            for (int i = 0; i <
                 J_ItemManager.j_Item.items2.Length; i++)
            {
                if (J_ItemManager.j_Item.items2[i].itemName == a.name)
                {
                    J_ItemManager.j_Item.items2[i].auount -=
                        clickButton.GetComponent <J_SclectButton>().ss;


                    if (clickButton.GetComponent <J_SclectButton>().ss != a.itemMy.GetComponent <J_Item>().auount)
                    {
                        GameObject x = Instantiate(a.itemMy);
                        x.transform.position             = player.transform.position;
                        x.GetComponent <J_Item>().auount = clickButton.GetComponent <J_SclectButton>().ss;
                    }



                    //만약 슬롯의 아이템 갯수가 0이면 그 자리를 비워줘야합니다
                    if (J_ItemManager.j_Item.items2[i].auount == 0)
                    {
                        //아이템이 없기 때문에 이미지도 비활성화 해줍니다

                        J_Inventory.j_Inventory.items[i].GetComponent <J_Slots>().mainIamge.SetActive(false);

                        //아이템이 없기 때문에 null값을 넣어줍니다
                        J_ItemManager.j_Item.items2[i] = null;
                    }
                    break;
                }
            }
            a.itemMy.transform.position             = player.transform.position;
            a.itemMy.GetComponent <J_Item>().auount = clickButton.GetComponent <J_SclectButton>().ss;
            a.itemMy.SetActive(true);

            /* GameObject mm = Instantiate(a.itemMy);
             * mm.SetActive(true);
             * mm.GetComponent<J_Item>().auount = clickButton.GetComponent<J_SclectButton>().ss;
             * mm.transform.position = player.transform.position;
             */
        }



        //창고에서 인벤토리로 꺼내는 조건입니다
        else if (state == State.LOCKER)
        {
            J_Slots slotss = _Slots.GetComponent <J_Slots>();
            for (int i = 0; i < J_ItemManager.j_Item.items2.Length; i++)
            {
                //만약에 같은 이름이 있다면 거기에 넣어준다
                if (J_ItemManager.j_Item.items2[i] != null && J_ItemManager.j_Item.items2[i].itemName == _Slots.GetComponent <J_Slots>().name)
                {
                    J_ItemManager.j_Item.items2[i].auount += clickButton.GetComponent <J_SclectButton>().ss;

                    break;
                }
                //하지만 같은 이름이 존재하지 않고 자리가 남아있다면
                else if (J_ItemManager.j_Item.items2[i] == null)
                {
                    for (int j = 0; j < infoItem.GetComponent <J_ItemInformationManager>().allItems.Length; j++)
                    {
                        if (_Slots.GetComponent <J_Slots>().name ==
                            infoItem.GetComponent <J_ItemInformationManager>().allItems[j]
                            .GetComponent <J_Item>().itemName)
                        {
                            GameObject item = Instantiate(infoItem.GetComponent <J_ItemInformationManager>().allItems[j]);
                            item.transform.position = player.transform.position;
                            J_Item j_Item = item.GetComponent <J_Item>();
                            J_ItemManager.j_Item.items2[i]           = j_Item;
                            J_ItemManager.j_Item.items2[i].auount    = clickButton.GetComponent <J_SclectButton>().ss;
                            J_ItemManager.j_Item.items2[i].itemImage = j_Item.itemImage;
                            J_ItemManager.j_Item.items2[i].my        = item;
                            item.SetActive(false);
                            break;
                        }
                    }
                    break;
                }
            }

            //이제 여기서 창고에 있는 아이를 죽인다

            slotss.MySeilf(slotss.name, slotss.Image.sprite, int.Parse(slotss.text.text) -
                           clickButton.GetComponent <J_SclectButton>().ss);
            if (slotss.text.text == "")
            {
                slotButton.SetActive(false);
                slotss.MySeilf(null, null, 0);
                slotss.mainIamge.SetActive(false);
            }
        }
        //자신 인벤토리에서 창고로 넣어주는 상태입니다


        else if (state == State.LOCKERINVENTROY)
        {
            J_Slots slotss = _Slots.GetComponent <J_Slots>();
            for (int i = 0; i < J_LockerInvs.j_LockerInvs.items.Count; i++)
            {
                if (J_LockerInvs.j_LockerInvs.items[i] != null)
                {
                    //int.Parse(gameObject.GetComponent<J_Slots>().text.text)
                    //J_LockerInvs.j_LockerInvs.items[i] = gameObject.GetComponent<J_Slots>();
                    J_LockerInvs.j_LockerInvs.items[i].GetComponent <J_Slots>().mainIamge.SetActive(true);
                    if (J_LockerInvs.j_LockerInvs.items[i].GetComponent <J_Slots>().text.text == "")
                    {
                        J_LockerInvs.j_LockerInvs.items[i].GetComponent <J_Slots>().MySeilf(
                            gameObject.GetComponent <J_Slots>().name,
                            gameObject.GetComponent <J_Slots>().Image.sprite,
                            clickButton.GetComponent <J_SclectButton>().ss);
                    }
                    else if (J_LockerInvs.j_LockerInvs.items[i].GetComponent <J_Slots>().text.text != "" && slotss.name ==
                             J_LockerInvs.j_LockerInvs.items[i].GetComponent <J_Slots>().name)
                    {
                        J_LockerInvs.j_LockerInvs.items[i].GetComponent <J_Slots>().MySeilf(
                            gameObject.GetComponent <J_Slots>().name,
                            gameObject.GetComponent <J_Slots>().Image.sprite,
                            clickButton.GetComponent <J_SclectButton>().ss +
                            int.Parse(J_LockerInvs.j_LockerInvs.items[i].GetComponent <J_Slots>().text.text));
                    }
                    else
                    {
                        continue;
                    }



                    //이 위까지 창고로 넣어주는 명령어입니다

                    //아래는 이제 인벤토리에서 지우는 명령어 입니다
                    for (int j = 0; j < J_ItemManager.j_Item.items2.Length; j++)
                    {
                        //지금 창고에 넣을 아이템 이름과 아이템 메니저의 이름을 검사해서 두개가 동일하면 다음 if문을 실행합니다
                        if (J_LockerInvs.j_LockerInvs.items[i].GetComponent <J_Slots>().name ==
                            J_ItemManager.j_Item.items2[j].itemName)
                        {
                            J_ItemManager.j_Item.items2[j].auount -= clickButton.GetComponent <J_SclectButton>().ss;

                            //J_LockerInventroy
                            //이걸로 수정해야합니다 생각해보니깐 아까부터 계속해서 창고에 있는 아이랑 계산해주고
                            //있었네 ㅁㅊ ㄷㄷㄷ

                            ButtonClicks();
                            if (J_ItemManager.j_Item.items2[j].auount == 0)
                            {
                                // J_ItemManager.j_Item.items2[j].GetComponent<>
                                slotButton.SetActive(false);
                                //J_Inventory.j_Inventory.items[j].GetComponent<J_Slots>().mainIamge.SetActive(false);
                                J_ItemManager.j_Item.items2[j] = null;
                            }
                            break;
                        }
                    }

                    break;
                }
            }
        }
    }