public MaginciaCouncilMember() : base(AIType.AI_Melee, FightMode.Agressor, 10, 1, 0.45, 0.8) { Female = Utility.RandomBool(); Body = Female ? 401 : 400; Title = "the council member"; Name = NameList.RandomName( Female ? "female" : "male" ); Hue = Utility.RandomSkinHue(); SetStr( 41, 55 ); SetDex( 41, 55 ); SetInt( 41, 55 ); Karma = Utility.RandomMinMax( 0, -60 ); 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 ); Item item = null; if ( !Female ) { item = AddRandomHair(); item.Hue = Utility.RandomHairHue(); item = AddRandomFacialHair( item.Hue ); item = new FancyShirt(); item.Hue = Utility.RandomNondyedHue(); AddItem( item ); item = new LongPants(); item.Hue = Utility.RandomNondyedHue(); AddItem( item ); item = new BodySash(); item.Hue = Utility.RandomRedHue(); AddItem( item ); item = new Longsword(); AddItem( item ); LootPack.Rich.Generate( this ); } else { item = AddRandomHair(); item.Hue = Utility.RandomHairHue(); item = new FancyShirt(); item.Hue = Utility.RandomNondyedHue(); AddItem( item ); item = new Skirt(); item.Hue = Utility.RandomNondyedHue(); AddItem( item ); item = new BodySash(); item.Hue = Utility.RandomRedHue(); AddItem( item ); item = new Longsword(); AddItem( item ); LootPack.Rich.Generate( this ); } }
public BlueUltimaWeapon() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.15, 0.4 ) { Name = "Ultima Weapon"; Body = 400; Hue = 1175; SetStr( 1000 ); SetDex( 150 ); SetInt( 1500 ); SetDamage( 25, 30 ); SetDamageType( ResistanceType.Physical, 100 ); SetResistance( ResistanceType.Physical, 50 ); SetResistance( ResistanceType.Fire, 50 ); SetResistance( ResistanceType.Cold, 50 ); SetResistance( ResistanceType.Poison, 50 ); SetResistance( ResistanceType.Energy, 50 ); SetSkill( SkillName.Anatomy, 120.0 ); SetSkill( SkillName.EvalInt, 120.0 ); SetSkill( SkillName.Forensics, 120.0 ); SetSkill( SkillName.MagicResist, 120.0 ); SetSkill( SkillName.Swords, 120.0 ); SetSkill( SkillName.Tactics, 120.0 ); Fame = 32000; Karma = -32000; VirtualArmor = 80; int hue = 1175; GiveItem( this, hue, new DragonHelm() ); GiveItem( this, hue, new PlateGorget() ); GiveItem( this, hue, new DragonChest() ); GiveItem( this, hue, new DragonLegs() ); GiveItem( this, hue, new DragonArms() ); GiveItem( this, hue, new DragonGloves() ); Longsword sword = new Longsword(); sword.ItemID = 9934; GiveItem( this, hue, sword ); BaseMount pet = null; pet = new Reptalon(); pet.Hue = 1175; pet.Rider = this; m_BullRushDelay = DateTime.Now; m_EchoStrikeDelay = DateTime.Now; m_RallyDelay = DateTime.Now; m_Delay = DateTime.Now; m_EtherealDrainDelay = DateTime.Now; }
public MilitiaFighter() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4) { InitStats( 40, 30, 5 ); Title = "the Militia Fighter"; SpeechHue = Utility.RandomDyedHue(); Hue = Utility.RandomSkinHue(); Female = false; Body = 0x190; Name = NameList.RandomName( "male" ); Utility.AssignRandomHair( this ); Utility.AssignRandomFacialHair( this, HairHue ); AddItem( new ThighBoots( 0x1BB ) ); AddItem( new LeatherChest() ); AddItem( new LeatherArms() ); AddItem( new LeatherLegs() ); AddItem( new LeatherCap() ); AddItem( new LeatherGloves() ); AddItem( new LeatherGorget() ); Item weapon; switch ( Utility.Random( 6 ) ) { case 0: weapon = new Broadsword(); break; case 1: weapon = new Cutlass(); break; case 2: weapon = new Katana(); break; case 3: weapon = new Longsword(); break; case 4: weapon = new Scimitar(); break; default: weapon = new VikingSword(); break; } weapon.Movable = false; AddItem( weapon ); Item shield = new BronzeShield(); shield.Movable = false; AddItem( shield ); SetSkill( SkillName.Swords, 20.0 ); }
public TheBlackKnight() : base(Nation.Vhalurian) { Name = "The Black Knight"; SetStr( 150 ); SetDex( 500 ); SetInt( 9000 ); SetDamage( 10, 15 ); SetHits( 100 ); SetDamageType( ResistanceType.Blunt, 100 ); SetSkill( SkillName.Anatomy, 100.0 ); SetSkill( SkillName.Swords, 100.0 ); SetSkill( SkillName.Parry, 100.0 ); SetSkill( SkillName.Tactics, 100.0 ); this.Fame = 1500; this.VirtualArmor = 10; this.FightMode = FightMode.Closest; int hue = Utility.RandomNeutralHue(); VhalurianOrnatePlateArms arms = new VhalurianOrnatePlateArms(); arms.Hue = 1; EquipItem( arms ); VhalurianOrnatePlateChest chest = new VhalurianOrnatePlateChest(); chest.Hue = 1; EquipItem( chest ); VhalurianOrnatePlateLegs legs = new VhalurianOrnatePlateLegs(); legs.Hue = 1; EquipItem( legs ); VhalurianOrnatePlateGloves gloves = new VhalurianOrnatePlateGloves(); gloves.Hue = 1; EquipItem( gloves ); VhalurianOrnatePlateGorget gorget = new VhalurianOrnatePlateGorget(); gorget.Hue = 1; EquipItem( gorget ); TyreanWingedHelm helm = new TyreanWingedHelm(); helm.Hue = 1; EquipItem( helm ); Longsword swrd = new Longsword(); swrd.Hue = 0; EquipItem( swrd ); }
public MilitiaFighter() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4) { InitStats( 40, 30, 5 ); Title = "the Militia Fighter"; SpeechHue = Utility.RandomDyedHue(); Hue = Utility.RandomSkinHue(); Female = false; Body = 0x190; Name = NameList.RandomName( "male" ); Item hair = new Item( Utility.RandomList( 0x203B, 0x203C, 0x203D, 0x2044, 0x2045, 0x2047, 0x2049, 0x204A ) ); hair.Hue = Utility.RandomHairHue(); hair.Layer = Layer.Hair; hair.Movable = false; AddItem( hair ); 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 ); AddItem( new ThighBoots( 0x1BB ) ); AddItem( new LeatherChest() ); AddItem( new LeatherArms() ); AddItem( new LeatherLegs() ); AddItem( new LeatherCap() ); AddItem( new LeatherGloves() ); AddItem( new LeatherGorget() ); Item weapon; switch ( Utility.Random( 6 ) ) { case 0: weapon = new Broadsword(); break; case 1: weapon = new Cutlass(); break; case 2: weapon = new Katana(); break; case 3: weapon = new Longsword(); break; case 4: weapon = new Scimitar(); break; default: weapon = new VikingSword(); break; } weapon.Movable = false; AddItem( weapon ); Item shield = new BronzeShield(); shield.Movable = false; AddItem( shield ); SetSkill( SkillName.Swords, 20.0 ); }
public override void InitOutfit() { if ( Female ) { Item item = null; item = AddRandomHair(); item.Hue = Utility.RandomHairHue(); item = new FancyDress(); item.Hue = Utility.RandomNeutralHue(); AddItem( item ); item = new Cloak(); item.Hue = Utility.RandomNondyedHue(); AddItem( item ); item = new BodySash(); item.Hue = Utility.RandomNondyedHue(); AddItem( item ); item = Utility.RandomBool() ? (Item)new Boots() : (Item)new ThighBoots(); AddItem( item ); item = new Longsword(); AddItem( item ); } else { Item item = null; item = AddRandomHair(); item.Hue = Utility.RandomHairHue(); item = AddRandomFacialHair( item.Hue ); item = new FancyShirt(); item.Hue = Utility.RandomNondyedHue(); AddItem( item ); item = new LongPants(); item.Hue = Utility.RandomNondyedHue(); AddItem( item ); item = new Cloak(); item.Hue = Utility.RandomNondyedHue(); AddItem( item ); item = new BodySash(); item.Hue = Utility.RandomNondyedHue(); AddItem( item ); item = Utility.RandomBool() ? (Item)new Boots() : (Item)new ThighBoots(); AddItem( item ); item = new Longsword(); AddItem( item ); } }
public Balron() : base(AIType.AI_Mage, FightMode.Closest, 10, 1, 0.2, 0.4) { Name = NameList.RandomName( "balron" ); Body = 40; BaseSoundID = 357; SetStr( 986, 1185 ); SetDex( 177, 255 ); SetInt( 151, 250 ); SetHits( 592, 711 ); SetDamage( 22, 29 ); SetDamageType( ResistanceType.Physical, 50 ); SetDamageType( ResistanceType.Fire, 25 ); SetDamageType( ResistanceType.Energy, 25 ); SetResistance( ResistanceType.Physical, 65, 80 ); SetResistance( ResistanceType.Fire, 60, 80 ); SetResistance( ResistanceType.Cold, 50, 60 ); SetResistance( ResistanceType.Poison, 100 ); SetResistance( ResistanceType.Energy, 40, 50 ); SetSkill( SkillName.Anatomy, 25.1, 50.0 ); SetSkill( SkillName.EvalInt, 90.1, 100.0 ); SetSkill( SkillName.Magery, 95.5, 100.0 ); SetSkill( SkillName.Meditation, 25.1, 50.0 ); SetSkill( SkillName.MagicResist, 100.5, 150.0 ); SetSkill( SkillName.Tactics, 90.1, 100.0 ); SetSkill( SkillName.Wrestling, 90.1, 100.0 ); Fame = 24000; Karma = -24000; VirtualArmor = 90; Longsword sword = new Longsword(); BaseRunicTool.ApplyAttributesTo( sword, Utility.Random(6), 10, 80 ); PackItem( sword ); }
public BlacksmithBarterVendor() : base( "the blacksmith" ) { SetInterestLevel( TradeGoods.Armor, TradeGoodInterest.VeryHigh ); SetInterestLevel( TradeGoods.Clothing, TradeGoodInterest.Moderate ); SetInterestLevel( TradeGoods.Harvest, TradeGoodInterest.Moderate ); SetInterestLevel( TradeGoods.Shields, TradeGoodInterest.High ); SetInterestLevel( TradeGoods.Tools, TradeGoodInterest.Moderate ); SetInterestLevel( TradeGoods.Weapons, TradeGoodInterest.High ); Longsword sword; for( byte i = 0; i < 9; i++ ) { sword = new Longsword(); sword.Name = i + ": sword"; BankBox.AddItem( sword ); } }
public RingWraith() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4) { Name = "A Ring Wraith"; Body = 400; Hue = 1; SetStr( 250, 300 ); SetDex( 250, 300 ); SetInt( 250, 300 ); SetHits( 200, 300 ); SetDamage( 8, 18 ); Direction = (Direction)Utility.Random( 8 ); HoodedShroudOfShadows hood = new HoodedShroudOfShadows(); hood.Movable = false; AddItem(hood); Longsword sword = new Longsword(); sword.Movable = false; AddItem(sword); SetDamageType( ResistanceType.Physical, 40, 80 ); SetDamageType( ResistanceType.Fire, 40, 80 ); SetDamageType( ResistanceType.Poison, 40, 80 ); SetResistance( ResistanceType.Physical, 40, 80 ); SetResistance( ResistanceType.Cold, 40, 80 ); SetResistance( ResistanceType.Fire, 40, 80 ); SetResistance( ResistanceType.Energy, 40, 80 ); SetResistance( ResistanceType.Poison, 40, 80 ); SetSkill( SkillName.MagicResist, 100.0, 120.0 ); SetSkill( SkillName.Tactics, 100.0, 120.0 ); SetSkill( SkillName.Swords, 100.0, 120.0 ); }
public Vampire() : base( AIType.AI_SphereMage, FightMode.Closest, 10, 1, 0.2, 0.4 ) { Hue = 0x497; Body = 0x190; Name = "Vampire"; SetStr( 450 ); SetDex( 200, 300 ); SetInt( 150, 200 ); SetHits( 200, 300 ); SetStam( 200, 300 ); SetMana( 150, 200 ); SetDamage( 10, 20 ); SetSkill( SkillName.Parry, 75.0, 80.0 ); SetSkill( SkillName.Poisoning, 90.0, 100.0 ); SetSkill( SkillName.MagicResist, 75.0, 88.0 ); SetSkill( SkillName.Swords, 75.0, 85.0 ); SetSkill( SkillName.Tactics, 80.0, 90.0 ); SetSkill( SkillName.Wrestling, 67.0, 80.0 ); SetSkill( SkillName.Magery, 65.0, 80.0 ); SetSkill(SkillName.EvalInt, 75.0, 85.0); Fame = 4000; Karma = -4000; VirtualArmor = 20; Item temp = new PlateGloves {Movable = false, Hue = 0x0590, Name = "Vampire Plate Gauntlets"}; AddItem( temp ); temp = new PlateArms {Hue = 0x0845, Movable = false, Name = "Vampire Plate Arms"}; AddItem( temp ); temp = new PlateGorget {Movable = false, Hue = 0x0590, Name = "Vampire Plate Gorget"}; AddItem( temp ); temp = new PlateLegs {Movable = false, Hue = 0x0590, Name = "Vampire Plate Legs"}; AddItem( temp ); temp = new PlateChest {Movable = false, Hue = 0x0590, Name = "Vampire Plate Chest"}; AddItem( temp ); temp = new Cloak( 0x1 ) {Movable = false}; AddItem( temp ); HairItemID = 8252; HairHue = Utility.RandomHairHue(); BaseSword twep; switch( Utility.Random( 8 ) ) { case 0: twep = new Broadsword(); break; case 1: twep = new Cutlass(); break; case 2: twep = new Scimitar(); break; case 3: twep = new Katana(); break; case 4: twep = new Kryss(); break; case 5: twep = new Longsword(); break; case 6: twep = new ThinLongsword(); break; default: twep = new VikingSword(); break; } switch( Utility.Random( 3 ) ) { case 0: twep.DamageLevel = WeaponDamageLevel.Ruin; break; case 1: twep.DamageLevel = WeaponDamageLevel.Might; break; case 2: twep.DamageLevel = WeaponDamageLevel.Force; break; } AddItem( twep ); }
public override void InitOutfit() { Item item = null; int hairHue = Utility.RandomHairHue(); Utility.AssignRandomHair(this, hairHue); item = new Cloak(); AddItem(item); item.Hue = Utility.RandomNondyedHue(); item = new BodySash(); AddItem(item); item.Hue = Utility.RandomNondyedHue(); item = Utility.RandomBool() ? (Item)new Boots() : (Item)new ThighBoots(); AddItem(item); item = new Longsword(); AddItem(item); AddLoot(LootPack.FilthyRich); if (!Female) { Utility.AssignRandomFacialHair(this, hairHue); item = new FancyShirt(); AddItem(item); item.Hue = Utility.RandomNondyedHue(); item = new LongPants(); AddItem(item); item.Hue = Utility.RandomNondyedHue(); } else { item = new FancyDress(); AddItem(item); item.Hue = Utility.RandomNeutralHue(); } }
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() ); } }
private void AddEquipment(GuardType type) { AddItem(new Boots()); AddItem(new Cloak(1155)); AddItem(new BodySash(1155)); switch (type) { default: case GuardType.Archer: { AddItem(new LeatherLegs()); AddItem(new StuddedChest()); AddItem(new LeatherGloves()); AddItem(new LeatherArms()); Bow bow = new Bow(); bow.Quality = WeaponQuality.Exceptional; AddItem(bow); AddToBackpack(new Arrow(200)); } break; case GuardType.Cavalry: { AddItem(new PlateLegs()); AddItem(new RingmailChest()); AddItem(new FancyShirt()); AddItem(new PlateGorget()); AddItem(new RingmailGloves()); BaseWeapon weapon; if (Utility.RandomBool()) weapon = new Halberd(); else weapon = new Bardiche(); weapon.Quality = WeaponQuality.Exceptional; weapon.Resource = CraftResource.Gold; weapon.Speed += 5; AddItem(weapon); } break; case GuardType.Pikeman: { AddItem(new RingmailLegs()); AddItem(new RingmailChest()); AddItem(new RingmailArms()); AddItem(new RingmailGloves()); AddItem(new PlateGorget()); if (Utility.RandomBool()) AddItem(new CloseHelm()); else AddItem(new NorseHelm()); AddItem(new Pike()); } break; case GuardType.Swordsman: { AddItem(new ChainLegs()); AddItem(new ChainChest()); AddItem(new RingmailArms()); AddItem(new RingmailGloves()); AddItem(new PlateGorget()); switch (Utility.Random(3)) { case 0: AddItem(new CloseHelm()); break; case 1: AddItem(new NorseHelm()); break; case 2: AddItem(new PlateHelm()); break; } BaseWeapon weapon; switch (Utility.Random(4)) { default: case 0: weapon = new Broadsword(); break; case 1: weapon = new Longsword(); break; case 2: weapon = new Katana(); break; case 3: weapon = new Axe(); break; } weapon.Quality = WeaponQuality.Exceptional; weapon.Resource = CraftResource.Gold; weapon.Layer = Layer.OneHanded; AddItem(weapon); if (Utility.RandomBool()) AddItem(new HeaterShield()); else AddItem(new MetalKiteShield()); } break; case GuardType.Wizard: { AddItem(new WizardsHat(Utility.RandomGreenHue())); AddItem(new Robe(Utility.RandomGreenHue())); GnarledStaff staff = new GnarledStaff(); staff.Attributes.SpellChanneling = 1; staff.Attributes.SpellDamage = Utility.RandomMinMax(4, 8); AddItem(staff); } break; case GuardType.Medic: { AddItem(new Bandana(Utility.RandomGreenHue())); AddItem(new Robe(Utility.RandomGreenHue())); } break; } }
public RatmenFortressTreasureChest1() : base(0xE43) { Name = "a treasure chest -15-"; Movable = true; Weight = 1000.0; TrapPower = 0; Locked = true; RequiredSkill = 15; LockLevel = 15; MaxLockLevel = 20; // Gold if (Utility.RandomDouble() < 0.25) { DropItem(new Gold(Utility.Random(20, 300))); } /////////////////////////////////////// Supplies if (Utility.RandomDouble() < 0.10) { DropItem(new Arrow(Utility.Random(9, 13))); } if (Utility.RandomDouble() < 0.10) { DropItem(new Bolt(Utility.Random(9, 13))); } Item ReagentLoot = Loot.RandomReagent(); ReagentLoot.Amount = Utility.Random(9, 13); DropItem(ReagentLoot); if (Utility.RandomDouble() < 0.10) { DropItem(new Bandage(Utility.Random(9, 13))); } if (Utility.RandomDouble() < 0.10) { DropItem(new Bedroll()); } if (Utility.RandomDouble() < 0.10) { DropItem(new Bottle(Utility.Random(9, 13))); } if (Utility.RandomDouble() < 0.10) { DropItem(new Lockpick(Utility.Random(9, 13))); } Item PotionLoot = Loot.RandomPotion(); DropItem(PotionLoot); /////////////////////////////////////// Tools if (Utility.RandomDouble() < 0.10) { DropItem(new FishingPole()); } if (Utility.RandomDouble() < 0.10) { DropItem(new Shovel()); } if (Utility.RandomDouble() < 0.10) { DropItem(new Skillet()); } /////////////////////////////////////// Rare Items if (Utility.RandomDouble() < 0.01) { DropItem(new DyeTub()); } if (Utility.RandomDouble() < 0.10) { 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, 12, 15); DropItem(weapon); } if (Utility.RandomDouble() < 0.10) { 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, 12, 15); DropItem(armor); } if (Utility.RandomDouble() < 0.10) { 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, 12, 15); DropItem(hat); } if (Utility.RandomDouble() < 0.10) { BaseClothing clothing = Loot.RandomClothing(true); BaseRunicTool.ApplyAttributesTo(clothing, 4, 12, 15); DropItem(clothing); } if (Utility.RandomDouble() < 0.10) { BaseShield shield = new HeaterShield(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(shield, 4, 12, 15); } DropItem(shield); } if (Utility.RandomDouble() < 0.10) { BaseJewel bracelet = new SilverBracelet(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(bracelet, 4, 12, 15); } DropItem(bracelet); } if (Utility.RandomDouble() < 0.10) { BaseJewel earrings = new SilverEarrings(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(earrings, 4, 12, 15); } DropItem(earrings); } if (Utility.RandomDouble() < 0.10) { BaseJewel necklace = new SilverNecklace(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(necklace, 4, 12, 15); } DropItem(necklace); } if (Utility.RandomDouble() < 0.10) { BaseJewel ring = new SilverRing(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(ring, 4, 12, 15); } DropItem(ring); } }
public override void IncreaseTier() { base.IncreaseTier(); List<object> list = new List<object>(); Item c; // don't know names above lev 6 switch ( this.Tier ) { case 1: c = new BookOfChivalry(); c.MoveToWorld(new Point3D(2924, 979, -18), this.Map); c.Movable = false; list.Add(c); c = new Longsword(); c.MoveToWorld(new Point3D(2923, 980, -18), this.Map); c.Movable = false; c.ItemID = 0x26CF; list.Add(c); c = new Shirt(); c.MoveToWorld(new Point3D(2924, 978, -18), this.Map); c.Movable = false; c.ItemID = 0x2662; c.Name = "Crisp White Shirt"; list.Add(c); break; case 2: c = new GraveDust(); c.MoveToWorld(new Point3D(2921, 972, -17), this.Map); c.Movable = false; list.Add(c); c = new NoxCrystal(); c.MoveToWorld(new Point3D(2921, 972, -17), this.Map); c.Movable = false; list.Add(c); c = new Static(0xF91); c.MoveToWorld(new Point3D(2921, 972, -17), this.Map); c.Movable = false; list.Add(c); c = new NecromancerSpellbook(); c.MoveToWorld(new Point3D(2922, 972, -18), this.Map); c.Movable = false; list.Add(c); c = new AnimateDeadScroll(); c.MoveToWorld(new Point3D(2923, 972, -18), this.Map); c.Movable = false; list.Add(c); c = new HorrificBeastScroll(); c.MoveToWorld(new Point3D(2923, 972, -18), this.Map); c.Movable = false; list.Add(c); c = new VampiricEmbraceScroll(); c.MoveToWorld(new Point3D(2923, 971, -20), this.Map); c.Movable = false; list.Add(c); c = new Static(0xFDD); c.MoveToWorld(new Point3D(2922, 971, -21), this.Map); list.Add(c); c = new Static(0xFDE); c.MoveToWorld(new Point3D(2923, 971, -21), this.Map); list.Add(c); break; case 3: c = new JesterSuit(); c.MoveToWorld(new Point3D(2919, 985, -16), this.Map); c.Movable = false; list.Add(c); c = new LocalizedStatic(0xE74, 1073424); c.MoveToWorld(new Point3D(2919, 984, -11), this.Map); c.Movable = false; c.Weight = 50.0; c.Hue = 0x113; list.Add(c); c = new JesterHat(); c.MoveToWorld(new Point3D(2919, 983, -13), this.Map); c.Movable = false; c.Hue = 0x113; list.Add(c); break; case 4: c = new Static(0xD25); c.MoveToWorld(new Point3D(2916, 984, -13), this.Map); c.Movable = false; list.Add(c); c = new Static(0x20D9); c.MoveToWorld(new Point3D(2916, 982, -12), this.Map); c.Name = "Gargoyle"; list.Add(c); c = new Static(0x2132); c.MoveToWorld(new Point3D(2914, 982, -9), this.Map); list.Add(c); c = new Static(0x25B6); c.MoveToWorld(new Point3D(2913, 982, -13), this.Map); list.Add(c); c = new Static(0x25B6); c.MoveToWorld(new Point3D(2913, 982, -13), this.Map); list.Add(c); c = new Static(0x222E); c.MoveToWorld(new Point3D(2915, 983, -14), this.Map); list.Add(c); c = new Static(0x2211); c.MoveToWorld(new Point3D(2914, 984, -13), this.Map); list.Add(c); break; case 5: c = new LocalizedStatic(0xE30, 1073421); c.MoveToWorld(new Point3D(2911, 983, -12), this.Map); c.Weight = 10.0; list.Add(c); c = new LocalizedStatic(0x2937, 1073422); c.MoveToWorld(new Point3D(2911, 984, -13), this.Map); list.Add(c); c = new LocalizedStatic(0x12AA, 1073423); c.MoveToWorld(new Point3D(2911, 985, -14), this.Map); list.Add(c); c = new Static(0xEAF); c.MoveToWorld(new Point3D(2910, 985, -21), this.Map); c.Weight = 5.0; list.Add(c); c = new Static(0xEAE); c.MoveToWorld(new Point3D(2910, 986, -21), this.Map); c.Weight = 5.0; list.Add(c); break; case 6: c = new Tessen(); c.MoveToWorld(new Point3D(2910, 966, -17), this.Map); c.Movable = false; list.Add(c); c = new Shuriken(); c.MoveToWorld(new Point3D(2910, 965, -17), this.Map); c.Movable = false; list.Add(c); c = new Static(0x2855); c.MoveToWorld(new Point3D(2910, 964, -16), this.Map); c.Weight = 5.0; list.Add(c); c = new Static(0x241D); c.MoveToWorld(new Point3D(2910, 963, -20), this.Map); c.Weight = 5.0; list.Add(c); c = new Static(0x2409); c.MoveToWorld(new Point3D(2910, 963, -17), this.Map); list.Add(c); c = new Static(0x2416); c.MoveToWorld(new Point3D(2909, 965, -17), this.Map); list.Add(c); break; case 7: c = new Static(0x3069); c.MoveToWorld(new Point3D(2914, 964, -21), this.Map); list.Add(c); c = new Static(0x306A); c.MoveToWorld(new Point3D(2913, 964, -21), this.Map); list.Add(c); c = new Static(0x306B); c.MoveToWorld(new Point3D(2912, 964, -21), this.Map); list.Add(c); c = new ElvenLoveseatEastAddon(); c.MoveToWorld(new Point3D(2913, 966, -21), this.Map); c.Movable = false; list.Add(c); c = new Static(0x2CFC); c.MoveToWorld(new Point3D(2912, 963, -21), this.Map); list.Add(c); c = new LocalizedStatic(0x2D74, 1073425); c.MoveToWorld(new Point3D(2914, 963, -21), this.Map); list.Add(c); break; case 8: c = new Static(0x2); c.MoveToWorld(new Point3D(2905, 970, -15), this.Map); list.Add(c); c = new Static(0x3); c.MoveToWorld(new Point3D(2905, 969, -15), this.Map); list.Add(c); c = new OrderShield(); c.MoveToWorld(new Point3D(2905, 971, -17), this.Map); c.Movable = false; list.Add(c); c = new Static(0x1579); c.MoveToWorld(new Point3D(2904, 971, -21), this.Map); list.Add(c); c = new Static(0x1613); c.MoveToWorld(new Point3D(2908, 969, -21), this.Map); list.Add(c); c = new Static(0x1614); c.MoveToWorld(new Point3D(2908, 968, -21), this.Map); list.Add(c); break; case 9: c = new Static(0x1526); c.MoveToWorld(new Point3D(2905, 976, -15), this.Map); list.Add(c); c = new Static(0x1527); c.MoveToWorld(new Point3D(2905, 975, -15), this.Map); list.Add(c); c = new Static(0x151A); c.MoveToWorld(new Point3D(2905, 972, -21), this.Map); list.Add(c); c = new Static(0x151A); c.MoveToWorld(new Point3D(2905, 977, -21), this.Map); list.Add(c); c = new Static(0x151A); c.MoveToWorld(new Point3D(2908, 972, -21), this.Map); list.Add(c); c = new Static(0x151A); c.MoveToWorld(new Point3D(2908, 977, -21), this.Map); list.Add(c); c = new Static(0x1514); c.MoveToWorld(new Point3D(2904, 975, -17), this.Map); list.Add(c); break; case 10: c = new Static(0x15C5); c.MoveToWorld(new Point3D(2904, 982, -21), this.Map); list.Add(c); c = new Static(0x15C5); c.MoveToWorld(new Point3D(2904, 979, -21), this.Map); list.Add(c); c = new Static(0x157B); c.MoveToWorld(new Point3D(2904, 981, -21), this.Map); list.Add(c); c = new Static(0x14E3); c.MoveToWorld(new Point3D(2905, 980, -21), this.Map); list.Add(c); c = new Static(0x14E4); c.MoveToWorld(new Point3D(2905, 981, -21), this.Map); list.Add(c); c = new Static(0x14E5); c.MoveToWorld(new Point3D(2906, 981, -21), this.Map); list.Add(c); c = new Static(0x14E6); c.MoveToWorld(new Point3D(2906, 980, -21), this.Map); list.Add(c); c = new ChaosShield(); c.MoveToWorld(new Point3D(2905, 978, -19), this.Map); c.Movable = false; list.Add(c); break; case 11: c = new FemaleStuddedChest(); c.MoveToWorld(new Point3D(2912, 976, -16), this.Map); c.Movable = false; c.Hue = 0x497; list.Add(c); c = new Static(0x1EA8); c.MoveToWorld(new Point3D(2913, 973, -13), this.Map); c.Hue = 0x497; list.Add(c); c = new Static(0x20F8); c.MoveToWorld(new Point3D(2913, 975, -11), this.Map); c.Hue = 0x113; list.Add(c); c = new Static(0x20E9); c.MoveToWorld(new Point3D(2912, 974, -11), this.Map); c.Name = "Troll"; list.Add(c); c = new Static(0x2607); c.MoveToWorld(new Point3D(2913, 974, -11), this.Map); list.Add(c); c = new Static(0x25F9); c.MoveToWorld(new Point3D(2912, 975, -11), this.Map); list.Add(c); break; case 12: c = new Static(0x1D8A); c.MoveToWorld(new Point3D(2915, 976, -13), this.Map); list.Add(c); c = new Static(0x1D8B); c.MoveToWorld(new Point3D(2916, 976, -13), this.Map); list.Add(c); c = new Static(0x234D); c.MoveToWorld(new Point3D(2915, 975, -10), this.Map); list.Add(c); c = new WizardsHat(); c.MoveToWorld(new Point3D(2915, 974, -13), this.Map); c.Movable = false; list.Add(c); break; } if (list.Count > 0) this.Tiers.Add(list); }
public override bool OnDragDrop( Mobile from, Item dropped ) { PlayerMobile player = from as PlayerMobile; if ( player != null ) { QuestSystem qs = player.Quest; if ( qs is UzeraanTurmoilQuest ) { if ( dropped is UzeraanTurmoilHorn ) { if ( player.Young ) { UzeraanTurmoilHorn horn = (UzeraanTurmoilHorn) dropped; if ( horn.Charges < 10 ) { SayTo( from, 1049384 ); // I have recharged the item for you. horn.Charges = 10; } else { SayTo( from, 1049385 ); // That doesn't need recharging yet. } } else { player.SendMessage( "You must be young to have this item recharged." ); } return false; } if ( dropped is SchmendrickScrollOfPower ) { QuestObjective obj = qs.FindObjective( typeof( ReturnScrollOfPowerObjective ) ); if ( obj != null && !obj.Completed ) { Container cont = GetNewContainer(); cont.DropItem( new TreasureMap( 1 ) ); cont.DropItem( new Shovel() ); cont.DropItem( new UzeraanTurmoilHorn() ); if ( !player.PlaceInBackpack( cont ) ) { cont.Delete(); player.SendLocalizedMessage( 1046260 ); // You need to clear some space in your inventory to continue with the quest. Come back here when you have more space in your inventory. return false; } else { dropped.Delete(); obj.Complete(); return true; } } } else if ( dropped is QuestFertileDirt ) { QuestObjective obj = qs.FindObjective( typeof( ReturnFertileDirtObjective ) ); if ( obj != null && !obj.Completed ) { Container cont = GetNewContainer(); if ( player.Profession == 2 ) // magician { cont.DropItem( new BlackPearl( 20 ) ); cont.DropItem( new Bloodmoss( 20 ) ); cont.DropItem( new Garlic( 20 ) ); cont.DropItem( new Ginseng( 20 ) ); cont.DropItem( new MandrakeRoot( 20 ) ); cont.DropItem( new Nightshade( 20 ) ); cont.DropItem( new SulfurousAsh( 20 ) ); cont.DropItem( new SpidersSilk( 20 ) ); for ( int i = 0; i < 3; i++ ) { cont.DropItem( Loot.RandomScroll( 0, 23, SpellbookType.Regular ) ); } } else { cont.DropItem( new Gold( 300 ) ); cont.DropItem( new Bandage( 25 ) ); for ( int i = 0; i < 5; i++ ) { cont.DropItem( new LesserHealPotion() ); } } if ( !player.PlaceInBackpack( cont ) ) { cont.Delete(); player.SendLocalizedMessage( 1046260 ); // You need to clear some space in your inventory to continue with the quest. Come back here when you have more space in your inventory. return false; } else { dropped.Delete(); obj.Complete(); return true; } } } else if ( dropped is QuestDaemonBlood ) { QuestObjective obj = qs.FindObjective( typeof( ReturnDaemonBloodObjective ) ); if ( obj != null && !obj.Completed ) { Item reward; if ( player.Profession == 2 ) // magician { Container cont = GetNewContainer(); cont.DropItem( new ExplosionScroll( 4 ) ); cont.DropItem( new MagicWizardsHat() ); reward = cont; } else { BaseWeapon weapon; switch ( Utility.Random( 6 ) ) { case 0: weapon = new Broadsword(); break; case 1: weapon = new Cutlass(); break; case 2: weapon = new Katana(); break; case 3: weapon = new Longsword(); break; case 4: weapon = new Scimitar(); break; default: weapon = new VikingSword(); break; } weapon.Slayer = SlayerName.Undead; BaseRunicTool.ApplyAttributesTo( weapon, 3, 20, 40 ); reward = weapon; } if ( !player.PlaceInBackpack( reward ) ) { reward.Delete(); player.SendLocalizedMessage( 1046260 ); // You need to clear some space in your inventory to continue with the quest. Come back here when you have more space in your inventory. return false; } else { dropped.Delete(); obj.Complete(); return true; } } } else if ( dropped is QuestDaemonBone ) { QuestObjective obj = qs.FindObjective( typeof( ReturnDaemonBoneObjective ) ); if ( obj != null && !obj.Completed ) { Container cont = GetNewContainer(); cont.DropItem( new BankCheck( 2000 ) ); cont.DropItem( new EnchantedSextant() ); if ( !player.PlaceInBackpack( cont ) ) { cont.Delete(); player.SendLocalizedMessage( 1046260 ); // You need to clear some space in your inventory to continue with the quest. Come back here when you have more space in your inventory. return false; } else { dropped.Delete(); obj.Complete(); return true; } } } } } return base.OnDragDrop( from, dropped ); }
/// <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); }
//AIType, Fight Mode, Range Perception, Fighting Range, Active Speed, Passive Speed public VampireLord() : base( AIType.AI_SphereMage, FightMode.Closest, 10, 1, 0.2, 0.4 ) { Name = "Vampire Lord"; Body = 0x0190; Hue = 0x497; SetStr( 750 ); SetDex( 400, 500 ); SetInt( 200, 250 ); SetHits( 350, 400 ); SetStam( 250, 300 ); SetMana( 250, 300 ); SetDamage( 20, 40 ); SetSkill( SkillName.Poisoning, 90.0, 100.0 ); SetSkill( SkillName.Tactics, 90.0, 98.0 ); SetSkill( SkillName.MagicResist, 75.0, 88.0 ); SetSkill( SkillName.Parry, 85.0, 98.0 ); SetSkill( SkillName.Wrestling, 67.0, 90.0 ); SetSkill( SkillName.DetectHidden, 90.0, 100.0 ); SetSkill( SkillName.Swords, 90.0, 95.0 ); SetSkill( SkillName.Magery, 95.0, 100.0 ); SetSkill(SkillName.EvalInt, 95.0, 100.0); Fame = 3000; Karma = -10000; VirtualArmor = 40; Item temp = new PlateGloves {Movable = false, Hue = 0x0492, Name = "Vampire Plate Gauntlets"}; AddItem( temp ); temp = new PlateArms {Hue = 0x0492, Movable = false, Name = "Vampire Plate Arms"}; AddItem( temp ); temp = new PlateGorget {Movable = false, Hue = 0x0492, Name = "Vampire Plate Gorget"}; AddItem( temp ); temp = new PlateLegs {Movable = false, Hue = 0x0492, Name = "Vampire Plate Legs"}; AddItem( temp ); temp = new PlateChest {Movable = false, Hue = 0x0492, Name = "Vampire Plate Chest"}; AddItem( temp ); temp = new PlateHelm {Movable = false, Hue = 0x0492, Name = "Vampire Plate Helm"}; AddItem( temp ); temp = new BodySash {Movable = false, Hue = 0x1, Name = "Vampire Sash"}; AddItem( temp ); temp = new Cloak {Movable = false, Hue = 0x1}; AddItem( temp ); BaseArmor tarm; if (Utility.RandomDouble() < 0.3) { switch (Utility.Random(6)) { case 0: tarm = new PlateGloves {Hue = 0x492, Name = "Vampire Plate Gauntlets"}; break; case 1: tarm = new PlateArms {Hue = 0x492, Name = "Vampire Plate Arms"}; break; case 2: tarm = new PlateChest {Hue = 0x492, Name = "Vampire Plate Chest"}; break; case 3: tarm = new PlateHelm {Hue = 0x492, Name = "Vampire Plate Helm"}; break; case 4: tarm = new PlateLegs {Hue = 0x492, Name = "Vampire Plate Legs"}; break; default: tarm = new PlateGorget {Hue = 0x492, Name = "Vampire Plate Gorget"}; break; } tarm.ProtectionLevel = (ArmorProtectionLevel) Utility.RandomMinMax(0, 5); AddItem(tarm); } BaseSword twep; switch( Utility.Random( 8 ) ) { case 0: twep = new Broadsword(); break; case 1: twep = new Cutlass(); break; case 2: twep = new Scimitar(); break; case 3: twep = new Katana(); break; case 4: twep = new Kryss(); break; case 5: twep = new Longsword(); break; case 6: twep = new ThinLongsword(); break; default: twep = new VikingSword(); break; } switch( Utility.Random( 3 ) ) { case 0: twep.DamageLevel = WeaponDamageLevel.Might; break; case 1: twep.DamageLevel = WeaponDamageLevel.Force; break; case 2: twep.DamageLevel = WeaponDamageLevel.Power; break; } AddItem( twep ); }
private void CreateClassic() { m_MoveSound = 1055; m_CaptureSound = 1068; m_DeathSound = 0; m_CheckSound = 1086; m_CheckMateSound = 1088; m_Piece.Female = false; m_Piece.BodyValue = 0x190; m_Piece.AccessLevel = AccessLevel.GameMaster; m_Piece.NameHue = 0x3B2; if ( m_BChessboard.OverrideMinorHue ) { m_Piece.Hue = Hue; } else { m_Piece.Hue = m_BChessboard.SkinHue; } Item item = null; if ( m_Color == ChessColor.White ) { item = new LordBritishSuit(); m_Piece.AddItem( item ); item = new OrderShield(); m_Piece.AddItem( item ); item = new Longsword(); m_Piece.AddItem( item ); } else { item = new LordBlackthorneSuit(); m_Piece.AddItem( item ); item = new ChaosShield(); m_Piece.AddItem( item ); item = new Longsword(); m_Piece.AddItem( item ); } }
public override void IncreaseTier() { base.IncreaseTier(); List <object> list = new List <object>(); Item c; // don't know names above lev 6 switch (Tier) { case 1: c = new BookOfChivalry(); c.MoveToWorld(new Point3D(2924, 979, -18), Map); c.Movable = false; list.Add(c); c = new Longsword(); c.MoveToWorld(new Point3D(2923, 980, -18), Map); c.Movable = false; c.ItemID = 0x26CF; list.Add(c); c = new Shirt(); c.MoveToWorld(new Point3D(2924, 978, -18), Map); c.Movable = false; c.ItemID = 0x2662; c.Name = "Crisp White Shirt"; list.Add(c); break; case 2: c = new GraveDust(); c.MoveToWorld(new Point3D(2921, 972, -17), Map); c.Movable = false; list.Add(c); c = new NoxCrystal(); c.MoveToWorld(new Point3D(2921, 972, -17), Map); c.Movable = false; list.Add(c); c = new Static(0xF91); c.MoveToWorld(new Point3D(2921, 972, -17), Map); c.Movable = false; list.Add(c); c = new NecromancerSpellbook(); c.MoveToWorld(new Point3D(2922, 972, -18), Map); c.Movable = false; list.Add(c); c = new AnimateDeadScroll(); c.MoveToWorld(new Point3D(2923, 972, -18), Map); c.Movable = false; list.Add(c); c = new HorrificBeastScroll(); c.MoveToWorld(new Point3D(2923, 972, -18), Map); c.Movable = false; list.Add(c); c = new VampiricEmbraceScroll(); c.MoveToWorld(new Point3D(2923, 971, -20), Map); c.Movable = false; list.Add(c); c = new Static(0xFDD); c.MoveToWorld(new Point3D(2922, 971, -21), Map); list.Add(c); c = new Static(0xFDE); c.MoveToWorld(new Point3D(2923, 971, -21), Map); list.Add(c); break; case 3: c = new JesterSuit(); c.MoveToWorld(new Point3D(2919, 985, -16), Map); c.Movable = false; list.Add(c); c = new LocalizedStatic(0xE74, 1073424); c.MoveToWorld(new Point3D(2919, 984, -11), Map); c.Movable = false; c.Weight = 50.0; c.Hue = 0x113; list.Add(c); c = new JesterHat(); c.MoveToWorld(new Point3D(2919, 983, -13), Map); c.Movable = false; c.Hue = 0x113; list.Add(c); break; case 4: c = new Static(0xD25); c.MoveToWorld(new Point3D(2916, 984, -13), Map); c.Movable = false; list.Add(c); c = new Static(0x20D9); c.MoveToWorld(new Point3D(2916, 982, -12), Map); c.Name = "Gargoyle"; list.Add(c); c = new Static(0x2132); c.MoveToWorld(new Point3D(2914, 982, -9), Map); list.Add(c); c = new Static(0x25B6); c.MoveToWorld(new Point3D(2913, 982, -13), Map); list.Add(c); c = new Static(0x25B6); c.MoveToWorld(new Point3D(2913, 982, -13), Map); list.Add(c); c = new Static(0x222E); c.MoveToWorld(new Point3D(2915, 983, -14), Map); list.Add(c); c = new Static(0x2211); c.MoveToWorld(new Point3D(2914, 984, -13), Map); list.Add(c); break; case 5: c = new LocalizedStatic(0xE30, 1073421); c.MoveToWorld(new Point3D(2911, 983, -12), Map); c.Weight = 10.0; list.Add(c); c = new LocalizedStatic(0x2937, 1073422); c.MoveToWorld(new Point3D(2911, 984, -13), Map); list.Add(c); c = new LocalizedStatic(0x12AA, 1073423); c.MoveToWorld(new Point3D(2911, 985, -14), Map); list.Add(c); c = new Static(0xEAF); c.MoveToWorld(new Point3D(2910, 985, -21), Map); c.Weight = 5.0; list.Add(c); c = new Static(0xEAE); c.MoveToWorld(new Point3D(2910, 986, -21), Map); c.Weight = 5.0; list.Add(c); break; case 6: c = new Tessen(); c.MoveToWorld(new Point3D(2910, 966, -17), Map); c.Movable = false; list.Add(c); c = new Shuriken(); c.MoveToWorld(new Point3D(2910, 965, -17), Map); c.Movable = false; list.Add(c); c = new Static(0x2855); c.MoveToWorld(new Point3D(2910, 964, -16), Map); c.Weight = 5.0; list.Add(c); c = new Static(0x241D); c.MoveToWorld(new Point3D(2910, 963, -20), Map); c.Weight = 5.0; list.Add(c); c = new Static(0x2409); c.MoveToWorld(new Point3D(2910, 963, -17), Map); list.Add(c); c = new Static(0x2416); c.MoveToWorld(new Point3D(2909, 965, -17), Map); list.Add(c); break; case 7: c = new Static(0x3069); c.MoveToWorld(new Point3D(2914, 964, -21), Map); list.Add(c); c = new Static(0x306A); c.MoveToWorld(new Point3D(2913, 964, -21), Map); list.Add(c); c = new Static(0x306B); c.MoveToWorld(new Point3D(2912, 964, -21), Map); list.Add(c); c = new ElvenLoveseatEastAddon(); c.MoveToWorld(new Point3D(2913, 966, -21), Map); c.Movable = false; list.Add(c); c = new Static(0x2CFC); c.MoveToWorld(new Point3D(2912, 963, -21), Map); list.Add(c); c = new LocalizedStatic(0x2D74, 1073425); c.MoveToWorld(new Point3D(2914, 963, -21), Map); list.Add(c); break; case 8: c = new Static(0x2); c.MoveToWorld(new Point3D(2905, 970, -15), Map); list.Add(c); c = new Static(0x3); c.MoveToWorld(new Point3D(2905, 969, -15), Map); list.Add(c); c = new OrderShield(); c.MoveToWorld(new Point3D(2905, 971, -17), Map); c.Movable = false; list.Add(c); c = new Static(0x1579); c.MoveToWorld(new Point3D(2904, 971, -21), Map); list.Add(c); c = new Static(0x1613); c.MoveToWorld(new Point3D(2908, 969, -21), Map); list.Add(c); c = new Static(0x1614); c.MoveToWorld(new Point3D(2908, 968, -21), Map); list.Add(c); break; case 9: c = new Static(0x1526); c.MoveToWorld(new Point3D(2905, 976, -15), Map); list.Add(c); c = new Static(0x1527); c.MoveToWorld(new Point3D(2905, 975, -15), Map); list.Add(c); c = new Static(0x151A); c.MoveToWorld(new Point3D(2905, 972, -21), Map); list.Add(c); c = new Static(0x151A); c.MoveToWorld(new Point3D(2905, 977, -21), Map); list.Add(c); c = new Static(0x151A); c.MoveToWorld(new Point3D(2908, 972, -21), Map); list.Add(c); c = new Static(0x151A); c.MoveToWorld(new Point3D(2908, 977, -21), Map); list.Add(c); c = new Static(0x1514); c.MoveToWorld(new Point3D(2904, 975, -17), Map); list.Add(c); break; case 10: c = new Static(0x15C5); c.MoveToWorld(new Point3D(2904, 982, -21), Map); list.Add(c); c = new Static(0x15C5); c.MoveToWorld(new Point3D(2904, 979, -21), Map); list.Add(c); c = new Static(0x157B); c.MoveToWorld(new Point3D(2904, 981, -21), Map); list.Add(c); c = new Static(0x14E3); c.MoveToWorld(new Point3D(2905, 980, -21), Map); list.Add(c); c = new Static(0x14E4); c.MoveToWorld(new Point3D(2905, 981, -21), Map); list.Add(c); c = new Static(0x14E5); c.MoveToWorld(new Point3D(2906, 981, -21), Map); list.Add(c); c = new Static(0x14E6); c.MoveToWorld(new Point3D(2906, 980, -21), Map); list.Add(c); c = new ChaosShield(); c.MoveToWorld(new Point3D(2905, 978, -19), Map); c.Movable = false; list.Add(c); break; case 11: c = new FemaleStuddedChest(); c.MoveToWorld(new Point3D(2912, 976, -16), Map); c.Movable = false; c.Hue = 0x497; list.Add(c); c = new Static(0x1EA8); c.MoveToWorld(new Point3D(2913, 973, -13), Map); c.Hue = 0x497; list.Add(c); c = new Static(0x20F8); c.MoveToWorld(new Point3D(2913, 975, -11), Map); c.Hue = 0x113; list.Add(c); c = new Static(0x20E9); c.MoveToWorld(new Point3D(2912, 974, -11), Map); c.Name = "Troll"; list.Add(c); c = new Static(0x2607); c.MoveToWorld(new Point3D(2913, 974, -11), Map); list.Add(c); c = new Static(0x25F9); c.MoveToWorld(new Point3D(2912, 975, -11), Map); list.Add(c); break; case 12: c = new Static(0x1D8A); c.MoveToWorld(new Point3D(2915, 976, -13), Map); list.Add(c); c = new Static(0x1D8B); c.MoveToWorld(new Point3D(2916, 976, -13), Map); list.Add(c); c = new Static(0x234D); c.MoveToWorld(new Point3D(2915, 975, -10), Map); list.Add(c); c = new WizardsHat(); c.MoveToWorld(new Point3D(2915, 974, -13), Map); c.Movable = false; list.Add(c); break; } if (list.Count > 0) { Tiers.Add(list); } }
public WhisperingHollowChest2() : base(0xE43) { Name = "a treasure chest -60-"; Movable = true; Weight = 1000.0; TrapPower = 0; Locked = true; RequiredSkill = 60; LockLevel = 60; 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(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(25, 50); 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.10) { BaseShield shield1 = new ElvenShield(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(shield1, 3, 5, 50); } DropItem(shield1); } if (Utility.RandomDouble() < 0.10) { BaseShield shield2 = new InfantryShield(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(shield2, 3, 5, 50); } DropItem(shield2); } if (Utility.RandomDouble() < 0.10) { BaseShield shield3 = new SpiderShield(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(shield3, 3, 5, 50); } DropItem(shield3); } if (Utility.RandomDouble() < 0.10) { BaseShield shield4 = new GrassShield(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(shield4, 3, 5, 50); } DropItem(shield4); } 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 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 AITester( int i ) : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 ) { Name = "Dark Knight"; Body = 400; Hue = 1175; SetStr( 1000 ); SetDex( 150 ); SetInt( 1500 ); SetDamage( 25, 30 ); SetDamageType( ResistanceType.Physical, 100 ); SetResistance( ResistanceType.Physical, 50 ); SetResistance( ResistanceType.Fire, 50 ); SetResistance( ResistanceType.Cold, 50 ); SetResistance( ResistanceType.Poison, 50 ); SetResistance( ResistanceType.Energy, 50 ); if ( i == 0 ) { SetSkill( SkillName.EvalInt, 120.0 ); SetSkill( SkillName.Magery, 120.0 ); } else if ( i == 1 ) { SetSkill( SkillName.Necromancy, 120.0 ); SetSkill( SkillName.SpiritSpeak, 120.0 ); } else if ( i == 2 ) { SetSkill( SkillName.Bushido, 120.0 ); SetSkill( SkillName.Parry, 120.0 ); } else if ( i == 3 ) { SetSkill( SkillName.Ninjitsu, 120.0 ); SetSkill( SkillName.Hiding, 120.0 ); SetSkill( SkillName.Stealth, 120.0 ); } else if ( i == 4 ) { SetSkill( SkillName.Spellweaving, 120.0 ); } SetSkill( SkillName.Anatomy, 100.0 ); SetSkill( SkillName.MagicResist, 120.0 ); SetSkill( SkillName.Swords, 100.0 ); SetSkill( SkillName.Tactics, 100.0 ); Fame = 32000; Karma = -32000; VirtualArmor = 80; int hue = 1175; GiveItem( this, hue, new DragonHelm() ); GiveItem( this, hue, new PlateGorget() ); GiveItem( this, hue, new DragonChest() ); GiveItem( this, hue, new DragonLegs() ); GiveItem( this, hue, new DragonArms() ); GiveItem( this, hue, new DragonGloves() ); Longsword sword = new Longsword(); sword.ItemID = 9934; GiveItem( this, hue, sword ); }
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 WarriorGuard(Mobile target) : base(target) { //10OCT2007 Reorganized Guards *** START *** //Reduce stats to a normal level //InitStats(1000, 1000, 1000); InitStats((Utility.RandomMinMax(50, 75)), (Utility.RandomMinMax(50, 75)), (Utility.RandomMinMax(50, 75))); Title = "the guard"; SpeechHue = Utility.RandomDyedHue(); Hue = Utility.RandomSkinHue(); if (Female = Utility.RandomBool()) { Body = 0x191; Name = NameList.RandomName("female"); AddItem(new FemalePlateChest()); } else { Body = 0x190; Name = NameList.RandomName("male"); AddItem(new PlateChest()); AddItem(new PlateArms()); if (Utility.RandomBool()) { Utility.AssignRandomFacialHair(this, HairHue); } } AddItem(new PlateGloves()); AddItem(new PlateGorget()); AddItem(new PlateLegs()); AddItem(new Boots()); AddItem(new NorseHelm()); AddItem(new BodySash(Utility.RandomNondyedHue())); Utility.AssignRandomHair(this); switch (Utility.Random(1)) //picks one of the following { case 0: { Longsword weapon = new Longsword(); weapon.Movable = false; weapon.Crafter = this; weapon.Quality = WeaponQuality.Exceptional; AddItem(weapon); AddItem(new MetalShield()); break; } case 1: { Halberd weapon = new Halberd(); weapon.Movable = false; weapon.Crafter = this; weapon.Quality = WeaponQuality.Exceptional; AddItem(weapon); break; } } //10OCT2007 Reorganized Guards *** END *** 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.Now + TimeSpan.FromSeconds(0.5); this.Focus = target; }
public FighterPeacemaker() : base(AIType.AI_Melee, 1) { SetStr(220, 300); SetDex(40, 60); SetInt(40, 60); Item weapon; switch (Utility.Random(6)) { case 0: weapon = new Broadsword(); break; case 1: weapon = new Cutlass(); break; case 2: weapon = new Katana(); break; case 3: weapon = new Longsword(); break; case 4: weapon = new Scimitar(); break; default: weapon = new VikingSword(); break; } AddItem(weapon); AddItem(new MetalShield()); SetDamageType(ResistanceType.Physical, 100); SetSkill(SkillName.Tactics, 70.1, 95.0); SetSkill(SkillName.Swords, 70.1, 100.0); SetSkill(SkillName.Fencing, 65.1, 100.0); SetSkill(SkillName.MagicResist, 80.1, 110.0); SetSkill(SkillName.Macing, 75.1, 100.0); SetSkill(SkillName.Wrestling, 65.1, 100.0); SetSkill(SkillName.Parry, 70.1, 100.0); SetSkill(SkillName.Healing, 65.1, 75.0); SetSkill(SkillName.Anatomy, 80.1, 90.0); }
public VampireKnight() : base(AIType.AI_Stealth, FightMode.Closest, 10, 1, 0.2, 0.4) { if ( Female = Utility.RandomBool() ) { Body = 0x191; Name = NameList.RandomName( "female" ); } else { Body = 0x190; Name = NameList.RandomName( "male" ); } Hue = 1150; BaseSoundID = 0x4B0; SetStr( 100, 105 ); SetDex( 128, 131 ); SetInt( 60, 62 ); SetHits( 220, 230 ); SetDamage( 15, 22 ); SetDamageType( ResistanceType.Physical, 50 ); SetDamageType( ResistanceType.Cold, 50 ); SetResistance( ResistanceType.Physical, 44 ); SetResistance( ResistanceType.Fire, -10 ); SetResistance( ResistanceType.Cold, 35 ); SetResistance( ResistanceType.Poison, 35 ); SetResistance( ResistanceType.Energy, 35 ); SetSkill( SkillName.SpiritSpeak, 100.0 ); SetSkill( SkillName.Necromancy, 50.0 ); SetSkill( SkillName.Focus, 90.1, 100.0 ); SetSkill( SkillName.MagicResist, 100.0 ); SetSkill( SkillName.Tactics, 105.0 ); SetSkill( SkillName.Anatomy, 105.0 ); SetSkill( SkillName.Macing, 100.1, 120.0 ); SetSkill( SkillName.Fencing, 100.1, 120.0 ); SetSkill( SkillName.Parry, 100.0 ); Fame = 9000; Karma = -14000; VirtualArmor = 5; AddItem( new LeatherChest() ); AddItem( new LeatherLegs() ); AddItem( new LeatherArms() ); AddItem( new LeatherCap() ); AddItem( new LeatherGloves() ); AddItem( new LeatherGorget() ); switch ( Utility.Random( 6 )) { case 0: { Maul bozdugan = new Maul(); bozdugan.Movable = false; bozdugan.WeaponAttributes.HitLeechHits = 100; AddItem( bozdugan ); AddItem( new WoodenKiteShield() ); break; } case 1: { Mace chuk = new Mace(); chuk.Movable = false; chuk.WeaponAttributes.HitLeechHits = 100; AddItem( chuk ); AddItem( new WoodenKiteShield() ); break; } case 2: { BladedStaff bstaff = new BladedStaff(); bstaff.Movable = false; bstaff.WeaponAttributes.HitLeechHits = 100; AddItem( bstaff ); break; } case 3: { Spear kopie = new Spear(); kopie.Movable = false; kopie.WeaponAttributes.HitLeechHits = 100; AddItem( kopie ); break; } case 4: { Pike pika = new Pike(); pika.Movable = false; pika.WeaponAttributes.HitLeechHits = 100; AddItem( pika ); break; } case 5: { Longsword mech = new Longsword(); mech.Movable = false; mech.WeaponAttributes.HitLeechHits = 100; AddItem( mech ); AddItem( new WoodenKiteShield() ); break; } } Item hair = new Item( Utility.RandomList( 0x203B, 0x2049, 0x2048, 0x204A ) ); hair.Hue = Utility.RandomNondyedHue(); hair.Layer = Layer.Hair; AddItem( hair ); BaseMount horse = new SkeletalMount(); horse.Rider = this; horse.Hue = 1; horse.Team = this.Team; }
public WarriorGuard(Mobile target) : base(target) { InitStats(1000, 1000, 1000); SpeechHue = 0; Hue = Utility.RandomSkinHue(); #region Armor for (int i = 0; i < m_GuardArmor.Length; ++i) { m_GuardArmor[i].Resource = GuardTheme; AddItem(m_GuardArmor[i]); m_GuardArmor[i].Movable = false; } #endregion #region Cloth BaseClothing bC = null; switch (Utility.Random(3)) { case 0: bC = new Doublet(); break; case 1: bC = new Tunic(); break; case 2: bC = new BodySash(); bC.Layer = Layer.Earrings; break; } if (bC != null) { bC.Resource = GuardTheme; AddItem(bC); bC.Movable = false; } #endregion #region Male/Female if (Female = Utility.RandomBool()) { Body = 0x191; if (string.IsNullOrEmpty(Name)) { Name = NameList.RandomName("female"); Title = "the guard"; } FemalePlateChest ar = new FemalePlateChest(); ar.Resource = GuardTheme; AddItem(ar); ar.Movable = false; } else { Body = 0x190; if (string.IsNullOrEmpty(Name)) { Name = NameList.RandomName("male"); Title = "the guard"; } PlateChest ar = new PlateChest(); ar.Resource = GuardTheme; AddItem(ar); ar.Movable = false; } #endregion Utility.AssignRandomHair(this); if (Utility.RandomBool()) Utility.AssignRandomFacialHair(this, HairHue); #region Weapon BaseWeapon weapon; switch(Utility.Random(2)) { case 1: weapon = new Halberd(); break; case 2: weapon = new Longsword(); BaseShield shield = new OrderShield(); shield.Resource = GuardTheme; AddItem(shield); shield.Movable = false; break; default: weapon = new Halberd(); break; } weapon.Crafter = this; weapon.Resource = GuardTheme; weapon.Quality = WeaponQuality.Exceptional; weapon.Speed = 300; weapon.MinDamage = 10000; weapon.MaxDamage = 10000; AddItem(weapon); weapon.Movable = false; #endregion 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 = 125.0; Skills[SkillName.Swords].Base = 100.0; Skills[SkillName.MagicResist].Base = 120.0; Skills[SkillName.DetectHidden].Base = 100.0; //if (Utility.RandomDouble() <= 0.1) // new Horse().Rider = this; NextCombatTime = DateTime.Now + TimeSpan.FromSeconds(1.10); Focus = target; }
public override bool OnDragDrop( Mobile from, Item dropped ) { // trigger returns true if returnoverride if (XmlScript.HasTrigger(this, TriggerName.onDragDrop) && UberScriptTriggers.Trigger(this, from, TriggerName.onDragDrop, dropped)) return true; PlayerMobile player = from as PlayerMobile; if ( player != null ) { QuestSystem qs = player.Quest; if ( qs is UzeraanTurmoilQuest ) { if ( dropped is UzeraanTurmoilHorn ) { if ( player.Young ) { UzeraanTurmoilHorn horn = (UzeraanTurmoilHorn)dropped; if ( horn.Charges < 10 ) { SayTo( from, 1049384 ); // I have recharged the item for you. horn.Charges = 10; } else { SayTo( from, 1049385 ); // That doesn't need recharging yet. } } else { player.SendLocalizedMessage( 1114333 ); //You must be young to have this item recharged. } return false; } if ( dropped is SchmendrickScrollOfPower ) { QuestObjective obj = qs.FindObjective( typeof( ReturnScrollOfPowerObjective ) ); if ( obj != null && !obj.Completed ) { Container cont = GetNewContainer(); cont.DropItem( new TreasureMap( player.Young ? 0 : 1, Map.Felucca ) ); cont.DropItem( new Shovel() ); cont.DropItem( new UzeraanTurmoilHorn() ); if ( !player.PlaceInBackpack( cont ) ) { cont.Delete(); player.SendLocalizedMessage( 1046260 ); // You need to clear some space in your inventory to continue with the quest. Come back here when you have more space in your inventory. return false; } else { dropped.Delete(); obj.Complete(); return true; } } } else if ( dropped is QuestFertileDirt ) { QuestObjective obj = qs.FindObjective( typeof( ReturnFertileDirtObjective ) ); if ( obj != null && !obj.Completed ) { Container cont = GetNewContainer(); if ( player.Profession == 2 ) // magician { cont.DropItem( new BlackPearl( 20 ) ); cont.DropItem( new Bloodmoss( 20 ) ); cont.DropItem( new Garlic( 20 ) ); cont.DropItem( new Ginseng( 20 ) ); cont.DropItem( new MandrakeRoot( 20 ) ); cont.DropItem( new Nightshade( 20 ) ); cont.DropItem( new SulfurousAsh( 20 ) ); cont.DropItem( new SpidersSilk( 20 ) ); for ( int i = 0; i < 3; i++ ) cont.DropItem( Loot.RandomScroll( 0, 23, SpellbookType.Regular ) ); } else { cont.DropItem( new Gold( 300 ) ); cont.DropItem( new Bandage( 25 ) ); for ( int i = 0; i < 5; i++ ) cont.DropItem( new LesserHealPotion() ); } if ( !player.PlaceInBackpack( cont ) ) { cont.Delete(); player.SendLocalizedMessage( 1046260 ); // You need to clear some space in your inventory to continue with the quest. Come back here when you have more space in your inventory. return false; } else { dropped.Delete(); obj.Complete(); return true; } } } else if ( dropped is QuestDaemonBlood ) { QuestObjective obj = qs.FindObjective( typeof( ReturnDaemonBloodObjective ) ); if ( obj != null && !obj.Completed ) { Item reward; if ( player.Profession == 2 ) // magician { Container cont = GetNewContainer(); cont.DropItem( new ExplosionScroll( 4 ) ); cont.DropItem( new MagicWizardsHat() ); reward = cont; } else { BaseWeapon weapon; switch ( Utility.Random( 6 ) ) { case 0: weapon = new Broadsword(); break; case 1: weapon = new Cutlass(); break; case 2: weapon = new Katana(); break; case 3: weapon = new Longsword(); break; case 4: weapon = new Scimitar(); break; default: weapon = new VikingSword(); break; } int damageLevel = BaseCreature.RandomMinMaxScaled(2, 4); if (PseudoSeerStone.Instance != null && PseudoSeerStone.Instance._HighestDamageLevelSpawn < damageLevel) { damageLevel = PseudoSeerStone.Instance._HighestDamageLevelSpawn; } weapon.DamageLevel = (WeaponDamageLevel)damageLevel; weapon.AccuracyLevel = (WeaponAccuracyLevel)BaseCreature.RandomMinMaxScaled( 2, 4 ); weapon.DurabilityLevel = (WeaponDurabilityLevel)BaseCreature.RandomMinMaxScaled( 2, 4 ); weapon.Slayer = SlayerName.Silver; reward = weapon; } if ( !player.PlaceInBackpack( reward ) ) { reward.Delete(); player.SendLocalizedMessage( 1046260 ); // You need to clear some space in your inventory to continue with the quest. Come back here when you have more space in your inventory. return false; } else { dropped.Delete(); obj.Complete(); return true; } } } else if ( dropped is QuestDaemonBone ) { QuestObjective obj = qs.FindObjective( typeof( ReturnDaemonBoneObjective ) ); if ( obj != null && !obj.Completed ) { Container cont = GetNewContainer(); cont.DropItem( new BankCheck( 2000 ) ); cont.DropItem( new EnchantedSextant() ); if ( !player.PlaceInBackpack( cont ) ) { cont.Delete(); player.SendLocalizedMessage( 1046260 ); // You need to clear some space in your inventory to continue with the quest. Come back here when you have more space in your inventory. return false; } else { dropped.Delete(); obj.Complete(); return true; } } } } } return base.OnDragDrop( from, dropped ); }
public override void OnResponse(Mobile from, string text) { if (text == null) return; int index = 0; if (int.TryParse(text, out index)) { if (index < 1 || index > 2) { from.SendMessage("Invalid code."); return; } if (index == 1) { Longsword weapon = new Longsword(); weapon.NewCrafting = true; weapon.QualityDamage = m_Hilt.Damage + m_Blade.Damage; weapon.QualitySpeed = m_Hilt.Speed + m_Blade.Speed; weapon.QualityAccuracy = m_Hilt.Attack + m_Blade.Attack; weapon.QualityDefense = m_Hilt.Defense + m_Blade.Defense; weapon.Resource = m_Blade.Resource; int quality = (int)(m_Blade.Durability * 0.8 + m_Hilt.Durability * 0.2); weapon.MaxHitPoints = quality; weapon.HitPoints = quality; weapon.Crafter = from; weapon.CraftersOriginalName = from.Name; quality = (int)(m_Blade.Quality * 0.8 + m_Hilt.Quality * 0.2); if (quality == 500) weapon.Quality = WeaponQuality.Legendary; if (quality < 500) weapon.Quality = WeaponQuality.Masterwork; if (quality < 450) weapon.Quality = WeaponQuality.Illustrious; if (quality < 400) weapon.Quality = WeaponQuality.Extraordinary; if (quality < 350) weapon.Quality = WeaponQuality.Remarkable; if (quality < 300) weapon.Quality = WeaponQuality.Exceptional; if (quality < 250) weapon.Quality = WeaponQuality.Superior; if (quality < 200) weapon.Quality = WeaponQuality.Regular; if (quality < 150) weapon.Quality = WeaponQuality.Inferior; if (quality < 100) weapon.Quality = WeaponQuality.Low; if (quality < 50) weapon.Quality = WeaponQuality.Poor; weapon.BetaNerf = true; weapon.InvalidateProperties(); from.AddToBackpack(weapon); weapon.AddItem(m_Blade); weapon.AddItem(m_Hilt); } else if (index == 2) { TyreanBroadsword weapon = new TyreanBroadsword(); weapon.NewCrafting = true; weapon.QualityDamage = m_Hilt.Damage + m_Blade.Damage; weapon.QualitySpeed = m_Hilt.Speed + m_Blade.Speed; weapon.QualityAccuracy = m_Hilt.Attack + m_Blade.Attack; weapon.QualityDefense = m_Hilt.Defense + m_Blade.Defense; weapon.Resource = m_Blade.Resource; int quality = (int)(m_Blade.Durability * 0.8 + m_Hilt.Durability * 0.2); weapon.MaxHitPoints = quality; weapon.HitPoints = quality; weapon.Crafter = from; weapon.CraftersOriginalName = from.Name; quality = (int)(m_Blade.Quality * 0.8 + m_Hilt.Quality * 0.2); if (quality == 500) weapon.Quality = WeaponQuality.Legendary; if (quality < 500) weapon.Quality = WeaponQuality.Masterwork; if (quality < 450) weapon.Quality = WeaponQuality.Illustrious; if (quality < 400) weapon.Quality = WeaponQuality.Extraordinary; if (quality < 350) weapon.Quality = WeaponQuality.Remarkable; if (quality < 300) weapon.Quality = WeaponQuality.Exceptional; if (quality < 250) weapon.Quality = WeaponQuality.Superior; if (quality < 200) weapon.Quality = WeaponQuality.Regular; if (quality < 150) weapon.Quality = WeaponQuality.Inferior; if (quality < 100) weapon.Quality = WeaponQuality.Low; if (quality < 50) weapon.Quality = WeaponQuality.Poor; weapon.BetaNerf = true; weapon.InvalidateProperties(); from.AddToBackpack(weapon); weapon.AddItem(m_Blade); weapon.AddItem(m_Hilt); } } }
protected override void OnTarget(Mobile from, object targeted) { if (!(targeted is BaseAttackPiece)) return; m_Blade = targeted as BaseAttackPiece; if (m_Blade is ShortBlade) { Dagger weapon = new Dagger(); weapon.NewCrafting = true; weapon.QualityDamage = m_Hilt.Damage + m_Blade.Damage; weapon.QualitySpeed = m_Hilt.Speed + m_Blade.Speed; weapon.QualityAccuracy = m_Hilt.Attack + m_Blade.Attack; weapon.QualityDefense = m_Hilt.Defense + m_Blade.Defense; weapon.Resource = m_Blade.Resource; int quality = (int)(m_Blade.Durability * 0.6 + m_Hilt.Durability * 0.4); weapon.MaxHitPoints = quality; weapon.HitPoints = quality; weapon.Crafter = from; weapon.CraftersOriginalName = from.Name; quality = (int)(m_Blade.Quality * 0.6 + m_Hilt.Quality * 0.4); if (quality == 500) weapon.Quality = WeaponQuality.Legendary; if (quality < 500) weapon.Quality = WeaponQuality.Masterwork; if (quality < 450) weapon.Quality = WeaponQuality.Illustrious; if (quality < 400) weapon.Quality = WeaponQuality.Extraordinary; if (quality < 350) weapon.Quality = WeaponQuality.Remarkable; if (quality < 300) weapon.Quality = WeaponQuality.Exceptional; if (quality < 250) weapon.Quality = WeaponQuality.Superior; if (quality < 200) weapon.Quality = WeaponQuality.Regular; if (quality < 150) weapon.Quality = WeaponQuality.Inferior; if (quality < 100) weapon.Quality = WeaponQuality.Low; if (quality < 50) weapon.Quality = WeaponQuality.Poor; weapon.BetaNerf = true; weapon.InvalidateProperties(); from.AddToBackpack(weapon); weapon.AddItem(m_Blade); weapon.AddItem(m_Hilt); } if (m_Blade is CurvedBlade && ((PlayerMobile)from).Nation == Nation.Khemetar) from.Prompt = new SCrucHCurvedBladePrompt(from, m_Hilt, (CurvedBlade)m_Blade); if (m_Blade is MediumBlade) { if (((PlayerMobile)from).Nation == Nation.Vhalurian) from.Prompt = new SCrucHMediumBladePrompt(from, m_Hilt, (MediumBlade)m_Blade); else { Shortsword weapon = new Shortsword(); weapon.NewCrafting = true; weapon.QualityDamage = m_Hilt.Damage + m_Blade.Damage; weapon.QualitySpeed = m_Hilt.Speed + m_Blade.Speed; weapon.QualityAccuracy = m_Hilt.Attack + m_Blade.Attack; weapon.QualityDefense = m_Hilt.Defense + m_Blade.Defense; weapon.Resource = m_Blade.Resource; int quality = (int)(m_Blade.Durability * 0.65 + m_Hilt.Durability * 0.35); weapon.MaxHitPoints = quality; weapon.HitPoints = quality; weapon.Crafter = from; weapon.CraftersOriginalName = from.Name; quality = (int)(m_Blade.Quality * 0.65 + m_Hilt.Quality * 0.35); if (quality == 500) weapon.Quality = WeaponQuality.Legendary; if (quality < 500) weapon.Quality = WeaponQuality.Masterwork; if (quality < 450) weapon.Quality = WeaponQuality.Illustrious; if (quality < 400) weapon.Quality = WeaponQuality.Extraordinary; if (quality < 350) weapon.Quality = WeaponQuality.Remarkable; if (quality < 300) weapon.Quality = WeaponQuality.Exceptional; if (quality < 250) weapon.Quality = WeaponQuality.Superior; if (quality < 200) weapon.Quality = WeaponQuality.Regular; if (quality < 150) weapon.Quality = WeaponQuality.Inferior; if (quality < 100) weapon.Quality = WeaponQuality.Low; if (quality < 50) weapon.Quality = WeaponQuality.Poor; weapon.BetaNerf = true; weapon.InvalidateProperties(); from.AddToBackpack(weapon); weapon.AddItem(m_Blade); weapon.AddItem(m_Hilt); } } if (m_Blade is LongBlade) { if (((PlayerMobile)from).Nation == Nation.Tyrean) from.Prompt = new SCrucHLongBladePrompt(from, m_Hilt, (LongBlade)m_Blade); else { Longsword weapon = new Longsword(); weapon.NewCrafting = true; weapon.QualityDamage = m_Hilt.Damage + m_Blade.Damage; weapon.QualitySpeed = m_Hilt.Speed + m_Blade.Speed; weapon.QualityAccuracy = m_Hilt.Attack + m_Blade.Attack; weapon.QualityDefense = m_Hilt.Defense + m_Blade.Defense; weapon.Resource = m_Blade.Resource; int quality = (int)(m_Blade.Durability * 0.8 + m_Hilt.Durability * 0.2); weapon.MaxHitPoints = quality; weapon.HitPoints = quality; weapon.Crafter = from; weapon.CraftersOriginalName = from.Name; quality = (int)(m_Blade.Quality * 0.8 + m_Hilt.Quality * 0.2); if (quality == 500) weapon.Quality = WeaponQuality.Legendary; if (quality < 500) weapon.Quality = WeaponQuality.Masterwork; if (quality < 450) weapon.Quality = WeaponQuality.Illustrious; if (quality < 400) weapon.Quality = WeaponQuality.Extraordinary; if (quality < 350) weapon.Quality = WeaponQuality.Remarkable; if (quality < 300) weapon.Quality = WeaponQuality.Exceptional; if (quality < 250) weapon.Quality = WeaponQuality.Superior; if (quality < 200) weapon.Quality = WeaponQuality.Regular; if (quality < 150) weapon.Quality = WeaponQuality.Inferior; if (quality < 100) weapon.Quality = WeaponQuality.Low; if (quality < 50) weapon.Quality = WeaponQuality.Poor; weapon.BetaNerf = true; weapon.InvalidateProperties(); from.AddToBackpack(weapon); weapon.AddItem(m_Blade); weapon.AddItem(m_Hilt); } } }
public HeadlessHorseman() : base( AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4 ) { Name = "The Headless Horseman"; Body = 185; BaseSoundID = 0x47F; Hue = 0x4001; SetStr( 430, 500 ); SetDex( 90, 120 ); SetInt( 700, 800 ); SetHits( 5000, 10000 ); SetMana( 5000 ); SetDamage( 20, 35 ); SetDamageType( ResistanceType.Physical, 75 ); SetDamageType( ResistanceType.Fire, 25 ); SetResistance( ResistanceType.Physical, 40, 60 ); SetResistance( ResistanceType.Fire, 60, 80 ); SetResistance( ResistanceType.Cold, 40, 60 ); SetResistance( ResistanceType.Poison, 40, 60 ); SetResistance( ResistanceType.Energy, 40, 65 ); SetSkill( SkillName.Anatomy, 120.0 ); SetSkill( SkillName.EvalInt, 100.0 ); SetSkill( SkillName.Magery, 100.0 ); SetSkill( SkillName.Meditation, 120.0 ); SetSkill( SkillName.MagicResist, 100.0 ); SetSkill( SkillName.Tactics, 120.0 ); SetSkill( SkillName.Swords, 120.0 ); Fame = 30000; Karma = -30000; VirtualArmor = 60; PlateChest chest = new PlateChest(); chest.Hue = 1345; chest.Movable = false; AddItem( chest ); PlateArms arms = new PlateArms(); arms.Hue = 1345; arms.Movable = false; AddItem( arms ); PlateGloves gloves = new PlateGloves(); gloves.Hue = 1345; gloves.Movable = false; AddItem( gloves ); PlateGorget gorget = new PlateGorget(); gorget.Hue = 1345; gorget.Movable = false; AddItem( gorget ); PlateLegs legs = new PlateLegs(); legs.Hue = 1345; legs.Movable = false; AddItem( legs ); Cloak cloak = new Cloak(); cloak.Hue = 1175; cloak.Movable = false; AddItem( cloak ); Longsword weapon = new Longsword(); weapon.Hue = 1175; weapon.Movable = false; AddItem( weapon ); Lantern lantern = new Lantern(); lantern.Movable = false; lantern.Ignite(); AddItem( lantern ); ThighBoots boots = new ThighBoots(); boots.Movable = false; AddItem( boots ); new Nightmare().Rider = this; }
public static void EquipSociety(Armament a, Mobile m) { if (a == Armament.LightCavalry) a = (Armament)1; else if (a == Armament.HeavyCavalry) a = (Armament)3; switch (a) { case Armament.Light: { LeatherChest chest = new LeatherChest(); chest.Resource = CraftResource.BeastLeather; chest.Hue = 2830; LeatherArms arms = new LeatherArms(); arms.Resource = CraftResource.BeastLeather; arms.Hue = 2830; LeatherLegs legs = new LeatherLegs(); legs.Resource = CraftResource.BeastLeather; legs.Hue = 2830; LeatherGorget gorget = new LeatherGorget(); gorget.Resource = CraftResource.BeastLeather; gorget.Hue = 2830; LeatherGloves gloves = new LeatherGloves(); gloves.Resource = CraftResource.BeastLeather; gloves.Hue = 2830; ThighBoots boots = new ThighBoots(); boots.Resource = CraftResource.BeastLeather; boots.Hue = 2830; m.EquipItem(chest); m.EquipItem(arms); m.EquipItem(legs); m.EquipItem(gorget); m.EquipItem(gloves); m.EquipItem(boots); Shortsword ss = new Shortsword(); ss.Resource = CraftResource.Bronze; m.EquipItem(ss); VhalurianMetalKiteShield shield = new VhalurianMetalKiteShield(); shield.Resource = CraftResource.Bronze; shield.Name = "Society of Rymaliel Kite Shield"; shield.Hue = 2413; shield.ItemID = 15726; m.EquipItem(shield); break; } case Armament.Medium: { ChainChest chest = new ChainChest(); chest.Resource = CraftResource.Bronze; chest.Hue = 2830; ChainArms arms = new ChainArms(); arms.Resource = CraftResource.Bronze; arms.Hue = 2830; ChainLegs legs = new ChainLegs(); legs.Resource = CraftResource.Bronze; legs.Hue = 2830; ChainGorget gorget = new ChainGorget(); gorget.Resource = CraftResource.Bronze; gorget.Hue = 2830; ChainGloves gloves = new ChainGloves(); gloves.Resource = CraftResource.Bronze; gloves.Hue = 2830; VhalurianMetalKiteShield shield = new VhalurianMetalKiteShield(); shield.Resource = CraftResource.Bronze; shield.Name = "Society of Rymaliel Kite Shield"; shield.Hue = 2413; shield.ItemID = 15726; m.EquipItem(shield); FlangedMace fm = new FlangedMace(); fm.Resource = CraftResource.Bronze; m.EquipItem(fm); ThighBoots boots = new ThighBoots(); boots.Resource = CraftResource.BeastLeather; boots.Hue = 2989; m.EquipItem(chest); m.EquipItem(arms); m.EquipItem(legs); m.EquipItem(gorget); m.EquipItem(gloves); m.EquipItem(shield); m.EquipItem(fm); m.EquipItem(boots); break; } case Armament.Heavy: { PlateChest chest = new PlateChest(); chest.Resource = CraftResource.Bronze; chest.Hue = 2830; PlateArms arms = new PlateArms(); arms.Resource = CraftResource.Bronze; arms.Hue = 2830; PlateLegs legs = new PlateLegs(); legs.Resource = CraftResource.Bronze; legs.Hue = 2830; PlateGorget gorget = new PlateGorget(); gorget.Resource = CraftResource.Bronze; gorget.Hue = 2830; PlateGloves gloves = new PlateGloves(); gloves.Resource = CraftResource.Bronze; gloves.Hue = 2830; CloseHelm helm = new CloseHelm(); helm.Resource = CraftResource.Bronze; helm.Hue = 2830; VhalurianMetalKiteShield shield = new VhalurianMetalKiteShield(); shield.Resource = CraftResource.Bronze; shield.Name = "Society of Rymaliel Kite Shield"; shield.Hue = 2413; shield.ItemID = 15726; m.EquipItem(shield); Longsword sword = new Longsword(); sword.Resource = CraftResource.Iron; m.EquipItem(chest); m.EquipItem(arms); m.EquipItem(legs); m.EquipItem(gorget); m.EquipItem(gloves); m.EquipItem(shield); m.EquipItem(helm); m.EquipItem(sword); m.EquipItem(new ElegantCloak(2751)); break; } case Armament.Ranged: { LeatherChest chest = new LeatherChest(); chest.Resource = CraftResource.BeastLeather; chest.Hue = 2830; LongPants legs = new LongPants(); legs.Resource = CraftResource.Wool; legs.Hue = 2830; LeatherGorget gorget = new LeatherGorget(); gorget.Resource = CraftResource.BeastLeather; gorget.Hue = 2830; LeatherGloves gloves = new LeatherGloves(); gloves.Resource = CraftResource.BeastLeather; gloves.Hue = 2830; ThighBoots boots = new ThighBoots(); boots.Resource = CraftResource.BeastLeather; boots.Hue = 2830; WingedHelm helm = new WingedHelm(); helm.Resource = CraftResource.Copper; CompositeBow bow = new CompositeBow(); bow.Resource = CraftResource.Ash; m.EquipItem(chest); m.EquipItem(legs); m.EquipItem(gorget); m.EquipItem(gloves); m.EquipItem(boots); m.EquipItem(helm); m.EquipItem(bow); if (m is BaseCreature) { BaseCreature bc = m as BaseCreature; bc.AI = AIType.AI_Archer; bc.PackItem(new Arrow(Utility.RandomMinMax(10, 20))); } break; } } Surcoat coat = new Surcoat(); coat.ItemID = 15483; coat.Name = "A Surcoat of the Society of Rymaliel"; m.EquipItem(coat); }
public TownChestWeaponsmith() : base(0xE43) { Name = "a metal chest -20-"; Movable = true; Weight = 1000.0; Hue = 83; TrapPower = 0; Locked = true; RequiredSkill = 20; LockLevel = 20; MaxLockLevel = 25; // Gold if (Utility.RandomDouble() < 0.25) { DropItem(new Gold(Utility.Random(1, 50))); } // Supplies if (Utility.RandomDouble() < 0.10) { DropItem(new Axe()); } if (Utility.RandomDouble() < 0.05) { DropItem(new DoubleAxe()); } if (Utility.RandomDouble() < 0.10) { DropItem(new LargeBattleAxe()); } if (Utility.RandomDouble() < 0.10) { DropItem(new Mace()); } if (Utility.RandomDouble() < 0.10) { DropItem(new Maul()); } if (Utility.RandomDouble() < 0.10) { DropItem(new WarMace()); } if (Utility.RandomDouble() < 0.10) { DropItem(new ShortSpear()); } if (Utility.RandomDouble() < 0.10) { DropItem(new Spear()); } if (Utility.RandomDouble() < 0.10) { DropItem(new Longsword()); } if (Utility.RandomDouble() < 0.10) { DropItem(new Scimitar()); } if (Utility.RandomDouble() < 0.10) { DropItem(new Arrow(Utility.Random(25, 30))); } /////////////////////////////////////// Rare Items 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, 5, 15, 20); DropItem(weapon); } }