コード例 #1
0
    IEnumerator ItemEnable()
    {
        if (state == "enable" && !isDropBtn)
        {
            probabilityVar = ((float)UnityEngine.Random.Range(0, maxVal)) / maxVal;
            int  posRan = UnityEngine.Random.Range(0, 11);
            bool isHave = true;
            while (isHave)
            {
                posRan = UnityEngine.Random.Range(0, 11);
                if (!plantPosIndex.Contains(posRan))
                {
                    isHave = false;
                }
            }

            if (plantPosIndex.Count <= 12)
            {
                if (probabilityVar <= 0.5f && probabilityVar > 0 && !plantName.Contains("NotTreeButRock"))
                {
                    state = "disable";
                    tSeedButton.interactable = false;
                    btColor.color            = new Color32(152, 152, 152, 255);
                    Debug.Log("아이템 대기시간");
                    int plantIDToInt = (int)PlantNameEnum.NotTreeButRock_Lv1;
                    loginScript.Instance.UseItem("tsItem", itemNum);
                    loginScript.Instance.ItemCountCheck("tsItem");

                    loginScript.Instance.UpdatePlantListTable("NotTreeButRock", plantIDToInt, "WaterEXP", posRan, 1, 0.0f, true);
                    itemNumber = loginScript.tsGetItem;
                    currentExp = loginScript.Exp;
                    //_plantExpPanel.CallExpList();
                    yield return(new WaitForSeconds(3f));

                    state = "enable";
                    tSeedButton.interactable = true;
                    btColor.color            = new Color32(255, 255, 255, 255);
                    //이게 안먹히네*****************************************************
                    _cloudRecoTrackableEventHandler.CallRenewPlantList();
                    Debug.Log("꼬지모 생성!");
                }
                else if (probabilityVar > 0.5f && !plantName.Contains("JustBamboo"))
                {
                    state = "disable";
                    tSeedButton.interactable = false;
                    btColor.color            = new Color32(152, 152, 152, 255);
                    Debug.Log("아이템 대기시간");
                    int plantIDToInt = (int)PlantNameEnum.JustBamboo_Lv1;
                    loginScript.Instance.UseItem("tsfsItem", itemNum);
                    loginScript.Instance.ItemCountCheck("tsItem");

                    loginScript.Instance.UpdatePlantListTable("JustBamboo", plantIDToInt, "WaterEXP", posRan, 1, 0.0f, true);
                    //posNumber값을 8로준 이유는 8이 화분 딱 중앙임, 물론 랜덤랜지 해서 줘도 되긴함, 나중에 해당 자리에 식물이 잇는지 없는지 판단해서 넣는거 추가하면 좋을듯
                    itemNumber = loginScript.tsGetItem;
                    currentExp = loginScript.Exp;
                    //_plantExpPanel.CallExpList();
                    yield return(new WaitForSeconds(3f));

                    state = "enable";
                    tSeedButton.interactable = true;
                    btColor.color            = new Color32(255, 255, 255, 255);
                    //이게 안먹히네*****************************************************
                    _cloudRecoTrackableEventHandler.CallRenewPlantList();
                    Debug.Log("대나무 생성!");
                }
                else
                {
                    Debug.Log("Nothing Happened");
                }
            }
        }

        if (isDropBtn)
        {
            loginScript.Instance.UseItem("tsItem", itemNum);
            loginScript.Instance.ItemCountCheck("tsItem");
        }
    }
コード例 #2
0
    IEnumerator ItemEnable()
    {
        if (state == "enable" && !isDropBtn)
        {
            StartCoroutine(RenewPlantList());
            probabilityVar = ((float)UnityEngine.Random.Range(0, maxVal)) / maxVal;
            int  posRan = UnityEngine.Random.Range(0, 11);
            bool isHave = true;
            while (isHave)
            {
                posRan = UnityEngine.Random.Range(0, 11);
                if (!plantPosIndex.Contains(posRan))
                {
                    isHave = false;
                }
            }
            if (plantPosIndex.Count <= 12)
            {
                if (probabilityVar <= 0.5f && probabilityVar > 0)
                {
                    //이미 식물 있으면 PoisonMushroom_R_Lv1[i] 형식으로 추가하고싶은데 그럴려면 where plantID = x; 형식으로 찾아서 카운트하는거 말고뭐가잇을까
                    //클라우드레코에서 받아와서 해도될거같다
                    //if ()
                    //{

                    //}
                    //itemName 올릴경험치종류(= PlantList테이블의 필드명, WaterEXP, SunEXP, FertilizerEXP, NutrientEXP 중 하나)
                    //UpdatePlantListTable(string userName, string plantName, string itemName, int posNumber, int level, float expAmount)
                    //UpdatePlantListTable(string plantName, string itemName, int posNumber, int level, float expAmount)
                    //테이블 필드는(PlantPos, PlantName, Lv, WaterEXP, SunEXP, FertilizerEXP, NutrientEXP)
                    //////////////// loginScript말고 CloudRecoTrackableHandler에서 레벨이랑 위치 인덱스 가져와서 이미 있는건지 검사, 있는거면 다시 해주기
                    state = "disable";
                    sunSeedButton.interactable = false;
                    btColor.color = new Color32(152, 152, 152, 255);
                    Debug.Log("아이템 대기시간");
                    loginScript.Instance.UseItem("sfsItem", itemNum);
                    loginScript.Instance.ItemCountCheck("sfsItem");

                    //int plantIDToInt = Convert.ToInt32(CloudRecoTrackableEventHandler.PlantNameEnum.PoisonMushroom_R_Lv1);
                    int plantIDToInt = (int)PlantNameEnum.PoisonMushroom_R_Lv1;
                    loginScript.Instance.UpdatePlantListTable("PoisonMushroom_R", plantIDToInt, "WaterEXP", posRan, 1, 0.0f, true);
                    //posNumber값을 8로준 이유는 8이 화분 딱 중앙임, 물론 랜덤랜지 해서 줘도 되긴함, waterEXP준이유는 그냥 아무값이나 준거
                    //나중에 해당 자리에 식물이 잇는지 없는지 판단해서 넣는거 추가하면 좋을듯
                    itemNumber = loginScript.sfsGetItem;
                    currentExp = loginScript.Exp;
                    _plantExpPanel.CallExpList();
                    yield return(new WaitForSeconds(3f));

                    state = "enable";
                    sunSeedButton.interactable = true;
                    btColor.color = new Color32(255, 255, 255, 255);
                    //이게 안먹히네*****************************************************
                    _cloudRecoTrackableEventHandler.CallRenewPlantList();
                    Debug.Log("빨간독버섯 생성!");
                }
                else if (probabilityVar > 0.5f)
                {
                    state = "disable";
                    sunSeedButton.interactable = false;
                    btColor.color = new Color32(152, 152, 152, 255);
                    Debug.Log("아이템 대기시간");
                    loginScript.Instance.UseItem("sfsItem", itemNum);
                    loginScript.Instance.ItemCountCheck("sfsItem");

                    int plantIDToInt = (int)PlantNameEnum.PoisonMushroom_B_Lv1;
                    loginScript.Instance.UpdatePlantListTable("PoisonMushroom_B", plantIDToInt, "WaterEXP", posRan, 1, 0.0f, true);
                    //posNumber값을 8로준 이유는 8이 화분 딱 중앙임, 물론 랜덤랜지 해서 줘도 되긴함, 나중에 해당 자리에 식물이 잇는지 없는지 판단해서 넣는거 추가하면 좋을듯
                    itemNumber = loginScript.sfsGetItem;
                    currentExp = loginScript.Exp;
                    //_plantExpPanel.CallExpList();
                    yield return(new WaitForSeconds(3f));

                    state = "enable";
                    sunSeedButton.interactable = true;
                    btColor.color = new Color32(255, 255, 255, 255);
                    //이게 안먹히네*****************************************************
                    _cloudRecoTrackableEventHandler.CallRenewPlantList();
                    Debug.Log("파란독버섯 생성!");
                }
                else
                {
                    Debug.Log("Nothing Happened");
                }
            }
        }

        if (isDropBtn)
        {
            loginScript.Instance.UseItem("sfsItem", itemNum);
            loginScript.Instance.ItemCountCheck("sfsItem");
        }
    }