Example #1
0
        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;
        }
Example #2
0
        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;
            }
        }
Example #3
0
        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));
        }