/// <summary> /// Initialize the <see cref="Package"/> by reading from the given filename. /// </summary> /// <param name="state">The <see cref="State"/> this <see cref="Package"/> is to exist within.</param> /// <param name="fileName">The name of the file to open that contains the <see cref="Package"/>.</param> /// <param name="reader">The <see cref="BinaryReader"/> to read from.</param> public Package(State state, string fileName, BinaryReader reader) { if (state == null) throw new ArgumentNullException("state"); if (reader == null) throw new ArgumentNullException("reader"); if (reader.ReadInt32() != Magic) throw new Exception("Unreal package magic test failed."); Reader = reader; FileName = fileName; Export = new Unreal.Export(this, -1); Export.Name = Path.GetFileNameWithoutExtension(fileName); Export.LoadedObject = this; StateValue = state; FileVersion = reader.ReadUInt16(); LicenseMode = reader.ReadUInt16(); Flags = (PackageFlag)reader.ReadUInt32(); var nameCount = reader.ReadInt32(); var nameOffset = reader.ReadUInt32(); var exportCount = reader.ReadInt32(); var exportOffset = reader.ReadUInt32(); var importCount = reader.ReadInt32(); var importOffset = reader.ReadUInt32(); if (FileVersion >= 68) Guid = new Guid(reader.ReadBytes(16)); Imports = new ImportList(importCount); for (var index = 0; index < importCount; index++) Imports.Add(new Import(this, index)); Exports = new ExportList(exportCount); for (var index = 0; index < exportCount; index++) Exports.Add(new Export(this, index)); Names = new NameList(nameCount); reader.BaseStream.Position = nameOffset; for (var index = 0; index < nameCount; index++) Names.Add(new Name(this, reader)); reader.BaseStream.Position = exportOffset; for (var index = 0; index < exportCount; index++) Exports[index].Load(reader); reader.BaseStream.Position = importOffset; for (var index = 0; index < importCount; index++) Imports[index].Load(reader); FilteredExports = new ExportList(exportCount); foreach (var export in Exports) { /*if(export.ObjectClassReference != null && export.ObjectClassReference.Name.EndsWith("Property")) { if(((((Alexandria.Engines.Unreal.Core.Property)export.Object).PropertyFlags) & Alexandria.Engines.Unreal.Core.PropertyFlag.Test) != 0) FilteredExports.Add(export); }*/ if (export.ObjectClassReference == null || !export.ObjectClassReference.Name.EndsWith("Property")) FilteredExports.Add(export); } Game = DetermineGame(FileVersion, LicenseMode, IsEncrypted); }
public override void OnResponse(NetState sender, RelayInfo info) { if (info.ButtonID == 0) { if (m_Used) { m_From.SendLocalizedMessage(501706); // Disguises wear off after 2 hours. } else { m_From.SendLocalizedMessage(501707); // You're looking good. } return; } int[] switches = info.Switches; if (switches.Length == 0) { return; } int switched = switches[0]; int type = switched % 2; int index = switched / 2; bool hair = (type == 0); DisguiseEntry[] entries = (hair ? m_HairEntries : m_BeardEntries); if (index >= 0 && index < entries.Length) { DisguiseEntry entry = entries[index]; if (entry == null) { return; } if (!m_Kit.ValidateUse(m_From)) { return; } if (!hair && (m_From.Female || m_From.Body.IsFemale)) { return; } string originalName = m_From.Name; m_From.NameMod = NameList.RandomName(m_From.Female ? "female" : "male"); LoggingCustom.LogDisguise(DateTime.Now + "\t" + originalName + "\t" + m_From.NameMod); if (m_From is PlayerMobile) { PlayerMobile pm = (PlayerMobile)m_From; if (hair) { pm.SetHairMods(entry.m_ItemID, -2); } else { pm.SetHairMods(-2, entry.m_ItemID); } } m_From.SendGump(new DisguiseGump(m_From, m_Kit, hair, true)); DisguiseTimers.RemoveTimer(m_From); DisguiseTimers.CreateTimer(m_From, TimeSpan.FromHours(2.0)); DisguiseTimers.StartTimer(m_From); } }
public Ent() : base(AIType.AI_Mage, FightMode.Aggressor, 10, 1, 0.2, 0.4) { Name = NameList.RandomName("trees"); Title = "the ent"; Body = 309; BaseSoundID = 442; SetStr(536, 585); SetDex(126, 145); SetInt(281, 305); SetHits(322, 351); SetDamage(13, 16); SetDamageType(ResistanceType.Physical, 100); SetResistance(ResistanceType.Physical, 35, 45); SetResistance(ResistanceType.Fire, 30, 40); SetResistance(ResistanceType.Cold, 25, 35); SetResistance(ResistanceType.Poison, 30, 40); SetResistance(ResistanceType.Energy, 30, 40); SetSkill(SkillName.EvalInt, 85.1, 100.0); SetSkill(SkillName.Magery, 85.1, 100.0); SetSkill(SkillName.MagicResist, 80.2, 110.0); SetSkill(SkillName.Tactics, 60.1, 80.0); SetSkill(SkillName.Wrestling, 40.1, 50.0); Fame = 11500; Karma = -11500; VirtualArmor = 40; switch (Utility.Random(11)) { case 0: PackItem(new Log(Utility.RandomMinMax(10, 20))); break; case 1: PackItem(new AshLog(Utility.RandomMinMax(10, 20))); break; case 2: PackItem(new CherryLog(Utility.RandomMinMax(10, 20))); break; case 3: PackItem(new EbonyLog(Utility.RandomMinMax(10, 20))); break; case 4: PackItem(new GoldenOakLog(Utility.RandomMinMax(10, 20))); break; case 5: PackItem(new HickoryLog(Utility.RandomMinMax(10, 20))); break; case 6: PackItem(new MahoganyLog(Utility.RandomMinMax(10, 20))); break; case 7: PackItem(new OakLog(Utility.RandomMinMax(10, 20))); break; case 8: PackItem(new PineLog(Utility.RandomMinMax(10, 20))); break; case 9: PackItem(new RosewoodLog(Utility.RandomMinMax(10, 20))); break; case 10: PackItem(new WalnutLog(Utility.RandomMinMax(10, 20))); break; } if (Utility.Random(100) > 60) { int seed_to_give = Utility.Random(100); if (seed_to_give > 90) { Seed reward; PlantType type; switch (Utility.Random(17)) { case 0: type = PlantType.CampionFlowers; break; case 1: type = PlantType.Poppies; break; case 2: type = PlantType.Snowdrops; break; case 3: type = PlantType.Bulrushes; break; case 4: type = PlantType.Lilies; break; case 5: type = PlantType.PampasGrass; break; case 6: type = PlantType.Rushes; break; case 7: type = PlantType.ElephantEarPlant; break; case 8: type = PlantType.Fern; break; case 9: type = PlantType.PonytailPalm; break; case 10: type = PlantType.SmallPalm; break; case 11: type = PlantType.CenturyPlant; break; case 12: type = PlantType.WaterPlant; break; case 13: type = PlantType.SnakePlant; break; case 14: type = PlantType.PricklyPearCactus; break; case 15: type = PlantType.BarrelCactus; break; default: type = PlantType.TribarrelCactus; break; } PlantHue hue; switch (Utility.Random(4)) { case 0: hue = PlantHue.Pink; break; case 1: hue = PlantHue.Magenta; break; case 2: hue = PlantHue.FireRed; break; default: hue = PlantHue.Aqua; break; } PackItem(new Seed(type, hue, false)); } else if (seed_to_give > 70) { PackItem(Engines.Plants.Seed.RandomPeculiarSeed(Utility.RandomMinMax(1, 4))); } else if (seed_to_give > 40) { PackItem(Engines.Plants.Seed.RandomBonsaiSeed()); } else { PackItem(new Engines.Plants.Seed()); } } }
public VileMage() : base(AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4) { //SpeechHue = Utility.RandomDyedHue(); //Title = "the brigand"; //Hue = Utility.RandomSkinHue(); if (this.Female = Utility.RandomBool()) { Body = 0x191; Name = NameList.RandomName("female"); AddItem(new HoodedShroudOfShadows(Utility.RandomRedHue())); } else { Body = 0x190; Name = NameList.RandomName("male"); AddItem(new HoodedShroudOfShadows(Utility.RandomRedHue())); } //Body = 0x4E1; SetStr(110, 160); SetDex(105, 110); SetInt(150, 165); SetHits(830, 880); SetDamage(11, 13); SetDamageType(ResistanceType.Physical, 100); SetResistance(ResistanceType.Physical, 55, 70); SetResistance(ResistanceType.Fire, 60, 65); SetResistance(ResistanceType.Cold, 60, 65); SetResistance(ResistanceType.Poison, 55, 65); SetResistance(ResistanceType.Energy, 60, 70); //SetSkill( SkillName.Fencing, 66.0, 97.5 ); //SetSkill( SkillName.Macing, 65.0, 87.5 ); SetSkill(SkillName.MagicResist, 110.0, 120.0); SetSkill(SkillName.Tactics, 100.0, 115.0); SetSkill(SkillName.Wrestling, 100.0, 110.0); SetSkill(SkillName.Magery, 105.0, 115.0); SetSkill(SkillName.EvalInt, 105.0, 115.0); Fame = 1000; Karma = -1000; //AddItem( new Boots( Utility.RandomNeutralHue() ) ); //AddItem( new FancyShirt()); //AddItem( new Bandana()); /* * switch ( Utility.Random( 7 )) * { * case 0: AddItem( new Longsword() ); break; * case 1: AddItem( new Cutlass() ); break; * case 2: AddItem( new Broadsword() ); break; * case 3: AddItem( new Axe() ); break; * case 4: AddItem( new Club() ); break; * case 5: AddItem( new Dagger() ); break; * case 6: AddItem( new Spear() ); break; * } */ // Utility.AssignRandomHair( this ); }
public GokturLlamaHerder() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4) { Name = NameList.RandomName("orc"); Body = 0x190; BaseSoundID = 0x45A; Title = "of the Goktur Tribe, Legendary Llama Herder"; Hue = 2211; SetStr(96, 120); SetDex(81, 105); SetInt(36, 60); SetHits(58, 72); SetDamage(5, 7); SetDamageType(ResistanceType.Physical, 100); SetResistance(ResistanceType.Physical, 25, 30); SetResistance(ResistanceType.Fire, 20, 30); SetResistance(ResistanceType.Cold, 10, 20); SetResistance(ResistanceType.Poison, 10, 20); SetResistance(ResistanceType.Energy, 20, 30); SetSkill(SkillName.MagicResist, 50.1, 75.0); SetSkill(SkillName.Tactics, 55.1, 80.0); SetSkill(SkillName.Wrestling, 50.1, 70.0); Fame = 0; Karma = 0; VirtualArmor = 28; OrcishKinMask helm = new OrcishKinMask(); helm.Hue = this.Hue; AddItem(helm); Sandals sandals = new Sandals(); sandals.Hue = 0; AddItem(sandals); ShepherdsCrook shepherdscrook = new ShepherdsCrook(); shepherdscrook.Hue = 0; AddItem(shepherdscrook); FancyShirt fancyshirt = new FancyShirt(); fancyshirt.Hue = 0; AddItem(fancyshirt); ShortPants shortpants = new ShortPants(); shortpants.Hue = 0; AddItem(shortpants); LeatherGloves leathergloves = new LeatherGloves(); leathergloves.Hue = 0; AddItem(leathergloves); }
public DrowWarrior() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4) { SpeechHue = Utility.RandomDyedHue(); Title = "Drow Guerreiro"; Hue = 902; if (this.Female = Utility.RandomBool()) { Body = 0x191; Name = NameList.RandomName("female"); } else { Body = 0x190; Name = NameList.RandomName("male"); } SetStr(400, 800); SetDex(150, 175); SetInt(275, 325); SetHits(1400, 1600); SetDamage(33, 58); SetSkill(SkillName.MagicResist, 95.5, 127.5); SetSkill(SkillName.Swords, 95.5, 177.5); SetSkill(SkillName.Tactics, 95.5, 177.5); SetSkill(SkillName.Wrestling, 95.5, 177.5); SetSkill(SkillName.Meditation, 100.0, 177.5); SetSkill(SkillName.Magery, 100.0, 177.5); SetSkill(SkillName.Chivalry, 100.0, 177.5); Nightmare montaria = new Nightmare(); montaria.Hue = 33; montaria.Rider = this; montaria.MinTameSkill = 115.1; Fame = 2000; Karma = -2000; VirtualArmor = 55; Item bodySash = new BodySash(); bodySash.Hue = 422; AddItem(bodySash); //AddItem(new Piwafwi()); AddItem(new Boots()); //AddItem(new DrowRingmailGloves()); //AddItem(new DrowChainChest()); //AddItem(new DrowChainLegs()); switch (Utility.Random(3)) { case 0: AddItem(new Longsword()); break; case 1: AddItem(new Katana()); break; case 2: AddItem(new VikingSword()); break; } Item hair = new Item(Utility.RandomList(0x203B, 0x2049, 0x2048, 0x204A)); hair.Hue = 1153; hair.Layer = Layer.Hair; hair.Movable = false; AddItem(hair); PackGold(500, 2500); PackArmor(2, 5, 0.8); PackWeapon(3, 5, 0.8); PackSlayer(); }
public WarriorGuard(Mobile target) : base(target) { InitStats(1000, 1000, 1000); Title = "the guard"; SpeechHue = Utility.RandomDyedHue(); Hue = Utility.RandomSkinHue(); if (Female = Utility.RandomBool()) { Body = 0x191; Name = NameList.RandomName("female"); switch (Utility.Random(2)) { case 0: AddItem(new LeatherSkirt()); break; case 1: AddItem(new LeatherShorts()); break; } switch (Utility.Random(5)) { case 0: AddItem(new FemaleLeatherChest()); break; case 1: AddItem(new FemaleStuddedChest()); break; case 2: AddItem(new LeatherBustierArms()); break; case 3: AddItem(new StuddedBustierArms()); break; case 4: AddItem(new FemalePlateChest()); break; } } else { Body = 0x190; Name = NameList.RandomName("male"); AddItem(new PlateChest()); AddItem(new PlateArms()); AddItem(new PlateLegs()); switch (Utility.Random(3)) { case 0: AddItem(new Doublet(Utility.RandomNondyedHue())); break; case 1: AddItem(new Tunic(Utility.RandomNondyedHue())); break; case 2: AddItem(new BodySash(Utility.RandomNondyedHue())); break; } } Utility.AssignRandomHair(this); if (Utility.RandomBool()) { Utility.AssignRandomFacialHair(this, HairHue); } Halberd weapon = new Halberd(); weapon.Movable = false; weapon.Crafter = this; weapon.Quality = WeaponQuality.Exceptional; AddItem(weapon); Container pack = new Backpack(); pack.Movable = false; pack.DropItem(new Gold(10, 25)); AddItem(pack); Skills[SkillName.Anatomy].Base = 120.0; Skills[SkillName.Tactics].Base = 120.0; Skills[SkillName.Swords].Base = 120.0; Skills[SkillName.MagicResist].Base = 120.0; Skills[SkillName.DetectHidden].Base = 100.0; this.NextCombatTime = DateTime.UtcNow + TimeSpan.FromSeconds(0.5); this.Focus = target; }
public override void InitBody() { Name = NameList.RandomName("daemon"); Body = 9; }
public HirePaladin() { SpeechHue = Utility.RandomDyedHue(); Hue = Utility.RandomSkinHue(); if (this.Female = Utility.RandomBool()) { Body = 0x191; Name = NameList.RandomName("female"); } else { Body = 0x190; Name = NameList.RandomName("male"); } Title = "the paladin"; HairItemID = Utility.RandomList(0x203B, 0x2049, 0x2048, 0x204A); HairHue = Utility.RandomNeutralHue(); if (Utility.RandomBool() && !this.Female) { FacialHairItemID = Utility.RandomList(0x203E, 0x203F, 0x2040, 0x2041, 0x204B, 0x204C, 0x204D); FacialHairHue = HairHue; } switch (Utility.Random(5)) { case 0: break; case 1: AddItem(new Bascinet()); break; case 2: AddItem(new CloseHelm()); break; case 3: AddItem(new NorseHelm()); break; case 4: AddItem(new Helmet()); break; } SetStr(86, 100); SetDex(81, 95); SetInt(61, 75); SetDamage(10, 23); SetSkill(SkillName.Swords, 66.0, 97.5); SetSkill(SkillName.Anatomy, 65.0, 87.5); SetSkill(SkillName.MagicResist, 25.0, 47.5); SetSkill(SkillName.Healing, 65.0, 87.5); SetSkill(SkillName.Tactics, 65.0, 87.5); SetSkill(SkillName.Wrestling, 15.0, 37.5); SetSkill(SkillName.Parry, 45.0, 60.5); SetSkill(SkillName.Chivalry, 85, 100); Fame = 100; Karma = 250; AddItem(new Shoes(Utility.RandomNeutralHue())); AddItem(new Shirt()); AddItem(new VikingSword()); AddItem(new MetalKiteShield()); AddItem(new PlateChest()); AddItem(new PlateLegs()); AddItem(new PlateArms()); AddItem(new LeatherGorget()); PackGold(20, 100); }
public DrowMage() : base(AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4) { SpeechHue = Utility.RandomDyedHue(); Title = "Drow Mago"; Hue = 902; if (this.Female = Utility.RandomBool()) { Body = 0x191; Name = NameList.RandomName("female"); } else { Body = 0x190; Name = NameList.RandomName("male"); } SetStr(326, 545); SetDex(91, 510); SetInt(161, 585); SetHits(222, 308); SetDamage(23, 46); SetDamageType(ResistanceType.Physical, 30); SetResistance(ResistanceType.Physical, 30, 80); SetResistance(ResistanceType.Fire, 20, 80); SetResistance(ResistanceType.Cold, 20, 80); SetResistance(ResistanceType.Poison, 20, 80); SetResistance(ResistanceType.Energy, 40, 80); SetSkill(SkillName.EvalInt, 97.5, 150.0); SetSkill(SkillName.Magery, 92.5, 135.0); SetSkill(SkillName.Meditation, 97.5, 300.0); SetSkill(SkillName.MagicResist, 97.5, 130.0); SetSkill(SkillName.Tactics, 92.5, 135.0); SetSkill(SkillName.Wrestling, 92.5, 135.0); Fame = 1000; Karma = -1000; Item robe = new Robe(); robe.Hue = 1107; AddItem(robe); Item hair = new Item(Utility.RandomList(0x203B, 0x2049, 0x2048, 0x204A)); hair.Hue = 1153; hair.Layer = Layer.Hair; hair.Movable = false; AddItem(hair); PackGold(770, 1770); PackReg(10, 15); PackArmor(2, 5, 0.8); PackWeapon(3, 5, 0.8); PackSlayer(); //PackItem( new Bandage( Utility.RandomMinMax( 1, 15 ) ) ); if (0.1 > Utility.RandomDouble()) { PackItem(new TribalBerry()); } PackNecroScroll(3); // Curse Weapon PackNecroScroll(1); // Blood Oath PackNecroScroll(10); // Strangle AddItem(new Boots()); //AddItem(new DrowRingmailGloves()); //AddItem(new DrowChainChest()); //AddItem(new DrowChainLegs()); //AddItem(new Piwafwi()); }
public Orc() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4) { Name = NameList.RandomName("orc"); Body = 17; BaseSoundID = 0x45A; SetStr(96, 120); SetDex(81, 105); SetInt(36, 60); SetHits(58, 72); SetDamage(5, 7); Alignment = Alignment.Orc; SetSkill(SkillName.MagicResist, 50.1, 75.0); SetSkill(SkillName.Tactics, 55.1, 80.0); SetSkill(SkillName.Wrestling, 50.1, 70.0); Fame = 1500; Karma = -1500; VirtualArmor = 28; switch (Utility.Random(20)) { case 0: PackItem(new Scimitar()); break; case 1: PackItem(new Katana()); break; case 2: PackItem(new WarMace()); break; case 3: PackItem(new WarHammer()); break; case 4: PackItem(new Kryss()); break; case 5: PackItem(new Pitchfork()); break; } PackItem(new ThighBoots()); switch (Utility.Random(3)) { case 0: PackItem(new Ribs()); break; case 1: PackItem(new Shaft()); break; case 2: PackItem(new Candle()); break; } if (0.2 > Utility.RandomDouble()) { PackItem(new Ribs()); } }
public GargishRouser(int type) : base(Utility.RandomBool() ? AIType.AI_Mystic : AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4) { m_Type = type; m_Manifested = false; Race = Race.Gargoyle; Title = "the Gargish Rouser"; SetStr(150); SetInt(150); SetDex(150); SetHits(1200, 1500); SetMana(700, 900); SetDamage(15, 19); if (Utility.RandomBool()) { Name = NameList.RandomName("Gargoyle Male"); Female = false; Body = 666; } else { Name = NameList.RandomName("Gargoyle Female"); Female = true; Body = 667; } Utility.AssignRandomHair(this, true); if (!Female) { Utility.AssignRandomFacialHair(this, true); } this.Hue = Race.RandomSkinHue(); AddImmovableItem(new MysticBook((uint)0xFFF)); // Check AddImmovableItem(new GargishClothChest(Utility.RandomNeutralHue())); AddImmovableItem(new GargishClothArms(Utility.RandomNeutralHue())); AddImmovableItem(new GargishClothLegs(Utility.RandomNeutralHue())); AddImmovableItem(new GargishClothKilt(Utility.RandomNeutralHue())); if (Utility.RandomBool()) { AddImmovableItem(new GargishRobe()); } this.SetDamageType(ResistanceType.Physical, 100); this.SetResistance(ResistanceType.Physical, 15, 30); this.SetResistance(ResistanceType.Fire, 50, 65); this.SetResistance(ResistanceType.Cold, 50, 65); this.SetResistance(ResistanceType.Poison, 50, 65); this.SetResistance(ResistanceType.Energy, 50, 65); this.SetSkill(SkillName.MagicResist, 140.0); this.SetSkill(SkillName.Tactics, 130); this.SetSkill(SkillName.Anatomy, 0.0, 10.0); this.SetSkill(SkillName.Magery, 130.0); this.SetSkill(SkillName.EvalInt, 130.0); this.SetSkill(SkillName.Meditation, 120); this.SetSkill(SkillName.Wrestling, 90); this.SetSkill(SkillName.Necromancy, 120); this.SetSkill(SkillName.SpiritSpeak, 120); this.SetSkill(SkillName.Mysticism, 120); this.SetSkill(SkillName.Focus, 120); this.SetSkill(SkillName.Musicianship, 100); this.SetSkill(SkillName.Discordance, 100); this.SetSkill(SkillName.Provocation, 100); this.SetSkill(SkillName.Peacemaking, 100); this.Fame = 12000; this.Karma = -12000; m_NextSummon = DateTime.Now; m_NextBard = DateTime.Now; }
public Gambler() : base(AIType.AI_Melee, FightMode.Agressor, 10, 1, 0.45, 0.8) { Female = Utility.RandomBool(); Body = Female ? 401 : 400; Title = "the gambler"; Name = NameList.RandomName(Female ? "female" : "male"); Hue = Utility.RandomSkinHue(); SetStr(31, 45); SetDex(51, 65); SetInt(56, 70); Karma = Utility.RandomMinMax(13, -45); SetSkill(SkillName.Tactics, 25, 47.5); SetSkill(SkillName.MagicResist, 25, 47.5); SetSkill(SkillName.Parry, 25, 47.5); SetSkill(SkillName.Swords, 15, 37.5); SetSkill(SkillName.Macing, 15, 37.5); SetSkill(SkillName.Fencing, 15, 37.5); SetSkill(SkillName.Wrestling, 15, 37.5); SetSkill(SkillName.ItemID, 35, 57.5); SetSkill(SkillName.Snooping, 55, 77.5); SetSkill(SkillName.Stealing, 35, 57.5); SetSkill(SkillName.EvalInt, 45, 67.5); Item item = null; if (!Female) { item = AddRandomHair(); item.Hue = Utility.RandomHairHue(); item = AddRandomFacialHair(item.Hue); item = new Shirt(); item.Hue = Utility.RandomNondyedHue(); AddItem(item); item = new ShortPants(); item.Hue = Utility.RandomNondyedHue(); AddItem(item); switch (Utility.Random(4)) { case 0: item = new Boots(); break; case 1: item = new ThighBoots(); break; case 2: item = new Shoes(); break; case 3: default: item = new Sandals(); break; } AddItem(item); item = new Dagger(); AddItem(item); PackGold(15, 100); } else { item = AddRandomHair(); item.Hue = Utility.RandomHairHue(); item = new Shirt(); item.Hue = Utility.RandomNondyedHue(); AddItem(item); item = new Skirt(); item.Hue = Utility.RandomNondyedHue(); AddItem(item); switch (Utility.Random(4)) { case 0: item = new Boots(); break; case 1: item = new ThighBoots(); break; case 2: item = new Shoes(); break; case 3: default: item = new Sandals(); break; } AddItem(item); item = new Dagger(); AddItem(item); PackGold(15, 100); } }
public DragonSanctuaryElfRanger() : base(AIType.AI_Archer, FightMode.Closest, 15, 1, 0.1, 0.2) { SetStr(755, 788); SetDex(300, 500); SetInt(100, 200); SetHits(500, 600); SetDamage(12, 15); SetSkill(SkillName.Anatomy, 100.0); SetSkill(SkillName.Archery, 100.0); SetSkill(SkillName.Chivalry, 100.0); SetSkill(SkillName.MagicResist, 70.0); SetSkill(SkillName.Tactics, 100.0); Karma = 10000; m_Timer = new MoveTimer(this); ChangeLocation(); PackItem(new Bandage(Utility.RandomMinMax(15, 20))); PackItem(new Arrow(Utility.RandomMinMax(80, 90))); if (Female = Utility.RandomBool()) { Name = NameList.RandomName("elven female"); Title = "Ljosalfar Ranger of Dragon Sanctuary"; Body = 606; Hue = Utility.RandomList(1002, 1003, 1009, 1010, 1011, 1016, 1017, 1023, 1030); HairHue = Utility.RandomList(1502, 1507, 1513, 2213, 2216, 2218); HairItemID = Utility.RandomList(12224, 12225, 12236, 12237, 12238, 12239); BaseWeapon weapon = Loot.RandomWeapon(true); switch (Utility.Random(3)) { case 0: weapon = new ElvenCompositeLongbow(); break; case 1: weapon = new MagicalShortbow(); break; case 2: weapon = new SkeletalWarBow(); break; } BaseRunicTool.ApplyAttributesTo(weapon, 5, 25, 35); weapon.Slayer = SlayerName.ReptilianDeath; weapon.WeaponAttributes.HitLightning = 25; weapon.Hue = 0x4D5; weapon.Movable = true; AddItem(weapon); EbonsilkTiara helm = new EbonsilkTiara(); BaseRunicTool.ApplyAttributesTo(helm, 5, 25, 35); helm.Hue = 0x4D5; helm.Movable = true; AddItem(helm); LeafGorget gorget = new LeafGorget(); BaseRunicTool.ApplyAttributesTo(gorget, 5, 25, 35); gorget.Hue = 0x4D5; gorget.Movable = true; AddItem(gorget); LeafArms arms = new LeafArms(); BaseRunicTool.ApplyAttributesTo(arms, 5, 25, 35); arms.Hue = 0x4D5; arms.Movable = true; AddItem(arms); LeafChest chest = new LeafChest(); BaseRunicTool.ApplyAttributesTo(chest, 5, 25, 35); chest.Hue = 0x4D5; chest.Movable = true; AddItem(chest); LeafTonlet legs = new LeafTonlet(); BaseRunicTool.ApplyAttributesTo(legs, 5, 25, 35); legs.Hue = 0x4D5; legs.Movable = true; AddItem(legs); LightBoots boots = new LightBoots(); BaseRunicTool.ApplyAttributesTo(boots, 5, 25, 35); boots.Hue = 0x4D5; boots.Movable = true; AddItem(boots); new Nightmare().Rider = this; } else { Name = NameList.RandomName("elven male"); Title = "Svartalfar Ranger of Dragon Sanctuary"; Body = 605; Hue = Utility.RandomList(897, 898, 899, 900, 901, 905, 990, 995, 996, 997, 998, 999, 2401, 2402, 2403, 2404, 2405, 2406, 2407, 2408, 2409, 2410, 2411); HairHue = 2405; HairItemID = Utility.RandomList(12224, 12225, 12236, 12237, 12238, 12239); BaseWeapon weapon = Loot.RandomWeapon(true); switch (Utility.Random(3)) { case 0: weapon = new EbonyGreatBow(); break; case 1: weapon = new EbonyWarBow(); break; case 2: weapon = new SkeletalWarBow(); break; } BaseRunicTool.ApplyAttributesTo(weapon, 5, 25, 35); weapon.Slayer = SlayerName.ReptilianDeath; weapon.WeaponAttributes.HitLightning = 25; weapon.Hue = 0x4D5; weapon.Movable = true; AddItem(weapon); EbonsilkTiara helm = new EbonsilkTiara(); BaseRunicTool.ApplyAttributesTo(helm, 5, 25, 35); helm.Hue = 0x4D5; helm.Movable = true; AddItem(helm); EbonsilkGorget gorget = new EbonsilkGorget(); BaseRunicTool.ApplyAttributesTo(gorget, 5, 25, 35); gorget.Hue = 0x4D5; gorget.Movable = true; AddItem(gorget); EbonsilkArms arms = new EbonsilkArms(); BaseRunicTool.ApplyAttributesTo(arms, 5, 25, 35); arms.Hue = 0x4D5; arms.Movable = true; AddItem(arms); EbonsilkChest chest = new EbonsilkChest(); BaseRunicTool.ApplyAttributesTo(chest, 5, 25, 35); chest.Hue = 0x4D5; chest.Movable = true; AddItem(chest); EbonsilkLegs legs = new EbonsilkLegs(); BaseRunicTool.ApplyAttributesTo(legs, 5, 25, 35); legs.Hue = 0x4D5; legs.Movable = true; AddItem(legs); HighBoots boots = new HighBoots(); BaseRunicTool.ApplyAttributesTo(boots, 5, 25, 35); boots.Hue = 0x4D5; boots.Movable = true; AddItem(boots); new FireSteed().Rider = this; } }
public override void InitBody() { Name = NameList.RandomName("ratman"); Body = 42; }
public Invader(SkillName specialty, InvasionType type) : base(GetAI(specialty), FightMode.Closest, 10, 1, .2, .1) { _Specialty = specialty; _InvasionType = type; if (_Specialty == SkillName.Bushido && Utility.RandomBool()) { _Sampire = true; } if (Female = Utility.RandomBool()) { //Body = 0x191; Name = NameList.RandomName("female"); } else { //Body = 0x190; Name = NameList.RandomName("male"); } SetBody(); string title; if (_Sampire) { title = "the sampire"; } else if (specialty == SkillName.Magery) { title = "the wizard"; } else { title = string.Format("the {0}", Skills[specialty].Info.Title); if (Female && title.EndsWith("man")) { title = title.Substring(0, title.Length - 3) + "woman"; } } Title = title; SetStr(120, 170); SetDex(SpellCaster ? 75 : 150); SetInt(SpellCaster ? 1800 : 500); SetHits(800, 1250); if (AI == AIType.AI_Melee) { SetDamage(15, 28); } else if (!SpellCaster) { SetDamage(12, 22); } else { SetDamage(8, 18); } Fame = 8000; Karma = -8000; SetResists(); SetSkills(); EquipSpecialty(); _NextSpecial = DateTime.UtcNow; if (_Sampire) { Timer.DelayCall(TimeSpan.FromSeconds(1), () => { VampiricEmbraceSpell spell = new VampiricEmbraceSpell(this, null); spell.Cast(); }); } SetAreaEffect(AreaEffect.AuraOfEnergy); }
public HireBeggar() { SpeechHue = Utility.RandomDyedHue(); Hue = Utility.RandomSkinHue(); if (this.Female = Utility.RandomBool()) { Body = 0x191; Name = NameList.RandomName("female"); switch (Utility.Random(2)) { case 0: AddItem(new Skirt(Utility.RandomNeutralHue())); break; case 1: AddItem(new Kilt(Utility.RandomNeutralHue())); break; } } else { Body = 0x190; Name = NameList.RandomName("male"); AddItem(new ShortPants(Utility.RandomNeutralHue())); } Title = "the beggar"; Item hair = new Item(Utility.RandomList(0x203B, 0x2049, 0x2048, 0x204A)); hair.Hue = Utility.RandomNeutralHue(); hair.Layer = Layer.Hair; hair.Movable = false; AddItem(hair); if (Utility.RandomBool() && !this.Female) { Item beard = new Item(Utility.RandomList(0x203E, 0x203F, 0x2040, 0x2041, 0x204B, 0x204C, 0x204D)); beard.Hue = hair.Hue; beard.Layer = Layer.FacialHair; beard.Movable = false; AddItem(beard); } SetStr(26, 26); SetDex(21, 21); SetInt(36, 36); SetDamage(1, 1); //SetSkill(SkillName.Begging, 66, 97); SetSkill(SkillName.Tactiques, 5, 27); SetSkill(SkillName.Anatomie, 5, 27); SetSkill(SkillName.ArtMagique, 2, 2); AddItem(new Sandals(Utility.RandomNeutralHue())); switch (Utility.Random(2)) { case 0: AddItem(new Doublet(Utility.RandomNeutralHue())); break; case 1: AddItem(new Shirt(Utility.RandomNeutralHue())); break; } PackGold(0, 25); }
public BaneOfInsanity() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4) { Body = 0x190; SpeechHue = Utility.RandomDyedHue(); Hue = Utility.RandomSkinHue(); Name = NameList.RandomName("male"); Utility.AssignRandomHair(this); int HairColor = Utility.RandomHairHue(); FacialHairItemID = Utility.RandomList(0, 8254, 8255, 8256, 8257, 8267, 8268, 8269); HairHue = HairColor; FacialHairHue = HairColor; Title = "the Bane of Insanity"; SetStr(350); SetDex(150); SetInt(120); SetHits(300); SetDamage(12, 23); SetDamageType(ResistanceType.Physical, 100); SetResistance(ResistanceType.Physical, 40); SetResistance(ResistanceType.Fire, 30); SetResistance(ResistanceType.Cold, 30); SetResistance(ResistanceType.Poison, 30); SetResistance(ResistanceType.Energy, 30); SetSkill(SkillName.DetectHidden, 80.0); SetSkill(SkillName.Anatomy, 110.0); SetSkill(SkillName.MagicResist, 80.0); SetSkill(SkillName.Macing, 110.0); SetSkill(SkillName.Fencing, 110.0); SetSkill(SkillName.Wrestling, 110.0); SetSkill(SkillName.Swords, 110.0); SetSkill(SkillName.Tactics, 110.0); Fame = 8000; Karma = -8000; VirtualArmor = 30; PlateChest chest = new PlateChest(); chest.Hue = 0x83F; chest.Name = "plate tunic of insanity"; chest.Durability = ArmorDurabilityLevel.Indestructible; chest.ProtectionLevel = ArmorProtectionLevel.Invulnerability; AddItem(chest); PlateArms arms = new PlateArms(); arms.Hue = 0x83F; arms.Name = "plate arms of insanity"; arms.Durability = ArmorDurabilityLevel.Indestructible; arms.ProtectionLevel = ArmorProtectionLevel.Invulnerability; AddItem(arms); PlateLegs legs = new PlateLegs(); legs.Hue = 0x83F; legs.Name = "plate leggings of insanity"; legs.Durability = ArmorDurabilityLevel.Indestructible; legs.ProtectionLevel = ArmorProtectionLevel.Invulnerability; AddItem(legs); PlateGorget neck = new PlateGorget(); neck.Hue = 0x83F; neck.Name = "plate gorget of insanity"; neck.Durability = ArmorDurabilityLevel.Indestructible; neck.ProtectionLevel = ArmorProtectionLevel.Invulnerability; AddItem(neck); PlateGloves gloves = new PlateGloves(); gloves.Hue = 0x83F; gloves.Name = "plate gloves of insanity"; gloves.Durability = ArmorDurabilityLevel.Indestructible; gloves.ProtectionLevel = ArmorProtectionLevel.Invulnerability; AddItem(gloves); PlateHelm helm = new PlateHelm(); helm.Hue = 0x83F; helm.ItemID = 0x2645; helm.Name = "plate helm of insanity"; helm.Durability = ArmorDurabilityLevel.Indestructible; helm.ProtectionLevel = ArmorProtectionLevel.Invulnerability; AddItem(helm); Halberd weapon = new Halberd(); weapon.Hue = 0x83F; weapon.Name = "halberd of insanity"; weapon.AccuracyLevel = WeaponAccuracyLevel.Supremely; weapon.DamageLevel = WeaponDamageLevel.Vanq; weapon.DurabilityLevel = WeaponDurabilityLevel.Indestructible; AddItem(weapon); }
public override void OnThink() { if (Controlled) { if (BodyMod != 0) { BaseMobileHelper.Return(this, m_Items); } return; } if (BodyMod != 0) { if (Utility.RandomDouble() < ReturnChance) { BaseMobileHelper.Return(this, m_Items); } } else { if (Utility.RandomDouble() < TurnChance) { InitOutfit(); BaseMobileHelper.Turn(this, m_Items, 0x190, Utility.RandomSkinHue(), NameList.RandomName("male"), "the mystic traveller", true); } } base.OnThink(); }
public ElfBrigand() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4) { SpeechHue = Utility.RandomDyedHue(); Title = "the brigand"; Race = Race.Elf; Hue = Race.RandomSkinHue(); if (this.Female = Utility.RandomBool()) { Body = 0x25E; Name = NameList.RandomName("female elf brigand"); switch (Utility.Random(2)) { case 0: AddItem(new Skirt(Utility.RandomNondyedHue())); break; case 1: AddItem(new Kilt(Utility.RandomNondyedHue())); break; } } else { Body = 0x25D; Name = NameList.RandomName("male elf brigand"); AddItem(new ShortPants(Utility.RandomNondyedHue())); } SetStr(86, 100); SetDex(81, 95); SetInt(61, 75); SetDamage(10, 23); SetSkill(SkillName.Fencing, 66.0, 97.5); SetSkill(SkillName.Macing, 65.0, 87.5); SetSkill(SkillName.MagicResist, 25.0, 47.5); SetSkill(SkillName.Swords, 65.0, 87.5); SetSkill(SkillName.Tactics, 65.0, 87.5); SetSkill(SkillName.Wrestling, 15.0, 37.5); Fame = 1000; Karma = -1000; switch (Utility.Random(4)) { case 0: AddItem(new Boots()); break; case 1: AddItem(new ThighBoots()); break; case 2: AddItem(new Sandals()); break; case 3: AddItem(new Shoes()); break; } AddItem(new Shirt(Utility.RandomNondyedHue())); switch (Utility.Random(7)) { case 0: AddItem(new Longsword()); break; case 1: AddItem(new Cutlass()); break; case 2: AddItem(new Broadsword()); break; case 3: AddItem(new Axe()); break; case 4: AddItem(new Club()); break; case 5: AddItem(new Dagger()); break; case 6: AddItem(new Spear()); break; } Utility.AssignRandomHair(this, true); }
public PirateCrew2() : base(AIType.AI_Archer, FightMode.Closest, 15, 1, 0.2, 0.4) { SpeechHue = Utility.RandomDyedHue(); Hue = Utility.RandomSkinHue(); if (this.Female = Utility.RandomBool()) { Body = 0x191; Name = NameList.RandomName("female"); } else { Body = 0x190; Name = NameList.RandomName("male"); } Title = "[Crew]"; AddItem(new ThighBoots()); Item hair = new Item(Utility.RandomList(0x203B, 0x2049, 0x2048, 0x204A)); hair.Hue = Utility.RandomNondyedHue(); hair.Layer = Layer.Hair; hair.Movable = false; AddItem(hair); if (Utility.RandomBool() && !this.Female) { Item beard = new Item(Utility.RandomList(0x203E, 0x203F, 0x2040, 0x2041, 0x204B, 0x204C, 0x204D)); beard.Hue = hair.Hue; beard.Layer = Layer.FacialHair; beard.Movable = false; AddItem(beard); } SetStr(195, 200); SetDex(181, 195); SetInt(61, 75); SetHits(288, 308); SetDamage(20, 40); SetSkill(SkillName.Fencing, 86.0, 97.5); SetSkill(SkillName.Macing, 85.0, 87.5); SetSkill(SkillName.MagicResist, 55.0, 67.5); SetSkill(SkillName.Swords, 85.0, 87.5); SetSkill(SkillName.Tactics, 85.0, 87.5); SetSkill(SkillName.Wrestling, 35.0, 37.5); SetSkill(SkillName.Archery, 85.0, 87.5); CantWalk = false; Fame = 2000; Karma = -2000; VirtualArmor = 66; switch (Utility.Random(1)) { case 0: AddItem(new LongPants(Utility.RandomRedHue())); break; case 1: AddItem(new ShortPants(Utility.RandomRedHue())); break; } switch (Utility.Random(3)) { case 0: AddItem(new FancyShirt(Utility.RandomRedHue())); break; case 1: AddItem(new Shirt(Utility.RandomRedHue())); break; case 2: AddItem(new Doublet(Utility.RandomRedHue())); break; } switch (Utility.Random(3)) { case 0: AddItem(new Bandana(Utility.RandomRedHue())); break; case 1: AddItem(new SkullCap(Utility.RandomRedHue())); break; } switch (Utility.Random(5)) { case 0: AddItem(new Bow()); break; case 1: AddItem(new CompositeBow()); break; case 2: AddItem(new Crossbow()); break; case 3: AddItem(new RepeatingCrossbow()); break; case 4: AddItem(new HeavyCrossbow()); break; } }
public SpellCheckWordLists(string dictionaryFolder, string languageName, IDoSpell doSpell) { _dictionaryFolder = dictionaryFolder ?? throw new NullReferenceException(nameof(dictionaryFolder)); _languageName = languageName ?? throw new NullReferenceException(nameof(languageName)); _doSpell = doSpell ?? throw new NullReferenceException(nameof(doSpell)); _nameList = new NameList(Configuration.DictionariesDirectory, languageName, Configuration.Settings.WordLists.UseOnlineNames, Configuration.Settings.WordLists.NamesUrl); _names = _nameList.GetNames(); var namesMultiWordList = _nameList.GetMultiNames(); if (Configuration.Settings.Tools.RememberUseAlwaysList) { LoadUseAlwaysList(); } foreach (string namesItem in _names) { _namesListUppercase.Add(namesItem.ToUpperInvariant()); } if (languageName.StartsWith("en_", StringComparison.OrdinalIgnoreCase)) { foreach (string namesItem in _names) { if (!namesItem.EndsWith('s')) { _namesListWithApostrophe.Add(namesItem + "'s"); _namesListWithApostrophe.Add(namesItem + "’s"); } else if (!namesItem.EndsWith('\'')) { _namesListWithApostrophe.Add(namesItem + "'"); } } } if (File.Exists(dictionaryFolder + languageName + "_user.xml")) { var userWordDictionary = new XmlDocument(); userWordDictionary.Load(dictionaryFolder + languageName + "_user.xml"); var xmlNodeList = userWordDictionary.DocumentElement?.SelectNodes("word"); if (xmlNodeList != null) { foreach (XmlNode node in xmlNodeList) { string word = node.InnerText.Trim().ToLowerInvariant(); if (word.Contains(' ')) { _userPhraseList.Add(word); } else { _userWordList.Add(word); } } } } // Add names/userdic with "." or " " or "-" foreach (var word in namesMultiWordList) { if (word.Contains(PeriodAndDash)) { _wordsWithDashesOrPeriods.Add(word); } } foreach (string name in _names) { if (name.Contains(PeriodAndDash)) { _wordsWithDashesOrPeriods.Add(name); } } foreach (string word in _userWordList) { if (word.Contains(PeriodAndDash)) { _wordsWithDashesOrPeriods.Add(word); } } foreach (var phrase in _userPhraseList) { if (phrase.Contains(PeriodAndDash)) { _wordsWithDashesOrPeriods.Add(phrase); } } }
public NightGuard() : base(AIType.AI_Melee, FightMode.Aggressor, 14, 1, 0.8, 1.6) { SpeechHue = Utility.RandomDyedHue(); Title = "A Night Guard"; Name = NameList.RandomName("male"); Hue = Utility.RandomSkinHue(); Body = 0x190; InitStats(115, 100, 85); SetHits(100); SetDamage(22); Skills[SkillName.Anatomy].Base = 120.0; Skills[SkillName.Tactics].Base = 120.0; Skills[SkillName.Fencing].Base = 120.0; Skills[SkillName.MagicResist].Base = 120.0; Skills[SkillName.DetectHidden].Base = 100.0; StuddedChest sChest = new StuddedChest(); sChest.Hue = 1899; AddItem(sChest); StuddedArms sArms = new StuddedArms(); sArms.Hue = 1899; AddItem(sArms); StuddedGloves sGloves = new StuddedGloves(); sGloves.Hue = 1899; AddItem(sGloves); StuddedGorget sGorget = new StuddedGorget(); sGorget.Hue = 1899; AddItem(sGorget); StuddedLegs sLegs = new StuddedLegs(); sLegs.Hue = 1899; AddItem(sLegs); AddItem(new Boots(1899)); AddItem(new SkullCap(1899)); Kryss k = new Kryss(); k.Hue = 1899; AddItem(k); SetStr(95); SetDex(100); SetInt(60); SetHits(210); SetDamage(30); SetDamageType(ResistanceType.Physical, 5); SetDamageType(ResistanceType.Cold, 5); SetDamageType(ResistanceType.Fire, 5); SetDamageType(ResistanceType.Energy, 5); SetDamageType(ResistanceType.Poison, 80); SetResistance(ResistanceType.Physical, 25); SetResistance(ResistanceType.Cold, 25); SetResistance(ResistanceType.Fire, 25); SetResistance(ResistanceType.Energy, 25); SetResistance(ResistanceType.Poison, 100); Fame = 3500; Karma = 3500; VirtualArmor = 40; PackGold(700, 900); }
public Orc() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4) { Name = NameList.RandomName("orc"); Body = 182; BaseSoundID = 0x45A; Level = 8; SetStr(125, 150); SetDex(81, 105); SetInt(36, 60); SetHits(58, 72); SetDamage(8, 10); SetDamageType(ResistanceType.Physical, 100); SetResistance(ResistanceType.Physical, 25, 30); SetResistance(ResistanceType.Fire, 20, 30); SetResistance(ResistanceType.Cold, 10, 20); SetResistance(ResistanceType.Poison, 10, 20); SetResistance(ResistanceType.Energy, 20, 30); SetSkill(SkillName.MagicResist, 50.1, 75.0); SetSkill(SkillName.Tactics, 55.1, 80.0); SetSkill(SkillName.Wrestling, 50.1, 70.0); Fame = 1500; Karma = -1500; VirtualArmor = 28; switch (Utility.Random(20)) { case 0: PackItem(new Scimitar()); break; case 1: PackItem(new Katana()); break; case 2: PackItem(new WarMace()); break; case 3: PackItem(new WarHammer()); break; case 4: PackItem(new Kryss()); break; case 5: PackItem(new Pitchfork()); break; } PackItem(new ThighBoots()); switch (Utility.Random(3)) { case 0: PackItem(new Ribs()); break; case 1: PackItem(new Shaft()); break; case 2: PackItem(new Candle()); break; } if (0.2 > Utility.RandomDouble()) { PackItem(new BolaBall()); } //PackGold( 10, 15 ); }
public ForgottenServant() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4) { this.SpeechHue = Utility.RandomDyedHue(); this.Title = "Forgotten Servant"; this.Hue = 768; if (this.Female = Utility.RandomBool()) { this.Body = 0x191; this.Name = NameList.RandomName("female"); this.AddItem(new Skirt(Utility.RandomNeutralHue())); } else { this.Body = 0x190; this.Name = NameList.RandomName("male"); this.AddItem(new ShortPants(Utility.RandomNeutralHue())); } this.SetStr(147, 215); this.SetDex(91, 115); this.SetInt(61, 85); this.SetHits(95, 123); this.SetDamage(4, 14); this.SetDamageType(ResistanceType.Physical, 100); this.SetResistance(ResistanceType.Physical, 25, 35); this.SetResistance(ResistanceType.Fire, 30, 40); this.SetResistance(ResistanceType.Cold, 20, 30); this.SetResistance(ResistanceType.Poison, 30, 40); this.SetResistance(ResistanceType.Energy, 30, 40); this.SetSkill(SkillName.MagicResist, 70.1, 85.0); this.SetSkill(SkillName.Swords, 60.1, 85.0); this.SetSkill(SkillName.Tactics, 75.1, 90.0); this.SetSkill(SkillName.Wrestling, 60.1, 85.0); this.Fame = 2500; this.Karma = -2500; this.QLPoints = 8; this.AddItem(new Boots(Utility.RandomNeutralHue())); this.AddItem(new FancyShirt()); this.AddItem(new Bandana()); switch (Utility.Random(7)) { case 0: this.AddItem(new Longsword()); break; case 1: this.AddItem(new Cutlass()); break; case 2: this.AddItem(new Broadsword()); break; case 3: this.AddItem(new Axe()); break; case 4: this.AddItem(new Club()); break; case 5: this.AddItem(new Dagger()); break; case 6: this.AddItem(new Spear()); break; } Utility.AssignRandomHair(this); }
public SavageRider() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.15, 0.4) { Name = NameList.RandomName("savage rider"); int dino = Utility.RandomList(0x7D1, 0x7D2, 0x7D3, 0x7D4, 0x7D5, 0x7D6); if (Female = Utility.RandomBool()) { Body = 401; Item cloth9 = new FemaleLeatherChest(); cloth9.Hue = dino; cloth9.Name = "dracosaur tunic"; AddItem(cloth9); } else { Body = 400; } Hue = 0; SetStr(151, 170); SetDex(92, 130); SetInt(51, 65); SetDamage(29, 34); SetDamageType(ResistanceType.Physical, 100); SetSkill(SkillName.Fencing, 72.5, 95.0); SetSkill(SkillName.Healing, 60.3, 90.0); SetSkill(SkillName.Macing, 72.5, 95.0); SetSkill(SkillName.Poisoning, 60.0, 82.5); SetSkill(SkillName.MagicResist, 72.5, 95.0); SetSkill(SkillName.Swords, 72.5, 95.0); SetSkill(SkillName.Tactics, 72.5, 95.0); Fame = 1000; Karma = -1000; PackItem(new Bandage(Utility.RandomMinMax(1, 15))); if (0.1 > Utility.RandomDouble()) { PackItem(new BolaBall()); } AddItem(new TribalSpear()); Item cloth1 = new BoneArms(); cloth1.Hue = dino; cloth1.Name = "dracosaur guantlets"; AddItem(cloth1); Item cloth2 = new BoneLegs(); cloth2.Hue = dino; cloth2.Name = "dracosaur leggings"; AddItem(cloth2); Item cloth3 = new TribalMask(); cloth3.Hue = dino; cloth3.Name = "savage tribal mask"; AddItem(cloth3); Item cloth4 = new LeatherSkirt(); cloth4.Hue = dino; cloth4.Name = "dracosaur skirt"; cloth4.Layer = Layer.Waist; AddItem(cloth4); new SavageRidgeback().Rider = this; }
public UndeadSwordPirateSTR() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.175, 0.2) { Title = "the unrested pirate"; Body = 400; Team = 1; Kills = 10; Hue = Utility.RandomSkinHue(); SpeechHue = 1153; this.Body = 0x190; this.Name = NameList.RandomName("male"); SetStr(90, 100); SetDex(85, 100); SetInt(10, 20); SetSkill(SkillName.Archery, 95.0, 100.0); SetSkill(SkillName.MagicResist, 75.0, 100.0); SetSkill(SkillName.Tactics, 90.0, 100.0); SetSkill(SkillName.Healing, 75.0, 100.0); SetSkill(SkillName.Anatomy, 90.0, 100.0); SetSkill(SkillName.Swords, 95.0, 100.0); SetSkill(SkillName.Stealth, 120.0, 180.0); SetSkill(SkillName.Hiding, 120.0, 180.0); Fame = 4500; Karma = -4500; VirtualArmor = 0; Item hair = new Item(Utility.RandomList(0x203B, 0x2049, 0x2048, 0x204A)); hair.Hue = Utility.RandomHairHue(); hair.Layer = Layer.Hair; hair.Movable = false; Item beard = new Item(Utility.RandomList(0x2040, 0x203E, 0x204C, 0x204B, 0x203F)); beard.Hue = hair.Hue; beard.Layer = Layer.FacialHair; beard.Movable = false; AddItem(beard); AddItem(hair); PackGold(70, 95); PackItem(new Bandage(20)); switch (Utility.Random(2)) { case 0: { Item scimitar = new Scimitar(); EquipItem(scimitar); break; } case 1: { Item cutlass = new Cutlass(); EquipItem(cutlass); break; } } switch (Utility.Random(3)) { case 0: { Item fancyshirt = new FancyShirt(); fancyshirt.Hue = Utility.RandomNeutralHue(); EquipItem(fancyshirt); break; } case 1: { Item doublet = new Doublet(); doublet.Hue = Utility.RandomNeutralHue(); EquipItem(doublet); break; } case 2: { break; } } switch (Utility.Random(2)) { case 0: { Item longpants = new LongPants(); longpants.Hue = Utility.RandomNeutralHue(); EquipItem(longpants); break; } case 1: { Item shortpants = new ShortPants(); shortpants.Hue = Utility.RandomNeutralHue(); EquipItem(shortpants); break; } } switch (Utility.Random(4)) { case 0: { Item boots = new Boots(); boots.Hue = 0; EquipItem(boots); break; } case 1: { Item shoes = new Shoes(); shoes.Hue = 1713; EquipItem(shoes); break; } case 3: { Item thighboots = new ThighBoots(); thighboots.Hue = 0; EquipItem(thighboots); break; } case 4: { break; } } switch (Utility.Random(3)) { case 0: { Item Bandana = new Bandana(); Bandana.Hue = Utility.RandomBirdHue(); EquipItem(Bandana); break; } case 1: { Item skullcap = new SkullCap(); skullcap.Hue = Utility.RandomBirdHue(); EquipItem(skullcap); break; } case 3: { break; } } }
public SoldierArcher() { SpeechHue = Utility.RandomDyedHue(); this.AI = AIType.AI_Archer; ControlSlots = 3; Title = "the archer"; Item hair = new Item(Utility.RandomList(0x203B, 0x2049, 0x2048, 0x204A)); hair.Hue = Utility.RandomNeutralHue(); hair.Layer = Layer.Hair; hair.Movable = false; AddItem(hair); this.Age = SoldierAge.Teenage; if (Utility.RandomBool() && !this.Female) { Item beard = new Item(Utility.RandomList(0x203E, 0x203F, 0x2040, 0x2041, 0x204B, 0x204C, 0x204D)); beard.Hue = hair.Hue; beard.Layer = Layer.FacialHair; beard.Movable = false; AddItem(beard); } if (this.Female = Utility.RandomBool()) { //if ( this.Race.Elf = Utility.RandomBool() ) //{ // Body = 0x25e; //Name = NameList.RandomName( "female" ); //} //else //{ //Race = Human; Body = 0x191; Name = NameList.RandomName("female"); //} } else { //if ( this.Race.Elf = Utility.RandomBool() ) //{ //Body = 0x25d; // Name = NameList.RandomName( "male" ); //} //else //{ //Race = Human; Body = 0x190; Name = NameList.RandomName("male"); //} } SetStr(25, 35); SetDex(20, 30); SetInt(15, 20); SetDamage(2, 10); SetSkill(SkillName.Cooking, 15, 20); SetSkill(SkillName.Healing, 15, 20); SetSkill(SkillName.MagicResist, 15, 20); SetSkill(SkillName.Mining, 15.0); SetSkill(SkillName.Tactics, 15, 20); SetSkill(SkillName.Anatomy, 15, 20); SetSkill(SkillName.Archery, 22, 22); //SetSkill( SkillName.Swords, 15, 20 ); //SetSkill( SkillName.Parry, 15, 20 ); //SetSkill( SkillName.Macing, 36, 67 ); SetSkill(SkillName.Focus, 36, 67); SetSkill(SkillName.Wrestling, 25, 47); Fame = 100; Karma = 100; Personality = (SoldierPersonality)(Utility.RandomMinMax(0, 7)); Motivation = (SoldierMotivation)(Utility.RandomMinMax(0, 4)); //AddItem( new Shoes( Utility.RandomNeutralHue() ) ); //AddItem( new Shirt()); // Pick a random sword /*switch ( Utility.Random( 5 )) * { * case 0: AddItem( new Longsword() ); break; * case 1: AddItem( new Broadsword() ); break; * case 2: AddItem( new VikingSword() ); break; * case 3: AddItem( new Dagger() ); break; * case 4: AddItem( new Katana() ); break; * } * * // Pick a random shield * switch ( Utility.Random( 6 )) * { * case 0: AddItem( new BronzeShield() ); break; * case 1: AddItem( new HeaterShield() ); break; * case 2: AddItem( new MetalKiteShield() ); break; * case 3: AddItem( new MetalShield() ); break; * case 4: AddItem( new WoodenKiteShield() ); break; * case 5: AddItem( new WoodenShield() ); break; * //case 6: AddItem( new OrderShield() ); break; * //case 7: AddItem( new ChaosShield() ); break; * } * * switch( Utility.Random( 5 ) ) * { * case 0: break; * case 1: AddItem( new Bascinet() ); break; * case 2: AddItem( new CloseHelm() ); break; * case 3: AddItem( new NorseHelm() ); break; * case 4: AddItem( new Helmet() ); break; * * } * // Pick some armour * switch( Utility.Random( 4 ) ) * { * case 0: // Leather * AddItem( new LeatherChest() ); * AddItem( new LeatherArms() ); * AddItem( new LeatherGloves() ); * AddItem( new LeatherGorget() ); * AddItem( new LeatherLegs() ); * break; * * case 1: // Studded Leather * AddItem( new StuddedChest() ); * AddItem( new StuddedArms() ); * AddItem( new StuddedGloves() ); * AddItem( new StuddedGorget() ); * AddItem( new StuddedLegs() ); * break; * * case 2: // Ringmail * AddItem( new RingmailChest() ); * AddItem( new RingmailArms() ); * AddItem( new RingmailGloves() ); * AddItem( new RingmailLegs() ); * break; * * case 3: // Chain * AddItem( new ChainChest() ); * AddItem( new ChainCoif() ); * AddItem( new ChainLegs() ); * break; * }*/ Container pack = Backpack; if (pack != null) { pack.Delete(); } pack = new StrongBackpack(); pack.Movable = false; AddItem(pack); //PackItem( new TentDeed() ); }
public Guardian() : base(AIType.AI_Archer, FightMode.Agressor, 10, 1, 0.2, 0.4) { InitStats(100, 125, 25); Title = "the guardian"; SpeechHue = Utility.RandomDyedHue(); Hue = Utility.RandomSkinHue(); if (Female = Utility.RandomBool()) { Body = 0x191; Name = NameList.RandomName("female"); } else { Body = 0x190; Name = NameList.RandomName("male"); } new ForestOstard().Rider = this; PlateChest chest = new PlateChest(); chest.Hue = 0x966; AddItem(chest); PlateArms arms = new PlateArms(); arms.Hue = 0x966; AddItem(arms); PlateGloves gloves = new PlateGloves(); gloves.Hue = 0x966; AddItem(gloves); PlateGorget gorget = new PlateGorget(); gorget.Hue = 0x966; AddItem(gorget); PlateLegs legs = new PlateLegs(); legs.Hue = 0x966; AddItem(legs); PlateHelm helm = new PlateHelm(); helm.Hue = 0x966; AddItem(helm); Bow bow = new Bow(); bow.Movable = false; bow.Crafter = this; bow.Quality = WeaponQuality.Exceptional; AddItem(bow); PackItem(new Arrow(250)); PackGold(250, 500); Skills[SkillName.Anatomy].Base = 120.0; Skills[SkillName.Tactics].Base = 120.0; Skills[SkillName.Archery].Base = 120.0; Skills[SkillName.MagicResist].Base = 120.0; Skills[SkillName.DetectHidden].Base = 100.0; }
public ArcherGuard(Mobile target) : base(target) { InitStats(100, 125, 25); Title = "the guard"; SpeechHue = Utility.RandomDyedHue(); Hue = Utility.RandomSkinHue(); if (Female = Utility.RandomBool()) { Body = 0x191; Name = NameList.RandomName("female"); } else { Body = 0x190; Name = NameList.RandomName("male"); } new Horse().Rider = this; AddItem(new StuddedChest()); AddItem(new StuddedArms()); AddItem(new StuddedGloves()); AddItem(new StuddedGorget()); AddItem(new StuddedLegs()); AddItem(new Boots()); AddItem(new SkullCap()); Bow bow = new Bow(); bow.Movable = false; bow.Crafter = this; bow.Quality = ItemQuality.Exceptional; AddItem(bow); Container pack = new Backpack(); pack.Movable = false; Arrow arrows = new Arrow(250); arrows.LootType = LootType.Newbied; pack.DropItem(arrows); pack.DropItem(new Gold(10, 25)); AddItem(pack); Skills[SkillName.Anatomy].Base = 120.0; Skills[SkillName.Tactics].Base = 120.0; Skills[SkillName.Archery].Base = 120.0; Skills[SkillName.MagicResist].Base = 120.0; Skills[SkillName.DetectHidden].Base = 100.0; NextCombatTime = Core.TickCount + 500; Focus = target; }
public MainWindow() { InitializeComponent(); DataContext = new NameList(); }
public override void InitOutfit() { SetStr(117); SetDex(96); SetInt(54); SetSkill(SkillName.ArmsLore, 36.0, 68.0); SetSkill(SkillName.Blacksmith, 65.0, 88.0); SetSkill(SkillName.Fencing, 60.0, 83.0); SetSkill(SkillName.Macing, 61.0, 93.0); SetSkill(SkillName.Swords, 60.0, 83.0); SetSkill(SkillName.Tactics, 60.0, 83.0); SetSkill(SkillName.Parry, 61.0, 93.0); PackGold(41, 82); if (this.Female = Utility.RandomBool()) { this.Body = 0x191; this.Name = NameList.RandomName("female"); this.Hue = Utility.RandomSkinHue(); this.HairHue = Utility.RandomList(26, 44, 81, 1102, 1107, 1108, 1109, 1116, 1117, 1122, 1138, 1140, 1141, 1146, 1148, 1149, 1153); this.HairItemID = Utility.RandomList(8251, 8252, 8253, 8260, 8261, 8262, 8263, 8264, 8265); switch (Utility.Random(17)) { case 0: AddItem(new CitizenDress(Utility.RandomBlueHue())); break; case 1: AddItem(new CommonerDress(Utility.RandomGreenHue())); break; case 2: AddItem(new ConfessorDress(Utility.RandomRedHue())); break; case 3: AddItem(new ElegantGown(Utility.RandomYellowHue())); break; case 4: AddItem(new FancyDress(Utility.RandomBlueHue())); break; case 5: AddItem(new FlowerDress(Utility.RandomGreenHue())); break; case 6: AddItem(new FormalDress(Utility.RandomRedHue())); break; case 7: AddItem(new GildedDress(Utility.RandomYellowHue())); break; case 8: AddItem(new MaidensDress(Utility.RandomBlueHue())); break; case 9: AddItem(new MedievalLongDress(Utility.RandomGreenHue())); break; case 10: AddItem(new NobleDress(Utility.RandomRedHue())); break; case 11: AddItem(new NocturnalDress(Utility.RandomYellowHue())); break; case 12: AddItem(new PartyDress(Utility.RandomBlueHue())); break; case 13: AddItem(new PlainDress(Utility.RandomGreenHue())); break; case 14: AddItem(new ReinassanceDress(Utility.RandomRedHue())); break; case 15: AddItem(new TheaterDress(Utility.RandomYellowHue())); break; case 16: AddItem(new VictorianDress(Utility.RandomNeutralHue())); break; } switch (Utility.Random(8)) { case 0: AddItem(new Boots(Utility.RandomNeutralHue())); break; case 1: AddItem(new FurBoots(Utility.RandomNeutralHue())); break; case 2: AddItem(new LightBoots(Utility.RandomNeutralHue())); break; case 3: AddItem(new Sandals(Utility.RandomNeutralHue())); break; case 4: AddItem(new ShortBoots(Utility.RandomNeutralHue())); break; case 5: AddItem(new ThighBoots(Utility.RandomNeutralHue())); break; } if (0.05 > Utility.RandomDouble()) { SilverBracelet bracelet = new SilverBracelet(); bracelet.Hue = Utility.RandomList(26, 44, 81, 1102, 1107, 1108, 1109, 1116, 1117, 1122, 1138, 1140, 1141, 1146, 1148, 1149, 1153); bracelet.Movable = true; AddItem(bracelet); } if (0.05 > Utility.RandomDouble()) { SilverNecklace necklace = new SilverNecklace(); necklace.Hue = Utility.RandomList(26, 44, 81, 1102, 1107, 1108, 1109, 1116, 1117, 1122, 1138, 1140, 1141, 1146, 1148, 1149, 1153); necklace.Movable = true; AddItem(necklace); } if (0.05 > Utility.RandomDouble()) { SilverEarrings earrings = new SilverEarrings(); earrings.Hue = Utility.RandomList(26, 44, 81, 1102, 1107, 1108, 1109, 1116, 1117, 1122, 1138, 1140, 1141, 1146, 1148, 1149, 1153); earrings.Movable = true; AddItem(earrings); } } else { this.Body = 0x190; this.Name = NameList.RandomName("male"); this.Hue = Utility.RandomSkinHue(); this.HairHue = Utility.RandomList(26, 44, 81, 1102, 1107, 1108, 1109, 1116, 1117, 1122, 1138, 1140, 1141, 1146, 1148, 1149, 1153); this.HairItemID = Utility.RandomList(8251, 8252, 8253, 8260, 8261, 8262, 8263, 8264, 8265); this.FacialHairHue = Utility.RandomList(26, 44, 81, 1102, 1107, 1108, 1109, 1116, 1117, 1122, 1138, 1140, 1141, 1146, 1148, 1149, 1153); this.FacialHairItemID = Utility.RandomList(8254, 8255, 8256, 8257, 8267, 8268, 8269); switch (Utility.Random(8)) { case 0: AddItem(new FancyShirt(Utility.RandomBlueHue())); break; case 1: AddItem(new FancyTunic(Utility.RandomGreenHue())); break; case 2: AddItem(new FormalShirt(Utility.RandomRedHue())); break; case 3: AddItem(new LeatherShirt(Utility.RandomYellowHue())); break; case 4: AddItem(new ReinassanceShirt(Utility.RandomBlueHue())); break; case 5: AddItem(new Shirt(Utility.RandomGreenHue())); break; case 6: AddItem(new Surcoat(Utility.RandomRedHue())); break; case 7: AddItem(new Tunic(Utility.RandomNeutralHue())); break; } switch (Utility.Random(9)) { case 0: AddItem(new FancyPants(Utility.RandomNeutralHue())); break; case 1: AddItem(new FurSarong(Utility.RandomNeutralHue())); break; case 2: AddItem(new Hakama(Utility.RandomNeutralHue())); break; case 3: AddItem(new Kilt(Utility.RandomNeutralHue())); break; case 4: AddItem(new LeatherPants(Utility.RandomNeutralHue())); break; case 5: AddItem(new LongPants(Utility.RandomNeutralHue())); break; case 6: AddItem(new ReinassancePants(Utility.RandomNeutralHue())); break; case 7: AddItem(new ShortPants(Utility.RandomNeutralHue())); break; case 8: AddItem(new TattsukeHakama(Utility.RandomNeutralHue())); break; } switch (Utility.Random(6)) { case 0: AddItem(new Boots(Utility.RandomNeutralHue())); break; case 1: AddItem(new HeavyBoots(Utility.RandomNeutralHue())); break; case 2: AddItem(new HighBoots(Utility.RandomNeutralHue())); break; case 3: AddItem(new Shoes(Utility.RandomNeutralHue())); break; case 4: AddItem(new ShortBoots(Utility.RandomNeutralHue())); break; case 5: AddItem(new ThighBoots(Utility.RandomNeutralHue())); break; } if (0.05 > Utility.RandomDouble()) { SilverBracelet bracelet = new SilverBracelet(); bracelet.Hue = Utility.RandomList(26, 44, 81, 1102, 1107, 1108, 1109, 1116, 1117, 1122, 1138, 1140, 1141, 1146, 1148, 1149, 1153); bracelet.Movable = true; AddItem(bracelet); } if (0.05 > Utility.RandomDouble()) { SilverEarrings earrings = new SilverEarrings(); earrings.Hue = Utility.RandomList(26, 44, 81, 1102, 1107, 1108, 1109, 1116, 1117, 1122, 1138, 1140, 1141, 1146, 1148, 1149, 1153); earrings.Movable = true; AddItem(earrings); } } if (0.05 > Utility.RandomDouble()) { AddItem(new BodySash(Utility.RandomDyedHue())); } if (0.05 > Utility.RandomDouble()) { switch (Utility.Random(6)) { case 0: AddItem(new Bandana(Utility.RandomDyedHue())); break; case 1: AddItem(new Bonnet(Utility.RandomDyedHue())); break; case 2: AddItem(new Cap(Utility.RandomDyedHue())); break; case 3: AddItem(new FeatheredHat(Utility.RandomDyedHue())); break; case 4: AddItem(new SkullCap(Utility.RandomDyedHue())); break; case 5: AddItem(new WideBrimHat(Utility.RandomDyedHue())); break; } } }