public void InitAchieveObjiects() { List <Achieve> Achievelist = new List <Achieve>(); var tpls = CSTable.StaticDataManager.AchieveTpl.Dict; foreach (var i in tpls) { Achieve ai = new Achieve(mRole, i.Value); AcceptAchieveData data = GetAchieveData(i.Key); ai.Init(data); Achievelist.Add(ai); } AchieveDict[CSCommon.eAchieveType.Achieve] = Achievelist; List <Achieve> Achievelist2 = new List <Achieve>(); var tpls2 = CSTable.StaticDataManager.AchieveName.Dict; foreach (var i in tpls2) { Achieve ai = new Achieve(mRole, i.Value); AcceptAchieveData data = GetAchieveData(i.Key); ai.Init(data); Achievelist2.Add(ai); } AchieveDict[CSCommon.eAchieveType.AchieveName] = Achievelist2; }
public void AchieveUnSerialize(byte[] buffer) { AcceptAchieveDict.Clear(); if (buffer == null || buffer.Length <= 0) { return; } RPC.DataReader dr = new RPC.DataReader(buffer, 0, buffer.Length, buffer.Length); int count = dr.ReadInt32(); for (int i = 0; i < count; i++) { AcceptAchieveData data = new AcceptAchieveData(); data.id = dr.ReadInt32(); data.targetNum = dr.ReadInt32(); data.getReward = dr.ReadByte(); AcceptAchieveDict[data.id] = data; } }
public bool Init(AcceptAchieveData _data) { data = _data; data.id = mTemplate.id; if (data.targetNum >= mTemplate.targetNum) { return(false); } BaseGameLogic <IAchieveObjective> bgLogic = (BaseGameLogic <IAchieveObjective>)GameLogicManager.Instance.GetGameLogic(eGameLogicType.AchieveLogic, (short)mTemplate.type); if (null == bgLogic) { return(false); } mObjective = bgLogic.Logic; return(mObjective.OnInit(this)); }