コード例 #1
0
ファイル: HumanInformations.cs プロジェクト: mangaMag/LastEmu
        public virtual void Deserialize(IDataReader reader)
        {
            this.restrictions = new ActorRestrictionsInformations();
            this.restrictions.Deserialize(reader);
            this.sex = reader.ReadBoolean();
            ushort num = reader.ReadUShort();

            this.options = new HumanOption[num];
            for (int i = 0; i < num; i++)
            {
                this.options[i] = ProtocolTypeManager.GetInstance <HumanOption>(reader.ReadUShort());
                this.options[i].Deserialize(reader);
            }
        }
コード例 #2
0
        public override void Deserialize(ICustomDataInput reader)
        {
            m_barType = reader.ReadByte();
            int shortcutsCount = reader.ReadUShort();
            int shortcutsIndex;

            m_shortcuts = new System.Collections.Generic.List <Shortcut>();
            for (shortcutsIndex = 0; (shortcutsIndex < shortcutsCount); shortcutsIndex = (shortcutsIndex + 1))
            {
                Shortcut objectToAdd = ProtocolTypeManager.GetInstance <Shortcut>((short)reader.ReadUShort());
                objectToAdd.Deserialize(reader);
                m_shortcuts.Add(objectToAdd);
            }
        }
コード例 #3
0
        public override void Deserialize(IDataReader reader)
        {
            base.Deserialize(reader);
            int teamMembersCount = reader.ReadUShort();
            int teamMembersIndex;

            m_teamMembers = new System.Collections.Generic.List <FightTeamMemberInformations>();
            for (teamMembersIndex = 0; (teamMembersIndex < teamMembersCount); teamMembersIndex = (teamMembersIndex + 1))
            {
                FightTeamMemberInformations objectToAdd = ProtocolTypeManager.GetInstance <FightTeamMemberInformations>((short)reader.ReadUShort());
                objectToAdd.Deserialize(reader);
                m_teamMembers.Add(objectToAdd);
            }
        }
コード例 #4
0
        public override void Deserialize(IDataReader reader)
        {
            var interactiveElementsCount = reader.ReadUShort();

            InteractiveElements = new List <InteractiveElement>();
            for (var interactiveElementsIndex = 0;
                 interactiveElementsIndex < interactiveElementsCount;
                 interactiveElementsIndex++)
            {
                var objectToAdd = ProtocolTypeManager.GetInstance <InteractiveElement>(reader.ReadUShort());
                objectToAdd.Deserialize(reader);
                InteractiveElements.Add(objectToAdd);
            }
        }
コード例 #5
0
        public virtual void Deserialize(IDataReader reader)
        {
            restrictions = new Types.ActorRestrictionsInformations();
            restrictions.Deserialize(reader);
            sex = reader.ReadBoolean();
            var limit = reader.ReadUShort();

            options = new Types.HumanOption[limit];
            for (int i = 0; i < limit; i++)
            {
                options[i] = ProtocolTypeManager.GetInstance <Types.HumanOption>(reader.ReadShort());
                options[i].Deserialize(reader);
            }
        }
コード例 #6
0
        public override void Deserialize(ICustomDataInput reader)
        {
            int boostToUpdateListCount = reader.ReadUShort();
            int boostToUpdateListIndex;

            m_boostToUpdateList = new System.Collections.Generic.List <UpdateMountBoost>();
            for (boostToUpdateListIndex = 0; (boostToUpdateListIndex < boostToUpdateListCount); boostToUpdateListIndex = (boostToUpdateListIndex + 1))
            {
                UpdateMountBoost objectToAdd = ProtocolTypeManager.GetInstance <UpdateMountBoost>((short)reader.ReadUShort());
                objectToAdd.Deserialize(reader);
                m_boostToUpdateList.Add(objectToAdd);
            }
            m_rideId = reader.ReadVarInt();
        }
コード例 #7
0
        public override void Deserialize(ICustomDataInput reader)
        {
            m_houseId = reader.ReadVarUhInt();
            int doorsOnMapCount = reader.ReadUShort();
            int doorsOnMapIndex;

            m_doorsOnMap = new System.Collections.Generic.List <int>();
            for (doorsOnMapIndex = 0; (doorsOnMapIndex < doorsOnMapCount); doorsOnMapIndex = (doorsOnMapIndex + 1))
            {
                m_doorsOnMap.Add(reader.ReadInt());
            }
            m_properties = ProtocolTypeManager.GetInstance <HouseInstanceInformations>((short)reader.ReadUShort());
            m_properties.Deserialize(reader);
        }
コード例 #8
0
ファイル: FrameManager.cs プロジェクト: gateaubleu/Burning
        public static void Initialize(string assemblyName)
        {
            if (!IsInitialized)
            {
                //initiliaze frame

                ProtocolTypeManager.Initialize();

                Assembly assembly = GetAssemblyByName(assemblyName);
                foreach (var type in assembly.GetTypes().SelectMany(x => x.GetMethods()).Where(m => m.GetCustomAttributes(typeof(PacketId), false).Length > 0).ToArray())
                {
                    PacketId attr       = (PacketId)type.GetCustomAttributes(typeof(PacketId), true)[0];
                    Type     stringType = Type.GetType(type.DeclaringType.FullName + ", " + assemblyName);

                    var instance = Activator.CreateInstance(stringType, null); // instance d'une methode
                    Methods.Add(new FrameData(instance, attr.MessageId, type));
                }

                //initialize message
                assembly = GetAssemblyByName("Burning.DofusProtocol");
                foreach (var type in assembly.GetTypes())
                {
                    if (type.Namespace == null || !type.Namespace.Contains("Burning.DofusProtocol.Network.Messages"))
                    {
                        continue;
                    }

                    object testInstance = Activator.CreateInstance(type);
                    var    getId        = type.GetMethod("get_MessageId").Invoke(testInstance, null);

                    if (getId != null)
                    {
                        try
                        {
                            if (!MessageList.ContainsKey((uint)getId))
                            {
                                MessageList.Add((uint)getId, type);
                            }
                        }
                        catch (Exception ex)
                        {}
                    }
                }



                IsInitialized = true;
                Console.WriteLine("Frame initialized !");
            }
        }
        public override void Deserialize(IDataReader reader)
        {
            base.Deserialize(reader);
            Level = reader.ReadVarUhShort();
            var additionalCount = reader.ReadUShort();

            Additional = new List <FightResultAdditionalData>();
            for (var additionalIndex = 0; additionalIndex < additionalCount; additionalIndex++)
            {
                var objectToAdd = ProtocolTypeManager.GetInstance <FightResultAdditionalData>(reader.ReadUShort());
                objectToAdd.Deserialize(reader);
                Additional.Add(objectToAdd);
            }
        }
コード例 #10
0
 public override void Deserialize(IDataReader reader)
 {
     base.Deserialize(reader);
     breed = reader.ReadSByte();
     sex   = reader.ReadBoolean();
     rank  = reader.ReadVarUhShort();
     if (rank < 0)
     {
         throw new System.Exception("Forbidden value on rank = " + rank + ", it doesn't respect the following condition : rank < 0");
     }
     givenExperience = reader.ReadVarUhLong();
     if (givenExperience < 0 || givenExperience > 9.007199254740992E15)
     {
         throw new System.Exception("Forbidden value on givenExperience = " + givenExperience + ", it doesn't respect the following condition : givenExperience < 0 || givenExperience > 9.007199254740992E15");
     }
     experienceGivenPercent = reader.ReadSByte();
     if (experienceGivenPercent < 0 || experienceGivenPercent > 100)
     {
         throw new System.Exception("Forbidden value on experienceGivenPercent = " + experienceGivenPercent + ", it doesn't respect the following condition : experienceGivenPercent < 0 || experienceGivenPercent > 100");
     }
     rights = reader.ReadVarUhInt();
     if (rights < 0)
     {
         throw new System.Exception("Forbidden value on rights = " + rights + ", it doesn't respect the following condition : rights < 0");
     }
     connected = reader.ReadSByte();
     if (connected < 0)
     {
         throw new System.Exception("Forbidden value on connected = " + connected + ", it doesn't respect the following condition : connected < 0");
     }
     alignmentSide            = reader.ReadSByte();
     hoursSinceLastConnection = reader.ReadUShort();
     if (hoursSinceLastConnection < 0 || hoursSinceLastConnection > 65535)
     {
         throw new System.Exception("Forbidden value on hoursSinceLastConnection = " + hoursSinceLastConnection + ", it doesn't respect the following condition : hoursSinceLastConnection < 0 || hoursSinceLastConnection > 65535");
     }
     moodSmileyId = reader.ReadVarUhShort();
     if (moodSmileyId < 0)
     {
         throw new System.Exception("Forbidden value on moodSmileyId = " + moodSmileyId + ", it doesn't respect the following condition : moodSmileyId < 0");
     }
     accountId = reader.ReadInt();
     if (accountId < 0)
     {
         throw new System.Exception("Forbidden value on accountId = " + accountId + ", it doesn't respect the following condition : accountId < 0");
     }
     achievementPoints = reader.ReadInt();
     status            = ProtocolTypeManager.GetInstance <Types.PlayerStatus>(reader.ReadShort());
     status.Deserialize(reader);
 }
コード例 #11
0
        public override void Deserialize(IDataReader reader)
        {
            base.Deserialize(reader);
            NbWaves = reader.ReadSByte();
            var AlternativesCount = reader.ReadShort();

            Alternatives = new List <GroupMonsterStaticInformations>();
            for (var i = 0; i < AlternativesCount; i++)
            {
                GroupMonsterStaticInformations objectToAdd = ProtocolTypeManager.GetInstance(reader.ReadUShort());
                objectToAdd.Deserialize(reader);
                Alternatives.Add(objectToAdd);
            }
        }
コード例 #12
0
        public override void Deserialize(ICustomDataInput reader)
        {
            base.Deserialize(reader);
            int summonsCount = reader.ReadUShort();
            int summonsIndex;

            m_summons = new System.Collections.Generic.List <GameFightFighterInformations>();
            for (summonsIndex = 0; (summonsIndex < summonsCount); summonsIndex = (summonsIndex + 1))
            {
                GameFightFighterInformations objectToAdd = ProtocolTypeManager.GetInstance <GameFightFighterInformations>((short)reader.ReadUShort());
                objectToAdd.Deserialize(reader);
                m_summons.Add(objectToAdd);
            }
        }
コード例 #13
0
        public override void Deserialize(IDataReader reader)
        {
            base.Deserialize(reader);
            SellType = reader.ReadSByte();
            var OptionsCount = reader.ReadShort();

            Options = new List <HumanOption>();
            for (var i = 0; i < OptionsCount; i++)
            {
                HumanOption objectToAdd = ProtocolTypeManager.GetInstance(reader.ReadUShort());
                objectToAdd.Deserialize(reader);
                Options.Add(objectToAdd);
            }
        }
コード例 #14
0
        public override void Deserialize(IDataReader reader)
        {
            ushort id          = 0;
            var    achievement = new AchievementAchieved();
            var    finishedAchievementsIdsCount = reader.ReadUShort();

            for (var finishedAchievementsIdsIndex = 0; finishedAchievementsIdsIndex < finishedAchievementsIdsCount; finishedAchievementsIdsIndex++)
            {
                id          = reader.ReadUShort();
                achievement = ProtocolTypeManager.GetInstance <AchievementAchieved>(id);
                achievement.Deserialize(reader);
                FinishedAchievementsIds.Add(achievement);
            }
        }
コード例 #15
0
        public override void Deserialize(ICustomDataInput reader)
        {
            base.Deserialize(reader);
            int paddocksCount = reader.ReadUShort();
            int paddocksIndex;

            m_paddocks = new System.Collections.Generic.List <PaddockBuyableInformations>();
            for (paddocksIndex = 0; (paddocksIndex < paddocksCount); paddocksIndex = (paddocksIndex + 1))
            {
                PaddockBuyableInformations objectToAdd = ProtocolTypeManager.GetInstance <PaddockBuyableInformations>((short)reader.ReadUShort());
                objectToAdd.Deserialize(reader);
                m_paddocks.Add(objectToAdd);
            }
        }
コード例 #16
0
        public override void Deserialize(IDataReader reader)
        {
            int idolsCount = reader.ReadUShort();
            int idolsIndex;

            m_idols = new System.Collections.Generic.List <Idol>();
            for (idolsIndex = 0; (idolsIndex < idolsCount); idolsIndex = (idolsIndex + 1))
            {
                Idol objectToAdd = ProtocolTypeManager.GetInstance <Idol>(reader.ReadUShort());
                objectToAdd.Deserialize(reader);
                m_idols.Add(objectToAdd);
            }
            m_idolSource = reader.ReadByte();
        }
コード例 #17
0
        public override void Deserialize(IDataReader reader)
        {
            base.Deserialize(reader);
            SellType = reader.ReadByte();
            var optionsCount = reader.ReadUShort();

            Options = new List <HumanOption>();
            for (var optionsIndex = 0; optionsIndex < optionsCount; optionsIndex++)
            {
                var objectToAdd = ProtocolTypeManager.GetInstance <HumanOption>(reader.ReadUShort());
                objectToAdd.Deserialize(reader);
                Options.Add(objectToAdd);
            }
        }
コード例 #18
0
        public override void Deserialize(IDataReader reader)
        {
            this.subAreaId = reader.ReadVarUhShort();
            this.mapId     = reader.ReadInt();
            ushort num = reader.ReadUShort();

            this.houses = new HouseInformations[num];
            for (int i = 0; i < num; i++)
            {
                this.houses[i] = ProtocolTypeManager.GetInstance <HouseInformations>(reader.ReadUShort());
                this.houses[i].Deserialize(reader);
            }
            num         = reader.ReadUShort();
            this.actors = new GameRolePlayActorInformations[num];
            for (int j = 0; j < num; j++)
            {
                this.actors[j] = ProtocolTypeManager.GetInstance <GameRolePlayActorInformations>(reader.ReadUShort());
                this.actors[j].Deserialize(reader);
            }
            num = reader.ReadUShort();
            this.interactiveElements = new InteractiveElement[num];
            for (int k = 0; k < num; k++)
            {
                this.interactiveElements[k] = ProtocolTypeManager.GetInstance <InteractiveElement>(reader.ReadUShort());
                this.interactiveElements[k].Deserialize(reader);
            }
            num = reader.ReadUShort();
            this.statedElements = new StatedElement[num];
            for (int l = 0; l < num; l++)
            {
                this.statedElements[l] = new StatedElement();
                this.statedElements[l].Deserialize(reader);
            }
            num            = reader.ReadUShort();
            this.obstacles = new MapObstacle[num];
            for (int m = 0; m < num; m++)
            {
                this.obstacles[m] = new MapObstacle();
                this.obstacles[m].Deserialize(reader);
            }
            num         = reader.ReadUShort();
            this.fights = new FightCommonInformations[num];
            for (int n = 0; n < num; n++)
            {
                this.fights[n] = new FightCommonInformations();
                this.fights[n].Deserialize(reader);
            }
            this.hasAggressiveMonsters = reader.ReadBoolean();
        }
コード例 #19
0
 public override void Deserialize(IDataReader reader)
 {
     PlayerId      = reader.ReadVarUhLong();
     PlayerName    = reader.ReadUTF();
     AlignmentSide = reader.ReadSByte();
     Breed         = reader.ReadSByte();
     Sex           = reader.ReadBoolean();
     IsInWorkshop  = reader.ReadBoolean();
     WorldX        = reader.ReadShort();
     WorldY        = reader.ReadShort();
     MapId         = reader.ReadInt();
     SubAreaId     = reader.ReadVarUhShort();
     Status        = ProtocolTypeManager.GetInstance <PlayerStatus>(reader.ReadUShort());
     Status.Deserialize(reader);
 }
コード例 #20
0
 public void Deserialize(IDataReader reader)
 {
     accountId = reader.ReadInt();
     if (accountId < 0)
     {
         throw new System.Exception("Forbidden value on accountId = " + accountId + ", it doesn't respect the following condition : accountId < 0");
     }
     playerId = reader.ReadVarUhLong();
     if (playerId < 0 || playerId > 9.007199254740992E15)
     {
         throw new System.Exception("Forbidden value on playerId = " + playerId + ", it doesn't respect the following condition : playerId < 0 || playerId > 9.007199254740992E15");
     }
     status = ProtocolTypeManager.GetInstance <Types.PlayerStatus>(reader.ReadShort());
     status.Deserialize(reader);
 }
コード例 #21
0
        public override void Deserialize(ICustomDataInput reader)
        {
            int prismsCount = reader.ReadUShort();
            int prismsIndex;

            m_prisms = new System.Collections.Generic.List <PrismGeolocalizedInformation>();
            for (prismsIndex = 0; (prismsIndex < prismsCount); prismsIndex = (prismsIndex + 1))
            {
                var protocol = (short)reader.ReadUShort();
                System.Console.WriteLine("*************** " + protocol + " ***************");
                PrismGeolocalizedInformation objectToAdd = ProtocolTypeManager.GetInstance <PrismGeolocalizedInformation>(protocol);
                objectToAdd.Deserialize(reader);
                m_prisms.Add(objectToAdd);
            }
        }
コード例 #22
0
        public override void Deserialize(IDataReader reader)
        {
            base.Deserialize(reader);
            int objectivesCount = reader.ReadUShort();
            int objectivesIndex;

            m_objectives = new System.Collections.Generic.List <QuestObjectiveInformations>();
            for (objectivesIndex = 0; (objectivesIndex < objectivesCount); objectivesIndex = (objectivesIndex + 1))
            {
                QuestObjectiveInformations objectToAdd = ProtocolTypeManager.GetInstance <QuestObjectiveInformations>(reader.ReadUShort());
                objectToAdd.Deserialize(reader);
                m_objectives.Add(objectToAdd);
            }
            m_stepId = reader.ReadVarUhShort();
        }
コード例 #23
0
        public override void Deserialize(ICustomDataInput reader)
        {
            base.Deserialize(reader);
            m_nbWaves = reader.ReadByte();
            int alternativesCount = reader.ReadUShort();
            int alternativesIndex;

            m_alternatives = new System.Collections.Generic.List <GroupMonsterStaticInformations>();
            for (alternativesIndex = 0; (alternativesIndex < alternativesCount); alternativesIndex = (alternativesIndex + 1))
            {
                GroupMonsterStaticInformations objectToAdd = ProtocolTypeManager.GetInstance <GroupMonsterStaticInformations>((short)reader.ReadUShort());
                objectToAdd.Deserialize(reader);
                m_alternatives.Add(objectToAdd);
            }
        }
コード例 #24
0
        public override void Deserialize(IDataReader reader)
        {
            base.Deserialize(reader);
            m_level = reader.ReadSByte();
            int additionalCount = reader.ReadUShort();
            int additionalIndex;

            m_additional = new System.Collections.Generic.List <FightResultAdditionalData>();
            for (additionalIndex = 0; (additionalIndex < additionalCount); additionalIndex = (additionalIndex + 1))
            {
                FightResultAdditionalData objectToAdd = ProtocolTypeManager.GetInstance <FightResultAdditionalData>(reader.ReadUShort());
                objectToAdd.Deserialize(reader);
                m_additional.Add(objectToAdd);
            }
        }
コード例 #25
0
        public override void Deserialize(IDataReader reader)
        {
            base.Deserialize(reader);
            objectGID = reader.ReadVarUhShort();
            var limit = (ushort)reader.ReadUShort();

            effects = new Types.ObjectEffect[limit];
            for (int i = 0; i < limit; i++)
            {
                effects[i] = ProtocolTypeManager.GetInstance <Types.ObjectEffect>(reader.ReadUShort());
                effects[i].Deserialize(reader);
            }
            objectUID = reader.ReadVarUhInt();
            quantity  = reader.ReadVarUhInt();
        }
コード例 #26
0
        public override void Deserialize(IDataReader reader)
        {
            byte flag1 = reader.ReadByte();

            hasStartupActions = BooleanByteWrapper.GetFlag(flag1, 0);
            tutorielAvailable = BooleanByteWrapper.GetFlag(flag1, 1);
            var limit = reader.ReadUShort();

            characters = new CharacterBaseInformations[limit];
            for (int i = 0; i < limit; i++)
            {
                characters[i] = (CharacterBaseInformations)ProtocolTypeManager.GetInstance(reader.ReadUShort());
                characters[i].Deserialize(reader);
            }
        }
 public virtual void Deserialize(IDataReader reader)
 {
     playerId      = reader.ReadVarUhLong();
     playerName    = reader.ReadUTF();
     alignmentSide = reader.ReadSbyte();
     breed         = reader.ReadSbyte();
     sex           = reader.ReadBoolean();
     isInWorkshop  = reader.ReadBoolean();
     worldX        = reader.ReadShort();
     worldY        = reader.ReadShort();
     mapId         = reader.ReadDouble();
     subAreaId     = reader.ReadVarUhShort();
     status        = ProtocolTypeManager.GetInstance <Types.PlayerStatus>(reader.ReadUShort());
     status.Deserialize(reader);
 }
コード例 #28
0
 public override void Deserialize(ICustomDataInput reader)
 {
     m_status = ProtocolTypeManager.GetInstance <PlayerStatus>((short)reader.ReadUShort());
     m_status.Deserialize(reader);
     m_playerId      = reader.ReadVarUhLong();
     m_playerName    = reader.ReadUTF();
     m_alignmentSide = reader.ReadByte();
     m_breed         = reader.ReadByte();
     m_sex           = reader.ReadBoolean();
     m_isInWorkshop  = reader.ReadBoolean();
     m_worldX        = reader.ReadShort();
     m_worldY        = reader.ReadShort();
     m_mapId         = reader.ReadInt();
     m_subAreaId     = reader.ReadVarUhShort();
 }
コード例 #29
0
 public override void Deserialize(IDataReader reader)
 {
     this.subAreaId = (uint)reader.ReadVarUhShort();
     if (this.subAreaId < 0U)
     {
         throw new Exception("Forbidden value (" + (object)this.subAreaId + ") on element of PrismFightDefenderAddMessage.subAreaId.");
     }
     this.fightId = (uint)reader.ReadVarUhShort();
     if (this.fightId < 0U)
     {
         throw new Exception("Forbidden value (" + (object)this.fightId + ") on element of PrismFightDefenderAddMessage.fightId.");
     }
     this.defender = ProtocolTypeManager.GetInstance <CharacterMinimalPlusLookInformations>((uint)reader.ReadUShort());
     this.defender.Deserialize(reader);
 }
コード例 #30
0
 public virtual void Deserialize(IDataReader reader)
 {
     this.actionId = (uint)reader.ReadVarUhShort();
     if (this.actionId < 0U)
     {
         throw new Exception("Forbidden value (" + (object)this.actionId + ") on element of FightDispellableEffectExtendedInformations.actionId.");
     }
     this.sourceId = reader.ReadDouble();
     if (this.sourceId < -9.00719925474099E+15 || this.sourceId > 9.00719925474099E+15)
     {
         throw new Exception("Forbidden value (" + (object)this.sourceId + ") on element of FightDispellableEffectExtendedInformations.sourceId.");
     }
     this.effect = ProtocolTypeManager.GetInstance <AbstractFightDispellableEffect>((uint)reader.ReadUShort());
     this.effect.Deserialize(reader);
 }