Reorganizes Project (#41)
This commit is contained in:
parent
08bf44af9a
commit
3614a66aee
3499 changed files with 79 additions and 55 deletions
|
|
@ -0,0 +1,84 @@
|
|||
namespace Server.Mobiles
|
||||
{
|
||||
[TypeAlias("Server.Mobiles.ToxicElemental")]
|
||||
public class AcidElemental : BaseCreature
|
||||
{
|
||||
[Constructible]
|
||||
public AcidElemental() : base(AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4)
|
||||
{
|
||||
Body = 0x9E;
|
||||
BaseSoundID = 278;
|
||||
|
||||
SetStr(326, 355);
|
||||
SetDex(66, 85);
|
||||
SetInt(271, 295);
|
||||
|
||||
SetHits(196, 213);
|
||||
|
||||
SetDamage(9, 15);
|
||||
|
||||
SetDamageType(ResistanceType.Physical, 25);
|
||||
SetDamageType(ResistanceType.Fire, 50);
|
||||
SetDamageType(ResistanceType.Energy, 25);
|
||||
|
||||
SetResistance(ResistanceType.Physical, 45, 55);
|
||||
SetResistance(ResistanceType.Fire, 40, 50);
|
||||
SetResistance(ResistanceType.Cold, 20, 30);
|
||||
SetResistance(ResistanceType.Poison, 10, 20);
|
||||
SetResistance(ResistanceType.Energy, 30, 40);
|
||||
|
||||
SetSkill(SkillName.Anatomy, 30.3, 60.0);
|
||||
SetSkill(SkillName.EvalInt, 70.1, 85.0);
|
||||
SetSkill(SkillName.Magery, 70.1, 85.0);
|
||||
SetSkill(SkillName.MagicResist, 60.1, 75.0);
|
||||
SetSkill(SkillName.Tactics, 80.1, 90.0);
|
||||
SetSkill(SkillName.Wrestling, 70.1, 90.0);
|
||||
|
||||
Fame = 10000;
|
||||
Karma = -10000;
|
||||
|
||||
VirtualArmor = 40;
|
||||
}
|
||||
|
||||
public AcidElemental(Serial serial)
|
||||
: base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override string CorpseName => "an acid elemental corpse";
|
||||
public override string DefaultName => "an acid elemental";
|
||||
|
||||
public override bool BleedImmune => true;
|
||||
public override Poison HitPoison => Poison.Lethal;
|
||||
public override double HitPoisonChance => 0.6;
|
||||
|
||||
public override int TreasureMapLevel => Core.AOS ? 2 : 3;
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot(LootPack.Rich);
|
||||
AddLoot(LootPack.Average);
|
||||
}
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
writer.Write(0);
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
int version = reader.ReadInt();
|
||||
|
||||
if (BaseSoundID == 263)
|
||||
BaseSoundID = 278;
|
||||
|
||||
if (Body == 13)
|
||||
Body = 0x9E;
|
||||
|
||||
if (Hue == 0x4001)
|
||||
Hue = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,79 @@
|
|||
namespace Server.Mobiles
|
||||
{
|
||||
public class AirElemental : BaseCreature
|
||||
{
|
||||
[Constructible]
|
||||
public AirElemental() : base(AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4)
|
||||
{
|
||||
Body = 13;
|
||||
Hue = 0x4001;
|
||||
BaseSoundID = 655;
|
||||
|
||||
SetStr(126, 155);
|
||||
SetDex(166, 185);
|
||||
SetInt(101, 125);
|
||||
|
||||
SetHits(76, 93);
|
||||
|
||||
SetDamage(8, 10);
|
||||
|
||||
SetDamageType(ResistanceType.Physical, 20);
|
||||
SetDamageType(ResistanceType.Cold, 40);
|
||||
SetDamageType(ResistanceType.Energy, 40);
|
||||
|
||||
SetResistance(ResistanceType.Physical, 35, 45);
|
||||
SetResistance(ResistanceType.Fire, 15, 25);
|
||||
SetResistance(ResistanceType.Cold, 10, 20);
|
||||
SetResistance(ResistanceType.Poison, 10, 20);
|
||||
SetResistance(ResistanceType.Energy, 25, 35);
|
||||
|
||||
SetSkill(SkillName.EvalInt, 60.1, 75.0);
|
||||
SetSkill(SkillName.Magery, 60.1, 75.0);
|
||||
SetSkill(SkillName.MagicResist, 60.1, 75.0);
|
||||
SetSkill(SkillName.Tactics, 60.1, 80.0);
|
||||
SetSkill(SkillName.Wrestling, 60.1, 80.0);
|
||||
|
||||
Fame = 4500;
|
||||
Karma = -4500;
|
||||
|
||||
VirtualArmor = 40;
|
||||
ControlSlots = 2;
|
||||
}
|
||||
|
||||
public AirElemental(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override string CorpseName => "an air elemental corpse";
|
||||
public override double DispelDifficulty => 117.5;
|
||||
public override double DispelFocus => 45.0;
|
||||
|
||||
public override string DefaultName => "an air elemental";
|
||||
|
||||
public override bool BleedImmune => true;
|
||||
public override int TreasureMapLevel => 2;
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot(LootPack.Average);
|
||||
AddLoot(LootPack.Meager);
|
||||
AddLoot(LootPack.LowScrolls);
|
||||
AddLoot(LootPack.MedScrolls);
|
||||
}
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
writer.Write(0);
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
int version = reader.ReadInt();
|
||||
|
||||
if (BaseSoundID == 263)
|
||||
BaseSoundID = 655;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,69 @@
|
|||
namespace Server.Mobiles
|
||||
{
|
||||
public class BloodElemental : BaseCreature
|
||||
{
|
||||
[Constructible]
|
||||
public BloodElemental() : base(AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4)
|
||||
{
|
||||
Body = 159;
|
||||
BaseSoundID = 278;
|
||||
|
||||
SetStr(526, 615);
|
||||
SetDex(66, 85);
|
||||
SetInt(226, 350);
|
||||
|
||||
SetHits(316, 369);
|
||||
|
||||
SetDamage(17, 27);
|
||||
|
||||
SetDamageType(ResistanceType.Physical, 0);
|
||||
SetDamageType(ResistanceType.Poison, 50);
|
||||
SetDamageType(ResistanceType.Energy, 50);
|
||||
|
||||
SetResistance(ResistanceType.Physical, 55, 65);
|
||||
SetResistance(ResistanceType.Fire, 20, 30);
|
||||
SetResistance(ResistanceType.Cold, 40, 50);
|
||||
SetResistance(ResistanceType.Poison, 50, 60);
|
||||
SetResistance(ResistanceType.Energy, 30, 40);
|
||||
|
||||
SetSkill(SkillName.EvalInt, 85.1, 100.0);
|
||||
SetSkill(SkillName.Magery, 85.1, 100.0);
|
||||
SetSkill(SkillName.Meditation, 10.4, 50.0);
|
||||
SetSkill(SkillName.MagicResist, 80.1, 95.0);
|
||||
SetSkill(SkillName.Tactics, 80.1, 100.0);
|
||||
SetSkill(SkillName.Wrestling, 80.1, 100.0);
|
||||
|
||||
Fame = 12500;
|
||||
Karma = -12500;
|
||||
|
||||
VirtualArmor = 60;
|
||||
}
|
||||
|
||||
public BloodElemental(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override string CorpseName => "a blood elemental corpse";
|
||||
public override string DefaultName => "a blood elemental";
|
||||
|
||||
public override int TreasureMapLevel => 5;
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot(LootPack.FilthyRich);
|
||||
AddLoot(LootPack.Rich);
|
||||
}
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
writer.Write(0);
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
90
Projects/Scripts/Mobiles/Monsters/Elemental/Magic/Efreet.cs
Normal file
90
Projects/Scripts/Mobiles/Monsters/Elemental/Magic/Efreet.cs
Normal file
|
|
@ -0,0 +1,90 @@
|
|||
using Server.Items;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
public class Efreet : BaseCreature
|
||||
{
|
||||
[Constructible]
|
||||
public Efreet() : base(AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4)
|
||||
{
|
||||
Body = 131;
|
||||
BaseSoundID = 768;
|
||||
|
||||
SetStr(326, 355);
|
||||
SetDex(266, 285);
|
||||
SetInt(171, 195);
|
||||
|
||||
SetHits(196, 213);
|
||||
|
||||
SetDamage(11, 13);
|
||||
|
||||
SetDamageType(ResistanceType.Physical, 0);
|
||||
SetDamageType(ResistanceType.Fire, 50);
|
||||
SetDamageType(ResistanceType.Energy, 50);
|
||||
|
||||
SetResistance(ResistanceType.Physical, 50, 60);
|
||||
SetResistance(ResistanceType.Fire, 60, 70);
|
||||
SetResistance(ResistanceType.Poison, 30, 40);
|
||||
SetResistance(ResistanceType.Energy, 40, 50);
|
||||
|
||||
SetSkill(SkillName.EvalInt, 60.1, 75.0);
|
||||
SetSkill(SkillName.Magery, 60.1, 75.0);
|
||||
SetSkill(SkillName.MagicResist, 60.1, 75.0);
|
||||
SetSkill(SkillName.Tactics, 60.1, 80.0);
|
||||
SetSkill(SkillName.Wrestling, 60.1, 80.0);
|
||||
|
||||
Fame = 10000;
|
||||
Karma = -10000;
|
||||
|
||||
VirtualArmor = 56;
|
||||
}
|
||||
|
||||
public Efreet(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override string CorpseName => "an efreet corpse";
|
||||
public override string DefaultName => "an efreet";
|
||||
|
||||
public override int TreasureMapLevel => Core.AOS ? 4 : 5;
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot(LootPack.Rich);
|
||||
AddLoot(LootPack.Average);
|
||||
AddLoot(LootPack.Gems);
|
||||
|
||||
if (0.02 > Utility.RandomDouble())
|
||||
switch (Utility.Random(5))
|
||||
{
|
||||
case 0:
|
||||
PackItem(new DaemonArms());
|
||||
break;
|
||||
case 1:
|
||||
PackItem(new DaemonChest());
|
||||
break;
|
||||
case 2:
|
||||
PackItem(new DaemonGloves());
|
||||
break;
|
||||
case 3:
|
||||
PackItem(new DaemonLegs());
|
||||
break;
|
||||
case 4:
|
||||
PackItem(new DaemonHelm());
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
writer.Write(0);
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,82 @@
|
|||
using Server.Items;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
public class FireElemental : BaseCreature
|
||||
{
|
||||
[Constructible]
|
||||
public FireElemental() : base(AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4)
|
||||
{
|
||||
Body = 15;
|
||||
BaseSoundID = 838;
|
||||
|
||||
SetStr(126, 155);
|
||||
SetDex(166, 185);
|
||||
SetInt(101, 125);
|
||||
|
||||
SetHits(76, 93);
|
||||
|
||||
SetDamage(7, 9);
|
||||
|
||||
SetDamageType(ResistanceType.Physical, 25);
|
||||
SetDamageType(ResistanceType.Fire, 75);
|
||||
|
||||
SetResistance(ResistanceType.Physical, 35, 45);
|
||||
SetResistance(ResistanceType.Fire, 60, 80);
|
||||
SetResistance(ResistanceType.Cold, 5, 10);
|
||||
SetResistance(ResistanceType.Poison, 30, 40);
|
||||
SetResistance(ResistanceType.Energy, 30, 40);
|
||||
|
||||
SetSkill(SkillName.EvalInt, 60.1, 75.0);
|
||||
SetSkill(SkillName.Magery, 60.1, 75.0);
|
||||
SetSkill(SkillName.MagicResist, 75.2, 105.0);
|
||||
SetSkill(SkillName.Tactics, 80.1, 100.0);
|
||||
SetSkill(SkillName.Wrestling, 70.1, 100.0);
|
||||
|
||||
Fame = 4500;
|
||||
Karma = -4500;
|
||||
|
||||
VirtualArmor = 40;
|
||||
ControlSlots = 4;
|
||||
|
||||
PackItem(new SulfurousAsh(3));
|
||||
|
||||
AddItem(new LightSource());
|
||||
}
|
||||
|
||||
public FireElemental(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override string CorpseName => "a fire elemental corpse";
|
||||
public override double DispelDifficulty => 117.5;
|
||||
public override double DispelFocus => 45.0;
|
||||
|
||||
public override string DefaultName => "a fire elemental";
|
||||
|
||||
public override bool BleedImmune => true;
|
||||
public override int TreasureMapLevel => 2;
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot(LootPack.Average);
|
||||
AddLoot(LootPack.Meager);
|
||||
AddLoot(LootPack.Gems);
|
||||
}
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
writer.Write(0);
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
int version = reader.ReadInt();
|
||||
|
||||
if (BaseSoundID == 274)
|
||||
BaseSoundID = 838;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,71 @@
|
|||
using Server.Items;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
public class IceElemental : BaseCreature
|
||||
{
|
||||
[Constructible]
|
||||
public IceElemental() : base(AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4)
|
||||
{
|
||||
Body = 161;
|
||||
BaseSoundID = 268;
|
||||
|
||||
SetStr(156, 185);
|
||||
SetDex(96, 115);
|
||||
SetInt(171, 192);
|
||||
|
||||
SetHits(94, 111);
|
||||
|
||||
SetDamage(10, 21);
|
||||
|
||||
SetDamageType(ResistanceType.Physical, 25);
|
||||
SetDamageType(ResistanceType.Cold, 75);
|
||||
|
||||
SetResistance(ResistanceType.Physical, 35, 45);
|
||||
SetResistance(ResistanceType.Fire, 5, 10);
|
||||
SetResistance(ResistanceType.Cold, 50, 60);
|
||||
SetResistance(ResistanceType.Poison, 20, 30);
|
||||
SetResistance(ResistanceType.Energy, 20, 30);
|
||||
|
||||
SetSkill(SkillName.EvalInt, 10.5, 60.0);
|
||||
SetSkill(SkillName.Magery, 10.5, 60.0);
|
||||
SetSkill(SkillName.MagicResist, 30.1, 80.0);
|
||||
SetSkill(SkillName.Tactics, 70.1, 100.0);
|
||||
SetSkill(SkillName.Wrestling, 60.1, 100.0);
|
||||
|
||||
Fame = 4000;
|
||||
Karma = -4000;
|
||||
|
||||
VirtualArmor = 40;
|
||||
|
||||
PackItem(new BlackPearl());
|
||||
PackReg(3);
|
||||
}
|
||||
|
||||
public IceElemental(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override string CorpseName => "an ice elemental corpse";
|
||||
public override string DefaultName => "an ice elemental";
|
||||
public override bool BleedImmune => true;
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot(LootPack.Average, 2);
|
||||
AddLoot(LootPack.Gems, 2);
|
||||
}
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
writer.Write(0);
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,81 @@
|
|||
using Server.Items;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
public class PoisonElemental : BaseCreature
|
||||
{
|
||||
[Constructible]
|
||||
public PoisonElemental() : base(AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4)
|
||||
{
|
||||
Body = 162;
|
||||
BaseSoundID = 263;
|
||||
|
||||
SetStr(426, 515);
|
||||
SetDex(166, 185);
|
||||
SetInt(361, 435);
|
||||
|
||||
SetHits(256, 309);
|
||||
|
||||
SetDamage(12, 18);
|
||||
|
||||
SetDamageType(ResistanceType.Physical, 10);
|
||||
SetDamageType(ResistanceType.Poison, 90);
|
||||
|
||||
SetResistance(ResistanceType.Physical, 60, 70);
|
||||
SetResistance(ResistanceType.Fire, 20, 30);
|
||||
SetResistance(ResistanceType.Cold, 20, 30);
|
||||
SetResistance(ResistanceType.Poison, 100);
|
||||
SetResistance(ResistanceType.Energy, 40, 50);
|
||||
|
||||
SetSkill(SkillName.EvalInt, 80.1, 95.0);
|
||||
SetSkill(SkillName.Magery, 80.1, 95.0);
|
||||
SetSkill(SkillName.Meditation, 80.2, 120.0);
|
||||
SetSkill(SkillName.Poisoning, 90.1, 100.0);
|
||||
SetSkill(SkillName.MagicResist, 85.2, 115.0);
|
||||
SetSkill(SkillName.Tactics, 80.1, 100.0);
|
||||
SetSkill(SkillName.Wrestling, 70.1, 90.0);
|
||||
|
||||
Fame = 12500;
|
||||
Karma = -12500;
|
||||
|
||||
VirtualArmor = 70;
|
||||
|
||||
PackItem(new Nightshade(4));
|
||||
PackItem(new LesserPoisonPotion());
|
||||
}
|
||||
|
||||
public PoisonElemental(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override string CorpseName => "a poison elementals corpse";
|
||||
public override string DefaultName => "a poison elemental";
|
||||
|
||||
public override bool BleedImmune => true;
|
||||
public override Poison PoisonImmune => Poison.Lethal;
|
||||
|
||||
public override Poison HitPoison => Poison.Lethal;
|
||||
public override double HitPoisonChance => 0.75;
|
||||
|
||||
public override int TreasureMapLevel => 5;
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot(LootPack.FilthyRich);
|
||||
AddLoot(LootPack.Rich);
|
||||
AddLoot(LootPack.MedScrolls);
|
||||
}
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
writer.Write(0);
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,77 @@
|
|||
using Server.Items;
|
||||
|
||||
namespace Server.Mobiles
|
||||
{
|
||||
public class WaterElemental : BaseCreature
|
||||
{
|
||||
[Constructible]
|
||||
public WaterElemental() : base(AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4)
|
||||
{
|
||||
Body = 16;
|
||||
BaseSoundID = 278;
|
||||
|
||||
SetStr(126, 155);
|
||||
SetDex(66, 85);
|
||||
SetInt(101, 125);
|
||||
|
||||
SetHits(76, 93);
|
||||
|
||||
SetDamage(7, 9);
|
||||
|
||||
SetDamageType(ResistanceType.Physical, 100);
|
||||
|
||||
SetResistance(ResistanceType.Physical, 35, 45);
|
||||
SetResistance(ResistanceType.Fire, 10, 25);
|
||||
SetResistance(ResistanceType.Cold, 10, 25);
|
||||
SetResistance(ResistanceType.Poison, 60, 70);
|
||||
SetResistance(ResistanceType.Energy, 5, 10);
|
||||
|
||||
SetSkill(SkillName.EvalInt, 60.1, 75.0);
|
||||
SetSkill(SkillName.Magery, 60.1, 75.0);
|
||||
SetSkill(SkillName.MagicResist, 100.1, 115.0);
|
||||
SetSkill(SkillName.Tactics, 50.1, 70.0);
|
||||
SetSkill(SkillName.Wrestling, 50.1, 70.0);
|
||||
|
||||
Fame = 4500;
|
||||
Karma = -4500;
|
||||
|
||||
VirtualArmor = 40;
|
||||
ControlSlots = 3;
|
||||
CanSwim = true;
|
||||
|
||||
PackItem(new BlackPearl(3));
|
||||
}
|
||||
|
||||
public WaterElemental(Serial serial) : base(serial)
|
||||
{
|
||||
}
|
||||
|
||||
public override string CorpseName => "a water elemental corpse";
|
||||
public override double DispelDifficulty => 117.5;
|
||||
public override double DispelFocus => 45.0;
|
||||
|
||||
public override string DefaultName => "a water elemental";
|
||||
|
||||
public override bool BleedImmune => true;
|
||||
public override int TreasureMapLevel => 2;
|
||||
|
||||
public override void GenerateLoot()
|
||||
{
|
||||
AddLoot(LootPack.Average);
|
||||
AddLoot(LootPack.Meager);
|
||||
AddLoot(LootPack.Potions);
|
||||
}
|
||||
|
||||
public override void Serialize(GenericWriter writer)
|
||||
{
|
||||
base.Serialize(writer);
|
||||
writer.Write(0);
|
||||
}
|
||||
|
||||
public override void Deserialize(GenericReader reader)
|
||||
{
|
||||
base.Deserialize(reader);
|
||||
int version = reader.ReadInt();
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue