using System; using System.Collections.Generic; using ET; using GFGGame; namespace GFGGame { public static class FieldSProxy { public static async ETTask ReqFieldInstanceInfos() { M2C_GetFieldInstanceInfos response = null; response = (M2C_GetFieldInstanceInfos)await MessageHelper.SendToServer(new C2M_GetFieldInstanceInfos()); if (response != null) { if (response.Error == ErrorCode.ERR_Success) { // FieldInfos fieldInfos =new FieldInfos(); FieldDataManager.Instance.fieldInfos.theme = response.Theme; FieldDataManager.Instance.fieldInfos.highestLvls = new Dictionary(); for (int i = 0; i < response.kHighestLvl.Count; i++) { FieldDataManager.Instance.fieldInfos.highestLvls.Add(response.kHighestLvl[i], response.vHighestLvl[i]); } FieldDataManager.Instance.fieldInfos.bonusWeekly = response.BonusWeekly; FieldDataManager.Instance.fieldInfos.bonusMaxLimit = response.BonusMaxLimit; FieldDataManager.Instance.fieldInfos.hasBonus = response.HasBonus; FieldDataManager.Instance.fieldInfos.taskDic = new Dictionary(); for (int i = 0; i < response.kTaskIds.Count; i++) { FieldDataManager.Instance.fieldInfos.taskDic.Add(response.kTaskIds[i], response.vTaskStatus[i]); } // FieldDataManager.Instance.fieldInfos=fieldInfos; return true; } } return false; } public static async ETTask ReqFieldInstanceResult() { M2C_GetFieldInstanceResult response = null; response = (M2C_GetFieldInstanceResult)await MessageHelper.SendToServer(new C2M_GetFieldInstanceResult()); if (response != null) { if (response.Error == ErrorCode.ERR_Success) { // FieldResult fieldResult = FieldDataManager.Instance.fieldResult; FieldDataManager.Instance.fieldResult.passLvl = response.PassLvl; FieldDataManager.Instance.fieldResult.bonusList = ItemUtil.CreateItemDataList(response.BonusList); FieldDataManager.Instance.fieldResult.costNum = response.CostNum; FieldDataManager.Instance.fieldResult.chapterId = response.ChapterId; // FieldInfos fieldInfos = FieldDataManager.Instance.fieldInfos; FieldDataManager.Instance.fieldInfos.highestLvls[FieldDataManager.Instance.fieldResult.chapterId] = response.HighestLvl; FieldDataManager.Instance.fieldInfos.bonusWeekly = response.BonusWeekly; for (int i = 0; i < response.kTaskIds.Count; i++) { if (!FieldDataManager.Instance.fieldInfos.taskDic.ContainsKey(response.kTaskIds[i])) { FieldDataManager.Instance.fieldInfos.taskDic.Add(response.kTaskIds[i], response.vTaskStatus[i]); } else { FieldDataManager.Instance.fieldInfos.taskDic[response.kTaskIds[i]] = response.vTaskStatus[i]; } } EventAgent.DispatchEvent(ConstMessage.FIELD_RESULT); return true; } } return false; } public static async ETTask ReqFieldTaskBonus(int taskId) { M2C_GetFieldTaskBonus response = null; response = (M2C_GetFieldTaskBonus)await MessageHelper.SendToServer(new C2M_GetFieldTaskBonus() { TaskId = taskId }); if (response != null) { if (response.Error == ErrorCode.ERR_Success) { // FieldInfos fieldInfos = FieldDataManager.Instance.fieldInfos; FieldDataManager.Instance.fieldInfos.bonusMaxLimit = response.BonusMaxLimit; FieldDataManager.Instance.fieldInfos.taskDic[response.TaskId] = response.TaskStatus; EventAgent.DispatchEvent(ConstMessage.FIELD_TASK); return true; } } return false; } } }