public override void InitOutfit() { AddItem( new RingmailChest() ); AddItem( new RingmailLegs() ); AddItem( new RingmailArms() ); AddItem( new RingmailGloves() ); switch ( Utility.Random( 3 ) ) { case 0: AddItem( new BodySash( 0x482 ) ); break; case 1: AddItem( new Doublet( 0x482 ) ); break; case 2: AddItem( new Tunic( 0x482 ) ); break; } AddItem( new Broadsword() ); Item shield = new MetalKiteShield(); shield.Hue = Utility.RandomNondyedHue(); Utility.AssignRandomHair( this ); AddItem( shield ); switch ( Utility.Random( 2 ) ) { case 0: AddItem( new Boots() ); break; case 1: AddItem( new ThighBoots() ); break; } PackGold( 100, 200 ); }
public override void InitOutfit() { this.AddItem(new PlateArms()); this.AddItem(new PlateChest()); this.AddItem(new PlateGloves()); this.AddItem(new StuddedGorget()); this.AddItem(new PlateLegs()); switch ( Utility.Random(4) ) { case 0: this.AddItem(new PlateHelm()); break; case 1: this.AddItem(new NorseHelm()); break; case 2: this.AddItem(new CloseHelm()); break; case 3: this.AddItem(new Helmet()); break; } switch ( Utility.Random(3) ) { case 0: this.AddItem(new BodySash(0x482)); break; case 1: this.AddItem(new Doublet(0x482)); break; case 2: this.AddItem(new Tunic(0x482)); break; } this.AddItem(new Broadsword()); Item shield = new MetalKiteShield(); shield.Hue = Utility.RandomNondyedHue(); this.AddItem(shield); switch ( Utility.Random(2) ) { case 0: this.AddItem(new Boots()); break; case 1: this.AddItem(new ThighBoots()); break; } this.PackGold(100, 200); }
public HorseTownGuard() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.175, 0.2) { Title = "the guard"; Body = 400; Hue = Utility.RandomSkinHue(); SpeechHue=1153; this.Body = 0x190; this.Name = NameList.RandomName( "male" ); SetStr( 150 ); SetDex( 100 ); SetInt( 25 ); SetSkill( SkillName.MagicResist, 200.0 ); SetSkill( SkillName.Swords, 100.0 ); SetSkill( SkillName.Tactics, 100.0 ); SetSkill( SkillName.Healing, 100.0 ); SetSkill( SkillName.Anatomy, 100.0 ); SetSkill( SkillName.Parry, 100.0 ); SetSkill( SkillName.DetectHidden, 100.0 ); Fame = 2500; Karma = 5000; VirtualArmor = 30; Item hair = new Item( Utility.RandomList( 0x203B, 0x2049, 0x2048, 0x204A ) ); hair.Hue = Utility.RandomHairHue(); hair.Layer = Layer.Hair; hair.Movable = false; AddItem( hair ); PackGold( 0 ); switch ( Utility.Random( 50 ) ) { case 0: { Item beard = new Item( Utility.RandomList( 0x2040, 0x204B, 0x203F, 0x2041 ) ); beard.Hue = hair.Hue; beard.Layer = Layer.FacialHair; beard.Movable = false; AddItem( beard ); break; } } Item platechest = new PlateChest(); EquipItem( platechest ); Item platearms = new PlateArms(); EquipItem( platearms ); Item platelegs = new PlateLegs(); EquipItem( platelegs ); Item plategorget = new PlateGorget(); EquipItem( plategorget ); Longsword longsword = new Longsword(); longsword.Movable = false; longsword.MinDamage = 35; longsword.MaxDamage = 40; EquipItem( longsword ); Item shield = new MetalKiteShield(); EquipItem( shield ); PackItem( new Longsword() ); PackItem( new Bandage( 100 ) ); Horse horse = new Horse(); horse.Rider = this; horse.Controled = true; horse.ControlMaster = this; }
public IguanaCoveBossChest() : base(0xE43) { Name = "a treasure chest -50-"; Movable = true; Weight = 1000.0; TrapPower = 0; Locked = true; RequiredSkill = 50; LockLevel = 50; MaxLockLevel = 80; /////////////////////////////////// Gold if (Utility.RandomDouble() < 0.25) { DropItem(new Gold(Utility.Random(250, 400))); } /////////////////////////////////////// Jewelry if (Utility.RandomDouble() < 0.04) { DropItem(new Agate()); } if (Utility.RandomDouble() < 0.04) { DropItem(new Beryl()); } if (Utility.RandomDouble() < 0.04) { DropItem(new ChromeDiopside()); } if (Utility.RandomDouble() < 0.04) { DropItem(new FireOpal()); } if (Utility.RandomDouble() < 0.04) { DropItem(new MoonstoneCustom()); } if (Utility.RandomDouble() < 0.04) { DropItem(new Onyx()); } if (Utility.RandomDouble() < 0.04) { DropItem(new Opal()); } if (Utility.RandomDouble() < 0.04) { DropItem(new Pearl()); } if (Utility.RandomDouble() < 0.04) { DropItem(new TurquoiseCustom()); } if (Utility.RandomDouble() < 0.03) { DropItem(new Bloodstone()); } if (Utility.RandomDouble() < 0.03) { DropItem(new Citrine()); } if (Utility.RandomDouble() < 0.03) { DropItem(new Demantoid()); } if (Utility.RandomDouble() < 0.03) { DropItem(new Jasper()); } if (Utility.RandomDouble() < 0.03) { DropItem(new Lolite()); } if (Utility.RandomDouble() < 0.03) { DropItem(new Lupis()); } if (Utility.RandomDouble() < 0.03) { DropItem(new Peridot()); } if (Utility.RandomDouble() < 0.03) { DropItem(new Tsavorite()); } if (Utility.RandomDouble() < 0.03) { DropItem(new Zircon()); } if (Utility.RandomDouble() < 0.02) { DropItem(new Amber()); } if (Utility.RandomDouble() < 0.02) { DropItem(new Amethyst()); } if (Utility.RandomDouble() < 0.02) { DropItem(new Andalusite()); } if (Utility.RandomDouble() < 0.02) { DropItem(new Chrysoberyl()); } if (Utility.RandomDouble() < 0.02) { DropItem(new Garnet()); } if (Utility.RandomDouble() < 0.02) { DropItem(new Jade()); } if (Utility.RandomDouble() < 0.02) { DropItem(new Mandarin()); } if (Utility.RandomDouble() < 0.02) { DropItem(new Morganite()); } if (Utility.RandomDouble() < 0.02) { DropItem(new Paraiba()); } if (Utility.RandomDouble() < 0.02) { DropItem(new TigerEye()); } if (Utility.RandomDouble() < 0.02) { DropItem(new Tourmaline()); } if (Utility.RandomDouble() < 0.01) { DropItem(new Alexandrite()); } if (Utility.RandomDouble() < 0.01) { DropItem(new Ametrine()); } if (Utility.RandomDouble() < 0.01) { DropItem(new Kunzite()); } if (Utility.RandomDouble() < 0.01) { DropItem(new Ruby()); } if (Utility.RandomDouble() < 0.01) { DropItem(new Sapphire()); } if (Utility.RandomDouble() < 0.01) { DropItem(new Tanzanite()); } if (Utility.RandomDouble() < 0.01) { DropItem(new Topaz()); } if (Utility.RandomDouble() < 0.01) { DropItem(new Zultanite()); } if (Utility.RandomDouble() < 0.01) { DropItem(new Diamond()); } if (Utility.RandomDouble() < 0.01) { DropItem(new Emerald()); } if (Utility.RandomDouble() < 0.01) { DropItem(new PinkQuartz()); } if (Utility.RandomDouble() < 0.01) { DropItem(new StarSapphire()); } /////////////////////////////////////// Supplies switch (Utility.Random(18)) { case 0: DropItem(new Board(80)); break; case 1: DropItem(new BoltOfCloth(80)); break; case 2: DropItem(new Bottle(80)); break; case 3: DropItem(new CopperWire(80)); break; case 4: DropItem(new Cotton(80)); break; case 5: DropItem(new DarkYarn(80)); break; case 6: DropItem(new Feather(80)); break; case 7: DropItem(new Flax(80)); break; case 8: DropItem(new Gears(80)); break; case 9: DropItem(new GoldWire(80)); break; case 10: DropItem(new IronIngot(80)); break; case 11: DropItem(new IronWire(80)); break; case 12: DropItem(new Leather(80)); break; case 13: DropItem(new LightYarn(80)); break; case 14: DropItem(new Shaft(80)); break; case 15: DropItem(new SilverWire(80)); break; case 16: DropItem(new SpoolOfThread(80)); break; case 17: DropItem(new Springs(80)); break; case 18: DropItem(new Wool(80)); break; } switch (Utility.Random(5)) { case 0: DropItem(new ArcaneStone(25)); break; case 1: DropItem(new BeetleEgg(25)); break; case 2: DropItem(new DragonScale(25)); break; case 3: DropItem(new FishScale(25)); break; case 4: DropItem(new SerpentScale(25)); break; } Item ReagentLoot = Loot.RandomReagent(); ReagentLoot.Amount = Utility.RandomMinMax(50, 100); DropItem(ReagentLoot); if (Utility.RandomDouble() < 0.05) { DropItem(new SackFlour()); } /////////////////////////////////////// Rare Items if (Utility.RandomDouble() < 0.01) { DropItem(new DyeTub()); } /////////////////////////////////////// LV 20-30 if (Utility.RandomDouble() < 0.10) { BaseWeapon weapon = Loot.RandomWeapon(true); switch (Utility.Random(31)) { case 0: weapon = new DoubleAxe(); break; // Lv20 case 1: weapon = new TwoHandedAxe(); break; // Lv25 case 2: weapon = new WarAxe(); break; // Lv30 case 3: weapon = new CompositeBow(); break; // Lv20 case 4: weapon = new EbonyCrossbow(); break; // Lv20 case 5: weapon = new FireBow(); break; // Lv25 case 6: weapon = new GrassBow(); break; // Lv25 case 7: weapon = new IceBow(); break; // Lv25 case 8: weapon = new LightningBow(); break; // Lv25 case 9: weapon = new EbonyWarBow(); break; // Lv30 case 10: weapon = new PistolCrossbow(); break; // Lv30 case 11: weapon = new EbonyDualDaggers(); break; // Lv20 case 12: weapon = new Tekagi(); break; // Lv25 case 13: weapon = new ElvenSpellblade(); break; // Lv30 case 14: weapon = new WarMace(); break; // Lv20 case 15: weapon = new Tessen(); break; // Lv25 case 16: weapon = new HammerPick(); break; // Lv30 case 17: weapon = new Spear(); break; // Lv20 case 18: weapon = new BoneSpear(); break; // Lv25 case 19: weapon = new BubbleStaff(); break; // Lv25 case 20: weapon = new CrystalStaff(); break; // Lv25 case 21: weapon = new EnergyStaff(); break; // Lv25 case 22: weapon = new FireStaff(); break; // Lv25 case 23: weapon = new VineStaff(); break; // Lv25 case 24: weapon = new BlackStaff(); break; // Lv30 case 25: weapon = new VikingSword(); break; // Lv20 case 26: weapon = new Wakizashi(); break; // Lv20 case 27: weapon = new Daisho(); break; // Lv30 case 28: weapon = new EbonyScimitar(); break; // Lv30 case 29: weapon = new RuneBlade(); break; // Lv30 default: weapon = new Longsword(); break; // Lv20 } BaseRunicTool.ApplyAttributesTo(weapon, 2, 5, 50); DropItem(weapon); } /////////////////////////////////////// LV 18-27 if (Utility.RandomDouble() < 0.10) { BaseArmor armor = Loot.RandomArmor(true); switch (Utility.Random(18)) { case 0: armor = new HideFemaleChest(); break; // Lv18 case 1: armor = new HideGloves(); break; // Lv18 case 2: armor = new HideGorget(); break; // Lv18 case 3: armor = new HidePants(); break; // Lv18 case 4: armor = new HidePauldrons(); break; // Lv18 case 5: armor = new StuddedDo(); break; // Lv21 case 6: armor = new StuddedHaidate(); break; // Lv21 case 7: armor = new StuddedHiroSode(); break; // Lv21 case 8: armor = new StuddedMempo(); break; // Lv21 case 9: armor = new StuddedSuneate(); break; // Lv21 case 10: armor = new VikingStuddedArms(); break; // Lv24 case 11: armor = new VikingStuddedCap(); break; // Lv24 case 12: armor = new VikingStuddedChest(); break; // Lv24 case 13: armor = new VikingStuddedLegs(); break; // Lv24 case 14: armor = new ChainChest(); break; // Lv27 case 15: armor = new ChainCoif(); break; // Lv27 case 16: armor = new ChainLegs(); break; // Lv27 default: armor = new HideChest(); break; // Lv18 } BaseRunicTool.ApplyAttributesTo(armor, 3, 5, 50); DropItem(armor); } if (Utility.RandomDouble() < 0.10) { BaseHat hat = Loot.RandomHat(true); BaseRunicTool.ApplyAttributesTo(hat, 3, 12, 15); DropItem(hat); } if (Utility.RandomDouble() < 0.10) { BaseClothing clothing = Loot.RandomClothing(true); BaseRunicTool.ApplyAttributesTo(clothing, 3, 12, 15); DropItem(clothing); } if (Utility.RandomDouble() < 0.05) { BaseShield shield1 = new MetalShield(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(shield1, 3, 5, 50); } DropItem(shield1); } if (Utility.RandomDouble() < 0.05) { BaseShield shield2 = new WoodenKiteShield(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(shield2, 3, 5, 50); } DropItem(shield2); } if (Utility.RandomDouble() < 0.05) { BaseShield shield3 = new MetalKiteShield(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(shield3, 3, 5, 50); } DropItem(shield3); } if (Utility.RandomDouble() < 0.10) { BaseJewel bracelet = new SilverBracelet(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(bracelet, 3, 12, 15); } DropItem(bracelet); } if (Utility.RandomDouble() < 0.10) { BaseJewel earrings = new SilverEarrings(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(earrings, 3, 12, 15); } DropItem(earrings); } if (Utility.RandomDouble() < 0.10) { BaseJewel necklace = new SilverNecklace(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(necklace, 3, 12, 15); } DropItem(necklace); } if (Utility.RandomDouble() < 0.10) { BaseJewel ring = new SilverRing(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(ring, 3, 12, 15); } DropItem(ring); } }
public MongbatHideoutTreasureChest2() : base(0xE43) { Name = "a treasure chest -50-"; Movable = true; Weight = 1000.0; TrapPower = 0; Locked = true; RequiredSkill = 50; LockLevel = 50; MaxLockLevel = 80; /////////////////////////////////// Gold if (Utility.RandomDouble() < 0.25) { DropItem(new Gold(Utility.Random(20, 300))); } /////////////////////////////////////// Supplies switch (Utility.Random(18)) { case 0: DropItem(new Board(70)); break; case 1: DropItem(new BoltOfCloth(70)); break; case 2: DropItem(new Bottle(70)); break; case 3: DropItem(new CopperWire(70)); break; case 4: DropItem(new Cotton(70)); break; case 5: DropItem(new DarkYarn(70)); break; case 6: DropItem(new Feather(70)); break; case 7: DropItem(new Flax(70)); break; case 8: DropItem(new Gears(70)); break; case 9: DropItem(new GoldWire(70)); break; case 10: DropItem(new IronIngot(70)); break; case 11: DropItem(new IronWire(70)); break; case 12: DropItem(new Leather(70)); break; case 13: DropItem(new LightYarn(70)); break; case 14: DropItem(new Shaft(70)); break; case 15: DropItem(new SilverWire(70)); break; case 16: DropItem(new SpoolOfThread(70)); break; case 17: DropItem(new Springs(70)); break; case 18: DropItem(new Wool(70)); break; } switch (Utility.Random(5)) { case 0: DropItem(new BeetleEgg(25)); break; case 1: DropItem(new FishScale(25)); break; case 2: DropItem(new Nirnroot(25)); break; case 3: DropItem(new SerpentScale(25)); break; case 4: DropItem(new ThunderStone(25)); break; } Item ReagentLoot = Loot.RandomReagent(); ReagentLoot.Amount = Utility.RandomMinMax(10, 15); DropItem(ReagentLoot); if (Utility.RandomDouble() < 0.05) { DropItem(new SackFlour()); } /////////////////////////////////////// Rare Items if (Utility.RandomDouble() < 0.01) { DropItem(new DyeTub()); } /////////////////////////////////////// LV 10-20 /////////////////////////////////////// LV 10-25 for staves if (Utility.RandomDouble() < 0.10) { BaseWeapon weapon = Loot.RandomWeapon(true); switch (Utility.Random(28)) { case 0: weapon = new BattleAxe(); break; // Lv10 case 1: weapon = new DoubleAxe(); break; // Lv20 case 2: weapon = new MagicalShortbow(); break; // Lv10 case 3: weapon = new RepeatingCrossbow(); break; // Lv10 case 4: weapon = new ButcherKnife(); break; // Lv10 case 5: weapon = new CompositeBow(); break; // Lv20 case 6: weapon = new EbonyCrossbow(); break; // Lv20 case 7: weapon = new EbonyDagger(); break; // Lv10 case 8: weapon = new Sai(); break; // Lv15 case 9: weapon = new EbonyDualDaggers(); break; // Lv20 case 10: weapon = new Maul(); break; // Lv10 case 11: weapon = new Scepter(); break; // Lv15 case 12: weapon = new WarMace(); break; // Lv20 case 13: weapon = new Pilum(); break; // Lv10 case 14: weapon = new Pike(); break; // Lv15 case 15: weapon = new Spear(); break; // Lv20 case 16: weapon = new QuarterStaff(); break; // Lv10 case 17: weapon = new ReptilianStaff(); break; // Lv15 case 18: weapon = new BubbleStaff(); break; // Lv25 case 19: weapon = new CrystalStaff(); break; // Lv25 case 20: weapon = new EnergyStaff(); break; // Lv25 case 21: weapon = new FireStaff(); break; // Lv25 case 22: weapon = new VineStaff(); break; // Lv25 case 23: weapon = new EbonyRapier(); break; // Lv10 case 24: weapon = new Scimitar(); break; // Lv10 case 25: weapon = new Longsword(); break; // Lv20 case 26: weapon = new VikingSword(); break; // Lv20 default: weapon = new Wakizashi(); break; // Lv20 } switch (Utility.Random(14)) { case 0: weapon.Attributes.AttackChance = Utility.RandomMinMax(1, 5); break; case 1: weapon.Attributes.DefendChance = Utility.RandomMinMax(1, 5); break; case 2: weapon.Attributes.Luck = Utility.RandomMinMax(1, 10); break; case 3: weapon.Attributes.WeaponSpeed = Utility.RandomMinMax(1, 25); break; case 4: weapon.WeaponAttributes.HitDispel = Utility.RandomMinMax(2, 10); break; case 5: weapon.WeaponAttributes.HitFireball = Utility.RandomMinMax(2, 10); break; case 6: weapon.WeaponAttributes.HitHarm = Utility.RandomMinMax(2, 10); break; case 7: weapon.WeaponAttributes.HitLeechHits = Utility.RandomMinMax(2, 10); break; case 8: weapon.WeaponAttributes.HitLeechMana = Utility.RandomMinMax(2, 10); break; case 9: weapon.WeaponAttributes.HitLeechStam = Utility.RandomMinMax(2, 10); break; case 10: weapon.WeaponAttributes.HitLightning = Utility.RandomMinMax(2, 10); break; case 11: weapon.WeaponAttributes.HitLowerAttack = Utility.RandomMinMax(2, 10); break; case 12: weapon.WeaponAttributes.HitLowerDefend = Utility.RandomMinMax(2, 10); break; default: weapon.Attributes.WeaponDamage = Utility.RandomMinMax(1, 10); break; } switch (Utility.Random(14)) { case 0: weapon.Attributes.AttackChance = Utility.RandomMinMax(1, 5); break; case 1: weapon.Attributes.DefendChance = Utility.RandomMinMax(1, 5); break; case 2: weapon.Attributes.Luck = Utility.RandomMinMax(1, 10); break; case 3: weapon.Attributes.WeaponSpeed = Utility.RandomMinMax(1, 25); break; case 4: weapon.WeaponAttributes.HitDispel = Utility.RandomMinMax(2, 10); break; case 5: weapon.WeaponAttributes.HitFireball = Utility.RandomMinMax(2, 10); break; case 6: weapon.WeaponAttributes.HitHarm = Utility.RandomMinMax(2, 10); break; case 7: weapon.WeaponAttributes.HitLeechHits = Utility.RandomMinMax(2, 10); break; case 8: weapon.WeaponAttributes.HitLeechMana = Utility.RandomMinMax(2, 10); break; case 9: weapon.WeaponAttributes.HitLeechStam = Utility.RandomMinMax(2, 10); break; case 10: weapon.WeaponAttributes.HitLightning = Utility.RandomMinMax(2, 10); break; case 11: weapon.WeaponAttributes.HitLowerAttack = Utility.RandomMinMax(2, 10); break; case 12: weapon.WeaponAttributes.HitLowerDefend = Utility.RandomMinMax(2, 10); break; default: weapon.Attributes.WeaponDamage = Utility.RandomMinMax(1, 10); break; } DropItem(weapon); } /////////////////////////////////////// LV 12-18 if (Utility.RandomDouble() < 0.10) { BaseArmor armor = Loot.RandomArmor(true); switch (Utility.Random(19)) { case 0: armor = new ChitinArms(); break; // Lv12 case 1: armor = new ChitinChest(); break; // Lv12 case 2: armor = new ChitinGloves(); break; // Lv12 case 3: armor = new ChitinGorget(); break; // Lv12 case 4: armor = new ChitinHelmet(); break; // Lv12 case 5: armor = new ChitinLegs(); break; // Lv12 case 6: armor = new FemaleStuddedChest(); break; // Lv15 case 7: armor = new StuddedArms(); break; // Lv15 case 8: armor = new StuddedBustierArms(); break; // Lv15 case 9: armor = new StuddedChest(); break; // Lv15 case 10: armor = new StuddedGloves(); break; // Lv15 case 11: armor = new StuddedGorget(); break; // Lv15 case 12: armor = new StuddedLegs(); break; // Lv15 case 13: armor = new HideFemaleChest(); break; // Lv18 case 14: armor = new HideGloves(); break; // Lv18 case 15: armor = new HideGorget(); break; // Lv18 case 16: armor = new HidePants(); break; // Lv18 case 17: armor = new HidePauldrons(); break; // Lv18 default: armor = new HideChest(); break; // Lv18 } BaseRunicTool.ApplyAttributesTo(armor, 3, 5, 50); DropItem(armor); } if (Utility.RandomDouble() < 0.10) { BaseHat hat = Loot.RandomHat(true); BaseRunicTool.ApplyAttributesTo(hat, 3, 5, 10); DropItem(hat); } if (Utility.RandomDouble() < 0.10) { BaseClothing clothing = Loot.RandomClothing(true); BaseRunicTool.ApplyAttributesTo(clothing, 3, 5, 10); DropItem(clothing); } if (Utility.RandomDouble() < 0.05) { BaseShield shield1 = new MetalShield(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(shield1, 3, 5, 50); } DropItem(shield1); } if (Utility.RandomDouble() < 0.05) { BaseShield shield2 = new WoodenKiteShield(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(shield2, 3, 5, 50); } DropItem(shield2); } if (Utility.RandomDouble() < 0.05) { BaseShield shield3 = new MetalKiteShield(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(shield3, 3, 5, 50); } DropItem(shield3); } if (Utility.RandomDouble() < 0.10) { BaseJewel bracelet = new SilverBracelet(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(bracelet, 3, 5, 10); } DropItem(bracelet); } if (Utility.RandomDouble() < 0.10) { BaseJewel earrings = new SilverEarrings(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(earrings, 3, 5, 10); } DropItem(earrings); } if (Utility.RandomDouble() < 0.10) { BaseJewel necklace = new SilverNecklace(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(necklace, 3, 5, 10); } DropItem(necklace); } if (Utility.RandomDouble() < 0.10) { BaseJewel ring = new SilverRing(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(ring, 3, 5, 10); } DropItem(ring); } }
public FortressCalcifinaTreasureChest1() : base(0xE43) { Name = "a treasure chest -25-"; Movable = true; Weight = 1000.0; TrapPower = 0; Locked = true; RequiredSkill = 25; LockLevel = 25; MaxLockLevel = 30; // Gold if (Utility.RandomDouble() < 0.25) { DropItem(new Gold(Utility.Random(40, 400))); } /////////////////////////////////////// Supplies if (Utility.RandomDouble() < 0.15) { DropItem(new Arrow(Utility.Random(15, 20))); } if (Utility.RandomDouble() < 0.15) { DropItem(new Bolt(Utility.Random(15, 20))); } Item ReagentLoot = Loot.RandomReagent(); ReagentLoot.Amount = Utility.Random(15, 20); DropItem(ReagentLoot); if (Utility.RandomDouble() < 0.15) { DropItem(new Bandage(Utility.Random(15, 20))); } if (Utility.RandomDouble() < 0.15) { DropItem(new Bedroll()); } if (Utility.RandomDouble() < 0.15) { DropItem(new Bottle(Utility.Random(15, 20))); } if (Utility.RandomDouble() < 0.15) { DropItem(new Lockpick(Utility.Random(15, 20))); } Item PotionLoot = Loot.RandomPotion(); DropItem(PotionLoot); /////////////////////////////////////// Tools if (Utility.RandomDouble() < 0.15) { DropItem(new FishingPole()); } if (Utility.RandomDouble() < 0.15) { DropItem(new Shovel()); } if (Utility.RandomDouble() < 0.15) { DropItem(new Skillet()); } /////////////////////////////////////// Rare Items if (Utility.RandomDouble() < 0.01) { DropItem(new DyeTub()); } if (Utility.RandomDouble() < 0.15) { BaseWeapon weapon = Loot.RandomWeapon(true); switch (Utility.Random(38)) { case 0: weapon = new Hatchet(); break; case 1: weapon = new Bow(); break; case 2: weapon = new Crossbow(); break; case 3: weapon = new Club(); break; case 4: weapon = new Mace(); break; case 5: weapon = new Maul(); break; case 6: weapon = new Pitchfork(); break; case 7: weapon = new ShortSpear(); break; case 8: weapon = new GnarledStaff(); break; case 9: weapon = new ShepherdsCrook(); break; case 10: weapon = new Cutlass(); break; case 11: weapon = new Katana(); break; case 12: weapon = new Kryss(); break; case 13: weapon = new Scimitar(); break; case 14: weapon = new AssassinSpike(); break; case 15: weapon = new DiamondMace(); break; case 16: weapon = new Leafblade(); break; case 17: weapon = new MagicalShortbow(); break; case 18: weapon = new RadiantScimitar(); break; case 19: weapon = new WildStaff(); break; case 20: weapon = new Axe(); break; case 21: weapon = new ExecutionersAxe(); break; case 22: weapon = new Pickaxe(); break; case 23: weapon = new TwoHandedAxe(); break; case 24: weapon = new WarAxe(); break; case 25: weapon = new HeavyCrossbow(); break; case 26: weapon = new HammerPick(); break; case 27: weapon = new WarMace(); break; case 28: weapon = new Spear(); break; case 29: weapon = new WarFork(); break; case 30: weapon = new BlackStaff(); break; case 31: weapon = new QuarterStaff(); break; case 32: weapon = new Longsword(); break; case 33: weapon = new ElvenCompositeLongbow(); break; case 34: weapon = new ElvenMachete(); break; case 35: weapon = new ElvenSpellblade(); break; case 36: weapon = new RuneBlade(); break; default: weapon = new Dagger(); break; } BaseRunicTool.ApplyAttributesTo(weapon, 4, 18, 22); DropItem(weapon); } if (Utility.RandomDouble() < 0.15) { BaseArmor armor = Loot.RandomArmor(true); switch (Utility.Random(13)) { case 0: armor = new FemaleStuddedChest(); break; case 1: armor = new StuddedArms(); break; case 2: armor = new StuddedBustierArms(); break; case 3: armor = new StuddedGloves(); break; case 4: armor = new StuddedGorget(); break; case 5: armor = new ChainCoif(); break; case 6: armor = new ChainChest(); break; case 7: armor = new ChainLegs(); break; case 8: armor = new RingmailArms(); break; case 9: armor = new RingmailChest(); break; case 10: armor = new RingmailGloves(); break; case 11: armor = new RingmailLegs(); break; default: armor = new StuddedChest(); break; } BaseRunicTool.ApplyAttributesTo(armor, 4, 18, 22); DropItem(armor); } if (Utility.RandomDouble() < 0.15) { BaseHat hat = Loot.RandomHat(true); switch (Utility.Random(5)) { case 0: hat = new BearMask(); break; case 1: hat = new DeerMask(); break; case 2: hat = new FeatheredHat(); break; case 3: hat = new WizardsHat(); break; default: hat = new TribalMask(); break; } BaseRunicTool.ApplyAttributesTo(hat, 4, 18, 22); DropItem(hat); } if (Utility.RandomDouble() < 0.15) { BaseClothing clothing = Loot.RandomClothing(true); BaseRunicTool.ApplyAttributesTo(clothing, 4, 18, 22); DropItem(clothing); } if (Utility.RandomDouble() < 0.15) { BaseShield shield = new MetalKiteShield(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(shield, 4, 18, 22); } DropItem(shield); } if (Utility.RandomDouble() < 0.15) { BaseJewel bracelet = new GoldBracelet(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(bracelet, 4, 18, 22); } DropItem(bracelet); } if (Utility.RandomDouble() < 0.15) { BaseJewel earrings = new SilverEarrings(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(earrings, 4, 18, 22); } DropItem(earrings); } if (Utility.RandomDouble() < 0.15) { BaseJewel necklace = new GoldNecklace(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(necklace, 4, 18, 22); } DropItem(necklace); } if (Utility.RandomDouble() < 0.15) { BaseJewel ring = new SilverRing(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(ring, 4, 18, 22); } DropItem(ring); } }
/// <summary> /// This is the function gives weaponry to players. /// </summary> private static void ArmPlayer(CTFPlayerGameData pgd) { Mobile m = pgd.Mob; if (!m.Alive) m.Resurrect(); for (int i = m.Items.Count - 1; i >= 0; --i) { Item item = (Item)m.Items[i]; if (item.Layer == Layer.OuterTorso) { item.Delete(); break; } } List<Item> armthis = new List<Item>(); if(GiveRobe) armthis.Add(new CTFRobe(pgd.Team)); Item rankedCloth = null; CTFTeam team = pgd.Team; // 21 Ranks switch (CTFData.GetRank(m)) { default: case 0: rankedCloth = new JesterHat(team.Hue); break; case 1: rankedCloth = new TallStrawHat(team.Hue); break; case 2: rankedCloth = new FloppyHat(team.Hue); break; case 3: rankedCloth = new WideBrimHat(team.Hue); break; case 4: rankedCloth = new Cap(team.Hue); break; case 5: rankedCloth = new SkullCap(team.Hue); break; case 6: rankedCloth = new FlowerGarland(team.Hue); break; case 7: rankedCloth = new StrawHat(team.Hue); break; case 8: rankedCloth = new FeatheredHat(team.Hue); break; case 9: rankedCloth = new TricorneHat(team.Hue); break; case 10: rankedCloth = new TribalMask(team.Hue); break; case 11: rankedCloth = new HornedTribalMask(team.Hue); break; case 12: rankedCloth = new BearMask(team.Hue); break; case 13: rankedCloth = new DeerMask(team.Hue); break; case 14: rankedCloth = new OrcishKinMask(team.Hue); break; case 15: rankedCloth = new SavageMask(team.Hue); break; case 16: rankedCloth = new WizardsHat(team.Hue); break; case 17: rankedCloth = new Bandana(team.Hue); break; case 18: rankedCloth = new ClothNinjaHood(team.Hue); break; case 19: rankedCloth = new Kasa(team.Hue); break; case 20: rankedCloth = new BoneHelm(); rankedCloth.Hue = team.Hue; ((BaseArmor)rankedCloth).ArmorAttributes.MageArmor = 1; break; } if (rankedCloth != null) { rankedCloth.Movable = false; armthis.Add(rankedCloth); } //Alchemy removed by Blady /* if (m.Skills[SkillName.Alchemy].Value >= (m_MinSupplySkill + 15)) //80 Alchemy req - by Blady { for (int i = 0; i < 6; i++) //Amount reduced to 6 by Blady - used to be 10 { armthis.Add(new ExplosionPotion()); armthis.Add(new GreaterHealPotion()); armthis.Add(new GreaterCurePotion()); armthis.Add(new GreaterAgilityPotion()); armthis.Add(new RefreshPotion()); armthis.Add(new GreaterStrengthPotion()); } } */ if (m.Skills[SkillName.Chivalry].Value >= m_MinSupplySkill) { BookOfChivalry book = new BookOfChivalry(); book.Content = 1023;//all spells armthis.Add(book); } if (m.Skills[SkillName.Necromancy].Value >= m_MinSupplySkill) { NecromancerSpellbook book = new NecromancerSpellbook(); book.Content = 0x1FFFF; armthis.Add(book); } if (m.Skills[SkillName.Magery].Value >= m_MinSupplySkill) { GnarledStaff gs = new GnarledStaff(); gs.Attributes.SpellChanneling = 1; gs.WeaponAttributes.MageWeapon = 20; armthis.Add(gs); Spellbook book = new Spellbook(); book.Content = ulong.MaxValue; armthis.Add(book); } if (m.Skills[SkillName.Healing].Value >= m_MinSupplySkill) armthis.Add(new Bandage(1000)); if (m.Skills[SkillName.Fencing].Value >= m_MinSupplySkill) { Spear sp = new Spear(); sp.Attributes.SpellChanneling = 1; armthis.Add(sp); ShortSpear ssp = new ShortSpear(); ssp.Attributes.SpellChanneling = 1; armthis.Add(ssp); WarFork wf = new WarFork(); wf.Attributes.SpellChanneling = 1; armthis.Add(wf); Kryss k = new Kryss(); k.Attributes.SpellChanneling = 1; armthis.Add(k); } if (m.Skills[SkillName.Swords].Value >= m_MinSupplySkill) { if (m.Skills[SkillName.Lumberjacking].Value >= m_MinSupplySkill) { ExecutionersAxe ea = new ExecutionersAxe(); ea.Attributes.SpellChanneling = 1; armthis.Add(ea); } Katana k = new Katana(); k.Attributes.SpellChanneling = 1; armthis.Add(k); Longsword ls = new Longsword(); ls.Attributes.SpellChanneling = 1; armthis.Add(ls); Cleaver c = new Cleaver(); c.Attributes.SpellChanneling = 1; armthis.Add(c); BoneHarvester bh = new BoneHarvester(); bh.Attributes.SpellChanneling = 1; armthis.Add(bh); } if (m.Skills[SkillName.Macing].Value >= m_MinSupplySkill) { WarAxe wa = new WarAxe(); wa.Attributes.SpellChanneling = 1; armthis.Add(wa); HammerPick hp = new HammerPick(); hp.Attributes.SpellChanneling = 1; armthis.Add(hp); QuarterStaff qs = new QuarterStaff(); qs.Attributes.SpellChanneling = 1; armthis.Add(qs); } if (m.Skills[SkillName.Archery].Value >= m_MinSupplySkill) { Bow b = new Bow(); b.Attributes.SpellChanneling = 1; armthis.Add(b); Crossbow xb = new Crossbow(); xb.Attributes.SpellChanneling = 1; armthis.Add(xb); CompositeBow cb = new CompositeBow(); cb.Attributes.SpellChanneling = 1; armthis.Add(cb); armthis.Add(new Arrow(150)); armthis.Add(new Bolt(150)); } if (m.Skills[SkillName.Poisoning].Value >= m_MinSupplySkill) { for (int i = 0; i < 2; i++) armthis.Add(new GreaterPoisonPotion()); } if (m.Skills[SkillName.Parry].Value >= m_MinSupplySkill) { MetalKiteShield ks = new MetalKiteShield(); ks.Attributes.SpellChanneling = 1; armthis.Add(ks); } SunnySystem.ArmPlayer(m, armthis); }
public static string MakeThisTask() { string task = null; switch (Utility.RandomMinMax(1, 10)) { case 1: task = "Repair"; break; case 2: task = "Fix"; break; case 3: task = "Buff"; break; case 4: task = "Modify"; break; case 5: task = "Polish"; break; case 6: task = "Engrave"; break; case 7: task = "Adjust"; break; case 8: task = "Improve"; break; case 9: task = "Smooth the dents from"; break; case 10: task = "Remove the dents from"; break; } Item item = null; switch (Utility.RandomMinMax(1, 79)) { case 1: item = new AssassinSpike(); break; case 2: item = new Axe(); break; case 3: item = new Bardiche(); break; case 4: item = new Bascinet(); break; case 5: item = new BattleAxe(); break; case 6: item = new BoneHarvester(); break; case 7: item = new Broadsword(); break; case 8: item = new BronzeShield(); break; case 9: item = new Buckler(); break; case 10: item = new ButcherKnife(); break; case 11: item = new ChainChest(); break; case 12: item = new ChainCoif(); break; case 13: item = new ChainLegs(); break; case 14: item = new ChampionShield(); break; case 15: item = new Cleaver(); break; case 16: item = new CloseHelm(); break; case 17: item = new CloseHelm(); break; case 18: item = new CrescentBlade(); break; case 19: item = new CrestedShield(); break; case 20: item = new Cutlass(); break; case 21: item = new Dagger(); break; case 22: item = new DarkShield(); break; case 23: item = new DiamondMace(); break; case 24: item = new DoubleAxe(); break; case 25: item = new DoubleBladedStaff(); break; case 26: item = new DreadHelm(); break; case 27: item = new ElvenMachete(); break; case 28: item = new ElvenShield(); break; case 29: item = new ElvenSpellblade(); break; case 30: item = new ExecutionersAxe(); break; case 31: item = new FemalePlateChest(); break; case 32: item = new GuardsmanShield(); break; case 33: item = new Halberd(); break; case 34: item = new HammerPick(); break; case 35: item = new HeaterShield(); break; case 36: item = new Helmet(); break; case 37: item = new Helmet(); break; case 38: item = new JeweledShield(); break; case 39: item = new Katana(); break; case 40: item = new Kryss(); break; case 41: item = new Lance(); break; case 42: item = new LargeBattleAxe(); break; case 43: item = new Leafblade(); break; case 44: item = new Longsword(); break; case 45: item = new Mace(); break; case 46: item = new Maul(); break; case 47: item = new MetalKiteShield(); break; case 48: item = new MetalShield(); break; case 49: item = new NorseHelm(); break; case 50: item = new NorseHelm(); break; case 51: item = new OrnateAxe(); break; case 52: item = new Pickaxe(); break; case 53: item = new Pike(); break; case 54: item = new Pitchfork(); break; case 55: item = new PlateArms(); break; case 56: item = new PlateChest(); break; case 57: item = new PlateGloves(); break; case 58: item = new PlateGorget(); break; case 59: item = new PlateHelm(); break; case 60: item = new PlateHelm(); break; case 61: item = new PlateLegs(); break; case 62: item = new RadiantScimitar(); break; case 63: item = new RingmailArms(); break; case 64: item = new RingmailChest(); break; case 65: item = new RingmailGloves(); break; case 66: item = new RingmailLegs(); break; case 67: item = new RuneBlade(); break; case 68: item = new Scimitar(); break; case 69: item = new Scythe(); break; case 70: item = new ShortSpear(); break; case 71: item = new SkinningKnife(); break; case 72: item = new Spear(); break; case 73: item = new ThinLongsword(); break; case 74: item = new TwoHandedAxe(); break; case 75: item = new VikingSword(); break; case 76: item = new WarAxe(); break; case 77: item = new WarCleaver(); break; case 78: item = new WarHammer(); break; case 79: item = new WarMace(); break; } if (Utility.RandomMinMax(1, 5) == 1) { bool evil = false; bool orient = false; switch (Utility.RandomMinMax(1, 8)) { case 1: evil = true; break; case 2: orient = true; break; } string sAdjective = "unusual"; string eAdjective = "might"; sAdjective = Server.LootPackEntry.MagicItemAdj("start", orient, evil, item.ItemID); eAdjective = Server.LootPackEntry.MagicItemAdj("end", orient, evil, item.ItemID); string name = "item"; string xName = ContainerFunctions.GetOwner("property"); if (item.Name != null && item.Name != "") { name = item.Name.ToLower(); } if (name == "item") { name = MorphingItem.AddSpacesToSentence((item.GetType()).Name).ToLower(); } switch (Utility.RandomMinMax(0, 5)) { case 0: name = sAdjective + " " + name + " of " + xName; break; case 1: name = name + " of " + xName; break; case 2: name = sAdjective + " " + name; break; case 3: name = sAdjective + " " + name + " of " + xName; break; case 4: name = name + " of " + xName; break; case 5: name = sAdjective + " " + name; break; } task = task + " their " + name; } else { string[] sMetals = new string[] { "iron ", "dull copper ", "shadow iron ", "copper ", "bronze ", "gold ", "agapite ", "verite ", "valorite ", "nepturite ", "obsidian ", "steel ", "brass ", "mithril ", "xormite ", "dwarven " }; string sMetal = sMetals[Utility.RandomMinMax(0, (sMetals.Length - 1))]; string name = "item"; if (item.Name != null && item.Name != "") { name = item.Name.ToLower(); } if (name == "item") { name = MorphingItem.AddSpacesToSentence((item.GetType()).Name).ToLower(); } task = task + " their " + sMetal + name; } item.Delete(); return(task); }
public static void CreateItem(ItemInfo info, Mobile m) { if (m == null) return; Item item = null; BaseCreature bc = null; switch (info.IncrID) { case 0: item = new BlackPearl(999); break; case 1: item = new Bloodmoss(999); break; case 2: item = new MandrakeRoot(999); break; case 3: item = new Garlic(999); break; case 4: item = new Ginseng(999); break; case 5: item = new Nightshade(999); break; case 6: item = new SpidersSilk(999); break; case 7: item = new SulfurousAsh(999); break; case 8: item = new Bag(); ((Bag)item).DropItem( new BlackPearl(100) ); ((Bag)item).DropItem( new Bloodmoss(100) ); ((Bag)item).DropItem( new MandrakeRoot(100) ); ((Bag)item).DropItem( new Garlic(100) ); ((Bag)item).DropItem( new Ginseng(100) ); ((Bag)item).DropItem( new Nightshade(100) ); ((Bag)item).DropItem( new SpidersSilk(100) ); ((Bag)item).DropItem( new SulfurousAsh(100) ); break; case 9: item = new BatWing(999); break; case 10: item = new GraveDust(999); break; case 11: item = new DaemonBlood(999); break; case 12: item = new NoxCrystal(999); break; case 13: item = new PigIron(999); break; case 14: item = new Bag(); ((Bag)item).DropItem( new BatWing(100) ); ((Bag)item).DropItem( new GraveDust(100) ); ((Bag)item).DropItem( new DaemonBlood(100) ); ((Bag)item).DropItem( new NoxCrystal(100) ); ((Bag)item).DropItem( new PigIron(100) ); break; case 15: for (int i=0; i < 2; i++) //The last potion is dropped later { item = new RefreshPotion(); m.AddToBackpack(item); } item = new RefreshPotion(); break; case 16: for (int i=0; i < 2; i++) //The last potion is dropped later { item = new RefreshPotion(); m.AddToBackpack(item); } item = new LesserCurePotion(); break; case 17: for (int i=0; i < 2; i++) //The last potion is dropped later { item = new RefreshPotion(); m.AddToBackpack(item); } item = new LesserHealPotion(); break; case 18: for (int i=0; i < 2; i++) //The last potion is dropped later { item = new RefreshPotion(); m.AddToBackpack(item); } item = new NightSightPotion(); break; case 19: item = new Bandage(50); break; case 20: item = new Bandage(200); break; case 21: item = new Bandage(1000); break; case 22: item = new Arrow(100); break; case 23: item = new Arrow(1000); break; case 24: item = new Bolt(100); break; case 25: item = new Bolt(1000); break; case 26: bc = new Horse(); break; case 27: bc = new PackLlama(); break; case 28: item = new Club(); BaseRunicTool.ApplyAttributesTo((BaseWeapon)item, Utility.RandomMinMax(1, 4), 40, 80); break; case 29: item = new WarFork(); BaseRunicTool.ApplyAttributesTo((BaseWeapon)item, Utility.RandomMinMax(1, 4), 40, 80); break; case 30: item = new Katana(); BaseRunicTool.ApplyAttributesTo((BaseWeapon)item, Utility.RandomMinMax(1, 4), 40, 80); break; case 31: item = new Bow(); BaseRunicTool.ApplyAttributesTo((BaseWeapon)item, Utility.RandomMinMax(1, 4), 40, 80); break; case 32: item = new MetalKiteShield(); BaseRunicTool.ApplyAttributesTo((BaseShield)item, Utility.RandomMinMax(1, 4), 40, 80); break; case 33: item = new WoodenShield(); BaseRunicTool.ApplyAttributesTo((BaseShield)item, Utility.RandomMinMax(1, 4), 40, 80); break; case 34: item = new LeatherChest(); BaseRunicTool.ApplyAttributesTo((BaseArmor)item, Utility.RandomMinMax(1, 4), 40, 80); break; case 35: item = new LeatherGloves(); BaseRunicTool.ApplyAttributesTo((BaseArmor)item, Utility.RandomMinMax(1, 4), 40, 80); break; case 36: item = new LeatherGorget(); BaseRunicTool.ApplyAttributesTo((BaseArmor)item, Utility.RandomMinMax(1, 4), 40, 80); break; case 37: item = new LeatherLegs(); BaseRunicTool.ApplyAttributesTo((BaseArmor)item, Utility.RandomMinMax(1, 4), 40, 80); break; case 38: item = new LeatherCap(); BaseRunicTool.ApplyAttributesTo((BaseArmor)item, Utility.RandomMinMax(1, 4), 40, 80); break; case 39: item = new LeatherArms(); BaseRunicTool.ApplyAttributesTo((BaseArmor)item, Utility.RandomMinMax(1, 4), 40, 80); break; case 40: item = new Gold(300); break; case 41: item = new Gold(3000); break; case 42: item = new Server.Engines.BulkOrders.BulkOrderBook(); break; case 43: item = new Drums(); ((BaseInstrument)item).Quality = InstrumentQuality.Exceptional; break; case 44: item = new TambourineTassel(); ((BaseInstrument)item).Quality = InstrumentQuality.Exceptional; break; case 45: item = new Server.Multis.SmallDragonBoatDeed(); break; case 46: item = new Server.Multis.LargeDragonBoatDeed(); break; } if (item != null) { m.AddToBackpack(item); m.SendMessage("Here are the goods you requested."); } else if (bc != null) { bc.Controlled = true; bc.ControlMaster = m; bc.MoveToWorld( m.Location, m.Map ); m.SendMessage("Here is the pet you requested."); } else { m.SendMessage("That item is not available. Please report the bug at the site that will open in your browser."); m.LaunchBrowser( "http://bug.casiopia.net/" ); m.AddToBackpack( new VeriteGem(info.Price) ); } }
public DupresKnight() : base( AIType.AI_Melee, FightMode.Aggressor, 10, 1, 0.2, 0.4 ) { Name = m_Names[Utility.Random( m_Names.Length )]; Title = m_Titles[Utility.Random( m_Titles.Length )]; Body = 0x190; Hue = Utility.RandomSkinHue(); SetStr( 190, 200 ); SetDex( 50, 75 ); SetInt( 150, 250 ); SetHits( 3900, 4100 ); SetDamage( 22, 28 ); SetDamageType( ResistanceType.Physical, 100 ); SetResistance( ResistanceType.Physical, 50, 70 ); SetResistance( ResistanceType.Fire, 50, 70 ); SetResistance( ResistanceType.Cold, 50, 70 ); SetResistance( ResistanceType.Poison, 50, 70 ); SetResistance( ResistanceType.Energy, 50, 70 ); SetSkill( SkillName.EvalInt, 195.0, 220.0 ); SetSkill( SkillName.Magery, 195.0, 220.0 ); SetSkill( SkillName.Meditation, 195.0, 200.0 ); SetSkill( SkillName.MagicResist, 100.0, 120.0 ); SetSkill( SkillName.Tactics, 195.0, 220.0 ); SetSkill( SkillName.Wrestling, 195.0, 220.0 ); VirtualArmor = 70; Item longsword = new Longsword(); longsword.LootType = LootType.Blessed; AddItem(longsword); Item ph = new PlateHelm(); ph.LootType = LootType.Blessed; AddItem(ph); Item pa = new PlateArms(); pa.LootType = LootType.Blessed; AddItem(pa); Item pg = new PlateGorget(); pg.LootType = LootType.Blessed; AddItem(pg); Item pgl = new PlateGloves(); pgl.LootType = LootType.Blessed; AddItem(pgl); Item pl = new PlateLegs(); pl.LootType = LootType.Blessed; AddItem(pl); Item pc = new PlateChest(); pc.LootType = LootType.Blessed; AddItem(pc); Item mks = new MetalKiteShield(); mks.LootType = LootType.Blessed; mks.Hue = 0x794; AddItem(mks); Item bs = new BodySash(0x794); // dark purple bs.LootType = LootType.Blessed; AddItem(bs); PackGold( 400, 600 ); }
public FortressCalcifinaBossChest() : base(0x2DF2) { Name = "a boss treasure chest -35-"; Movable = true; Weight = 1000.0; TrapPower = 0; Locked = true; RequiredSkill = 35; LockLevel = 35; MaxLockLevel = 40; // Gold if (Utility.RandomDouble() < 0.50) { DropItem(new Gold(Utility.Random(250, 400))); } /////////////////////////////////////// Jewelry if (Utility.RandomDouble() < 0.04) { DropItem(new Agate()); } if (Utility.RandomDouble() < 0.04) { DropItem(new Beryl()); } if (Utility.RandomDouble() < 0.04) { DropItem(new ChromeDiopside()); } if (Utility.RandomDouble() < 0.04) { DropItem(new FireOpal()); } if (Utility.RandomDouble() < 0.04) { DropItem(new MoonstoneCustom()); } if (Utility.RandomDouble() < 0.04) { DropItem(new Onyx()); } if (Utility.RandomDouble() < 0.04) { DropItem(new Opal()); } if (Utility.RandomDouble() < 0.04) { DropItem(new Pearl()); } if (Utility.RandomDouble() < 0.04) { DropItem(new TurquoiseCustom()); } if (Utility.RandomDouble() < 0.03) { DropItem(new Bloodstone()); } if (Utility.RandomDouble() < 0.03) { DropItem(new Citrine()); } if (Utility.RandomDouble() < 0.03) { DropItem(new Demantoid()); } if (Utility.RandomDouble() < 0.03) { DropItem(new Jasper()); } if (Utility.RandomDouble() < 0.03) { DropItem(new Lolite()); } if (Utility.RandomDouble() < 0.03) { DropItem(new Lupis()); } if (Utility.RandomDouble() < 0.03) { DropItem(new Peridot()); } if (Utility.RandomDouble() < 0.03) { DropItem(new Tsavorite()); } if (Utility.RandomDouble() < 0.03) { DropItem(new Zircon()); } if (Utility.RandomDouble() < 0.02) { DropItem(new Amber()); } if (Utility.RandomDouble() < 0.02) { DropItem(new Amethyst()); } if (Utility.RandomDouble() < 0.02) { DropItem(new Andalusite()); } if (Utility.RandomDouble() < 0.02) { DropItem(new Chrysoberyl()); } if (Utility.RandomDouble() < 0.02) { DropItem(new Garnet()); } if (Utility.RandomDouble() < 0.02) { DropItem(new Jade()); } if (Utility.RandomDouble() < 0.02) { DropItem(new Mandarin()); } if (Utility.RandomDouble() < 0.02) { DropItem(new Morganite()); } if (Utility.RandomDouble() < 0.02) { DropItem(new Paraiba()); } if (Utility.RandomDouble() < 0.02) { DropItem(new TigerEye()); } if (Utility.RandomDouble() < 0.02) { DropItem(new Tourmaline()); } if (Utility.RandomDouble() < 0.01) { DropItem(new Alexandrite()); } if (Utility.RandomDouble() < 0.01) { DropItem(new Ametrine()); } if (Utility.RandomDouble() < 0.01) { DropItem(new Kunzite()); } if (Utility.RandomDouble() < 0.01) { DropItem(new Ruby()); } if (Utility.RandomDouble() < 0.01) { DropItem(new Sapphire()); } if (Utility.RandomDouble() < 0.01) { DropItem(new Tanzanite()); } if (Utility.RandomDouble() < 0.01) { DropItem(new Topaz()); } if (Utility.RandomDouble() < 0.01) { DropItem(new Zultanite()); } if (Utility.RandomDouble() < 0.01) { DropItem(new Diamond()); } if (Utility.RandomDouble() < 0.01) { DropItem(new Emerald()); } if (Utility.RandomDouble() < 0.01) { DropItem(new PinkQuartz()); } if (Utility.RandomDouble() < 0.01) { DropItem(new StarSapphire()); } /////////////////////////////////////// Supplies if (Utility.RandomDouble() < 0.15) { DropItem(new Arrow(Utility.Random(35, 50))); } if (Utility.RandomDouble() < 0.15) { DropItem(new Bolt(Utility.Random(35, 50))); } Item ReagentLoot = Loot.RandomReagent(); ReagentLoot.Amount = Utility.Random(35, 40); DropItem(ReagentLoot); if (Utility.RandomDouble() < 0.15) { DropItem(new Bandage(Utility.Random(25, 40))); } if (Utility.RandomDouble() < 0.15) { DropItem(new Bedroll()); } if (Utility.RandomDouble() < 0.15) { DropItem(new Bottle(Utility.Random(15, 25))); } if (Utility.RandomDouble() < 0.15) { DropItem(new Lockpick(Utility.Random(15, 25))); } Item PotionLoot1 = Loot.RandomPotion(); DropItem(PotionLoot1); Item PotionLoot2 = Loot.RandomPotion(); DropItem(PotionLoot2); Item PotionLoot3 = Loot.RandomPotion(); DropItem(PotionLoot3); /////////////////////////////////////// Tools if (Utility.RandomDouble() < 0.15) { DropItem(new FishingPole()); } if (Utility.RandomDouble() < 0.15) { DropItem(new Shovel()); } if (Utility.RandomDouble() < 0.15) { DropItem(new Skillet()); } /////////////////////////////////////// Rare Items if (Utility.RandomDouble() < 0.01) { DropItem(new DyeTub()); } if (Utility.RandomDouble() < 0.20) { BaseWeapon weapon = Loot.RandomWeapon(true); switch (Utility.Random(38)) { case 0: weapon = new Hatchet(); break; case 1: weapon = new Bow(); break; case 2: weapon = new Crossbow(); break; case 3: weapon = new Club(); break; case 4: weapon = new Mace(); break; case 5: weapon = new Maul(); break; case 6: weapon = new Pitchfork(); break; case 7: weapon = new ShortSpear(); break; case 8: weapon = new GnarledStaff(); break; case 9: weapon = new ShepherdsCrook(); break; case 10: weapon = new Cutlass(); break; case 11: weapon = new Katana(); break; case 12: weapon = new Kryss(); break; case 13: weapon = new Scimitar(); break; case 14: weapon = new AssassinSpike(); break; case 15: weapon = new DiamondMace(); break; case 16: weapon = new Leafblade(); break; case 17: weapon = new MagicalShortbow(); break; case 18: weapon = new RadiantScimitar(); break; case 19: weapon = new WildStaff(); break; case 20: weapon = new Axe(); break; case 21: weapon = new ExecutionersAxe(); break; case 22: weapon = new Pickaxe(); break; case 23: weapon = new TwoHandedAxe(); break; case 24: weapon = new WarAxe(); break; case 25: weapon = new HeavyCrossbow(); break; case 26: weapon = new HammerPick(); break; case 27: weapon = new WarMace(); break; case 28: weapon = new Spear(); break; case 29: weapon = new WarFork(); break; case 30: weapon = new BlackStaff(); break; case 31: weapon = new QuarterStaff(); break; case 32: weapon = new Longsword(); break; case 33: weapon = new ElvenCompositeLongbow(); break; case 34: weapon = new ElvenMachete(); break; case 35: weapon = new ElvenSpellblade(); break; case 36: weapon = new RuneBlade(); break; default: weapon = new Dagger(); break; } BaseRunicTool.ApplyAttributesTo(weapon, 5, 22, 25); DropItem(weapon); } if (Utility.RandomDouble() < 0.20) { BaseArmor armor = Loot.RandomArmor(true); switch (Utility.Random(13)) { case 0: armor = new FemaleStuddedChest(); break; case 1: armor = new StuddedArms(); break; case 2: armor = new StuddedBustierArms(); break; case 3: armor = new StuddedGloves(); break; case 4: armor = new StuddedGorget(); break; case 5: armor = new ChainCoif(); break; case 6: armor = new ChainChest(); break; case 7: armor = new ChainLegs(); break; case 8: armor = new RingmailArms(); break; case 9: armor = new RingmailChest(); break; case 10: armor = new RingmailGloves(); break; case 11: armor = new RingmailLegs(); break; default: armor = new StuddedChest(); break; } BaseRunicTool.ApplyAttributesTo(armor, 5, 22, 25); DropItem(armor); } if (Utility.RandomDouble() < 0.20) { BaseHat hat = Loot.RandomHat(true); switch (Utility.Random(5)) { case 0: hat = new BearMask(); break; case 1: hat = new DeerMask(); break; case 2: hat = new FeatheredHat(); break; case 3: hat = new WizardsHat(); break; default: hat = new TribalMask(); break; } BaseRunicTool.ApplyAttributesTo(hat, 5, 22, 25); DropItem(hat); } if (Utility.RandomDouble() < 0.20) { BaseClothing clothing = Loot.RandomClothing(true); BaseRunicTool.ApplyAttributesTo(clothing, 5, 22, 25); DropItem(clothing); } if (Utility.RandomDouble() < 0.20) { BaseShield shield = new MetalKiteShield(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(shield, 5, 22, 25); } DropItem(shield); } if (Utility.RandomDouble() < 0.20) { BaseJewel bracelet = new GoldBracelet(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(bracelet, 5, 22, 25); } DropItem(bracelet); } if (Utility.RandomDouble() < 0.20) { BaseJewel earrings = new GoldEarrings(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(earrings, 5, 22, 25); } DropItem(earrings); } if (Utility.RandomDouble() < 0.20) { BaseJewel necklace = new GoldNecklace(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(necklace, 5, 22, 25); } DropItem(necklace); } if (Utility.RandomDouble() < 0.20) { BaseJewel ring = new GoldRing(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(ring, 5, 22, 25); } DropItem(ring); } }
public WarMonger ( Ares own ) : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 ) { owner = own; Name = "a war monger"; Body = 400; Hue = 2949; AddItem( new DragonLegs() ); AddItem( new DragonGloves() ); AddItem( new DragonHelm() ); AddItem( new DragonChest() ); MetalKiteShield shield = new MetalKiteShield(); shield.Hue = 32; AddItem( shield ); Longsword sword = new Longsword(); sword.Hue = 32; PlateGorget gorg = new PlateGorget(); gorg.Hue = 32; AddItem( gorg ); AddItem( sword ); Sandals sandals = new Sandals(); sandals.Hue = 1175; AddItem( sandals ); SetStr( 176, 205 ); SetDex( 46, 65 ); SetInt( 46, 70 ); SetHits( 1060, 1230 ); SetDamage( 20, 30 ); SetDamageType( ResistanceType.Physical, 100 ); SetResistance( ResistanceType.Physical, 35, 45 ); SetResistance( ResistanceType.Fire, 25, 35 ); SetResistance( ResistanceType.Cold, 15, 25 ); SetResistance( ResistanceType.Poison, 5, 15 ); SetResistance( ResistanceType.Energy, 5, 15 ); SetSkill( SkillName.MagicResist, 45.1, 60.0 ); SetSkill( SkillName.Tactics, 50.1, 70.0 ); SetSkill( SkillName.Swords, 50.1, 70.0 ); Fame = 3500; Karma = -3500; VirtualArmor = 40; int chance = Utility.Random( 1, 100 ); if ( chance == 1 ) { int chance2 = Utility.Random( 1, 6 ); if ( chance2 == 1 ) PackItem( new AresChest() ); if ( chance2 == 2 ) PackItem( new AresLegs() ); if ( chance2 == 3 ) PackItem( new AresArms() ); if ( chance2 == 4 ) PackItem( new AresCloak() ); if ( chance2 == 5 ) PackItem( new AresGloves() ); if ( chance2 == 6 ) PackItem( new AresBoots() ); } }
public Mercenary() : base(AIType.AI_Melee, FightMode.Agressor, 10, 1, 0.45, 0.8) { Female = Utility.RandomBool(); Body = Female ? 401 : 400; Title = "the mercenary"; Name = NameList.RandomName( Female ? "female" : "male" ); Hue = Utility.RandomSkinHue(); SetStr( 25, 88 ); SetDex( 25, 88 ); SetInt( 37, 49 ); Karma = Utility.RandomMinMax( 13, -45 ); SetSkill( SkillName.Tactics, 45, 67.5 ); SetSkill( SkillName.MagicResist, 45, 67.5 ); SetSkill( SkillName.Parry, 45, 67.5 ); SetSkill( SkillName.Swords, 45, 67.5 ); SetSkill( SkillName.Macing, 45, 67.5 ); SetSkill( SkillName.Fencing, 45, 67.5 ); SetSkill( SkillName.Wrestling, 45, 67.5 ); SetSkill( SkillName.ArmsLore, 42.5, 65 ); Item item = null; if ( !Female ) { item = AddRandomHair(); item.Hue = Utility.RandomHairHue(); item = AddRandomFacialHair( item.Hue ); switch ( Utility.Random( 5 ) ) { case 0: item = new PlateChest(); break; case 1: item = new ChainChest(); break; case 2: item = new StuddedChest(); break; case 3: item = new RingmailChest(); break; case 4: default: item = new LeatherChest(); break; } AddItem( item ); switch ( Utility.Random( 5 ) ) { case 0: item = new PlateLegs(); break; case 1: item = new ChainLegs(); break; case 2: item = new StuddedLegs(); break; case 3: item = new RingmailLegs(); break; case 4: default: item = new LeatherLegs(); break; } AddItem( item ); switch ( Utility.Random( 4 ) ) { case 0: item = new PlateArms(); break; case 1: item = new RingmailArms(); break; case 2: item = new StuddedArms(); break; case 3: default: item = new LeatherArms(); break; } AddItem( item ); switch ( Utility.Random( 3 ) ) { case 0: item = new PlateGloves(); break; case 1: item = new StuddedGloves(); break; case 2: default: item = new LeatherGloves(); break; } AddItem( item ); switch ( Utility.Random( 6 ) ) { case 0: item = new PlateHelm(); break; case 1: item = new ChainCoif(); break; case 2: item = new CloseHelm(); break; case 3: item = new Bascinet(); break; case 4: item = new NorseHelm(); break; case 5: default: item = new Helmet(); break; } AddItem( item ); switch ( Utility.Random( 7 ) ) { case 0: item = new BronzeShield(); break; case 1: item = new Buckler(); break; case 2: item = new HeaterShield(); break; case 3: item = new MetalKiteShield(); break; case 4: item = new MetalShield(); break; case 5: item = new WoodenKiteShield(); break; case 6: default: item = new WoodenShield(); break; } AddItem( item ); switch ( Utility.Random( 4 ) ) { case 0: item = new PlateGorget(); break; case 1: item = new StuddedGorget(); break; default: case 2: item = new LeatherGorget(); break; } AddItem( item ); item = Loot.RandomWeapon(); AddItem( item ); PackGold( 15, 100 ); } else { item = AddRandomHair(); item.Hue = Utility.RandomHairHue(); switch ( Utility.Random( 5 ) ) { case 0: item = new PlateChest(); break; case 1: item = new ChainChest(); break; case 2: item = new StuddedChest(); break; case 3: item = new RingmailChest(); break; case 4: default: item = new LeatherChest(); break; } AddItem( item ); switch ( Utility.Random( 5 ) ) { case 0: item = new PlateLegs(); break; case 1: item = new ChainLegs(); break; case 2: item = new StuddedLegs(); break; case 3: item = new RingmailLegs(); break; case 4: default: item = new LeatherLegs(); break; } AddItem( item ); switch ( Utility.Random( 3 ) ) { case 0: item = new PlateGloves(); break; case 1: item = new StuddedGloves(); break; case 2: default: item = new LeatherGloves(); break; } AddItem( item ); switch ( Utility.Random( 6 ) ) { case 0: item = new PlateHelm(); break; case 1: item = new ChainCoif(); break; case 2: item = new CloseHelm(); break; case 3: item = new Bascinet(); break; case 4: item = new NorseHelm(); break; case 5: default: item = new Helmet(); break; } AddItem( item ); switch ( Utility.Random( 7 ) ) { case 0: item = new BronzeShield(); break; case 1: item = new Buckler(); break; case 2: item = new HeaterShield(); break; case 3: item = new MetalKiteShield(); break; case 4: item = new MetalShield(); break; case 5: item = new WoodenKiteShield(); break; case 6: default: item = new WoodenShield(); break; } AddItem( item ); switch ( Utility.Random( 4 ) ) { case 0: item = new PlateGorget(); break; case 1: item = new StuddedGorget(); break; default: case 2: item = new LeatherGorget(); break; } AddItem( item ); item = Loot.RandomWeapon(); AddItem( item ); PackGold( 15, 100 ); } }