Пример #1
0
 protected override void Read(ClientProcessor psr, NReader rdr)
 {
     Time = rdr.ReadInt32();
     Position = Position.Read(rdr);
     Obj1 = ObjectSlot.Read(rdr);
     Obj2 = ObjectSlot.Read(rdr);
 }
Пример #2
0
 protected override void Read(ClientProcessor psr, NReader rdr)
 {
     BulletId = rdr.ReadByte();
     OwnerId = rdr.ReadInt32();
     ContainerType = rdr.ReadInt16();
     Angle = rdr.ReadSingle();
 }
Пример #3
0
 protected override void Write(ClientProcessor psr, NWriter wtr)
 {
     wtr.Write(Time);
     Position.Write(wtr);
     Obj1.Write(wtr);
     Obj2.Write(wtr);
 }
Пример #4
0
 protected override void Read(ClientProcessor psr, NReader rdr)
 {
     Time = rdr.ReadInt32();
     BulletId = rdr.ReadByte();
     TargetId = rdr.ReadInt32();
     Killed = rdr.ReadBoolean();
 }
 protected override void Read(ClientProcessor psr, NReader rdr)
 {
     AccountListId = rdr.ReadInt32();
     AccountIds = new int[rdr.ReadInt16()];
     for (int i = 0; i < AccountIds.Length; i++)
         AccountIds[i] = rdr.ReadInt32();
 }
Пример #6
0
 public static bool TryConnect(ClientProcessor psr)
 {
     if (Clients.Count >= MAX_CLIENT)
         return false;
     else
         return Clients.TryAdd(psr.Account.AccountId, psr);
 }
 protected override void Write(ClientProcessor psr, NWriter wtr)
 {
     wtr.Write(AccountListId);
     wtr.Write((short)AccountIds.Length);
     foreach (var i in AccountIds)
         wtr.Write(i);
 }
Пример #8
0
 protected override void Write(ClientProcessor psr, NWriter wtr)
 {
     wtr.Write(Time);
     wtr.Write(BulletId);
     wtr.Write(TargetId);
     wtr.Write(Killed);
 }
Пример #9
0
 protected override void Write(ClientProcessor psr, NWriter wtr)
 {
     wtr.Write(BulletId);
     wtr.Write(OwnerId);
     wtr.Write(ContainerType);
     wtr.Write(Angle);
 }
Пример #10
0
 protected override void Read(ClientProcessor psr, NReader rdr)
 {
     Time = rdr.ReadInt32();
     BulletId = rdr.ReadByte();
     ContainerType = rdr.ReadInt16();
     Position = Position.Read(rdr);
     Angle = rdr.ReadSingle();
 }
Пример #11
0
 protected override void Write(ClientProcessor psr, NWriter wtr)
 {
     wtr.Write(Time);
     wtr.Write(BulletId);
     wtr.Write(ContainerType);
     Position.Write(wtr);
     wtr.Write(Angle);
 }
Пример #12
0
 protected override void Read(ClientProcessor psr, NReader rdr)
 {
     Title = rdr.ReadUTF();
     Message = rdr.ReadUTF();
     Button1 = rdr.ReadUTF();
     Button2 = rdr.ReadUTF();
     Type = rdr.ReadUTF();
 }
Пример #13
0
 protected override void Write(ClientProcessor psr, NWriter wtr)
 {
     wtr.WriteUTF(Title);
     wtr.WriteUTF(Message);
     wtr.WriteUTF(Button1);
     wtr.WriteUTF(Button2);
     wtr.WriteUTF(Type);
 }
 protected override void Read(ClientProcessor psr, NReader rdr)
 {
     EffectType = (EffectType)rdr.ReadByte();
     TargetId = rdr.ReadInt32();
     PosA = Position.Read(rdr);
     PosB = Position.Read(rdr);
     Color = ARGB.Read(rdr);
 }
 protected override void Write(ClientProcessor psr, NWriter wtr)
 {
     wtr.Write((byte)EffectType);
     wtr.Write(TargetId);
     PosA.Write(wtr);
     PosB.Write(wtr);
     Color.Write(wtr);
 }
Пример #16
0
 protected override void Write(ClientProcessor psr, NWriter wtr)
 {
     wtr.Write(TickId);
     wtr.Write(Time);
     Position.Write(wtr);
     wtr.Write((short) Records.Length);
     foreach (var i in Records)
         i.Write(wtr);
 }
Пример #17
0
 protected override void Write(ClientProcessor psr, NWriter wtr)
 {
     Position.Write(wtr);
     wtr.Write(Radius);
     wtr.Write(Damage);
     wtr.Write((byte)Effects);
     wtr.Write(EffectDuration);
     wtr.Write(OriginType);
 }
 protected override void Write(ClientProcessor psr, NWriter wtr)
 {
     wtr.Write((short) MyOffers.Length);
     foreach (var i in MyOffers)
         wtr.Write(i);
     wtr.Write((short) YourOffers.Length);
     foreach (var i in YourOffers)
         wtr.Write(i);
 }
Пример #19
0
        protected override void Read(ClientProcessor psr, NReader rdr)
        {
            TickId = rdr.ReadInt32();
            TickTime = rdr.ReadInt32();

            UpdateStatuses = new ObjectStats[rdr.ReadInt16()];
            for (var i = 0; i < UpdateStatuses.Length; i++)
                UpdateStatuses[i] = ObjectStats.Read(rdr);
        }
Пример #20
0
 protected override void Read(ClientProcessor psr, NReader rdr)
 {
     Position = Position.Read(rdr);
     Radius = rdr.ReadSingle();
     Damage = rdr.ReadUInt16();
     Effects = (ConditionEffectIndex)rdr.ReadByte();
     EffectDuration = rdr.ReadSingle();
     OriginType = rdr.ReadInt16();
 }
Пример #21
0
 protected override void Read(ClientProcessor psr, NReader rdr)
 {
     Name = rdr.ReadUTF();
     Host = rdr.ReadUTF();
     Port = rdr.ReadInt32();
     GameId = rdr.ReadInt32();
     KeyTime = rdr.ReadInt32();
     Key = rdr.ReadBytes(rdr.ReadInt16());
 }
Пример #22
0
        protected override void Write(ClientProcessor psr, NWriter wtr)
        {
            wtr.Write(TickId);
            wtr.Write(TickTime);

            wtr.Write((short) UpdateStatuses.Length);
            foreach (var i in UpdateStatuses)
                i.Write(wtr);
        }
Пример #23
0
 protected override void Read(ClientProcessor psr, NReader rdr)
 {
     TickId = rdr.ReadInt32();
     Time = rdr.ReadInt32();
     Position = Position.Read(rdr);
     Records = new TimedPosition[rdr.ReadInt16()];
     for (var i = 0; i < Records.Length; i++)
         Records[i] = TimedPosition.Read(rdr);
 }
Пример #24
0
 protected override void Write(ClientProcessor psr, NWriter wtr)
 {
     wtr.WriteUTF(Name);
     wtr.WriteUTF(Host);
     wtr.Write(Port);
     wtr.Write(GameId);
     wtr.Write(KeyTime);
     wtr.Write((short) Key.Length);
     wtr.Write(Key);
 }
Пример #25
0
 protected override void Write(ClientProcessor psr, NWriter wtr)
 {
     wtr.WriteUTF(Name);
     wtr.Write(ObjectId);
     wtr.Write(Stars);
     wtr.Write(BubbleTime);
     wtr.WriteUTF(Recipient);
     wtr.WriteUTF(Text);
     wtr.WriteUTF(CleanText);
 }
Пример #26
0
 protected override void Read(ClientProcessor psr, NReader rdr)
 {
     Name = rdr.ReadUTF();
     ObjectId = rdr.ReadInt32();
     Stars = rdr.ReadInt32();
     BubbleTime = rdr.ReadByte();
     Recipient = rdr.ReadUTF();
     Text = rdr.ReadUTF();
     CleanText = rdr.ReadUTF();
 }
        protected override void Read(ClientProcessor psr, NReader rdr)
        {
            MyOffers = new bool[rdr.ReadInt16()];
            for (var i = 0; i < MyOffers.Length; i++)
                MyOffers[i] = rdr.ReadBoolean();

            YourOffers = new bool[rdr.ReadInt16()];
            for (var i = 0; i < YourOffers.Length; i++)
                YourOffers[i] = rdr.ReadBoolean();
        }
        protected override void Read(ClientProcessor psr, NReader rdr)
        {
            MyItems = new TradeItem[rdr.ReadInt16()];
            for (var i = 0; i < MyItems.Length; i++)
                MyItems[i] = TradeItem.Read(rdr);

            YourName = rdr.ReadUTF();
            YourItems = new TradeItem[rdr.ReadInt16()];
            for (var i = 0; i < YourItems.Length; i++)
                YourItems[i] = TradeItem.Read(rdr);
        }
        protected override void Write(ClientProcessor psr, NWriter wtr)
        {
            wtr.Write((short)MyItems.Length);
            foreach (var i in MyItems)
                i.Write(wtr);

            wtr.WriteUTF(YourName);
            wtr.Write((short)YourItems.Length);
            foreach (var i in YourItems)
                i.Write(wtr);
        }
Пример #30
0
 public Vault(bool isLimbo, ClientProcessor psr = null)
 {
     Id = VAULT_ID;
     Name = "Vault";
     Background = 2;
     if (!(IsLimbo = isLimbo))
     {
         base.FromWorldMap(typeof(RealmManager).Assembly.GetManifestResourceStream("ServerEngine.realm.worlds.vault.wmap"));
         Init(psr);
     }
 }
Пример #31
0
 public override World GetInstance(ClientProcessor psr)
 {
     return(RealmManager.AddWorld(new Mine(Level)));
 }
Пример #32
0
 protected override void Read(ClientProcessor psr, NReader rdr)
 {
     Message = rdr.ReadUTF();
 }
Пример #33
0
 protected override void Write(ClientProcessor psr, NWriter wtr)
 {
     wtr.Write(BulletId);
     wtr.Write(ObjectId);
 }
Пример #34
0
 protected override void Read(ClientProcessor psr, NReader rdr)
 {
     Time     = rdr.ReadInt32();
     Slot     = ObjectSlot.Read(rdr);
     Position = Position.Read(rdr);
 }
Пример #35
0
 public virtual World GetInstance(ClientProcessor psr)
 {
     return(null);
 }
Пример #36
0
        public Player(ClientProcessor psr)
            : base((short)psr.Character.ObjectType, psr.Random)
        {
            this.psr = psr;
            statsMgr = new StatsManager(this);
            switch(psr.Account.Rank) {
                case 0:
                    Name = psr.Account.Name; break;
                case 1:
                    Name = "[Donator] " + psr.Account.Name; break;
                case 2:
                    Name = "[Helper] " + psr.Account.Name; break;
                case 3:
                    Name = "[GM] " + psr.Account.Name; break;
                case 4:
                    Name = "[Dev] " + psr.Account.Name; break;
                case 5:
                    Name = "[HGM] " + psr.Account.Name; break;
                case 6:
                    Name = "[HDDev] " + psr.Account.Name; break;
                case 7:
                    Name = "[HCDev] " + psr.Account.Name; break;
                case 8:
                    Name = "[Founder] " + psr.Account.Name; break;
            }
            nName = psr.Account.Name;
            AccountId = psr.Account.AccountId;
            Level = psr.Character.Level;
            Experience = psr.Character.Exp;
            ExperienceGoal = GetExpGoal(psr.Character.Level);
            if (psr.Account.Rank > 2)
                Stars = 75;
            else if (psr.Account.Rank > 1)
                Stars = 60;
            else
                Stars = GetStars(); //Temporary (until pub server)
            Texture1 = psr.Character.Tex1;
            Texture2 = psr.Character.Tex2;
            Credits = psr.Account.Credits;
            NameChosen = psr.Account.NameChosen;
            CurrentFame = psr.Account.Stats.Fame;
            Fame = psr.Character.CurrentFame;
            var state = psr.Account.Stats.ClassStates.SingleOrDefault(_ => _.ObjectType == ObjectType);
            if (state != null)
                FameGoal = GetFameGoal(state.BestFame);
            else
                FameGoal = GetFameGoal(0);
            Glowing = false;
            Guild = psr.Account.Guild.Name;
            GuildRank = psr.Account.Guild.Rank;
            if (psr.Character.HitPoints <= 0)
            {
                HP = psr.Character.MaxHitPoints;
                psr.Character.HitPoints = psr.Character.MaxHitPoints;
            }
            else
                HP = psr.Character.HitPoints;
            MP = psr.Character.MagicPoints;
            ConditionEffects = 0;
            OxygenBar = 100;

            Decision = 0;
            combs = new Combinations();
            price = new Prices();

            Locked = psr.Account.Locked != null ? psr.Account.Locked : new List<int>();
            Ignored = psr.Account.Ignored != null ? psr.Account.Ignored : new List<int>();
            using (Database dbx = new Database())
            {
                Locked = dbx.getLockeds(this.AccountId);
                Ignored = dbx.getIgnoreds(this.AccountId);
            }

            Inventory = psr.Character.Equipment.Select(_ => _ == -1 ? null : (XmlDatas.ItemDescs.ContainsKey(_) ? XmlDatas.ItemDescs[_] : null)).ToArray();
            SlotTypes = Utils.FromCommaSepString32(XmlDatas.TypeToElement[ObjectType].Element("SlotTypes").Value);
            Stats = new int[]
            {
                psr.Character.MaxHitPoints,
                psr.Character.MaxMagicPoints,
                psr.Character.Attack,
                psr.Character.Defense,
                psr.Character.Speed,
                psr.Character.HpRegen,
                psr.Character.MpRegen,
                psr.Character.Dexterity,
            };

            Pet = null;
        }
Пример #37
0
 protected override void Read(ClientProcessor psr, NReader rdr)
 {
     Slot = ObjectSlot.Read(rdr);
 }
Пример #38
0
 public override World GetInstance(ClientProcessor psr)
 {
     return(RealmManager.AddWorld(new OryxsChamber()));
 }
Пример #39
0
 protected override void Write(ClientProcessor psr, NWriter wtr)
 {
     wtr.WriteUTF(Message);
 }
Пример #40
0
 public override World GetInstance(ClientProcessor psr)
 {
     return(RealmManager.AddWorld(new UndeadLair()));
 }
Пример #41
0
 protected override void Read(ClientProcessor psr, NReader rdr)
 {
 }
Пример #42
0
 //public void AddPendingAction(ClientProcessor client, Action<RealmTime> callback)
 public void AddPendingPacket(ClientProcessor client, Packet packet)
 {
     pendings.Enqueue(new Tuple <ClientProcessor, Packet>(client, packet));
     //Action<RealmTime>>(client, callback));
     handle.Set();
 }
Пример #43
0
 protected override void Read(ClientProcessor psr, NReader rdr)
 {
     Time = rdr.ReadInt32();
 }
Пример #44
0
 protected override void Read(ClientProcessor psr, NReader rdr)
 {
     CharacterId = rdr.ReadInt32();
 }
Пример #45
0
 protected override void Write(ClientProcessor psr, NWriter wtr)
 {
     Slot.Write(wtr);
 }
Пример #46
0
 protected override void Write(ClientProcessor psr, NWriter wtr)
 {
     wtr.Write(OwnerId);
     wtr.Write(SoundId);
 }
Пример #47
0
 public override World GetInstance(ClientProcessor psr)
 {
     return(RealmManager.AddWorld(new Tutorial(false)));
 }
Пример #48
0
 protected override void Read(ClientProcessor psr, NReader rdr)
 {
     OwnerId = rdr.ReadByte();
     SoundId = rdr.ReadByte();
 }
Пример #49
0
 public override World GetInstance(ClientProcessor psr)
 {
     return(RealmManager.AddWorld(new WineCellarMap()));
 }
Пример #50
0
 public override World GetInstance(ClientProcessor psr)
 {
     return(RealmManager.AddWorld(new LairofDraconis()));
 }
Пример #51
0
 protected override void Write(ClientProcessor psr, NWriter wtr)
 {
     wtr.Write(Time);
     Slot.Write(wtr);
     Position.Write(wtr);
 }
Пример #52
0
 public static void Disconnect(ClientProcessor psr)
 {
     Clients.TryRemove(psr.Account.AccountId, out psr);
 }
Пример #53
0
 public override World GetInstance(ClientProcessor psr)
 {
     return(RealmManager.AddWorld(new GauntletMap()));
 }
Пример #54
0
 public override World GetInstance(ClientProcessor psr)
 {
     return(RealmManager.AddWorld(new ZombieMG()));
 }
Пример #55
0
 protected override void Read(ClientProcessor psr, NReader rdr)
 {
     BulletId = rdr.ReadByte();
     ObjectId = rdr.ReadInt32();
 }
Пример #56
0
 protected override void Write(ClientProcessor psr, NWriter wtr)
 {
     wtr.Write(CharacterId);
 }
 protected override void Read(ClientProcessor psr, NReader rdr)
 {
     Result  = rdr.ReadInt32();
     Message = rdr.ReadUTF();
 }
Пример #58
0
 public override byte[] Crypt(ClientProcessor psr, byte[] dat)
 {
     return(psr.SendKey.Crypt(dat));
 }
Пример #59
0
 protected override void Write(ClientProcessor psr, NWriter wtr)
 {
     wtr.Write(Type);
     wtr.WriteUTF(Text);
 }
Пример #60
0
 protected override void Write(ClientProcessor psr, NWriter wtr)
 {
     wtr.Write(Time);
 }