public pvpbag(int amount) : base() { ItemID = m_Shapes[Utility.Random(m_Shapes.Length)]; for (int i = 0; i < 12; i++) DropItem(new TotalRefreshPotion()); for (int i = 0; i < 5; i++) DropItem(new GreaterAgilityPotion()); for (int i = 0; i < 12; i++) DropItem(new GreaterStrengthPotion()); for (int i = 0; i < 22; i++) DropItem(new GreaterHealPotion()); ; for (int i = 0; i < 18; i++) DropItem(new GreaterCurePotion()); for (int i = 0; i < 15; i++) DropItem(new GreaterExplosionPotion()); DropItem(new BagOfReagents(125)); for (int i = 0; i < 5; i++) { TrapableContainer cont = new Pouch(); cont.TrapPower = 1; cont.TrapType = TrapType.MagicTrap; DropItem(cont); } DropItem(new Bandage(100)); //DropItem( new WarHammer() ); //DropItem( new Kryss() ); }
private void AddItems(Container pack) { pack.DropItem(new BagOfReagents()); pack.DropItem(new Spellbook(ulong.MaxValue)); BaseWeapon weaps = new Halberd(); weaps.Quality = WeaponQuality.Exceptional; pack.DropItem(weaps); weaps = new Katana(); weaps.Quality = WeaponQuality.Exceptional; pack.DropItem(weaps); weaps = new ShortSpear(); weaps.Quality = WeaponQuality.Exceptional; pack.DropItem(weaps); weaps = new WarMace(); weaps.Quality = WeaponQuality.Exceptional; pack.DropItem(weaps); pack.DropItem(new GreaterPoisonPotion()); pack.DropItem(new GreaterPoisonPotion()); pack.DropItem(new GreaterHealPotion()); pack.DropItem(new GreaterHealPotion()); pack.DropItem(new GreaterHealPotion()); pack.DropItem(new GreaterHealPotion()); pack.DropItem(new GreaterCurePotion()); pack.DropItem(new GreaterCurePotion()); pack.DropItem(new GreaterCurePotion()); pack.DropItem(new TotalRefreshPotion()); pack.DropItem(new TotalRefreshPotion()); pack.DropItem(new GreaterExplosionPotion()); pack.DropItem(new GreaterExplosionPotion()); pack.DropItem(new GreaterExplosionPotion()); pack.DropItem(new Bandage(20)); for (int i = 0; i < 3; i++) { TrapableContainer cont = new Pouch(); cont.TrapType = TrapType.MagicTrap; cont.TrapPower = 1; cont.TrapLevel = 0; pack.DropItem(cont); } }
public override void OnDoubleClick( Mobile from ) { for ( int x = 0; x < 5; x++ ) { Pouch trappedBag = new Pouch(); trappedBag.TrapType = TrapType.MagicTrap; trappedBag.TrapLevel = 1; trappedBag.TrapPower = 1; if ( !from.AddToBackpack( trappedBag ) ) { from.SendMessage("Your backpack has too many items."); trappedBag.Delete(); } } }
public override void OnDoubleClick(Mobile from) { for (int x = 0; x < 5; x++) { Pouch trappedBag = new Pouch(); trappedBag.TrapType = TrapType.MagicTrap; trappedBag.TrapLevel = 1; trappedBag.TrapPower = 1; if (!from.AddToBackpack(trappedBag)) { from.SendMessage("Your backpack has too many items."); trappedBag.Delete(); } } }
public pvpbag(int amount) : base() { ItemID = m_Shapes[Utility.Random(m_Shapes.Length)]; for (int i = 0; i < 12; i++) { DropItem(new TotalRefreshPotion()); } for (int i = 0; i < 5; i++) { DropItem(new GreaterAgilityPotion()); } for (int i = 0; i < 12; i++) { DropItem(new GreaterStrengthPotion()); } for (int i = 0; i < 22; i++) { DropItem(new GreaterHealPotion()); } ; for (int i = 0; i < 18; i++) { DropItem(new GreaterCurePotion()); } for (int i = 0; i < 15; i++) { DropItem(new GreaterExplosionPotion()); } DropItem(new BagOfReagents(125)); for (int i = 0; i < 5; i++) { TrapableContainer cont = new Pouch(); cont.TrapPower = 1; cont.TrapType = TrapType.MagicTrap; DropItem(cont); } DropItem(new Bandage(100)); //DropItem( new WarHammer() ); //DropItem( new Kryss() ); }
public override void OnDoubleClick( Mobile from ) { if ( !from.InLOS( this.GetWorldLocation() ) ) { from.SendLocalizedMessage( 502800 ); // You can't see that. return; } if ( from.GetDistanceToSqrt( this.GetWorldLocation() ) > 4 ) { from.SendLocalizedMessage( 500446 ); // That is too far away. return; } from.SendMessage( "You have been given some supplies based on your skills." ); //4 pouches for (int i=0;i<4;++i) { Pouch p = new Pouch(); p.TrapType = TrapType.MagicTrap; p.TrapPower = 1; p.Hue = 0x25; PackItem( from, p ); } PackItem( from, new GreaterExplosionPotion() ); PackItem( from, new TotalRefreshPotion() ); PackItem( from, new GreaterCurePotion() ); GiveLeatherArmor( from ); if ( from.Skills[SkillName.Magery].Value >= 50.0 ) { PackItem( from, new BagOfReagents( 100 ) ); Spellbook book = Spellbook.FindRegular( from );//Spellbook book = from.GetSpellbook( typeof( Spellbook ) ) as Spellbook; if ( book != null ) { if ( book.Content != ulong.MaxValue ) book.Content = ulong.MaxValue; } else { book = new Spellbook(); book.Content = ulong.MaxValue;//all spells GiveItem( from, book ); } } else { for(int i=0;i<3;i++) PackItem( from, new GreaterHealPotion() ); } if ( from.Skills[SkillName.Healing].Value >= 50.0 ) PackItem( from, new Bandage( 100 ) ); if ( from.Skills[SkillName.Fencing].Value >= 50.0 ) { PackItem( from, new ShortSpear() ); if ( from.Skills[SkillName.Parry].Value >= 50.0 ) { GiveItem( from, new Kryss() ); GiveItem( from, new MetalKiteShield() ); } else { GiveItem( from, new Spear() ); } } if ( from.Skills[SkillName.Swords].Value >= 50.0 ) { if ( from.Skills[SkillName.Parry].Value >= 50.0 ) { GiveItem( from, new MetalKiteShield() ); } if ( from.Skills[SkillName.Lumberjacking].Value >= 50.0 ) { GiveItem( from, new Hatchet() ); PackItem( from, new LargeBattleAxe() ); } PackItem( from, new Halberd() ); GiveItem( from, new Katana() ); } if ( from.Skills[SkillName.Macing].Value >= 50.0 ) { if ( from.Skills[SkillName.Parry].Value >= 50.0 ) GiveItem( from, new MetalKiteShield() ); GiveItem( from, new WarAxe() ); PackItem( from, new WarHammer() ); } if ( from.Skills[SkillName.Archery].Value >= 50.0 ) { GiveItem( from, new Bow() ); PackItem( from, new Crossbow() ); PackItem( from, new HeavyCrossbow() ); PackItem( from, new Bolt( 100 ) ); PackItem( from, new Arrow( 100 ) ); } if ( from.Skills[SkillName.Tailoring].Value >= 50.0 ) { PackItem( from, new SewingKit() ); PackItem( from, new Cloth( 25 ) ); PackItem( from, new Leather( 100 ) ); } if ( from.Skills[SkillName.Blacksmith].Value >= 50.0 ) { PackItem( from, new Tongs() ); PackItem( from, new IronIngot( 300 ) ); } if ( from.Skills[SkillName.Poisoning].Value >= 50.0 ) { for (int i=0;i<5;i++) PackItem( from, new GreaterPoisonPotion() ); } }
public override void OnDoubleClick( Mobile from ) { //Al:Unified checks and added pedantic visibility check. if (!from.InRange(GetWorldLocation(), 4)) { from.SendLocalizedMessage(500446); // That is too far away. return; } else if ((!this.Visible) || !from.InLOS(this.GetWorldLocation())) { from.SendLocalizedMessage(502800); // You can't see that. return; } from.SendMessage( "You have been given some supplies based on your skills." ); // Ethereals // will just be given out, when GiveEthereals is true and the user does not have a GameEthereal nor is mounted. if (GiveEthereals) { Item eth = from.Backpack.FindItemByType(typeof(GameEthereal)); if (eth == null && !from.Mounted) PackItem(from, new GameEthereal()); } //4 pouches for (int i=0;i<4;++i) { Pouch p = new Pouch(); //p.TrapType = TrapType.MagicTrap; //p.TrapPower = 1; //p.Hue = 0x25; PackItem( from, p ); } //PackItem( from, new GreaterExplosionPotion() ); //PackItem( from, new TotalRefreshPotion() ); //PackItem( from, new GreaterCurePotion() ); GiveLeatherArmor( from ); Spellbook book = Spellbook.FindRegular(from);//Spellbook book = from.GetSpellbook( typeof( Spellbook ) ) as Spellbook; if (book != null) { if (book.Content != ulong.MaxValue) book.Content = ulong.MaxValue; } else { book = new Spellbook(); book.Content = ulong.MaxValue;//all spells book.LootType = LootType.Regular; book.Weight = 11; PackItem(from, book); } if ( from.Skills[SkillName.Magery].Value >= 50.0 ) { PackItem( from, new BagOfReagents( 100 ) ); if ( from.Skills[SkillName.Parry].Value >= 50.0 ) { GiveItem( from, new MetalKiteShield() ); } } else { PackItem(from, new BagOfReagents(10)); //for(int i=0;i<3;i++) //PackItem( from, new GreaterHealPotion() ); } if ( from.Skills[SkillName.Healing].Value >= 50.0 ) PackItem( from, new Bandage( 100 ) ); if ( from.Skills[SkillName.Fencing].Value >= 50.0 ) { PackItem( from, new Kryss() ); PackItem( from, new WarFork() ); PackItem( from, new ShortSpear() ); if ( from.Skills[SkillName.Parry].Value >= 50.0 ) { PackItem( from, new MetalKiteShield() ); } else { GiveItem( from, new Spear() ); } } if ( from.Skills[SkillName.Swords].Value >= 50.0 ) { if ( from.Skills[SkillName.Parry].Value >= 50.0 ) { GiveItem( from, new MetalKiteShield() ); } if ( from.Skills[SkillName.Lumberjacking].Value >= 50.0 ) { GiveItem( from, new Hatchet() ); PackItem( from, new LargeBattleAxe() ); } PackItem( from, new Halberd() ); GiveItem( from, new Katana() ); } if ( from.Skills[SkillName.Macing].Value >= 50.0 ) { if ( from.Skills[SkillName.Parry].Value >= 50.0 ) GiveItem( from, new MetalKiteShield() ); GiveItem( from, new QuarterStaff() ); PackItem( from, new WarHammer() ); PackItem( from, new WarAxe() ); } if ( from.Skills[SkillName.Archery].Value >= 50.0 ) { GiveItem( from, new Bow() ); PackItem( from, new Crossbow() ); PackItem( from, new HeavyCrossbow() ); PackItem( from, new Bolt( 100 ) ); PackItem( from, new Arrow( 100 ) ); } if ( from.Skills[SkillName.Tailoring].Value >= 50.0 ) { PackItem( from, new SewingKit() ); PackItem( from, new Cloth( 25 ) ); PackItem( from, new Leather( 100 ) ); } if ( from.Skills[SkillName.Blacksmith].Value >= 50.0 ) { PackItem( from, new Tongs() ); PackItem( from, new IronIngot( 300 ) ); } if ( from.Skills[SkillName.Poisoning].Value >= 50.0 ) { for (int i=0;i<3;i++) PackItem( from, new GreaterPoisonPotion() ); } }
/// <summary> /// Overrides the Double-Click option on the item. Supplies the /// player that double-clicks on the stone with appropriate gear /// based upon their skill levels. /// </summary> /// <param name="m">PlayerMobile to be supplied</param> public override void OnDoubleClick(Mobile m) { if (m.Backpack != null) { if (((m.X) == this.X || (m.X - 1) == this.X || (m.X + 1) == this.X) && ((m.Y) == this.Y || (m.Y - 1) == this.Y || (m.Y + 1) == this.Y)) { if (!Tourney) { Supply(new BagOfPots(8, 8, 4, 4, 5), m, typeof(BagOfPots)); for (int i = 1; i <= 5; i++) { TrapableContainer con = new Pouch(); con.TrapType = TrapType.MagicTrap; con.TrapLevel = 1; con.TrapPower = 1; if (!m.AddToBackpack(con)) { con.Delete(); } } } else { for (int i = 1; i <= 10; i++) { Item item = new TotalRefreshPotion(); if (!m.AddToBackpack(item)) { item.Delete(); } } } if (m.Skills[SkillName.Magery].Value >= 50.0 || m.Str <= 50) { EquipArmor(new LeatherLegs(), true, m, typeof(LeatherLegs), m_EquipHue); EquipArmor(new LeatherGorget(), true, m, typeof(LeatherGorget), m_EquipHue); EquipArmor(new LeatherGloves(), true, m, typeof(LeatherGloves), m_EquipHue); EquipArmor(new LeatherChest(), true, m, typeof(LeatherChest), m_EquipHue); EquipArmor(new LeatherArms(), true, m, typeof(LeatherArms), m_EquipHue); EquipArmor(new LeatherCap(), true, m, typeof(LeatherCap), m_EquipHue); } else { EquipArmor(new ChainLegs(), true, m, typeof(ChainLegs), m_EquipHue); EquipArmor(new LeatherGorget(), true, m, typeof(LeatherGorget), m_EquipHue); EquipArmor(new RingmailGloves(), true, m, typeof(RingmailGloves), m_EquipHue); EquipArmor(new ChainChest(), true, m, typeof(ChainChest), m_EquipHue); EquipArmor(new RingmailArms(), true, m, typeof(RingmailArms), m_EquipHue); EquipArmor(new CloseHelm(), true, m, typeof(CloseHelm), m_EquipHue); } if (m.Skills[SkillName.Magery].Value >= 50.0) { Container pack = m.Backpack; if (pack.FindItemByType(typeof(Spellbook)) == null) { Spellbook book = new Spellbook(); book.Content = ulong.MaxValue; book.LootType = LootType.Regular; if (!m.AddToBackpack(book)) { book.Delete(); } } Supply(new BagOfReagents(50), m, typeof(BagOfReagents)); } if (m.Skills[SkillName.Healing].Value >= 50.0 || m.Skills[SkillName.Veterinary].Value >= 50) { Supply(new Bandage(50), m, typeof(Bandage)); } if (m.Skills[SkillName.Swords].Value >= 50.0) { EquipItem(new Katana(), true, m, typeof(Katana)); EquipItem(new Halberd(), false, m, typeof(Halberd)); EquipItem(new BattleAxe(), false, m, typeof(BattleAxe)); } if (m.Skills[SkillName.Fencing].Value >= 50.0) { EquipItem(new Kryss(), true, m, typeof(Kryss)); EquipItem(new ShortSpear(), false, m, typeof(ShortSpear)); EquipItem(new Spear(), false, m, typeof(Spear)); } if (m.Skills[SkillName.Macing].Value >= 50.0) { EquipItem(new Mace(), true, m, typeof(Mace)); EquipItem(new QuarterStaff(), false, m, typeof(QuarterStaff)); EquipItem(new WarHammer(), false, m, typeof(WarHammer)); } if (m.Skills[SkillName.Archery].Value >= 50.0) { EquipItem(new Bow(), false, m, typeof(Bow)); EquipItem(new Crossbow(), false, m, typeof(Crossbow)); EquipItem(new HeavyCrossbow(), false, m, typeof(HeavyCrossbow)); Supply(new Arrow(50), m, typeof(Arrow)); Supply(new Bolt(50), m, typeof(Bolt)); } } else { m.SendMessage("You reach out but cannot seem to touch the stone..."); } } else { m.SendMessage("For some reason you don't seem to have a backpack..."); } }
/// <summary> /// Overrides the Double-Click option on the item. Supplies the /// player that double-clicks on the stone with appropriate gear /// based upon their skill levels. /// </summary> /// <param name="m">PlayerMobile to be supplied</param> public override void OnDoubleClick(Mobile m) { if (m.Backpack != null) { if (((m.X) == this.X || (m.X - 1) == this.X || (m.X + 1) == this.X) && ((m.Y) == this.Y || (m.Y - 1) == this.Y || (m.Y + 1) == this.Y)) { if (!Tourney) { Supply(new BagOfPots(8, 8, 4, 4, 5), m, typeof(BagOfPots)); for (int i = 1; i <= 5; i++) { TrapableContainer con = new Pouch(); con.TrapType = TrapType.MagicTrap; con.TrapLevel = 1; con.TrapPower = 1; if (!m.AddToBackpack(con)) con.Delete(); } } else { for (int i = 1; i <= 10; i++) { Item item = new TotalRefreshPotion(); if (!m.AddToBackpack(item)) item.Delete(); } } if (m.Skills[SkillName.Magery].Value >= 50.0 || m.Str <= 50) { EquipArmor(new LeatherLegs(), true, m, typeof(LeatherLegs), m_EquipHue); EquipArmor(new LeatherGorget(), true, m, typeof(LeatherGorget), m_EquipHue); EquipArmor(new LeatherGloves(), true, m, typeof(LeatherGloves), m_EquipHue); EquipArmor(new LeatherChest(), true, m, typeof(LeatherChest), m_EquipHue); EquipArmor(new LeatherArms(), true, m, typeof(LeatherArms), m_EquipHue); EquipArmor(new LeatherCap(), true, m, typeof(LeatherCap), m_EquipHue); } else { EquipArmor(new ChainLegs(), true, m, typeof(ChainLegs), m_EquipHue); EquipArmor(new LeatherGorget(), true, m, typeof(LeatherGorget), m_EquipHue); EquipArmor(new RingmailGloves(), true, m, typeof(RingmailGloves), m_EquipHue); EquipArmor(new ChainChest(), true, m, typeof(ChainChest), m_EquipHue); EquipArmor(new RingmailArms(), true, m, typeof(RingmailArms), m_EquipHue); EquipArmor(new CloseHelm(), true, m, typeof(CloseHelm), m_EquipHue); } if (m.Skills[SkillName.Magery].Value >= 50.0) { Container pack = m.Backpack; if (pack.FindItemByType(typeof(Spellbook)) == null) { Spellbook book = new Spellbook(); book.Content = ulong.MaxValue; book.LootType = LootType.Regular; if (!m.AddToBackpack(book)) book.Delete(); } Supply(new BagOfReagents(50), m, typeof(BagOfReagents)); } if (m.Skills[SkillName.Healing].Value >= 50.0 || m.Skills[SkillName.Veterinary].Value >= 50) { Supply(new Bandage(50), m, typeof(Bandage)); } if (m.Skills[SkillName.Swords].Value >= 50.0) { EquipItem(new Katana(), true, m, typeof(Katana)); EquipItem(new Halberd(), false, m, typeof(Halberd)); EquipItem(new BattleAxe(), false, m, typeof(BattleAxe)); } if (m.Skills[SkillName.Fencing].Value >= 50.0) { EquipItem(new Kryss(), true, m, typeof(Kryss)); EquipItem(new ShortSpear(), false, m, typeof(ShortSpear)); EquipItem(new Spear(), false, m, typeof(Spear)); } if (m.Skills[SkillName.Macing].Value >= 50.0) { EquipItem(new Mace(), true, m, typeof(Mace)); EquipItem(new QuarterStaff(), false, m, typeof(QuarterStaff)); EquipItem(new WarHammer(), false, m, typeof(WarHammer)); } if (m.Skills[SkillName.Archery].Value >= 50.0) { EquipItem(new Bow(), false, m, typeof(Bow)); EquipItem(new Crossbow(), false, m, typeof(Crossbow)); EquipItem(new HeavyCrossbow(), false, m, typeof(HeavyCrossbow)); Supply(new Arrow(50), m, typeof(Arrow)); Supply(new Bolt(50), m, typeof(Bolt)); } } else { m.SendMessage("You reach out but cannot seem to touch the stone..."); } } else { m.SendMessage("For some reason you don't seem to have a backpack..."); } }
private static void GiveItems( Mobile m ) { Container pack = m.Backpack; if ( pack == null ) { return; } // Frog Drop /* MetalBox box = new MetalBox(); box.Name = "<BASEFONT COLOR='#007FFF'>Frog Drop Collection"; box.LootType = LootType.Blessed; box.Locked = true; box.RequiredSkill = box.LockLevel = 1000; box.DropItem( new WorldMap() ); box.DropItem( new RedLeaves() ); box.DropItem( new Sand() ); box.DropItem( new SpecialHairDye() ); box.DropItem( new Rope() ); box.DropItem( new Vines() ); box.DropItem( new TribalPaint() ); box.DropItem( new RockArtifact() ); box.DropItem( new Runebook() ); box.DropItem( new Gold( 500 ) ); */ pack.DropItem( new FrogDropBag( true ) ); // Angel's Snack Pouch pouch = new Pouch(); pouch.DropItem( new HealPotion( 25 ) ); pouch.DropItem( new CurePotion( 25 ) ); pouch.DropItem( new RefreshPotion( 25 ) ); pack.DropItem( pouch ); // Forks Bag bag = new Bag(); bag.Name = "Forks"; bag.DropItem( new BistroFork() ); bag.DropItem( new GastroFork() ); bag.DropItem( new SilverFork() ); pack.DropItem( bag ); // Spellcasting Stuff bag = new Bag(); bag.Name = "Spell Casting Stuff"; TomeOfLostKnowledge tome = new TomeOfLostKnowledge(); tome.Name = "Tome Of Lost Knowledge [Replica]"; tome.Content = 18446744073709551615; bag.DropItem( tome ); bag.DropItem( new CompleteNecromancerSpellbook() ); bag.DropItem( new BagOfAllReagents() ); CrystallineRing ring = new CrystallineRing(); ring.Name = "Crystalline Ring [Replica]"; bag.DropItem( ring ); OrnamentOfTheMagician brace = new OrnamentOfTheMagician(); brace.Name = "Ornament Of The Magician [Replica]"; bag.DropItem( brace ); pack.DropItem( bag ); // Blue Clothing MetalBox box = new MetalBox(); box.Name = "Blue Clothing"; box.DropItem( new BlueHat() ); box.DropItem( new BlueArms() ); box.DropItem( new BlueShirt() ); box.DropItem( new BluePants() ); box.DropItem( new BlueBoots() ); box.DropItem( new BlueCloak() ); box.DropItem( new BlueSash() ); box.DropItem( new BlueBelt() ); WoodenBox wood = new WoodenBox(); wood.Name = "Tier One Deeds"; for ( int i = 0; i < 4; i++ ) { for ( int j = 0; j < 9; j++ ) wood.DropItem( new BlueEnhanceDeed( (BlueEnhance)( i + 1 ), 1 ) ); } box.DropItem( wood ); wood = new WoodenBox(); wood.Name = "Tier Two Deeds"; for ( int i = 0; i < 4; i++ ) { for ( int j = 0; j < 9; j++ ) wood.DropItem( new BlueEnhanceDeed( (BlueEnhance)( j + 1 ), 2 ) ); } box.DropItem( wood ); pack.DropItem( box ); }
private void AddItems(Container pack) { pack.DropItem(new BagOfReagents()); pack.DropItem(new Spellbook(ulong.MaxValue)); BaseWeapon weaps = new Halberd(); weaps.Quality = WeaponQuality.Exceptional; pack.DropItem(weaps); weaps = new Katana(); weaps.Quality = WeaponQuality.Exceptional; pack.DropItem(weaps); weaps = new ShortSpear(); weaps.Quality = WeaponQuality.Exceptional; pack.DropItem(weaps); weaps = new WarMace(); weaps.Quality = WeaponQuality.Exceptional; pack.DropItem(weaps); pack.DropItem(new GreaterPoisonPotion()); pack.DropItem(new GreaterPoisonPotion()); pack.DropItem(new GreaterHealPotion()); pack.DropItem(new GreaterHealPotion()); pack.DropItem(new GreaterHealPotion()); pack.DropItem(new GreaterHealPotion()); pack.DropItem(new GreaterCurePotion()); pack.DropItem(new GreaterCurePotion()); pack.DropItem(new GreaterCurePotion()); pack.DropItem(new TotalRefreshPotion()); pack.DropItem(new TotalRefreshPotion()); pack.DropItem(new GreaterExplosionPotion()); pack.DropItem(new GreaterExplosionPotion()); pack.DropItem(new GreaterExplosionPotion()); pack.DropItem(new Bandage(20)); for(int i = 0; i < 3; i++) { TrapableContainer cont = new Pouch(); cont.TrapType = TrapType.MagicTrap; cont.TrapPower = 1; cont.TrapLevel = 0; pack.DropItem(cont); } }
public override void OnDoubleClick(Mobile from) { //Al:Unified checks and added pedantic visibility check. if (!from.InRange(GetWorldLocation(), 4)) { from.SendLocalizedMessage(500446); // That is too far away. return; } else if ((!this.Visible) || !from.InLOS(this.GetWorldLocation())) { from.SendLocalizedMessage(502800); // You can't see that. return; } from.SendMessage("You have been given some supplies based on your skills."); // Ethereals // will just be given out, when GiveEthereals is true and the user does not have a GameEthereal nor is mounted. if (GiveEthereals) { Item eth = from.Backpack.FindItemByType(typeof(GameEthereal)); if (eth == null && !from.Mounted) { PackItem(from, new GameEthereal()); } } //4 pouches for (int i = 0; i < 4; ++i) { Pouch p = new Pouch(); //p.TrapType = TrapType.MagicTrap; //p.TrapPower = 1; //p.Hue = 0x25; PackItem(from, p); } //PackItem( from, new GreaterExplosionPotion() ); //PackItem( from, new TotalRefreshPotion() ); //PackItem( from, new GreaterCurePotion() ); GiveLeatherArmor(from); Spellbook book = Spellbook.FindRegular(from);//Spellbook book = from.GetSpellbook( typeof( Spellbook ) ) as Spellbook; if (book != null) { if (book.Content != ulong.MaxValue) { book.Content = ulong.MaxValue; } } else { book = new Spellbook(); book.Content = ulong.MaxValue;//all spells book.LootType = LootType.Regular; book.Weight = 11; PackItem(from, book); } if (from.Skills[SkillName.Magery].Value >= 50.0) { PackItem(from, new BagOfReagents(100)); if (from.Skills[SkillName.Parry].Value >= 50.0) { GiveItem(from, new MetalKiteShield()); } } else { PackItem(from, new BagOfReagents(10)); //for(int i=0;i<3;i++) //PackItem( from, new GreaterHealPotion() ); } if (from.Skills[SkillName.Healing].Value >= 50.0) { PackItem(from, new Bandage(100)); } if (from.Skills[SkillName.Fencing].Value >= 50.0) { PackItem(from, new Kryss()); PackItem(from, new WarFork()); PackItem(from, new ShortSpear()); if (from.Skills[SkillName.Parry].Value >= 50.0) { PackItem(from, new MetalKiteShield()); } else { GiveItem(from, new Spear()); } } if (from.Skills[SkillName.Swords].Value >= 50.0) { if (from.Skills[SkillName.Parry].Value >= 50.0) { GiveItem(from, new MetalKiteShield()); } if (from.Skills[SkillName.Lumberjacking].Value >= 50.0) { GiveItem(from, new Hatchet()); PackItem(from, new LargeBattleAxe()); } PackItem(from, new Halberd()); GiveItem(from, new Katana()); } if (from.Skills[SkillName.Macing].Value >= 50.0) { if (from.Skills[SkillName.Parry].Value >= 50.0) { GiveItem(from, new MetalKiteShield()); } GiveItem(from, new QuarterStaff()); PackItem(from, new WarHammer()); PackItem(from, new WarAxe()); } if (from.Skills[SkillName.Archery].Value >= 50.0) { GiveItem(from, new Bow()); PackItem(from, new Crossbow()); PackItem(from, new HeavyCrossbow()); PackItem(from, new Bolt(100)); PackItem(from, new Arrow(100)); } if (from.Skills[SkillName.Tailoring].Value >= 50.0) { PackItem(from, new SewingKit()); PackItem(from, new Cloth(25)); PackItem(from, new Leather(100)); } if (from.Skills[SkillName.Blacksmith].Value >= 50.0) { PackItem(from, new Tongs()); PackItem(from, new IronIngot(300)); } if (from.Skills[SkillName.Poisoning].Value >= 50.0) { for (int i = 0; i < 3; i++) { PackItem(from, new GreaterPoisonPotion()); } } }
public BagOfSpellBinding() : base() { #region Regents Pouch pouch = new Pouch(); pouch.DropItem(new BlackPearl(1000)); pouch.DropItem(new Bloodmoss(1000)); pouch.DropItem(new Garlic(1000)); pouch.DropItem(new Ginseng(1000)); pouch.DropItem(new MandrakeRoot(1000)); pouch.DropItem(new Nightshade(1000)); pouch.DropItem(new SulfurousAsh(1000)); pouch.DropItem(new SpidersSilk(1000)); pouch.DropItem(new BatWing(1000)); pouch.DropItem(new GraveDust(1000)); pouch.DropItem(new DaemonBlood(1000)); pouch.DropItem(new NoxCrystal(1000)); pouch.DropItem(new PigIron(1000)); DropItem(pouch); #endregion #region Clockwork pouch = new Pouch(); ArcaneGem gem = new ArcaneGem(); if (Core.ML) { gem.Amount = 1000; } pouch.DropItem(gem); for (int i = 0; i < 25; i++) { pouch.DropItem(new PowerCrystal()); } DropItem(pouch); #endregion #region Weapons pouch = new Pouch(); for (int i = 0; i < 10; i++) { pouch.DropItem(new GnarledStaff()); } for (int i = 0; i < 10; i++) { pouch.DropItem(new Mace()); pouch.DropItem(new WarMace()); pouch.DropItem(new HammerPick()); pouch.DropItem(new Scepter()); pouch.DropItem(new WarHammer()); } DropItem(pouch); #endregion #region Golems pouch = new Pouch(); Pouch pouchtwo = new Pouch(); // Blood Golem for (int i = 0; i < 10; i++) { pouchtwo.DropItem(new Head()); pouchtwo.DropItem(new LeftArm()); pouchtwo.DropItem(new RightArm()); pouchtwo.DropItem(new LeftLeg()); pouchtwo.DropItem(new RightLeg()); } pouch.DropItem(pouchtwo); // Clay Golem pouchtwo = new Pouch(); pouchtwo.DropItem(new FertileDirt(500)); for (int i = 0; i < 40; i++) { pouchtwo.DropItem(new Pitcher(BeverageType.Water)); } pouch.DropItem(pouchtwo); DropItem(pouch); #endregion #region Runebow pouch = new Pouch(); pouchtwo = new Pouch(); for (int i = 0; i < 10; i++) { pouchtwo.DropItem(new Crossbow()); pouchtwo.DropItem(new HeavyCrossbow()); pouchtwo.DropItem(new RepeatingCrossbow()); } pouch.DropItem(pouchtwo); pouch.DropItem(new ClockParts(10)); pouch.DropItem(new SextantParts(10)); pouch.DropItem(new Gears(50)); pouch.DropItem(new Springs(50)); pouch.DropItem(new IronIngot(100)); DropItem(pouch); #endregion }
public BagOfSpellBinding() : base() { #region Regents Pouch pouch = new Pouch(); pouch.DropItem( new BlackPearl( 1000 ) ); pouch.DropItem( new Bloodmoss( 1000 ) ); pouch.DropItem( new Garlic( 1000 ) ); pouch.DropItem( new Ginseng( 1000 ) ); pouch.DropItem( new MandrakeRoot( 1000 ) ); pouch.DropItem( new Nightshade( 1000 ) ); pouch.DropItem( new SulfurousAsh( 1000 ) ); pouch.DropItem( new SpidersSilk( 1000 ) ); pouch.DropItem( new BatWing( 1000 ) ); pouch.DropItem( new GraveDust( 1000 ) ); pouch.DropItem( new DaemonBlood( 1000 ) ); pouch.DropItem( new NoxCrystal( 1000 ) ); pouch.DropItem( new PigIron( 1000 ) ); DropItem( pouch ); #endregion #region Clockwork pouch = new Pouch(); ArcaneGem gem = new ArcaneGem(); if ( Core.ML ) gem.Amount = 1000; pouch.DropItem( gem ); for ( int i = 0; i < 25; i++ ) pouch.DropItem( new PowerCrystal() ); DropItem( pouch ); #endregion #region Weapons pouch = new Pouch(); for ( int i = 0; i < 10; i++ ) pouch.DropItem( new GnarledStaff() ); for ( int i = 0; i < 10; i++ ) { pouch.DropItem( new Mace() ); pouch.DropItem( new WarMace() ); pouch.DropItem( new HammerPick() ); pouch.DropItem( new Scepter() ); pouch.DropItem( new WarHammer() ); } DropItem( pouch ); #endregion #region Golems pouch = new Pouch(); Pouch pouchtwo = new Pouch(); // Blood Golem for ( int i = 0; i < 10; i++ ) { pouchtwo.DropItem( new Head() ); pouchtwo.DropItem( new LeftArm() ); pouchtwo.DropItem( new RightArm() ); pouchtwo.DropItem( new LeftLeg() ); pouchtwo.DropItem( new RightLeg() ); } pouch.DropItem( pouchtwo ); // Clay Golem pouchtwo = new Pouch(); pouchtwo.DropItem( new FertileDirt( 500 ) ); for ( int i = 0; i < 40; i++ ) pouchtwo.DropItem( new Pitcher( BeverageType.Water ) ); pouch.DropItem( pouchtwo ); DropItem( pouch ); #endregion #region Runebow pouch = new Pouch(); pouchtwo = new Pouch(); for ( int i = 0; i < 10; i++ ) { pouchtwo.DropItem( new Crossbow() ); pouchtwo.DropItem( new HeavyCrossbow() ); pouchtwo.DropItem( new RepeatingCrossbow() ); } pouch.DropItem( pouchtwo ); pouch.DropItem( new ClockParts( 10 ) ); pouch.DropItem( new SextantParts( 10 ) ); pouch.DropItem( new Gears( 50 ) ); pouch.DropItem( new Springs( 50 ) ); pouch.DropItem( new IronIngot( 100 ) ); DropItem( pouch ); #endregion }
protected virtual void FinishEffect(Point3D p, Map map, Mobile from) { from.RevealingAction(); from.ShilCheckSkill(SkillName.Fishing, points: 100); switch (Utility.Random(10)) { case 0: case 1: case 2: { BaseCreature spawn = null; if (Utility.Random(11) > 9) { spawn = new Kraken(); } else if (Utility.Random(11) > 9) { spawn = new Kraken(); } else if (Utility.Random(11) > 9) { spawn = new SeaSerpent(); } if (spawn != null) { from.SendFailureMessage("You caught something dangerous in your net!"); from.ShilCheckSkill(SkillName.Fishing, points: 100); spawn.MoveToWorld(from.Location, from.Map); } else { if (Utility.Random(6) == 2) { var sosBottle = new MessageInABottle(); from.AddToBackpack(sosBottle); } else { var pouch = new Pouch(); pouch.AddItem(new Gold(Utility.Random(100) + 250)); from.AddToBackpack(pouch); from.SendSuccessMessage("You find an old backpack!"); } } break; } case 3: { var shell = GetRandomShell(from); from.AddToBackpack(shell); from.SendSuccessMessage("You find something valuable!"); break; } case 4: case 5: { var magicFish = GetFish(from); if (magicFish == null) { from.AddToBackpack(new Fish(Utility.RandomMinMax(6, 12))); from.ShilCheckSkill(SkillName.Fishing, points: 100); } else { magicFish.Amount = Utility.RandomMinMax(1, 2); from.AddToBackpack(magicFish); from.ShilCheckSkill(SkillName.Fishing, points: 150); } from.SendSuccessMessage("You caught some fish."); break; } case 6: { if (Utility.Random(10) > 8) { from.AddToBackpack(new FishingTrophy1(from)); from.SendSuccessMessage("You catch a trophy!"); } else if (Utility.Random(10) > 8) { from.AddToBackpack(new FishingTrophy2(from)); from.SendSuccessMessage("You catch a trophy!"); } else { var bag = new Bag(); bag.AddItem(new Gold(Utility.Random(200) + 150)); from.AddToBackpack(bag); from.SendSuccessMessage("You find an old bag!"); } break; } case 7: case 8: { var remains = GetRemains(from); from.AddToBackpack(remains); from.SendSuccessMessage("You find human skeleton remains!"); break; } case 9: { var seaSerpent = new SeaSerpent(); Spawn(from.Location, from.Map, seaSerpent); from.SendFailureMessage("You did not catch anything, except..."); break; } } Delete(); }
public override void OnDoubleClick(Mobile from) { if (!from.InLOS(this.GetWorldLocation())) { from.SendLocalizedMessage(502800); // You can't see that. return; } if (from.GetDistanceToSqrt(this.GetWorldLocation()) > 4) { from.SendLocalizedMessage(500446); // That is too far away. return; } from.SendMessage("You have been given some supplies based on your skills."); //4 pouches for (int i = 0; i < 4; ++i) { Pouch p = new Pouch(); p.TrapType = TrapType.MagicTrap; p.TrapPower = 1; p.Hue = 0x25; PackItem(from, p); } PackItem(from, new GreaterExplosionPotion()); PackItem(from, new TotalRefreshPotion()); PackItem(from, new GreaterCurePotion()); GiveLeatherArmor(from); if (from.Skills[SkillName.Magery].Value >= 50.0) { PackItem(from, new BagOfReagents(100)); Spellbook book = Spellbook.FindRegular(from); //Spellbook book = from.GetSpellbook( typeof( Spellbook ) ) as Spellbook; if (book != null) { if (book.Content != ulong.MaxValue) { book.Content = ulong.MaxValue; } } else { book = new Spellbook(); book.Content = ulong.MaxValue; //all spells GiveItem(from, book); } } else { for (int i = 0; i < 3; i++) { PackItem(from, new GreaterHealPotion()); } } if (from.Skills[SkillName.Healing].Value >= 50.0) { PackItem(from, new Bandage(100)); } if (from.Skills[SkillName.Fencing].Value >= 50.0) { PackItem(from, new ShortSpear()); if (from.Skills[SkillName.Parry].Value >= 50.0) { GiveItem(from, new Kryss()); GiveItem(from, new MetalKiteShield()); } else { GiveItem(from, new Spear()); } } if (from.Skills[SkillName.Swords].Value >= 50.0) { if (from.Skills[SkillName.Parry].Value >= 50.0) { GiveItem(from, new MetalKiteShield()); } if (from.Skills[SkillName.Lumberjacking].Value >= 50.0) { GiveItem(from, new Hatchet()); PackItem(from, new LargeBattleAxe()); } PackItem(from, new Halberd()); GiveItem(from, new Katana()); } if (from.Skills[SkillName.Macing].Value >= 50.0) { if (from.Skills[SkillName.Parry].Value >= 50.0) { GiveItem(from, new MetalKiteShield()); } GiveItem(from, new WarAxe()); PackItem(from, new WarHammer()); } if (from.Skills[SkillName.Archery].Value >= 50.0) { GiveItem(from, new Bow()); PackItem(from, new Crossbow()); PackItem(from, new HeavyCrossbow()); PackItem(from, new Bolt(100)); PackItem(from, new Arrow(100)); } if (from.Skills[SkillName.Tailoring].Value >= 50.0) { PackItem(from, new SewingKit()); PackItem(from, new Cloth(25)); PackItem(from, new Leather(100)); } if (from.Skills[SkillName.Blacksmith].Value >= 50.0) { PackItem(from, new Tongs()); PackItem(from, new IronIngot(300)); } if (from.Skills[SkillName.Poisoning].Value >= 50.0) { for (int i = 0; i < 5; i++) { PackItem(from, new GreaterPoisonPotion()); } } }
public override void OnDoubleClick(Mobile from) { if (!from.InLOS(this.GetWorldLocation())) { from.SendLocalizedMessage(502800); // You can't see that. return; } if (from.GetDistanceToSqrt(this.GetWorldLocation()) > 4) { from.SendLocalizedMessage(500446); // That is too far away. return; } from.SendMessage("You have been given some supplies based on your skills."); //4 pouches for (int i = 0; i < 4; ++i) { Pouch p = new Pouch(); p.TrapType = TrapType.MagicTrap; p.TrapPower = 1; p.Hue = 0x25; PackItem(from, p); } if (from.Skills[SkillName.Magery].Value >= 50.0) { GiveLeatherArmor(from); } else { GiveBoneArmor(from); } if (from.Skills[SkillName.Magery].Value >= 50.0) { PackItem(from, new BagOfReagents()); } if (from.Skills[SkillName.Healing].Value >= 50.0) { PackItem(from, new Bandage(100)); } if (from.Skills[SkillName.Fencing].Value >= 50.0) { PackItem(from, new ShortSpear()); if (from.Skills[SkillName.Parry].Value >= 50.0) { GiveItem(from, new Kryss()); GiveItem(from, new MetalKiteShield()); } else { GiveItem(from, new Spear()); } } if (from.Skills[SkillName.Swords].Value >= 50.0) { if (from.Skills[SkillName.Parry].Value >= 50.0) { GiveItem(from, new MetalKiteShield()); } GiveItem(from, new Katana()); GiveItem(from, new Halberd()); } if (from.Skills[SkillName.Macing].Value >= 50.0) { if (from.Skills[SkillName.Parry].Value >= 50.0) { GiveItem(from, new MetalKiteShield()); } GiveItem(from, new WarAxe()); GiveItem(from, new WarHammer()); } if (from.Skills[SkillName.Archery].Value >= 50.0) { GiveItem(from, new HeavyCrossbow()); GiveItem(from, new Crossbow()); GiveItem(from, new Bow()); PackItem(from, new Bolt(100)); PackItem(from, new Arrow(100)); } if (from.Skills[SkillName.Poisoning].Value >= 50.0) { for (int i = 0; i < 5; i++) { PackItem(from, new GreaterPoisonPotion()); } } PlayerMobile pm = (PlayerMobile)(from); Container bag = new Bag(); Container backpack = pm.Backpack; for (int i = 0; i < 20; i++) { GreaterCurePotion cure = new GreaterCurePotion(); bag.DropItem(cure); } for (int i = 0; i < 20; i++) { GreaterHealPotion heal = new GreaterHealPotion(); bag.DropItem(heal); } for (int i = 0; i < 20; i++) { TotalRefreshPotion refresh = new TotalRefreshPotion(); bag.DropItem(refresh); } backpack.DropItem(bag); }