private void InitContents( BarrelType type ) { Item item = null; byte count = (byte)Utility.RandomMinMax( 10, 30 ); for( byte i = 0; i < count; i++ ) { switch( type ) { default: case BarrelType.Arrows: item = new Arrow( Utility.RandomMinMax( 2, 6 ) ); break; case BarrelType.Bolts: item = new Bolt( Utility.RandomMinMax( 2, 6 ) ); break; case BarrelType.Farming: { if( i > 3 ) return; switch( Utility.Random( 3 ) ) { case 0: item = new Shovel(); break; case 1: item = new Scythe(); break; case 2: item = new Pitchfork(); break; } break; } case BarrelType.LargeMining: { if( i > 5 ) return; switch( Utility.Random( 5 ) ) { case 0: item = new Pitchfork(); break; case 1: case 2: item = new Shovel(); break; case 3: case 4: item = new Pickaxe(); break; } break; } case BarrelType.LargeWeapon1: case BarrelType.LargeWeapon2: case BarrelType.LargeWeapon3: { if( i > 6 ) return; switch( Utility.Random( 6 ) ) { case 0: item = new Spear(); break; case 1: item = new Halberd(); break; case 2: item = new Axe(); break; case 3: item = new ThinLongsword(); break; case 4: item = new WarAxe(); break; case 5: item = new VikingSword(); break; } break; } case BarrelType.Mining: { if( i > 3 ) return; item = new Pickaxe(); break; } case BarrelType.Spears: { if( i > 4 ) return; item = new Spear(); break; } case BarrelType.Weapons: { if( i > 3 ) return; switch( Utility.Random( 3 ) ) { case 0: item = new WarAxe(); break; case 1: item = new WarMace(); break; case 2: item = new Maul(); break; } break; } } if( item != null ) DropItem( item ); } }
public KhaldunRevenant(Mobile target) : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.18, 0.36) { Name = "a revenant"; Body = 0x3CA; Hue = 0x41CE; m_Target = target; m_ExpireTime = DateTime.UtcNow + TimeSpan.FromMinutes(10.0); SetStr(100); SetDex(50); SetInt(25); SetHits(500); SetDamage(20, 30); SetSkill(SkillName.Swords, 120); SetSkill(SkillName.Tactics, 100); SetSkill(SkillName.MagicResist, 125); VirtualArmor = 25; Fame = 0; Karma = 0; Halberd weapon = new Halberd(); weapon.Hue = 0x41CE; weapon.Movable = false; AddItem(weapon); }
public override void GenerateLoot() { AddLoot(LootPack.Rich); if (Utility.RandomDouble() < 0.15) { BaseWeapon weapon = new Halberd(); if (Core.AOS) { BaseRunicTool.ApplyAttributesTo(weapon, 5, 35, 50); } PackItem(weapon); } if (0.45 > Utility.RandomDouble()) { switch (Utility.Random(5)) { case 0: PackItem(new AmazonianFighterHelmet()); break; case 1: PackItem(new AmazonianFighterBustier()); break; case 2: PackItem(new AmazonianFighterGloves()); break; case 3: PackItem(new AmazonianFighterBelt()); break; case 4: PackItem(new AmazonianFighterBoots()); break; } } }
public Revenant(Mobile caster, Mobile target, TimeSpan duration) : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.18, 0.36) { Name = "a revenant"; Body = 400; Hue = 1; // TODO: Sound values? var scalar = caster.Skills[SkillName.SpiritSpeak].Value * 0.01; m_Target = target; m_ExpireTime = DateTime.UtcNow + duration; SetStr(200); SetDex(150); SetInt(150); SetDamage(16, 17); // Bestiary says 50 phys 50 cold, animal lore says differently SetDamageType(ResistanceType.Physical, 100); SetSkill(SkillName.MagicResist, 100.0 * scalar); // magic resist is absolute value of spiritspeak SetSkill(SkillName.Tactics, 100.0); // always 100 SetSkill(SkillName.Swords, 100.0 * scalar); // not displayed in animal lore but tests clearly show this is influenced SetSkill(SkillName.DetectHidden, 75.0 * scalar); scalar /= 1.2; SetResistance(ResistanceType.Physical, 40 + (int)(20 * scalar), 50 + (int)(20 * scalar)); SetResistance(ResistanceType.Cold, 40 + (int)(20 * scalar), 50 + (int)(20 * scalar)); SetResistance(ResistanceType.Fire, (int)(20 * scalar)); SetResistance(ResistanceType.Poison, 100); SetResistance(ResistanceType.Energy, 40 + (int)(20 * scalar), 50 + (int)(20 * scalar)); Fame = 0; Karma = 0; ControlSlots = 3; VirtualArmor = 32; Item shroud = new DeathShroud(); shroud.Hue = 0x455; shroud.Movable = false; AddItem(shroud); var weapon = new Halberd(); weapon.Hue = 1; weapon.Movable = false; AddItem(weapon); }
private void ItemUpdater() { var mainItems = localHero.Inventory?.MainItems; if (mainItems == null) { return; } foreach (var item in mainItems) { if (IsBlink(item)) { Blink = new Blink(item); } if (IsOrchid(item)) { Orchid = new Orchid(item); } if (IsSpiritVessel(item)) { SpiritVessel = new SpiritVessel(item); } if (VeilOfDiscord == null && item.Id == AbilityId.item_veil_of_discord) { VeilOfDiscord = new VeilOfDiscord(item); } if (Shivas == null && item.Id == AbilityId.item_shivas_guard) { Shivas = new Shivas(item); } if (Hex == null && item.Id == AbilityId.item_sheepstick) { Hex = new Hex(item); } if (Abyssal == null && item.Id == AbilityId.item_abyssal_blade) { Abyssal = new Abyssal(item); } if (Halberd == null && item.Id == AbilityId.item_heavens_halberd) { Halberd = new Halberd(item); } } }
public override void InitWeapon() { Halberd weapon = new Halberd(); weapon.Movable = false; weapon.LootType = LootType.Newbied; weapon.Quality = CraftQuality.Exceptional; AddItem(weapon); }
public virtual void InitWeapon() { Halberd weapon = new Halberd(); weapon.Movable = false; weapon.LootType = LootType.Newbied; weapon.Quality = CraftQuality.Exceptional; weapon.MinDamage = 100; weapon.MaxDamage = 500; weapon.Speed = 100; AddItem(weapon); }
public Revenant(Mobile caster, Mobile target, TimeSpan duration) : base(AIType.AI_Melee, FightMode.All | FightMode.Closest, 10, 1, 0.2, 0.4) { Name = "a revenant"; Body = 400; Hue = 1; BardImmune = true; // TODO: Sound values? double scalar = caster.Skills[SkillName.SpiritSpeak].Value * 0.01; m_Target = target; m_ExpireTime = DateTime.Now + duration; SetStr(200); SetDex(150); SetInt(150); SetDamage(16, 17); SetSkill(SkillName.MagicResist, 100.0 * scalar); // magic resist is absolute value of spiritspeak SetSkill(SkillName.Tactics, 100.0); // always 100 SetSkill(SkillName.Swords, 100.0 * scalar); // not displayed in animal lore but tests clearly show this is influenced SetSkill(SkillName.DetectHidden, 75.0 * scalar); scalar /= 1.2; Fame = 0; Karma = 0; ControlSlots = 3; VirtualArmor = 32; Item shroud = new DeathShroud(); shroud.Hue = 0x455; shroud.Movable = false; AddItem(shroud); Halberd weapon = new Halberd(); weapon.Hue = 1; weapon.Movable = false; AddItem(weapon); }
public KhaldunRevenant(Mobile target) : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.18, 0.36) { Name = "a revenant"; Body = 0x3CA; Hue = 0x41CE; m_Target = target; m_ExpireTime = DateTime.Now + TimeSpan.FromMinutes(10.0); SetStr(401, 500); SetDex(296, 315); SetInt(101, 200); SetHits(241, 300); SetStam(242, 280); SetDamage(20, 30); SetDamageType(ResistanceType.Physical, 50); SetDamageType(ResistanceType.Cold, 50); SetSkill(SkillName.MagicResist, 100.1, 150.0); SetSkill(SkillName.Tactics, 90.1, 100.0); SetSkill(SkillName.Swords, 140.1, 150.0); SetSkill(SkillName.Wrestling, 90.1, 100.0); SetResistance(ResistanceType.Physical, 55, 65); SetResistance(ResistanceType.Fire, 30, 40); SetResistance(ResistanceType.Cold, 60, 70); SetResistance(ResistanceType.Poison, 20, 30); SetResistance(ResistanceType.Energy, 20, 30); Fame = 0; Karma = 0; VirtualArmor = 60; BardImmune = true; Halberd weapon = new Halberd(); weapon.Hue = 0x41CE; weapon.Movable = false; AddItem(weapon); }
public GoblinBountyHunter() { Title = "the goblin bounty hunter"; Body = 0x190; Name = NameList.RandomName("male"); AddItem(new PlateChest()); AddItem(new PlateArms()); AddItem(new PlateLegs()); AddItem(new BodySash(Utility.RandomYellowHue())); //DropItem(Robe()); Utility.AssignRandomHair(this); if (Utility.RandomBool()) Utility.AssignRandomFacialHair(this, HairHue); Halberd weapon = new Halberd(); weapon.Movable = false; weapon.Crafter = this; weapon.Quality = WeaponQuality.Exceptional; AddItem(weapon); Container pack = new Backpack(); pack.Movable = false; pack.DropItem(new Factions.Silver(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; SetSkill(SkillName.Camping, 80.0, 100.0); SetSkill(SkillName.Forensics, 80.0, 100.0); SetSkill(SkillName.SpiritSpeak, 80.0, 100.0); }
public override void Action(CharacterBase character, SceneBattle battle) { if (character.waittime == 3) { this.sound.PlaySE(SoundEffect.sword); } character.animationpoint = CharacterAnimation.SworsAnimation(character.waittime); if (character.waittime >= 30) { base.Action(character, battle); } if (character.waittime != 10) { return; } Halberd halberd = new Halberd(this.sound, character.parent, character.position.X + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 3, this.element, false); halberd.BadStatusSet(CharacterBase.BADSTATUS.poison, 1200); character.parent.attacks.Add(this.Paralyze(halberd, character)); }
public JailSlaveDriver() : base(AIType.AI_Melee, FightMode.Aggressor, 10, 1, 0.15, 0.9) { Body = 0x190; AddItem(new PlateChest()); AddItem(new PlateArms()); AddItem(new PlateGloves()); AddItem(new PlateLegs()); Hue = Utility.RandomSkinHue(); Name = NameList.RandomName("male"); Title = "the Jail Guard"; SetStr(70, 100); SetDex(55, 90); SetInt(25, 35); SetDamage(11, 25); SetHits(90, 125); Halberd weapon = new Halberd(); weapon.Movable = false; AddItem(weapon); SetDamageType(ResistanceType.Physical, 100); SetResistance(ResistanceType.Physical, 30, 45); SetResistance(ResistanceType.Fire, 20, 30); SetResistance(ResistanceType.Cold, 20, 30); SetResistance(ResistanceType.Poison, 5, 20); SetResistance(ResistanceType.Energy, 5, 20); SetSkill(SkillName.Anatomy, 90.0); SetSkill(SkillName.MagicResist, 100.0); SetSkill(SkillName.Fencing, 80.0); SetSkill(SkillName.Tactics, 90.0); m_NextSpeakTime = DateTime.Now + (TimeSpan.FromSeconds(6)); Fame = 1000; Karma = -1000; }
public InternalSellInfo() { Add(typeof(Dagger), Dagger.GetSBSellValue()); Add(typeof(Kryss), Kryss.GetSBSellValue()); Add(typeof(WarFork), WarFork.GetSBSellValue()); Add(typeof(ShortSpear), ShortSpear.GetSBSellValue()); Add(typeof(Pitchfork), Pitchfork.GetSBSellValue()); Add(typeof(Spear), Spear.GetSBSellValue()); Add(typeof(HammerPick), HammerPick.GetSBSellValue()); Add(typeof(WarAxe), WarAxe.GetSBSellValue()); Add(typeof(Mace), Mace.GetSBSellValue()); Add(typeof(Maul), Maul.GetSBSellValue()); Add(typeof(WarHammer), WarHammer.GetSBSellValue()); Add(typeof(WarMace), WarMace.GetSBSellValue()); Add(typeof(ButcherKnife), ButcherKnife.GetSBSellValue()); Add(typeof(SkinningKnife), SkinningKnife.GetSBSellValue()); Add(typeof(Cleaver), Cleaver.GetSBSellValue()); Add(typeof(Cutlass), Cutlass.GetSBSellValue()); Add(typeof(Katana), Katana.GetSBSellValue()); Add(typeof(Scimitar), Scimitar.GetSBSellValue()); Add(typeof(Broadsword), Broadsword.GetSBSellValue()); Add(typeof(Longsword), Longsword.GetSBSellValue()); Add(typeof(VikingSword), VikingSword.GetSBSellValue()); Add(typeof(Axe), Axe.GetSBSellValue()); Add(typeof(BattleAxe), BattleAxe.GetSBSellValue()); Add(typeof(DoubleAxe), DoubleAxe.GetSBSellValue()); Add(typeof(ExecutionersAxe), ExecutionersAxe.GetSBSellValue()); Add(typeof(LargeBattleAxe), LargeBattleAxe.GetSBSellValue()); Add(typeof(TwoHandedAxe), TwoHandedAxe.GetSBSellValue()); Add(typeof(Bardiche), Bardiche.GetSBSellValue()); Add(typeof(Halberd), Halberd.GetSBSellValue()); Add(typeof(Bow), Bow.GetSBSellValue()); Add(typeof(Crossbow), Crossbow.GetSBSellValue()); Add(typeof(HeavyCrossbow), HeavyCrossbow.GetSBSellValue()); }
public InternalBuyInfo() { Add(new GenericBuyInfo("Dagger", typeof(Dagger), Dagger.GetSBPurchaseValue(), 25, 0xF52, 0)); Add(new GenericBuyInfo("Kryss", typeof(Kryss), Kryss.GetSBPurchaseValue(), 25, 0x1401, 0)); Add(new GenericBuyInfo("War Fork", typeof(WarFork), WarFork.GetSBPurchaseValue(), 25, 0x1405, 0)); Add(new GenericBuyInfo("Short Spear", typeof(ShortSpear), ShortSpear.GetSBPurchaseValue(), 25, 0x1403, 0)); Add(new GenericBuyInfo("Pitchfork", typeof(Pitchfork), Pitchfork.GetSBPurchaseValue(), 25, 0xE87, 0)); Add(new GenericBuyInfo("Spear", typeof(Spear), Spear.GetSBPurchaseValue(), 25, 0xF62, 0)); Add(new GenericBuyInfo("Hammer Pick", typeof(HammerPick), HammerPick.GetSBPurchaseValue(), 25, 0x143D, 0)); Add(new GenericBuyInfo("War Axe", typeof(WarAxe), WarAxe.GetSBPurchaseValue(), 25, 0x13B0, 0)); Add(new GenericBuyInfo("Mace", typeof(Mace), Mace.GetSBPurchaseValue(), 25, 0xF5C, 0)); Add(new GenericBuyInfo("Maul", typeof(Maul), Maul.GetSBPurchaseValue(), 25, 0x143B, 0)); Add(new GenericBuyInfo("WarHammer", typeof(WarHammer), WarHammer.GetSBPurchaseValue(), 25, 0x1439, 0)); Add(new GenericBuyInfo("War Mace", typeof(WarMace), WarMace.GetSBPurchaseValue(), 25, 0x1407, 0)); Add(new GenericBuyInfo("Butcher Knife", typeof(ButcherKnife), ButcherKnife.GetSBPurchaseValue(), 25, 0x13F6, 0)); Add(new GenericBuyInfo("Skinning Knife", typeof(SkinningKnife), SkinningKnife.GetSBPurchaseValue(), 25, 0xEC4, 0)); Add(new GenericBuyInfo("Cleaver", typeof(Cleaver), Cleaver.GetSBPurchaseValue(), 25, 0xEC3, 0)); Add(new GenericBuyInfo("Cutlass", typeof(Cutlass), Cutlass.GetSBPurchaseValue(), 25, 0x1441, 0)); Add(new GenericBuyInfo("Katana", typeof(Katana), Katana.GetSBPurchaseValue(), 25, 0x13FF, 0)); Add(new GenericBuyInfo("Scimitar", typeof(Scimitar), Scimitar.GetSBPurchaseValue(), 25, 0x13B6, 0)); Add(new GenericBuyInfo("Broadsword", typeof(Broadsword), Broadsword.GetSBPurchaseValue(), 25, 0xF5E, 0)); Add(new GenericBuyInfo("Longsword", typeof(Longsword), Longsword.GetSBPurchaseValue(), 25, 0xF61, 0)); Add(new GenericBuyInfo("Viking Sword", typeof(VikingSword), VikingSword.GetSBPurchaseValue(), 25, 0x13B9, 0)); Add(new GenericBuyInfo("Axe", typeof(Axe), Axe.GetSBPurchaseValue(), 25, 0xF49, 0)); Add(new GenericBuyInfo("Battle Axe", typeof(BattleAxe), BattleAxe.GetSBPurchaseValue(), 25, 0xF47, 0)); Add(new GenericBuyInfo("Double Axe", typeof(DoubleAxe), DoubleAxe.GetSBPurchaseValue(), 25, 0xF4B, 0)); Add(new GenericBuyInfo("Executioner's Axe", typeof(ExecutionersAxe), ExecutionersAxe.GetSBPurchaseValue(), 25, 0xF45, 0)); Add(new GenericBuyInfo("Large Battle Axe", typeof(LargeBattleAxe), LargeBattleAxe.GetSBPurchaseValue(), 25, 0x13FB, 0)); Add(new GenericBuyInfo("Two-Handed Axe", typeof(TwoHandedAxe), TwoHandedAxe.GetSBPurchaseValue(), 25, 0x1443, 0)); Add(new GenericBuyInfo("Bardiche", typeof(Bardiche), Bardiche.GetSBPurchaseValue(), 25, 0xF4D, 0)); Add(new GenericBuyInfo("Halberd", typeof(Halberd), Halberd.GetSBPurchaseValue(), 25, 0x143E, 0)); Add(new GenericBuyInfo("Bow", typeof(Bow), Bow.GetSBPurchaseValue(), 25, 0x13B2, 0)); Add(new GenericBuyInfo("Crossbow", typeof(Crossbow), Crossbow.GetSBPurchaseValue(), 25, 0xF50, 0)); Add(new GenericBuyInfo("Heavy Crossbow", typeof(HeavyCrossbow), HeavyCrossbow.GetSBPurchaseValue(), 25, 0x13FD, 0)); }
public KhaldunRevenant(Mobile target) : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.18, 0.36) { Body = 0x3CA; Hue = 0x41CE; m_Target = target; m_ExpireTime = DateTime.UtcNow + TimeSpan.FromMinutes(10.0); SetStr(401, 500); SetDex(296, 315); SetInt(101, 200); SetHits(241, 300); SetStam(242, 280); SetDamage(20, 30); Alignment = Alignment.Undead; SetSkill(SkillName.MagicResist, 100.1, 150.0); SetSkill(SkillName.Tactics, 90.1, 100.0); SetSkill(SkillName.Swords, 140.1, 150.0); SetSkill(SkillName.Wrestling, 90.1, 100.0); Fame = 0; Karma = 0; VirtualArmor = 60; var weapon = new Halberd(); weapon.Hue = 0x41CE; weapon.Movable = false; AddItem(weapon); }
public EvilNecroWarrior() : base(AIType.AI_Melee, FightMode.Weakest, 10, 1, 0.08, 0.2) { InitStats(110, 110, 110); Name = "Necromatic Warrior"; SpeechHue = Utility.RandomDyedHue(); Kills = 5; RangePerception = 40; Body = 400; Hits = 850; Dex = 100; SetDamage(25, 45); VirtualArmor = 65; if (Female = Utility.RandomBool()) { Body = 0x191; } else { Body = 0x190; } new SkeletalMount().Rider = this; Halberd halberd = new Halberd(); halberd.Name = "Halberd of the Fallen Souls"; halberd.Movable = false; halberd.Hue = 33; halberd.LootType = LootType.Blessed; AddItem(halberd); PackGold(450, 550); Skills[SkillName.Anatomy].Base = 130.0; Skills[SkillName.Tactics].Base = 100.0; Skills[SkillName.Swords].Base = 125.0; Skills[SkillName.MagicResist].Base = 120.0; Skills[SkillName.DetectHidden].Base = 100.0; Skills[SkillName.Poisoning].Base = 120; Skills[SkillName.Magery].Base = 120; Item shroud = new HoodedShroudOfShadows(); shroud.Name = "Shroud of the Fallen Souls"; shroud.Hue = 1157; shroud.Movable = false; AddItem(shroud); Item sandals = new Sandals(); sandals.Name = "Sandals of the Fallen"; sandals.Hue = 1; sandals.Movable = false; PackItem(new NecroCrystal(1)); AddItem(sandals); Item llegs = new StuddedLegs(); AddItem(llegs); Item larms = new StuddedArms(); AddItem(larms); Item ltunic = new StuddedChest(); AddItem(ltunic); Item lgloves = new StuddedGloves(); AddItem(lgloves); Item lgorget = new StuddedGorget(); AddItem(lgorget); }
public WarriorGuard(Mobile target = null) : base(target) { InitStats(1000, 1000, 1000); Title = "the guard"; SpeechHue = Utility.RandomDyedHue(); Hue = Race.Human.RandomSkinHue(); if (Female = Utility.RandomBool()) { Body = 0x191; Name = NameList.RandomName("female"); switch (Utility.Random(2)) { case 0: AddItem(new LeatherSkirt()); break; case 1: AddItem(new LeatherShorts()); break; } switch (Utility.Random(5)) { case 0: AddItem(new FemaleLeatherChest()); break; case 1: AddItem(new FemaleStuddedChest()); break; case 2: AddItem(new LeatherBustierArms()); break; case 3: AddItem(new StuddedBustierArms()); break; case 4: AddItem(new FemalePlateChest()); break; } } else { Body = 0x190; Name = NameList.RandomName("male"); AddItem(new PlateChest()); AddItem(new PlateArms()); AddItem(new PlateLegs()); switch (Utility.Random(3)) { case 0: AddItem(new Doublet(Utility.RandomNondyedHue())); break; case 1: AddItem(new Tunic(Utility.RandomNondyedHue())); break; case 2: AddItem(new BodySash(Utility.RandomNondyedHue())); break; } } Utility.AssignRandomHair(this); if (Utility.RandomBool()) { Utility.AssignRandomFacialHair(this, HairHue); } Halberd weapon = new Halberd(); weapon.Movable = false; weapon.Crafter = this; weapon.Quality = WeaponQuality.Exceptional; AddItem(weapon); Container pack = new Backpack(); pack.Movable = false; pack.DropItem(new Gold(10, 25)); AddItem(pack); Skills.Anatomy.Base = 120.0; Skills.Tactics.Base = 120.0; Skills.Swords.Base = 120.0; Skills.MagicResist.Base = 120.0; Skills.DetectHidden.Base = 100.0; NextCombatTime = Core.TickCount + 500; Focus = target; }
public TownGuard() : base(AIType.AI_Melee, FightMode.Closest, 15, 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.Tactics, 100.0); SetSkill(SkillName.Healing, 100.0); SetSkill(SkillName.Anatomy, 100.0); SetSkill(SkillName.Swords, 100.0); SetSkill(SkillName.Lumberjacking, 100.0); SetSkill(SkillName.Healing, 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); 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; } } PackGold(0); switch (Utility.Random(35)) { case 0: { Item helm = new PlateHelm(); EquipItem(helm); break; } } switch (Utility.Random(35)) { case 0: { Item gloves = new PlateGloves(); EquipItem(gloves); 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); Halberd halberd = new Halberd(); halberd.Movable = false; halberd.MinDamage = 40; halberd.MaxDamage = 45; EquipItem(halberd); PackItem(new Halberd()); PackItem(new Bandage(100)); }
public DragonKnightHalberd() : base(AIType.AI_Melee, FightMode.Evil, 10, 1, 0.2, 0.4) { Title = "a DragonKnight Fighter"; Name = NameList.RandomName("male"); Body = 0x191; Hue = 33805; Female = false; SetStr(1025, 1425); SetDex(81, 148); SetInt(475, 675); Fame = 1000; Karma = 1000; SetHits(1000, 2000); SetDamage(24, 33); SetDamageType(ResistanceType.Physical, 100); SetResistance(ResistanceType.Physical, 60, 85); SetResistance(ResistanceType.Fire, 65, 90); SetResistance(ResistanceType.Cold, 40, 55); SetResistance(ResistanceType.Poison, 40, 60); SetResistance(ResistanceType.Energy, 50, 75); SetSkill(SkillName.Archery, 100, 140); SetSkill(SkillName.Tactics, 100, 140); SetSkill(SkillName.MagicResist, 100, 140); SetSkill(SkillName.Tactics, 100, 140); SetSkill(SkillName.Wrestling, 100, 140); SetSkill(SkillName.Swords, 100, 140); SetSkill(SkillName.Magery, 100, 140); SetSkill(SkillName.Focus, 100, 140); VirtualArmor = 80; Halberd halberd = new Halberd(); halberd.Movable = false; AddItem(halberd); //AddItem(new Bolt(100)); HumilityCloak cloak = new HumilityCloak(); cloak.Movable = false; AddItem(cloak); SpiritualityHelm spiritualityhelm = new SpiritualityHelm(); spiritualityhelm.Movable = false; AddItem(spiritualityhelm); HonestyGorget honestygorget = new HonestyGorget(); honestygorget.Movable = false; AddItem(honestygorget); JusticeBreastplate justicebreastplate = new JusticeBreastplate(); justicebreastplate.Movable = false; AddItem(justicebreastplate); BodySash bodysash = new BodySash(); bodysash.Movable = false; bodysash.Name = "Royal DragonKnight"; AddItem(bodysash); CompassionArms compassionarms = new CompassionArms(); compassionarms.Movable = false; AddItem(compassionarms); ValorGauntlets valorgauntlets = new ValorGauntlets(); valorgauntlets.Movable = false; AddItem(valorgauntlets); HonorLegs honorlegs = new HonorLegs(); honorlegs.Movable = false; AddItem(honorlegs); SacrificeSollerets sacrificesollerets = new SacrificeSollerets(); sacrificesollerets.Movable = false; AddItem(sacrificesollerets); // PlateChest chest = new PlateChest(); // chest.Movable = false; // chest.Hue = 137; // AddItem(chest); VampiriacSteed vampiriacsteed = new VampiriacSteed(); vampiriacsteed.Hue = 2219; //horse.Hits = 200; //horse.Karma = 500; vampiriacsteed.Rider = this; //new VampiriacSteed().Rider = this; halberd.Hue = 253; cloak.Hue = 253; spiritualityhelm.Hue = 2406; honestygorget.Hue = 2406; justicebreastplate.Hue = 2406; bodysash.Hue = 253; compassionarms.Hue = 2406; valorgauntlets.Hue = 2406; honorlegs.Hue = 2406; sacrificesollerets.Hue = 2406; }
public override void Action(CharacterBase character, SceneBattle battle) { if (!this.BlackOut(character, battle, this.name, this.Power(character).ToString())) { return; } if (character is Player) { Player player = (Player)character; if (this.nowmotion == 0 && this.frame < 3 && (Input.IsPush(Button._A) && this.command == 0) && this.commandTime < 60) { this.CommandInput("上下左右B", player); if (this.CommandCheck("下左上右下")) { this.command = 4; } else if (this.CommandCheck("左B右B")) { this.command = 5; } } } if (this.moveflame) { switch (this.nowmotion) { case 0: this.animePoint.X = this.AnimeMove(this.frame).X; switch (this.frame) { case 1: character.animationpoint.X = -1; this.xPosition = character.position.X; this.sound.PlaySE(SoundEffect.warp); break; case 2: if (character is Player && (Input.IsPush(Button._A) && this.command == 0 && this.commandTime < 60)) { this.frame = 1; break; } break; case 3: if (this.CommandCheck("下左上右下")) { this.sound.PlaySE(SoundEffect.CommandSuccess); this.command = 4; } else if (this.CommandCheck("左B右B")) { this.sound.PlaySE(SoundEffect.CommandSuccess); this.command = 5; } if (this.command == 5) { this.xPosition = character.position.X; ++this.nowmotion; this.frame = 0; break; } break; case 5: this.xPosition = this.TargetX(character, battle); if (this.xPosition < 0) { this.xPosition = 0; } if (this.xPosition > 5) { this.xPosition = 5; break; } break; case 9: ++this.nowmotion; this.frame = 0; break; } break; case 1: this.animePoint.X = this.AnimeSlash1(this.frame).X; switch (this.frame) { case 5: if (character is Player && this.command == 0) { Player player = (Player)character; if (Input.IsPush(Button.Right)) { this.sound.PlaySE(SoundEffect.CommandSuccess); this.command = 1; } else if (Input.IsPush(Button.Up)) { this.sound.PlaySE(SoundEffect.CommandSuccess); this.command = 2; } else if (Input.IsPush(Button.Left)) { this.sound.PlaySE(SoundEffect.CommandSuccess); this.command = 3; } break; } break; case 6: this.sound.PlaySE(SoundEffect.sword); AttackBase a1 = new SwordAttack(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 4, this.element, false, false); switch (this.command) { case 1: a1 = new FighterSword(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 4, this.element); break; case 2: a1 = new SwordAttack(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 4, this.element, false, false); break; case 3: a1 = new SwordCloss(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character) / 2, 4, this.element, false); break; case 4: a1 = new Halberd(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 4, this.element, false); break; case 5: a1 = new SonicBoom(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 8, this.element, false); break; } a1.invincibility = false; battle.attacks.Add(this.Paralyze(a1)); break; case 10: ++this.nowmotion; this.frame = 0; break; } break; case 2: this.animePoint.X = this.AnimeSlash2(this.frame).X; switch (this.frame) { case 6: this.sound.PlaySE(SoundEffect.sword); AttackBase a2 = new SwordAttack(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 4, this.element, false, false); switch (this.command) { case 1: a2 = new FighterSword(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 4, this.element); break; case 2: a2 = new SwordAttack(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 4, this.element, false, false); break; case 3: a2 = new SwordCloss(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character) / 2, 4, this.element, false); break; case 4: a2 = new Halberd(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 4, this.element, false); break; case 5: a2 = new SonicBoom(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 8, this.element, false); break; } a2.invincibility = false; battle.attacks.Add(this.Paralyze(a2)); break; case 10: ++this.nowmotion; this.frame = 0; break; } break; case 3: this.animePoint.X = this.AnimeSlash3(this.frame).X; switch (this.frame) { case 6: this.sound.PlaySE(SoundEffect.sword); AttackBase a3 = new SwordCloss(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character) / 2, 4, this.element, false); switch (this.command) { case 1: a3 = new FighterSword(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 4, this.element); break; case 2: a3 = new SwordAttack(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 4, this.element, false, false); break; case 3: a3 = new SwordCloss(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character) / 2, 4, this.element, false); break; case 4: a3 = new Halberd(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 4, this.element, false); break; case 5: a3 = new SonicBoom(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 8, this.element, false); break; } a3.invincibility = false; battle.attacks.Add(this.Paralyze(a3)); break; case 10: ++this.nowmotion; this.frame = 0; break; } break; case 4: this.animePoint.X = this.AnimeSlash2(this.frame).X; switch (this.frame) { case 6: this.sound.PlaySE(SoundEffect.sword); AttackBase a4 = new Halberd(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 4, this.element, false); switch (this.command) { case 1: a4 = new FighterSword(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 4, this.element); break; case 2: a4 = new SwordAttack(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 4, this.element, false, false); break; case 3: a4 = new SwordCloss(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character) / 2, 4, this.element, false); break; case 4: a4 = new Halberd(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 4, this.element, false); break; case 5: a4 = new SonicBoom(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 8, this.element, false); break; } a4.invincibility = false; battle.attacks.Add(this.Paralyze(a4)); break; case 10: ++this.nowmotion; this.frame = 0; break; } break; case 5: this.animePoint.X = this.AnimeSlash1(this.frame).X; switch (this.frame) { case 6: this.sound.PlaySE(SoundEffect.sword); AttackBase a5 = new SonicBoom(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 8, this.element, true); switch (this.command) { case 1: a5 = new FighterSword(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 4, this.element); break; case 2: a5 = new SwordAttack(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 4, this.element, false, false); break; case 3: a5 = new SwordCloss(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character) / 2, 4, this.element, false); break; case 4: a5 = new Halberd(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 4, this.element, false); break; case 5: a5 = new SonicBoom(this.sound, battle, this.xPosition + this.UnionRebirth(character.union), character.position.Y, character.union, this.Power(character), 8, this.element, false); break; } a5.invincibility = true; battle.attacks.Add(this.Paralyze(a5)); break; case 30: character.parent.effects.Add(new MoveEnemy(this.sound, character.parent, this.xPosition, character.position.Y)); this.end = true; ++this.nowmotion; this.frame = 0; break; } break; } } if (this.end && this.BlackOutEnd(character, battle)) { base.Action(character, battle); } this.FlameControl(2); }
public EnsorcelledArmor(ArmoryEncounter encounter) : base(AIType.AI_Melee, FightMode.Weakest, 10, 1, 0.2, 0.4) { Encounter = encounter; Name = "ensorcelled armor"; BaseSoundID = 412; Body = 0x190; SetStr(386, 400); SetDex(151, 165); SetInt(161, 175); SetDamage(15, 21); SetDamageType(ResistanceType.Physical, 100); SetResistance(ResistanceType.Physical, 35, 45); SetResistance(ResistanceType.Fire, 25, 30); SetResistance(ResistanceType.Cold, 25, 30); SetResistance(ResistanceType.Poison, 10, 20); SetResistance(ResistanceType.Energy, 10, 20); SetSkill(SkillName.Anatomy, 125.0); SetSkill(SkillName.Fencing, 46.0, 77.5); SetSkill(SkillName.Macing, 35.0, 57.5); SetSkill(SkillName.Poisoning, 60.0, 82.5); SetSkill(SkillName.MagicResist, 83.5, 92.5); SetSkill(SkillName.Swords, 125.0); SetSkill(SkillName.Tactics, 125.0); SetSkill(SkillName.Lumberjacking, 125.0); var helm = new CloseHelm(); helm.Hue = 0x96D; AddItem(helm); var arms = new PlateArms(); arms.Hue = 0x96D; AddItem(arms); var legs = new PlateLegs(); legs.Hue = 0x96D; AddItem(legs); var tunic = new PlateChest(); tunic.Hue = 0x96D; AddItem(tunic); var gorget = new PlateGorget(); gorget.Hue = 0x96D; AddItem(gorget); var golves = new PlateGloves(); golves.Hue = 0x96D; AddItem(golves); var halberd = new Halberd(); halberd.Hue = 0x96D; AddItem(halberd); AddItem(new HalfApron(728)); Fame = 8500; Karma = -8500; }
public GuardVer2() : base() { m_ReactsToSnoop = true; m_ReactsToSteal = true; m_ReactsToHit = true; m_ReactsToDeath = true; m_ReactsToHarmfulSpell = true; Blessed = true; Frozen = true; // Choppé de la classe WarriorGuard, probablement à ajuster. InitStats(1000, 1000, 1000); Title = "the guard"; SpeechHue = Utility.RandomDyedHue(); Hue = Utility.RandomSkinHue(); if (Female = Utility.RandomBool()) { Body = 0x191; Name = NameList.RandomName("female"); switch (Utility.Random(2)) { case 0: AddItem(new LeatherSkirt()); break; case 1: AddItem(new LeatherShorts()); break; } switch (Utility.Random(5)) { case 0: AddItem(new FemaleLeatherChest()); break; case 1: AddItem(new FemaleStuddedChest()); break; case 2: AddItem(new LeatherBustierArms()); break; case 3: AddItem(new StuddedBustierArms()); break; case 4: AddItem(new FemalePlateChest()); break; } } else { Body = 0x190; Name = NameList.RandomName("male"); AddItem(new PlateChest()); AddItem(new PlateArms()); AddItem(new PlateLegs()); switch (Utility.Random(3)) { case 0: AddItem(new Doublet(Utility.RandomNondyedHue())); break; case 1: AddItem(new Tunic(Utility.RandomNondyedHue())); break; case 2: AddItem(new BodySash(Utility.RandomNondyedHue())); break; } } Utility.AssignRandomHair(this); if (Utility.RandomBool()) { Utility.AssignRandomFacialHair(this, HairHue); } Halberd weapon = new Halberd(); weapon.Movable = false; weapon.Crafter = this; weapon.Quality = WeaponQuality.Exceptional; AddItem(weapon); Container pack = new Backpack(); pack.Movable = false; pack.DropItem(new Gold(10, 25)); AddItem(pack); //Skills[SkillName.Anatomy].Base = 120.0; Skills[SkillName.Tactiques].Base = 120.0; Skills[SkillName.Epee].Base = 120.0; Skills[SkillName.Concentration].Base = 120.0; Skills[SkillName.Detection].Base = 100.0; Blessed = true; Frozen = true; }
public VivreGuard(String townName) : base(AIType.AI_VivreGuard, FightMode.Closest, 18, 1, 0.12, 1) // 0.15 echapable à pied, 0.05 = très rapide { m_TownName = townName; InitStats(200, 200, 200); SpeechHue = Utility.RandomDyedHue(); Hue = Utility.RandomSkinHue(); Body = 0x190; Name = NameList.RandomName("male"); Title = ", Garde de " + m_TownName; Karma = 12000; PlateChest chest = new PlateChest(); chest.Hue = 0; chest.Resource = CraftResource.MBronze; chest.Movable = false; AddItem(chest); PlateArms arms = new PlateArms(); arms.Hue = 0; arms.Movable = false; arms.Resource = CraftResource.MBronze; AddItem(arms); PlateGloves gloves = new PlateGloves(); gloves.Hue = 0; gloves.Movable = false; gloves.Resource = CraftResource.MBronze; AddItem(gloves); PlateGorget gorget = new PlateGorget(); gorget.Hue = 0; gorget.Movable = false; gorget.Resource = CraftResource.MBronze; AddItem(gorget); PlateLegs legs = new PlateLegs(); legs.Hue = 0; legs.Movable = false; legs.Resource = CraftResource.MBronze; AddItem(legs); NorseHelm helm = new NorseHelm(); helm.Hue = 0; helm.Movable = false; helm.Resource = CraftResource.MBronze; AddItem(helm); Surcoat surcoat = new Surcoat(); surcoat.Hue = 0; surcoat.Movable = false; AddItem(surcoat); Cloak cloak = new Cloak(); cloak.Hue = TownHue; cloak.Movable = false; AddItem(cloak); HairItemID = Utility.RandomList(0x203B, 0x203C, 0x203D, 0x2044, 0x2045, 0x2047, 0x2049, 0x204A); HairHue = Utility.RandomHairHue(); if (Utility.RandomBool()) { FacialHairItemID = Utility.RandomList(0x203E, 0x203F, 0x2040, 0x2041, 0x204B, 0x204C, 0x204D); FacialHairHue = HairHue; } Halberd weapon = new Halberd(); weapon.Movable = false; weapon.Crafter = this; weapon.Quality = WeaponQuality.Exceptional; VirtualArmor = 100; AddItem(weapon); Skills[SkillName.Anatomy].Base = 100.0; Skills[SkillName.Tactics].Base = 110.0; Skills[SkillName.Swords].Base = 160.0; Skills[SkillName.MagicResist].Base = 110.0; Skills[SkillName.DetectHidden].Base = 100.0; }
public BaneOfInsanity() : base(AIType.AI_Melee, FightMode.Closest, 10, 1, 0.2, 0.4) { Body = 0x190; SpeechHue = Utility.RandomTalkHue(); Hue = Utility.RandomSkinColor(); Name = NameList.RandomName("male"); Utility.AssignRandomHair(this); int HairColor = Utility.RandomHairHue(); FacialHairItemID = Utility.RandomList(0, 8254, 8255, 8256, 8257, 8267, 8268, 8269); HairHue = HairColor; FacialHairHue = HairColor; Title = "the Bane of Insanity"; SetStr(350); SetDex(150); SetInt(120); SetHits(300); SetDamage(12, 23); SetDamageType(ResistanceType.Physical, 100); SetResistance(ResistanceType.Physical, 40); SetResistance(ResistanceType.Fire, 30); SetResistance(ResistanceType.Cold, 30); SetResistance(ResistanceType.Poison, 30); SetResistance(ResistanceType.Energy, 30); SetSkill(SkillName.DetectHidden, 80.0); SetSkill(SkillName.Anatomy, 110.0); SetSkill(SkillName.MagicResist, 80.0); SetSkill(SkillName.Macing, 110.0); SetSkill(SkillName.Fencing, 110.0); SetSkill(SkillName.Wrestling, 110.0); SetSkill(SkillName.Swords, 110.0); SetSkill(SkillName.Tactics, 110.0); Fame = 8000; Karma = -8000; VirtualArmor = 30; PlateChest chest = new PlateChest(); chest.Hue = 0x83F; chest.Name = "plate tunic of insanity"; chest.Durability = ArmorDurabilityLevel.Indestructible; chest.ProtectionLevel = ArmorProtectionLevel.Invulnerability; AddItem(chest); PlateArms arms = new PlateArms(); arms.Hue = 0x83F; arms.Name = "plate arms of insanity"; arms.Durability = ArmorDurabilityLevel.Indestructible; arms.ProtectionLevel = ArmorProtectionLevel.Invulnerability; AddItem(arms); PlateLegs legs = new PlateLegs(); legs.Hue = 0x83F; legs.Name = "plate leggings of insanity"; legs.Durability = ArmorDurabilityLevel.Indestructible; legs.ProtectionLevel = ArmorProtectionLevel.Invulnerability; AddItem(legs); PlateGorget neck = new PlateGorget(); neck.Hue = 0x83F; neck.Name = "plate gorget of insanity"; neck.Durability = ArmorDurabilityLevel.Indestructible; neck.ProtectionLevel = ArmorProtectionLevel.Invulnerability; AddItem(neck); PlateGloves gloves = new PlateGloves(); gloves.Hue = 0x83F; gloves.Name = "plate gloves of insanity"; gloves.Durability = ArmorDurabilityLevel.Indestructible; gloves.ProtectionLevel = ArmorProtectionLevel.Invulnerability; AddItem(gloves); PlateHelm helm = new PlateHelm(); helm.Hue = 0x83F; helm.ItemID = 0x2645; helm.Name = "plate helm of insanity"; helm.Durability = ArmorDurabilityLevel.Indestructible; helm.ProtectionLevel = ArmorProtectionLevel.Invulnerability; AddItem(helm); Halberd weapon = new Halberd(); weapon.Hue = 0x83F; weapon.Name = "halberd of insanity"; weapon.AccuracyLevel = WeaponAccuracyLevel.Supremely; weapon.DamageLevel = WeaponDamageLevel.Vanq; weapon.DurabilityLevel = WeaponDurabilityLevel.Indestructible; AddItem(weapon); }
public override void OnResponse(NetState state, RelayInfo info) //Function for GumpButtonType.Reply Buttons { Mobile from = state.Mobile; PlayerMobile pm = from as PlayerMobile; PlayerModule module = pm.PlayerModule; m_cost = 50; //MOD COST OF WEAPON HERE!! Item wep = from.FindItemOnLayer(Layer.FirstValid); Item weps = from.FindItemOnLayer(Layer.TwoHanded); Container pack = from.Backpack; if (wep != null) { pack.TryDropItem(from, wep, false); } if (weps != null) { pack.TryDropItem(from, weps, false); } switch (info.ButtonID) { case 0: //Cancel { from.SendMessage("You decide against spending your skill points."); //from.SendGump( new LevelGump( from ) ); break; } case 1: //Katana { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; Katana kat = new Katana(); (( Item )kat).Name = "Katana [Level Item]"; kat.Identified = true; //Prevents others from being used in the upgrading! kat.LootType = LootType.Blessed; from.EquipItem(kat); } from.SendGump(new WepUpgradeGump(from)); break; } case 2: //Broad Sword { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; Broadsword bs = new Broadsword(); bs.Identified = true; bs.Name = "Broadsword"; bs.LootType = LootType.Blessed; from.EquipItem(bs); from.SendMessage(102, "You chose a Broadsword"); } from.SendGump(new WepUpgradeGump(from)); break; } case 3: //Scimitar { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; Scimitar sc = new Scimitar(); sc.Identified = true; sc.Name = "Scimitar"; sc.LootType = LootType.Blessed; from.EquipItem(sc); from.SendMessage(102, "You chose a Scimitar"); } from.SendGump(new WepUpgradeGump(from)); break; } case 4: //Viking sword { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; VikingSword vs = new VikingSword(); vs.Identified = true; vs.Name = "Vikingsword"; vs.LootType = LootType.Blessed; from.EquipItem(vs); from.SendMessage(102, "You chose a Viking Sword"); } from.SendGump(new WepUpgradeGump(from)); break; } case 5: //Halberd { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; Halberd hb = new Halberd(); hb.Identified = true; hb.Name = "Halberd"; hb.LootType = LootType.Blessed; from.EquipItem(hb); from.SendMessage(102, "You chose a Halberd"); } from.SendGump(new WepUpgradeGump(from)); break; } case 6: //Bardiche { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; Bardiche bd = new Bardiche(); bd.Identified = true; bd.Name = "Bardiche"; bd.LootType = LootType.Blessed; from.EquipItem(bd); from.SendMessage(102, "You chose a Bardiche"); } from.SendGump(new WepUpgradeGump(from)); break; } case 7: //Double Axe { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; DoubleAxe da = new DoubleAxe(); da.Identified = true; da.Name = "Double Axe"; da.LootType = LootType.Blessed; from.EquipItem(da); from.SendMessage(102, "You chose a Double Axe"); } from.SendGump(new WepUpgradeGump(from)); break; } case 8: //Large Battle Axe { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; LargeBattleAxe lba = new LargeBattleAxe(); lba.Identified = true; lba.Name = "Large Battle Axe"; lba.LootType = LootType.Blessed; from.EquipItem(lba); from.SendMessage(102, "You chose a Large Battle Axe"); } from.SendGump(new WepUpgradeGump(from)); break; } case 9: //Axe { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; Axe a = new Axe(); a.Identified = true; a.Name = "Axe"; a.LootType = LootType.Blessed; from.EquipItem(a); from.SendMessage(102, "You chose an Axe"); } from.SendGump(new WepUpgradeGump(from)); break; } case 10: //Kryss { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; Kryss k = new Kryss(); k.Identified = true; k.Name = "Kryss"; k.LootType = LootType.Blessed; from.EquipItem(k); from.SendMessage(102, "You chose a Kryss"); } from.SendGump(new WepUpgradeGump(from)); break; } case 11: //War Fork { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; WarFork wf = new WarFork(); wf.Identified = true; wf.Name = "War Fork"; wf.LootType = LootType.Blessed; from.EquipItem(wf); from.SendMessage(102, "You chose a War Fork"); } from.SendGump(new WepUpgradeGump(from)); break; } case 12: //Dagger { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; Dagger d = new Dagger(); d.Identified = true; d.Name = "Dagger"; d.LootType = LootType.Blessed; from.EquipItem(d); from.SendMessage(102, "You chose a Dagger"); } from.SendGump(new WepUpgradeGump(from)); break; } case 13: //Pike { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; Pike p = new Pike(); p.Identified = true; p.Name = "Pike"; p.LootType = LootType.Blessed; from.EquipItem(p); from.SendMessage(102, "You chose a Pike"); } from.SendGump(new WepUpgradeGump(from)); break; } case 14: //Short Spear { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; ShortSpear ss = new ShortSpear(); ss.Identified = true; ss.Name = "Short Spear"; ss.LootType = LootType.Blessed; from.EquipItem(ss); from.SendMessage(102, "You chose a Short Spear"); } from.SendGump(new WepUpgradeGump(from)); break; } case 15: //Long Spear { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; Spear ls = new Spear(); ls.Identified = true; ls.Name = "Long Spear"; ls.LootType = LootType.Blessed; from.EquipItem(ls); from.SendMessage(102, "You chose a Long Spear"); } from.SendGump(new WepUpgradeGump(from)); break; } case 16: //Pitchfork { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; Pitchfork p = new Pitchfork(); p.Identified = true; p.Name = "Pitchfork"; p.LootType = LootType.Blessed; from.EquipItem(p); from.SendMessage(102, "You chose a Pitchfork"); } from.SendGump(new WepUpgradeGump(from)); break; } case 17: //lance { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; Lance l = new Lance(); l.Identified = true; l.Name = "Lance"; l.LootType = LootType.Blessed; from.EquipItem(l); from.SendMessage(102, "You chose a Lance"); } from.SendGump(new WepUpgradeGump(from)); break; } case 18: //Sai's { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; Sai s = new Sai(); s.Identified = true; s.Name = "Sai"; s.LootType = LootType.Blessed; from.EquipItem(s); from.SendMessage(102, "You chose Sai's"); } from.SendGump(new WepUpgradeGump(from)); break; } case 19: //War Mace { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; WarMace wm = new WarMace(); wm.Identified = true; wm.Name = "War Mace"; wm.LootType = LootType.Blessed; from.EquipItem(wm); from.SendMessage(102, "You chose a War Mace"); } from.SendGump(new WepUpgradeGump(from)); break; } case 20: //War Hammer { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; WarHammer wh = new WarHammer(); wh.Identified = true; wh.Name = "War Hammer"; wh.LootType = LootType.Blessed; from.EquipItem(wh); from.SendMessage(102, "You chose a War Hammer"); } from.SendGump(new WepUpgradeGump(from)); break; } case 21: //Maul { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; Maul w = new Maul(); w.Identified = true; w.Name = "Maul"; w.LootType = LootType.Blessed; from.EquipItem(w); from.SendMessage(102, "You chose a Maul"); } from.SendGump(new WepUpgradeGump(from)); break; } case 22: //Club { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; Club w = new Club(); w.Identified = true; w.Name = "Club"; w.LootType = LootType.Blessed; from.EquipItem(w); from.SendMessage(102, "You chose a Club"); } from.SendGump(new WepUpgradeGump(from)); break; } case 23: //Q Staff { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; QuarterStaff w = new QuarterStaff(); w.Identified = true; w.Name = "Quarter Staff"; w.LootType = LootType.Blessed; from.EquipItem(w); from.SendMessage(102, "You chose a Quarter Staff"); } from.SendGump(new WepUpgradeGump(from)); break; } case 24: //G Staff { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; GnarledStaff w = new GnarledStaff(); w.Identified = true; w.Name = "Gnarled Staff"; w.LootType = LootType.Blessed; from.EquipItem(w); from.SendMessage(102, "You chose a Gnarled Staff"); } from.SendGump(new WepUpgradeGump(from)); break; } case 25: //B Staff { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; BlackStaff w = new BlackStaff(); w.Identified = true; w.Name = "BlackStaff"; w.LootType = LootType.Blessed; from.EquipItem(w); from.SendMessage(102, "You chose a Black Staff"); } from.SendGump(new WepUpgradeGump(from)); break; } case 26: //Hammer Pick { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; HammerPick w = new HammerPick(); w.Identified = true; w.Name = "Hammer Pick"; w.LootType = LootType.Blessed; from.EquipItem(w); from.SendMessage(102, "You chose a Hammer Pick"); } from.SendGump(new WepUpgradeGump(from)); break; } case 27: //War Axe { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; WarAxe w = new WarAxe(); w.Identified = true; w.Name = "War Axe"; w.LootType = LootType.Blessed; from.EquipItem(w); from.SendMessage(102, "You chose a War Axe"); } from.SendGump(new WepUpgradeGump(from)); break; } case 28: //Bow { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; Bow w = new Bow(); w.Identified = true; w.Name = "Bow"; w.LootType = LootType.Blessed; from.EquipItem(w); from.SendMessage(102, "You chose a Bow"); } from.SendGump(new WepUpgradeGump(from)); break; } case 29: //Composite Bow { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; CompositeBow w = new CompositeBow(); w.Identified = true; w.Name = "Composite Bow"; w.LootType = LootType.Blessed; from.EquipItem(w); from.SendMessage(102, "You chose a Composite Bow"); } from.SendGump(new WepUpgradeGump(from)); break; } case 30: //Crossbow { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; Crossbow w = new Crossbow(); w.Identified = true; w.Name = "Crossbow"; w.LootType = LootType.Blessed; from.EquipItem(w); from.SendMessage(102, "You chose a Crossbow"); } from.SendGump(new WepUpgradeGump(from)); break; } case 31: //Heavy Crossbow { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; HeavyCrossbow w = new HeavyCrossbow(); w.Identified = true; w.Name = "Heavy Crossbow"; w.LootType = LootType.Blessed; from.EquipItem(w); from.SendMessage(102, "You chose a Heavy Crossbow"); } from.SendGump(new WepUpgradeGump(from)); break; } case 32: //Repeating Crossbow { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; RepeatingCrossbow w = new RepeatingCrossbow(); w.Identified = true; w.Name = "Repeating Crossbow"; w.LootType = LootType.Blessed; from.EquipItem(w); from.SendMessage(102, "You chose a Repeating Crossbow"); } from.SendGump(new WepUpgradeGump(from)); break; } case 33: //Yumi { if (module.SkillPts < m_cost) { from.SendMessage(37, "Not enough skill points!"); } else { module.SkillPts -= m_cost; Yumi w = new Yumi(); w.Identified = true; w.Name = "Yumi"; w.LootType = LootType.Blessed; from.EquipItem(w); from.SendMessage(102, "You chose a Yumi"); } from.SendGump(new WepUpgradeGump(from)); break; } } }
private void InitContents(BarrelType type) { Item item = null; byte count = (byte)Utility.RandomMinMax(10, 30); for (byte i = 0; i < count; i++) { switch (type) { default: case BarrelType.Arrows: item = new Arrow(Utility.RandomMinMax(2, 6)); break; case BarrelType.Bolts: item = new Bolt(Utility.RandomMinMax(2, 6)); break; case BarrelType.Farming: { if (i > 3) { return; } switch (Utility.Random(3)) { case 0: item = new Shovel(); break; case 1: item = new Scythe(); break; case 2: item = new Pitchfork(); break; } break; } case BarrelType.LargeMining: { if (i > 5) { return; } switch (Utility.Random(5)) { case 0: item = new Pitchfork(); break; case 1: case 2: item = new Shovel(); break; case 3: case 4: item = new Pickaxe(); break; } break; } case BarrelType.LargeWeapon1: case BarrelType.LargeWeapon2: case BarrelType.LargeWeapon3: { if (i > 6) { return; } switch (Utility.Random(6)) { case 0: item = new Spear(); break; case 1: item = new Halberd(); break; case 2: item = new Axe(); break; case 3: item = new ThinLongsword(); break; case 4: item = new WarAxe(); break; case 5: item = new VikingSword(); break; } break; } case BarrelType.Mining: { if (i > 3) { return; } item = new Pickaxe(); break; } case BarrelType.Spears: { if (i > 4) { return; } item = new Spear(); break; } case BarrelType.Weapons: { if (i > 3) { return; } switch (Utility.Random(3)) { case 0: item = new WarAxe(); break; case 1: item = new WarMace(); break; case 2: item = new Maul(); break; } break; } } if (item != null) { DropItem(item); } } }
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; }