Пример #1
0
        public override void Serialize(GenericWriter writer)
        {
            base.Serialize(writer);

            int version = writer.SetVersion(1);

            switch (version)
            {
            case 1:
            {
                writer.Write(SkipTicks);
                writer.Write(SkippedTicks);
            }
                goto case 0;

            case 0:
            {
                writer.WriteBlock(
                    w =>
                    {
                        writer.Write(CurrentSeason);
                        writer.Write(TopListCount);
                        writer.Write(RunnersUpCount);

                        writer.WriteType(ScheduleInfo, t => ScheduleInfo.Serialize(w));

                        writer.Write(AutoPvP.SeasonSchedule.Enabled);
                    });

                writer.WriteBlock(w => writer.WriteType(Rewards, t => Rewards.Serialize(w)));
            }
            break;
            }
        }
Пример #2
0
        public override void Serialize(GenericWriter writer)
        {
            base.Serialize(writer);

            int version = writer.SetVersion(0);

            switch (version)
            {
            case 0:
            {
                writer.WriteBlock(
                    () => writer.WriteType(
                        Local,
                        t =>
                    {
                        if (t != null)
                        {
                            Local.Serialize(writer);
                        }
                    }));

                writer.WriteBlock(
                    () => writer.WriteType(
                        World,
                        t =>
                    {
                        if (t != null)
                        {
                            World.Serialize(writer);
                        }
                    }));
            }
            break;
            }
        }
Пример #3
0
        private static bool SerializeBattle(GenericWriter writer, PvPSerial key, PvPBattle val)
        {
            int version = writer.SetVersion(0);

            switch (version)
            {
            case 0:
            {
                writer.WriteBlock(
                    () => writer.WriteType(
                        key,
                        t =>
                    {
                        if (t != null)
                        {
                            key.Serialize(writer);
                        }
                    }));

                writer.WriteBlock(
                    () => writer.WriteType(
                        val,
                        t =>
                    {
                        if (t != null)
                        {
                            val.Serialize(writer);
                        }
                    }));
            }
            break;
            }

            return(true);
        }
Пример #4
0
        public override void Serialize(GenericWriter writer)
        {
            base.Serialize(writer);

            var version = writer.SetVersion(1);

            switch (version)
            {
            case 1:
                writer.WriteBlock(w => w.WriteType(Missions, t => Missions.Serialize(w)));
                goto case 0;

            case 0:
            {
                writer.WriteBlock(w => w.WriteType(Broadcasts, t => Broadcasts.Serialize(w)));
                writer.WriteBlock(w => w.WriteType(Locations, t => Locations.Serialize(w)));
                writer.WriteBlock(w => w.WriteType(Restrictions, t => Restrictions.Serialize(w)));
                writer.WriteBlock(w => w.WriteType(Rewards, t => Rewards.Serialize(w)));
                writer.WriteBlock(w => w.WriteType(Rules, t => Rules.Serialize(w)));
                writer.WriteBlock(w => w.WriteType(Sounds, t => Sounds.Serialize(w)));
                writer.WriteBlock(w => w.WriteType(SuddenDeath, t => SuddenDeath.Serialize(w)));
                writer.WriteBlock(w => w.WriteType(Timing, t => Timing.Serialize(w)));
                writer.WriteBlock(w => w.WriteType(Weather, t => Weather.Serialize(w)));
            }
            break;
            }
        }
Пример #5
0
        public virtual void Serialize(GenericWriter writer)
        {
            var version = writer.SetVersion(6);

            if (version > 4)
            {
                writer.WriteBlock(
                    w =>
                {
                    if (version > 5)
                    {
                        Serial.Serialize(w);
                    }
                    else
                    {
                        w.WriteType(Serial, t => Serial.Serialize(w));
                    }
                });
            }

            switch (version)
            {
            case 6:
            case 5:
            case 4:
            case 3:
                writer.Write(RespawnOnStart);
                goto case 2;

            case 2:
                writer.Write(KickOnDeath);
                goto case 1;

            case 1:
            {
                GateLocation.Serialize(writer);
                writer.Write(Gate);
            }
                goto case 0;

            case 0:
            {
                writer.Write(_Name);
                writer.Write(_MinCapacity);
                writer.Write(_MaxCapacity);
                writer.Write(_Color);
                writer.Write(_HomeBase);
                writer.Write(_SpawnPoint);

                writer.Write(RespawnOnDeath);
                writer.Write(RespawnDelay);

                writer.WriteBlock(w => w.WriteType(Statistics));
            }
            break;
            }
        }
Пример #6
0
        public override void Serialize(GenericWriter writer)
        {
            base.Serialize(writer);

            int version = writer.SetVersion(0);

            switch (version)
            {
            case 0:
            {
                writer.WriteBlock(
                    () => writer.WriteType(
                        Items,
                        t =>
                    {
                        if (t != null)
                        {
                            Items.Serialize(writer);
                        }
                    }));

                writer.WriteBlock(
                    () => writer.WriteType(
                        Pets,
                        t =>
                    {
                        if (t != null)
                        {
                            Pets.Serialize(writer);
                        }
                    }));

                writer.WriteBlock(
                    () => writer.WriteType(
                        Skills,
                        t =>
                    {
                        if (t != null)
                        {
                            Skills.Serialize(writer);
                        }
                    }));

                writer.WriteBlock(
                    () => writer.WriteType(
                        Spells,
                        t =>
                    {
                        if (t != null)
                        {
                            Spells.Serialize(writer);
                        }
                    }));
            }
            break;
            }
        }
Пример #7
0
        public override void Serialize(GenericWriter writer)
        {
            base.Serialize(writer);

            writer.SetVersion(0);

            writer.Write(Enabled);

            writer.WriteBlock(w => w.WriteType(Team, (w1, t) => Team.Serialize(w1)));
            writer.WriteBlock(w => w.WriteType(Player, (w1, t) => Player.Serialize(w1)));
        }
Пример #8
0
        private static bool SerializeBattle(GenericWriter writer, PvPSerial key, PvPBattle val)
        {
            var version = writer.SetVersion(0);

            switch (version)
            {
            case 0:
            {
                writer.WriteBlock(w => w.WriteType(key, t => key.Serialize(w)));
                writer.WriteBlock(w => w.WriteType(val, t => val.Serialize(w)));
            }
            break;
            }

            return(true);
        }
Пример #9
0
        public override void Serialize(GenericWriter writer)
        {
            base.Serialize(writer);

            int version = writer.SetVersion(1);

            switch (version)
            {
            case 1:
            {
                writer.WriteFlag(Access);
                writer.Write(LoginPopup);
            }
                goto case 0;

            case 0:
            {
                writer.Write(DefaultWidth);
                writer.Write(DefaultHeight);
                writer.Write(PositionCommand);
                writer.Write(PopupCommand);

                writer.WriteBlock(() => Toolbars.DefaultEntries.Serialize(writer));
            }
            break;
            }
        }
Пример #10
0
        public override void Serialize(GenericWriter writer)
        {
            base.Serialize(writer);

            var version = writer.SetVersion(0);

            switch (version)
            {
            case 0:
            {
                writer.WriteBlock(w => w.WriteType(Loser, t => Loser.Serialize(w)));
                writer.WriteBlock(w => w.WriteType(Winner, t => Winner.Serialize(w)));
            }
            break;
            }
        }
Пример #11
0
        private static void SaveRestore(GenericWriter writer)
        {
            var version = writer.SetVersion(0);

            switch (version)
            {
            case 0:
            {
                writer.WriteBlock(w =>
                    {
                        w.Write(Maps.Count);

                        foreach (var map in Maps.Values)
                        {
                            w.WriteBlockDictionary(map.BounceInfo, (w1, m, p) =>
                            {
                                w1.Write(m);
                                w1.WriteLocation(p);
                            });

                            w.WriteBlockList(map.Items, (w1, i) =>
                            {
                                w1.Write(i);
#if NEWPARENT
                                w1.WriteEntity(i.Parent);
#else
                                w1.WriteEntity(i.ParentEntity);
#endif
                            });
                        }
                    });
            }
            break;
            }
        }
Пример #12
0
        public virtual void Serialize(GenericWriter writer)
        {
            var version = writer.SetVersion(3);

            if (version > 2)
            {
                UID.Serialize(writer);
            }

            switch (version)
            {
            case 3:
            case 2:
            case 1:
            case 0:
            {
                if (version < 2)
                {
                    writer.WriteType(_Info, t => _Info.Serialize(writer));
                }
                else
                {
                    writer.WriteBlock(w => w.WriteType(_Info, t => _Info.Serialize(w)));
                }

                writer.Write(_Enabled);
                writer.Write(_Name);
                writer.WriteFlag(_DefaultPriority);

                if (_LastGlobalTick != null)
                {
                    writer.Write(true);
                    writer.Write(_LastGlobalTick.Value);
                }
                else
                {
                    writer.Write(false);
                }

                if (_NextGlobalTick != null)
                {
                    writer.Write(true);
                    writer.Write(_NextGlobalTick.Value);
                }
                else
                {
                    writer.Write(false);
                }

                writer.Write(Delay);
                writer.Write(Interval);
            }
            break;
            }

            if (version > 0)
            {
                writer.Write(Running);
            }
        }
Пример #13
0
        public override void Serialize(GenericWriter writer)
        {
            base.Serialize(writer);

            int version = writer.SetVersion(0);

            switch (version)
            {
            case 0:
            {
                writer.WriteBlock(w => w.WriteType(Local, t => Local.Serialize(w)));
                writer.WriteBlock(w => w.WriteType(World, t => World.Serialize(w)));
            }
            break;
            }
        }
Пример #14
0
        public override void Serialize(GenericWriter writer)
        {
            base.Serialize(writer);

            int version = writer.SetVersion(0);

            switch (version)
            {
            case 0:
            {
                writer.WriteBlock(w => w.WriteType(Advanced, t => Advanced.Serialize(w)));
                writer.WriteBlock(w => w.WriteType(Statistics, t => Statistics.Serialize(w)));
                writer.WriteBlock(w => w.WriteType(ExecuteCommands, t => ExecuteCommands.Serialize(w)));
            }
            break;
            }
        }
Пример #15
0
        public override void Serialize(GenericWriter writer)
        {
            base.Serialize(writer);

            int version = writer.SetVersion(0);

            switch (version)
            {
            case 0:
            {
                writer.WriteBlock(w => w.WriteType(Items, t => Items.Serialize(w)));
                writer.WriteBlock(w => w.WriteType(Pets, t => Pets.Serialize(w)));
                writer.WriteBlock(w => w.WriteType(Skills, t => Skills.Serialize(w)));
                writer.WriteBlock(w => w.WriteType(Spells, t => Spells.Serialize(w)));
            }
            break;
            }
        }
Пример #16
0
        public override void Serialize(GenericWriter writer)
        {
            base.Serialize(writer);

            var version = writer.SetVersion(1);

            switch (version)
            {
            case 1:
                writer.WriteBlock(w => w.WriteType(Misc, t => Misc.Serialize(w)));
                goto case 0;

            case 0:
            {
                writer.WriteBlock(w => w.WriteType(Commands, t => Commands.Serialize(w)));
                writer.WriteBlock(w => w.WriteType(Profiles, t => Profiles.Serialize(w)));
                writer.WriteBlock(w => w.WriteType(Seasons, t => Seasons.Serialize(w)));
            }
            break;
            }
        }
Пример #17
0
        public override void Serialize(GenericWriter writer)
        {
            base.Serialize(writer);

            var version = writer.SetVersion(1);

            switch (version)
            {
            case 1:
            {
                writer.Write(PetGiveDamageScalar);
                writer.Write(PetTakeDamageScalar);
            }
                goto case 0;

            case 0:
            {
                writer.WriteBlock(w => w.WriteType(Restrictions, t => Restrictions.Serialize(w)));
                writer.WriteBlock(w => w.WriteType(Rules, t => Rules.Serialize(w)));
                writer.WriteBlock(w => w.WriteType(Sounds, t => Sounds.Serialize(w)));
            }
            break;
            }
        }
Пример #18
0
        public void Serialize(GenericWriter writer)
        {
            var version = writer.SetVersion(0);

            switch (version)
            {
            case 0:
            {
                writer.Write(Deleted);
                writer.Write(Owner);
                writer.Write(_Points);

                writer.WriteBlock(w => w.WriteType(_History, t => _History.Serialize(w)));

                writer.WriteBlockList(Subscriptions, (w, b) => w.WriteType(b.Serial, t => b.Serial.Serialize(w)));
            }
            break;
            }
        }
Пример #19
0
        private static bool SerializeMap(GenericWriter writer, InstanceMapSerial serial, InstanceMap map)
        {
            var version = writer.SetVersion(0);

            switch (version)
            {
            case 0:
            {
                writer.WriteBlock(w =>
                    {
                        WriteInstanceMap(w, map);

                        map.Serialize(w);
                    });
            }
            break;
            }

            return(true);
        }
Пример #20
0
        private static bool SerializeProfiles(GenericWriter writer, IAccount key, DonationProfile val)
        {
            int version = writer.SetVersion(0);

            switch (version)
            {
            case 0:
            {
                writer.WriteBlock(
                    w =>
                    {
                        w.Write(key);
                        w.WriteType(val, t => val.Serialize(w));
                    });
            }
            break;
            }

            return(true);
        }
Пример #21
0
        private static bool SerializeDungeon(GenericWriter writer, DungeonSerial serial, Dungeon dungeon)
        {
            var version = writer.SetVersion(0);

            switch (version)
            {
            case 0:
            {
                writer.WriteBlock(w =>
                    {
                        WriteDungeon(w, dungeon);

                        dungeon.Serialize(w);
                    });
            }
            break;
            }

            return(true);
        }
Пример #22
0
        public void Serialize(GenericWriter writer)
        {
            int version = writer.SetVersion(0);

            switch (version)
            {
            case 0:
            {
                writer.Write(Deleted);
                writer.Write(Owner);
                writer.Write(_Points);

                writer.WriteBlock(
                    () => writer.WriteType(
                        _History,
                        t =>
                    {
                        if (t != null)
                        {
                            _History.Serialize(writer);
                        }
                    }));

                writer.WriteBlockList(
                    Subscriptions,
                    b => writer.WriteType(
                        b.Serial,
                        t =>
                    {
                        if (t != null)
                        {
                            b.Serial.Serialize(writer);
                        }
                    }));
            }
            break;
            }
        }
Пример #23
0
        private static bool SerializeProfile(GenericWriter writer, IAccount key, DonationProfile val)
        {
            var version = writer.SetVersion(1);

            writer.WriteBlock(
                w =>
            {
                w.Write(key);

                switch (version)
                {
                case 1:
                    val.Serialize(w);
                    break;

                case 0:
                    w.WriteType(val, t => val.Serialize(w));
                    break;
                }
            });

            return(true);
        }
Пример #24
0
        public override void Serialize(GenericWriter writer)
        {
            base.Serialize(writer);

            int version = writer.SetVersion(0);

            switch (version)
            {
            case 0:
            {
                writer.WriteBlock(
                    () => writer.WriteType(
                        Broadcasts,
                        t =>
                    {
                        if (t != null)
                        {
                            Broadcasts.Serialize(writer);
                        }
                    }));

                writer.WriteBlock(
                    () => writer.WriteType(
                        Locations,
                        t =>
                    {
                        if (t != null)
                        {
                            Locations.Serialize(writer);
                        }
                    }));

                writer.WriteBlock(
                    () => writer.WriteType(
                        Restrictions,
                        t =>
                    {
                        if (t != null)
                        {
                            Restrictions.Serialize(writer);
                        }
                    }));

                writer.WriteBlock(
                    () => writer.WriteType(
                        Rewards,
                        t =>
                    {
                        if (t != null)
                        {
                            Rewards.Serialize(writer);
                        }
                    }));

                writer.WriteBlock(
                    () => writer.WriteType(
                        Rules,
                        t =>
                    {
                        if (t != null)
                        {
                            Rules.Serialize(writer);
                        }
                    }));

                writer.WriteBlock(
                    () => writer.WriteType(
                        Sounds,
                        t =>
                    {
                        if (t != null)
                        {
                            Sounds.Serialize(writer);
                        }
                    }));

                writer.WriteBlock(
                    () => writer.WriteType(
                        SuddenDeath,
                        t =>
                    {
                        if (t != null)
                        {
                            SuddenDeath.Serialize(writer);
                        }
                    }));

                writer.WriteBlock(
                    () => writer.WriteType(
                        Timing,
                        t =>
                    {
                        if (t != null)
                        {
                            Timing.Serialize(writer);
                        }
                    }));

                writer.WriteBlock(
                    () => writer.WriteType(
                        Weather,
                        t =>
                    {
                        if (t != null)
                        {
                            Weather.Serialize(writer);
                        }
                    }));
            }
            break;
            }
        }
Пример #25
0
        public override void Serialize(GenericWriter writer)
        {
            base.Serialize(writer);

            int version = writer.SetVersion(1);

            switch (version)
            {
            case 1:
            {
                writer.WriteBlock(
                    () => writer.WriteType(
                        Misc,
                        t =>
                    {
                        if (t != null)
                        {
                            Misc.Serialize(writer);
                        }
                    }));
            }
                goto case 0;

            case 0:
            {
                writer.WriteBlock(
                    () => writer.WriteType(
                        Commands,
                        t =>
                    {
                        if (t != null)
                        {
                            Commands.Serialize(writer);
                        }
                    }));

                writer.WriteBlock(
                    () => writer.WriteType(
                        Profiles,
                        t =>
                    {
                        if (t != null)
                        {
                            Profiles.Serialize(writer);
                        }
                    }));

                writer.WriteBlock(
                    () => writer.WriteType(
                        Seasons,
                        t =>
                    {
                        if (t != null)
                        {
                            Seasons.Serialize(writer);
                        }
                    }));
            }
            break;
            }
        }
Пример #26
0
        public virtual void Serialize(GenericWriter writer)
        {
            var version = writer.SetVersion(7);

            if (version > 5)
            {
                writer.WriteBlock(
                    w =>
                {
                    if (version > 6)
                    {
                        Serial.Serialize(w);
                    }
                    else
                    {
                        w.WriteType(Serial, t => Serial.Serialize(w));
                    }
                });
            }

            switch (version)
            {
            case 7:
            case 6:
            case 5:
                writer.Write(Hidden);
                goto case 4;

            case 4:
                writer.Write(_FloorItemDelete);
                goto case 3;

            case 3:
            case 2:
                writer.Write(Gate);
                goto case 1;

            case 1:
            {
                writer.Write(Category);
                writer.Write(Ranked);
                writer.Write(InviteWhileRunning);
            }
                goto case 0;

            case 0:
            {
                if (version < 6)
                {
                    writer.WriteBlock(w => w.WriteType(Serial, t => Serial.Serialize(w)));
                }

                writer.Write(DebugMode);
                writer.WriteFlag(_State);
                writer.Write(_Name);
                writer.Write(Description);
                writer.Write(AutoAssign);
                writer.Write(UseTeamColors);
                writer.Write(IgnoreCapacity);
                writer.Write(_SubCommandPrefix);
                writer.Write(QueueAllowed);
                writer.Write(SpectateAllowed);
                writer.Write(KillPoints);
                writer.Write(PointsBase);
                writer.Write(PointsRankFactor);
                writer.Write(IdleKick);
                writer.Write(IdleThreshold);
                writer.WriteFlag(LastState);
                writer.Write(LastStateChange);
                writer.Write(_LightLevel);
                writer.Write(LogoutDelay);

                writer.WriteItemList(Doors, true);

                writer.WriteBlock(w => w.WriteType(Options, t => Options.Serialize(w)));
                writer.WriteBlock(w => w.WriteType(Schedule, t => Schedule.Serialize(w)));
                writer.WriteBlock(w => w.WriteType(BattleRegion, t => BattleRegion.Serialize(w)));
                writer.WriteBlock(w => w.WriteType(SpectateRegion, t => SpectateRegion.Serialize(w)));

                writer.WriteBlockList(Teams, (w, team) => w.WriteType(team, t => team.Serialize(w)));
            }
            break;
            }
        }