public WandTarget(BaseWand item) : base(6, false, TargetFlags.None) { m_Item = item; }
public WandTarget( BaseWand item ) : base( 6, false, TargetFlags.None ) { m_Item = item; }
public ArenaTreasureChest() : base(0xE41) { Name = "Arena Champion"; Hue = 1161; DropItem(new ChampionStatue()); DropItem(new Gold(Utility.RandomMinMax(1000, 2000))); DropItem(new Gold(Utility.RandomMinMax(1000, 2000))); DropItem(new Gold(Utility.RandomMinMax(1000, 2000))); DropItem(new Gold(Utility.RandomMinMax(1000, 2000))); DropItem(new Gold(Utility.RandomMinMax(1000, 2000))); DropItem(new Gold(Utility.RandomMinMax(1000, 2000))); DropItem(new Gold(Utility.RandomMinMax(1000, 2000))); DropItem(new Gold(Utility.RandomMinMax(1000, 2000))); DropItem(new Gold(Utility.RandomMinMax(1000, 2000))); DropItem(new Gold(Utility.RandomMinMax(1000, 2000))); { int chance = Utility.Random(5); switch (chance) { case 0: { Map map = this.Map; BaseWeapon weapon = Loot.RandomWeapon(); BaseRunicTool.ApplyAttributesTo(weapon, 4, 10, 50); DropItem(weapon); break; } case 1: { Map map = this.Map; BaseArmor armor = Loot.RandomArmor(); BaseRunicTool.ApplyAttributesTo(armor, 4, 10, 50); DropItem(armor); break; } case 2: { BaseJewel jewel = Loot.RandomJewelry(); BaseRunicTool.ApplyAttributesTo(jewel, 4, 10, 50); DropItem(jewel); break; } case 3: { Map map = this.Map; BaseHat hat = Loot.RandomHat(); BaseRunicTool.ApplyAttributesTo(hat, 4, 10, 50); DropItem(hat); break; } case 4: { BaseWand wand = Loot.RandomWand(); DropItem(wand); break; } } switch (Utility.Random(32)) { default: case 0: DropItem(new VoiceOfTheFallenKing()); break; case 1: DropItem(new TunicOfFire()); break; case 2: DropItem(new SpiritOfTheTotem()); break; case 3: DropItem(new ShadowDancerLeggings()); break; case 4: DropItem(new OrnateCrownOfTheHarrower()); break; case 5: DropItem(new LeggingsOfBane()); break; case 6: DropItem(new JackalsCollar()); break; case 7: DropItem(new InquisitorsResolution()); break; case 8: DropItem(new HuntersHeaddress()); break; case 9: DropItem(new HelmOfInsight()); break; case 10: DropItem(new HatOfTheMagi()); break; case 11: DropItem(new GauntletsOfNobility()); break; case 12: DropItem(new DivineCountenance()); break; case 13: DropItem(new ArmorOfFortune()); break; case 14: DropItem(new ArcaneShield()); break; case 15: DropItem(new Aegis()); break; case 16: DropItem(new ZyronicClaw()); break; case 17: DropItem(new TitansHammer()); break; case 18: DropItem(new TheTaskmaster()); break; case 19: DropItem(new TheDragonSlayer()); break; case 20: DropItem(new StaffOfTheMagi()); break; case 21: DropItem(new SerpentsFang()); break; case 22: DropItem(new LegacyOfTheDreadLord()); break; case 23: DropItem(new BreathOfTheDead()); break; case 24: DropItem(new BoneCrusher()); break; case 25: DropItem(new BladeOfTheRighteous()); break; case 26: DropItem(new BladeOfInsanity()); break; case 27: DropItem(new AxeOfTheHeavens()); break; case 28: DropItem(new RingOfTheVile()); break; case 29: DropItem(new RingOfTheElements()); break; case 30: DropItem(new OrnamentOfTheMagician()); break; case 31: DropItem(new BraceletOfHealth()); break; } switch (Utility.Random(32)) { default: case 0: DropItem(new VoiceOfTheFallenKing()); break; case 1: DropItem(new TunicOfFire()); break; case 2: DropItem(new SpiritOfTheTotem()); break; case 3: DropItem(new ShadowDancerLeggings()); break; case 4: DropItem(new OrnateCrownOfTheHarrower()); break; case 5: DropItem(new LeggingsOfBane()); break; case 6: DropItem(new JackalsCollar()); break; case 7: DropItem(new InquisitorsResolution()); break; case 8: DropItem(new HuntersHeaddress()); break; case 9: DropItem(new HelmOfInsight()); break; case 10: DropItem(new HatOfTheMagi()); break; case 11: DropItem(new GauntletsOfNobility()); break; case 12: DropItem(new DivineCountenance()); break; case 13: DropItem(new ArmorOfFortune()); break; case 14: DropItem(new ArcaneShield()); break; case 15: DropItem(new Aegis()); break; case 16: DropItem(new ZyronicClaw()); break; case 17: DropItem(new TitansHammer()); break; case 18: DropItem(new TheTaskmaster()); break; case 19: DropItem(new TheDragonSlayer()); break; case 20: DropItem(new StaffOfTheMagi()); break; case 21: DropItem(new SerpentsFang()); break; case 22: DropItem(new LegacyOfTheDreadLord()); break; case 23: DropItem(new BreathOfTheDead()); break; case 24: DropItem(new BoneCrusher()); break; case 25: DropItem(new BladeOfTheRighteous()); break; case 26: DropItem(new BladeOfInsanity()); break; case 27: DropItem(new AxeOfTheHeavens()); break; case 28: DropItem(new RingOfTheVile()); break; case 29: DropItem(new RingOfTheElements()); break; case 30: DropItem(new OrnamentOfTheMagician()); break; case 31: DropItem(new BraceletOfHealth()); break; } switch (Utility.Random(32)) { default: case 0: DropItem(new VoiceOfTheFallenKing()); break; case 1: DropItem(new TunicOfFire()); break; case 2: DropItem(new SpiritOfTheTotem()); break; case 3: DropItem(new ShadowDancerLeggings()); break; case 4: DropItem(new OrnateCrownOfTheHarrower()); break; case 5: DropItem(new LeggingsOfBane()); break; case 6: DropItem(new JackalsCollar()); break; case 7: DropItem(new InquisitorsResolution()); break; case 8: DropItem(new HuntersHeaddress()); break; case 9: DropItem(new HelmOfInsight()); break; case 10: DropItem(new HatOfTheMagi()); break; case 11: DropItem(new GauntletsOfNobility()); break; case 12: DropItem(new DivineCountenance()); break; case 13: DropItem(new ArmorOfFortune()); break; case 14: DropItem(new ArcaneShield()); break; case 15: DropItem(new Aegis()); break; case 16: DropItem(new ZyronicClaw()); break; case 17: DropItem(new TitansHammer()); break; case 18: DropItem(new TheTaskmaster()); break; case 19: DropItem(new TheDragonSlayer()); break; case 20: DropItem(new StaffOfTheMagi()); break; case 21: DropItem(new SerpentsFang()); break; case 22: DropItem(new LegacyOfTheDreadLord()); break; case 23: DropItem(new BreathOfTheDead()); break; case 24: DropItem(new BoneCrusher()); break; case 25: DropItem(new BladeOfTheRighteous()); break; case 26: DropItem(new BladeOfInsanity()); break; case 27: DropItem(new AxeOfTheHeavens()); break; case 28: DropItem(new RingOfTheVile()); break; case 29: DropItem(new RingOfTheElements()); break; case 30: DropItem(new OrnamentOfTheMagician()); break; case 31: DropItem(new BraceletOfHealth()); break; } } }
public static void ApplyAttributesTo( BaseWand wand, bool isRunicTool, int luckchance, int attributeCount, int min, int max ) { m_Props.SetAll( false ); AosAttributes primary = wand.Attributes; AosWeaponAttributes secondary = wand.WeaponAttributes; for ( int i = 0; i < attributeCount; ++i ) { int random = GetUniqueRandom(2); if ( random == -1 ) break; switch ( random ) { case 0: ApplyAttribute( secondary, min, max, AosWeaponAttribute.MageWeapon, 1, 10 ); break; case 1: ApplyAttribute( primary, min, max, AosAttribute.SpellChanneling, 1, 1 ); break; } } }
public WandTarget( BaseWand item ) : base(6, false, TargetFlags.None) { AllowNonlocal = true; m_Item = item; }
public void FillChest(LevelType level) { switch (level) { case LevelType.First: { DropItem(new Gold(Utility.RandomMinMax(50, 70))); if (0.3 > Utility.RandomDouble()) { int chance = Utility.Random(3); switch (chance) { case 0: DropItem(new Bolt(10)); break; case 1: DropItem(new Arrow(10)); break; case 2: DropItem(Loot.RandomReagent()); break; } } break; } case LevelType.Hybrid: { DropItem(new Gold(Utility.RandomMinMax(10, 40))); if (0.3 > Utility.RandomDouble()) { int chance = Utility.Random(6); switch (chance) { case 0: DropItem(new Bolt(5)); break; case 1: DropItem(new Shoes()); break; case 2: DropItem(new Sandals()); break; case 3: DropItem(new Candle()); break; case 4: DropItem(new BeverageBottle(Utility.RandomBool() ? BeverageType.Ale : BeverageType.Liquor)); break; case 5: DropItem(new Jug(BeverageType.Cider)); break; } } break; } case LevelType.Second: { DropItem(new Gold(Utility.RandomMinMax(120, 160))); if (0.3 > Utility.RandomDouble()) { Item reagent = Loot.RandomReagent(); DropItem(reagent); } break; } case LevelType.Third: { DropItem(new Gold(Utility.RandomMinMax(300, 400))); if (0.3 > Utility.RandomDouble()) { int chance = Utility.Random(3); switch (chance) { case 0: DropItem(new Bolt(10)); break; case 1: DropItem(new Arrow(10)); break; case 2: DropItem(Loot.RandomGem()); break; } } int chance_new = Utility.Random(5); switch (chance_new) { case 0: { Map map = this.Map; BaseWeapon weapon = (map == Map.Tokuno) ? Loot.RandomSEWeapon() : Loot.RandomWeapon(); BaseRunicTool.ApplyAttributesTo(weapon, 3, 10, 40); DropItem(weapon); break; } case 1: { Map map = this.Map; BaseArmor armor = (map == Map.Tokuno) ? Loot.RandomSEArmor() : Loot.RandomArmor(); BaseRunicTool.ApplyAttributesTo(armor, 3, 10, 40); DropItem(armor); break; } case 2: { BaseJewel jewel = Loot.RandomJewelry(); BaseRunicTool.ApplyAttributesTo(jewel, 3, 10, 40); DropItem(jewel); break; } case 3: { Map map = this.Map; BaseHat hat = (map == Map.Tokuno) ? Loot.RandomSEHat() : Loot.RandomHat(); BaseRunicTool.ApplyAttributesTo(hat, 3, 10, 40); DropItem(hat); break; } case 4: { BaseWand wand = Loot.RandomWand(); DropItem(wand); break; } } break; } case LevelType.Fourth: { DropItem(new Gold(Utility.RandomMinMax(500, 600))); for (int i = 0; i < 2; i++) { int chance = Utility.Random(5); switch (chance) { case 0: { Map map = this.Map; BaseWeapon weapon = (map == Map.Tokuno) ? Loot.RandomSEWeapon() : Loot.RandomWeapon(); BaseRunicTool.ApplyAttributesTo(weapon, 4, 10, 50); DropItem(weapon); break; } case 1: { Map map = this.Map; BaseArmor armor = (map == Map.Tokuno) ? Loot.RandomSEArmor() : Loot.RandomSEArmor(); BaseRunicTool.ApplyAttributesTo(armor, 4, 10, 50); DropItem(armor); break; } case 2: { BaseJewel jewel = Loot.RandomJewelry(); BaseRunicTool.ApplyAttributesTo(jewel, 4, 10, 50); DropItem(jewel); break; } case 3: { Map map = this.Map; BaseHat hat = (map == Map.Tokuno) ? Loot.RandomSEHat() : Loot.RandomHat(); BaseRunicTool.ApplyAttributesTo(hat, 4, 10, 50); DropItem(hat); break; } case 4: { BaseWand wand = Loot.RandomWand(); DropItem(wand); break; } } } if (0.3 > Utility.RandomDouble()) { Item gem = Loot.RandomGem(); gem.Amount = Utility.RandomMinMax(1, 2); DropItem(gem); } break; } } }
public void OnTarget(Mobile from, object obj) { if (!IsChildOf(from.Backpack)) { from.SendLocalizedMessage(1042001); // That must be in your pack for you to use it. return; } if (obj is CreationOrb) { Item item = (Item)obj; CreationOrb eq = (CreationOrb)obj; if (!item.IsChildOf(from.Backpack)) { from.SendLocalizedMessage(1042001); // That must be in your pack for you to use it. return; } eq.UsesRemaining++; from.SendMessage("You imbue the item with arcane energy."); Consume(); } if (obj is BaseWand) { Item item = (Item)obj; BaseWand wn = (BaseWand)obj; if (!item.IsChildOf(from.Backpack)) { from.SendLocalizedMessage(1042001); // That must be in your pack for you to use it. return; } if (wn.Charges + 2 < 50) { wn.Charges += 2; } else { wn.Charges = 50; } from.SendMessage("You imbue the item with arcane energy."); Consume(); } if (obj is IArcaneEquip && obj is Item) { Item item = (Item)obj; IArcaneEquip eq = (IArcaneEquip)obj; if (!item.IsChildOf(from.Backpack)) { from.SendLocalizedMessage(1042001); // That must be in your pack for you to use it. return; } int charges = GetChargesFor(from); if (eq.IsArcane) { if (eq.CurArcaneCharges >= eq.MaxArcaneCharges) { from.SendMessage("That item is already fully charged."); } else { if (eq.CurArcaneCharges <= 0) { item.Hue = DefaultArcaneHue; } if ((eq.CurArcaneCharges + charges) > eq.MaxArcaneCharges) { eq.CurArcaneCharges = eq.MaxArcaneCharges; } else { eq.CurArcaneCharges += charges; } from.SendMessage("You recharge the item."); Consume(); } } else if (from.Skills[SkillName.Tailoring].Value >= 80.0) { bool isExceptional = false; if (item is BaseClothing) { isExceptional = (((BaseClothing)item).Quality == ClothingQuality.Exceptional); } else if (item is BaseArmor) { isExceptional = (((BaseArmor)item).Quality == ArmorQuality.Exceptional); } else if (item is BaseWeapon) { isExceptional = (((BaseWeapon)item).Quality == WeaponQuality.Exceptional); } if (isExceptional) { if (item is BaseClothing) { ((BaseClothing)item).Crafter = from; } else if (item is BaseArmor) { ((BaseArmor)item).Crafter = from; } else if (item is BaseWeapon) { ((BaseWeapon)item).Crafter = from; } eq.CurArcaneCharges = eq.MaxArcaneCharges = charges; item.Hue = DefaultArcaneHue; from.SendMessage("You enhance the item with your gem."); Consume(); } else { from.SendMessage("Only exceptional items can be enhanced with the gem."); } } else { from.SendMessage("You do not have enough skill in tailoring to enhance the item."); } } else { from.SendMessage("You cannot use the gem on that."); } }