public void OnClickTrainingCompleteButton() { HeroTrainingManager.Instance.Training(slotNumber); heroTrainingData.isTrainingMax = false; buttonTrainingComplete.interactable = false; isChangable = true; HeroManager.heroDataDic[heroTrainingData.heroID].isTraining = false; HeroTrainingManager.Instance.heroTrainingDataList.Remove(heroTrainingData); heroTrainingData = null; }
void TrainingStartResult(string result) { if (result == "yes") { UIHeroInventory.Instance.OnClickCloseButton(); HeroTrainingData data = new HeroTrainingData(); data.heroID = selectedTrainingHeroID; data.trainingStat = trainingStat; data.slotNumber = slotNumber; data.trainingTime = trainingTime; StartCoroutine(SetHeroTrainingData(data, trainingNeedCoin)); } }
public void Training(int slotNum) { HeroTrainingData data = heroTrainingDataList.Find(x => x.slotNumber == slotNum); if (HeroManager.heroDataDic[data.heroID].trainingDataList[data.trainingStat].training < HeroManager.heroDataDic[data.heroID].trainingMax) { HeroManager.heroDataDic[data.heroID].trainingDataList[data.trainingStat].training++; StartCoroutine(HeroTrainingDataServerInput(HeroManager.heroDataDic[data.heroID].trainingDataList[data.trainingStat].key, data.heroID)); Debug.Log("수련 완료"); if (UIHeroTraining.Instance != null) { UIHeroTraining.Instance.FinishTraining(slotNum); } } }
IEnumerator SetHeroTrainingData(HeroTrainingData data, double gold) { WWWForm form = new WWWForm(); string php = "HeroTraining.php"; form.AddField("userID", User.Instance.userID); form.AddField("heroID", data.heroID); form.AddField("trainingStat", data.trainingStat); form.AddField("slotNumber", data.slotNumber); form.AddField("goldAmount", gold.ToString()); form.AddField("type", 2); string result = ""; yield return(StartCoroutine(WebServerConnectManager.Instance.WWWCoroutine(php, form, x => result = x))); if (!string.IsNullOrEmpty(result)) { if (result == "99") { UIPopupManager.ShowOKPopup("골드 부족", "골드가 부족합니다", null); yield break; } else if (result == "100") { UIPopupManager.ShowOKPopup("중복된 영웅 선택", "이미 훈련중인 영웅을 선택하셨습니다", null); yield break; } else { data.diffTime = float.Parse(result); heroTrainingSlotList[slotNumber].heroTrainingData = data; heroTrainingSlotList[slotNumber].InitTrainingSlot(); data.isTrainingStart = true; HeroTrainingManager.Instance.heroTrainingDataList.Add(data); trainingStat = 100; selectHeroPanel.SetActive(false); } } }
void OnWebServerResult(Dictionary <string, object> resultDic) { if (resultDic.ContainsKey("heroTraining")) { string text = JsonParser.Decode(JsonMapper.ToJson(resultDic["heroTraining"])); JsonReader json = new JsonReader(text); JsonData jsonData = JsonMapper.ToObject(json); int slotNum = 0; for (int i = 0; i < jsonData.Count; i++) { slotNum = jsonData[i]["slotNumber"].ToInt(); HeroTrainingData data = new HeroTrainingData(); data.Init(jsonData[i]); heroTrainingDataList.Add(data); //UIHeroTraining.Instance.heroTrainingSlotList[slotNum].heroTrainingData = data; //UIHeroTraining.Instance.heroTrainingSlotList[slotNum].InitTrainingSlot(); } } }
public void FinishTraining(int slotNum) { heroTrainingSlotList[slotNum].InitTrainingSlot(); HeroTrainingData data = new HeroTrainingData(); data.heroID = string.Empty; data.slotNumber = slotNum; double gold = 0f; if (DailyMissionManager.Instance && DailyMissionManager.Instance.heroTrainingCount < 1) { DailyMissionManager.Instance.heroTrainingCount += 1; StartCoroutine(DailyMissionManager.Instance.SetDailyMission(DailyMissionType.HeroTraining)); } if (UserQuestManager.Instance && UserQuestManager.Instance.colaTrainingCount < 1 && HeroManager.heroDataDic[heroTrainingSlotList[slotNum].heroTrainingData.heroID].heroID == "Knight_02_Hero") { UserQuestManager.Instance.colaTrainingCount += 1; StartCoroutine(UserQuestManager.Instance.SetUserQuest(UserQuestType.ColaTraining)); } StartCoroutine(SetHeroTrainingData(data, gold)); }