123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117 |
- using System;
- using System.Collections.Generic;
- using ET;
- using GFGGame;
- namespace GFGGame
- {
- public static class FieldSProxy
- {
- public static async ETTask<bool> 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<int, int>();
- 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<int, int>();
- for (int i = 0; i < response.kTaskIds.Count; i++)
- {
- FieldDataManager.Instance.fieldInfos.taskDic.Add(response.kTaskIds[i], response.vTaskStatus[i]);
- }
- EventAgent.DispatchEvent(ConstMessage.RED_CHANGE);
- return true;
- }
- }
- return false;
- }
- public static async ETTask<bool> 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<bool> 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;
- }
- //监听田野调查任务状态
- public class FieldTaskState : AMHandler<S2C_FieldTaskBonus>
- {
- protected override async ETTask Run(Session session, S2C_FieldTaskBonus message)
- {
- if (FieldDataManager.Instance.fieldInfos.taskDic != null)
- {
- for (int i = 0; i < message.kTaskIds.Count; i++)
- {
- if (!FieldDataManager.Instance.fieldInfos.taskDic.ContainsKey(message.kTaskIds[i]))
- {
- FieldDataManager.Instance.fieldInfos.taskDic.Add(message.kTaskIds[i], message.vTaskStatus[i]);
- }
- else
- {
- FieldDataManager.Instance.fieldInfos.taskDic[message.kTaskIds[i]] = message.vTaskStatus[i];
- }
- }
- }
- await ETTask.CompletedTask;
- }
- }
- }
- }
|