public override void InitOutfit() { Name = "Haldur the old fisherman"; Title = "(Haldur's Bait)"; CantWalk = true; Body = 400; Female = false; Race = Race.Human; Hue = 0x83F8; HairItemID = 8253; HairHue = 1150; FacialHairItemID = 0; FacialHairHue = 0; AddItem(new Server.Items.Boots(1138)); AddItem(new Server.Items.Shirt(969)); AddItem(new Server.Items.ShortPants(1118)); AddItem(new Server.Items.FloppyHat(1138)); FishingPole fp = new FishingPole(); fp.Hue = 1150; fp.Name = "Ancient Fishing Pole"; AddItem(fp); Blessed = true; }
public OldFisherman() { Name = "James"; Title = "Quest Giver"; Body = 0x190; CantWalk = true; Hue = 0x83F8; AddItem(new Server.Items.Boots(1138)); AddItem(new Server.Items.Shirt(969)); AddItem(new Server.Items.ShortPants(1118)); AddItem(new Server.Items.FloppyHat(1138)); FishingPole fp = new FishingPole(); fp.Hue = 1150; fp.Name = "Ancient Fishing Pole"; AddItem(fp); int hairHue = 1150; switch (Utility.Random(1)) { case 0: AddItem(new ShortHair(hairHue)); break; } Blessed = true; }
public override void OnAfterSpawn() { base.OnAfterSpawn(); Server.Misc.TavernPatrons.RemoveSomeGear(this, false); Server.Misc.MorphingTime.CheckNecromancer(this); Server.Items.EssenceBase.ColorCitizen(this); Item pole = new FishingPole(); pole.Movable = false; AddItem(pole); }
public override HarvestDefinition GetDefinition(int tileID, Item tool) { if (tool is FishingPole) { FishingPole pole = (FishingPole)tool; bool usingLavaHook = HasTypeHook(pole, HookType.Lava); if (usingLavaHook && ValidateSpecialTile(tileID)) return GetDefinitionFromSpecialTile(tileID); } return base.GetDefinition(tileID, tool); }
public override void OnDeath(Container c) { base.OnDeath(c); int drop = Utility.RandomMinMax(2, 5); for (int i = 0; i < drop; i++) { Type pieType = m_Pies[Utility.Random(m_Pies.Length)]; Item pie = Loot.Construct(pieType); if (pie != null) { c.DropItem(pie); } } drop = Utility.RandomMinMax(2, 5); for (int i = 0; i < drop; i++) { Type steakType = m_Steaks[Utility.Random(m_Steaks.Length)]; Item steak = Loot.Construct(steakType); if (steak != null) { c.DropItem(steak); } } c.DropItem(new MessageInABottle(c.Map)); c.DropItem(new SpecialFishingNet()); c.DropItem(new SpecialFishingNet()); c.DropItem(new SpecialFishingNet()); c.DropItem(new SpecialFishingNet()); FishingPole pole = new FishingPole(); BaseRunicTool.ApplyAttributesTo(pole, false, 0, Utility.RandomMinMax(2, 5), 50, 100); c.DropItem(pole); #region TOL if (Core.TOL) { SkillMasteryPrimer.CheckPrimerDrop(this); } #endregion }
public override void OnDeath(Container c) { base.OnDeath(c); FishingPole pole = new FishingPole(); BaseRunicTool.ApplyAttributesTo(pole, false, 0, Utility.RandomMinMax(2, 5), 50, 100); c.DropItem(pole); c.DropItem(new MessageInABottle(c.Map)); c.DropItem(new SpecialFishingNet()); c.DropItem(new SpecialFishingNet()); SkillMasteryPrimer.CheckPrimerDrop(this); }
public override bool SpecialHarvest(Mobile from, Item tool, HarvestDefinition def, Map map, Point3D loc) { PlayerMobile player = from as PlayerMobile; Container pack = from.Backpack; if (player != null) { QuestSystem qs = player.Quest; if (qs is CollectorQuest) { QuestObjective obj = qs.FindObjective(typeof(FishPearlsObjective)); if (obj != null && !obj.Completed) { if (Utility.RandomDouble() < 0.5) { player.SendLocalizedMessage(1055086, "", 0x59); // You pull a shellfish out of the water, and find a rainbow pearl inside of it. obj.CurProgress++; } else { player.SendLocalizedMessage(1055087, "", 0x2C); // You pull a shellfish out of the water, but it doesn't have a rainbow pearl. } return(true); } } if (from.Region.IsPartOf("Underworld")) { foreach (BaseQuest quest in player.Quests) { if (quest is SomethingFishy && Utility.RandomDouble() < 0.1) { Item red = new RedHerring(); from.AddToBackpack(red); player.SendLocalizedMessage(1095047, "", 0x23); // You pull a shellfish out of the water, but it doesn't have a rainbow pearl. return(true); } if (quest is ScrapingtheBottom && Utility.RandomDouble() < 0.1) { Item mug = new MudPuppy(); from.AddToBackpack(mug); player.SendLocalizedMessage(1095064, "", 0x23); // You pull a shellfish out of the water, but it doesn't have a rainbow pearl. return(true); } } } #region High Seas Charydbis if (tool is FishingPole && CharydbisSpawner.SpawnInstance != null && CharydbisSpawner.SpawnInstance.IsSummoned) { Item oracle = from.Backpack.FindItemByType(typeof(OracleOfTheSea)); FishingPole pole = tool as FishingPole; CharydbisSpawner sp = CharydbisSpawner.SpawnInstance; if (oracle != null && sp != null) { if (from.Map != sp.Map) { from.SendLocalizedMessage(1150861); //Charybdis have never been seen in these waters, try somewhere else. } else if (pole.BaitType == typeof(Charydbis) && from.Skills[SkillName.Fishing].Value >= 100) { if (sp.Charydbis == null && !sp.HasSpawned && sp.CurrentLocation.Contains(loc)) { Server.Multis.BaseBoat boat = Server.Multis.BaseBoat.FindBoatAt(from, from.Map); sp.SpawnCharydbis(from, loc, sp.Map, boat); sp.HasSpawned = true; pole.OnFishedHarvest(from, true); return(true); } else if (sp.LastLocation.Contains(loc)) { from.SendLocalizedMessage(1150862); //The charybdis has moved on from this location, consult Oracle Of The Seas again. } } else { from.SendLocalizedMessage(1150858); //You see a few bubbles, but no charybdis. } } } #endregion } return(false); }
public static EnhanceResult Invoke(Mobile from, CraftSystem craftSystem, ITool tool, Item item, CraftResource resource, Type resType, ref object resMessage) { if (item == null) { return(EnhanceResult.BadItem); } if (item is GargishNecklace || item is GargishEarrings) { return(EnhanceResult.BadItem); } if (!item.IsChildOf(from.Backpack)) { return(EnhanceResult.NotInBackpack); } IResource ires = item as IResource; if (!CanEnhance(item) || ires == null) { return(EnhanceResult.BadItem); } if (item is IArcaneEquip) { IArcaneEquip eq = (IArcaneEquip)item; if (eq.IsArcane) { return(EnhanceResult.BadItem); } } if (item is BaseWeapon && Spells.Mysticism.EnchantSpell.IsUnderSpellEffects(from, (BaseWeapon)item)) { return(EnhanceResult.Enchanted); } if (CraftResources.IsStandard(resource)) { return(EnhanceResult.BadResource); } int num = craftSystem.CanCraft(from, tool, item.GetType()); if (num > 0) { resMessage = num; return(EnhanceResult.None); } CraftItem craftItem = craftSystem.CraftItems.SearchFor(item.GetType()); if (IsSpecial(item, craftSystem)) { craftItem = craftSystem.CraftItems.SearchForSubclass(item.GetType()); } if (craftItem == null || craftItem.Resources.Count == 0) { return(EnhanceResult.BadItem); } #region Mondain's Legacy if (craftItem.ForceNonExceptional) { return(EnhanceResult.BadItem); } #endregion bool allRequiredSkills = false; if (craftItem.GetSuccessChance(from, resType, craftSystem, false, ref allRequiredSkills) <= 0.0) { return(EnhanceResult.NoSkill); } CraftResourceInfo info = CraftResources.GetInfo(resource); if (info == null || info.ResourceTypes.Length == 0) { return(EnhanceResult.BadResource); } CraftAttributeInfo attributes = info.AttributeInfo; if (attributes == null) { return(EnhanceResult.BadResource); } int resHue = 0, maxAmount = 0; if (!craftItem.ConsumeRes(from, resType, craftSystem, ref resHue, ref maxAmount, ConsumeType.None, ref resMessage)) { return(EnhanceResult.NoResources); } if (!CraftResources.IsStandard(ires.Resource)) { return(EnhanceResult.AlreadyEnhanced); } if (craftSystem is DefBlacksmithy) { AncientSmithyHammer hammer = from.FindItemOnLayer(Layer.OneHanded) as AncientSmithyHammer; if (hammer != null) { hammer.UsesRemaining--; if (hammer.UsesRemaining < 1) { hammer.Delete(); } } } int phys = 0, fire = 0, cold = 0, pois = 0, nrgy = 0; int dura = 0, luck = 0, lreq = 0, dinc = 0; int baseChance = 0; bool physBonus = false; bool fireBonus = false; bool coldBonus = false; bool nrgyBonus = false; bool poisBonus = false; bool duraBonus = false; bool luckBonus = false; bool lreqBonus = false; bool dincBonus = false; if (item is BaseWeapon) { BaseWeapon weapon = (BaseWeapon)item; if (weapon.ExtendedWeaponAttributes.AssassinHoned > 0) { return(EnhanceResult.BadItem); } baseChance = 20; dura = weapon.MaxHitPoints; luck = weapon.Attributes.Luck; lreq = weapon.WeaponAttributes.LowerStatReq; dinc = weapon.Attributes.WeaponDamage; fireBonus = (attributes.WeaponFireDamage > 0); coldBonus = (attributes.WeaponColdDamage > 0); nrgyBonus = (attributes.WeaponEnergyDamage > 0); poisBonus = (attributes.WeaponPoisonDamage > 0); duraBonus = (attributes.WeaponDurability > 0); luckBonus = (attributes.WeaponLuck > 0); lreqBonus = (attributes.WeaponLowerRequirements > 0); dincBonus = (dinc > 0); } else if (item is BaseArmor) { BaseArmor armor = (BaseArmor)item; baseChance = 20; phys = armor.PhysicalResistance; fire = armor.FireResistance; cold = armor.ColdResistance; pois = armor.PoisonResistance; nrgy = armor.EnergyResistance; dura = armor.MaxHitPoints; luck = armor.Attributes.Luck; lreq = armor.ArmorAttributes.LowerStatReq; physBonus = (attributes.ArmorPhysicalResist > 0); fireBonus = (attributes.ArmorFireResist > 0); coldBonus = (attributes.ArmorColdResist > 0); nrgyBonus = (attributes.ArmorEnergyResist > 0); poisBonus = (attributes.ArmorPoisonResist > 0); duraBonus = (attributes.ArmorDurability > 0); luckBonus = (attributes.ArmorLuck > 0); lreqBonus = (attributes.ArmorLowerRequirements > 0); dincBonus = false; } else if (item is FishingPole) { FishingPole pole = (FishingPole)item; baseChance = 20; luck = pole.Attributes.Luck; luckBonus = (attributes.ArmorLuck > 0); lreqBonus = (attributes.ArmorLowerRequirements > 0); dincBonus = false; } int skill = from.Skills[craftSystem.MainSkill].Fixed / 10; if (skill >= 100) { baseChance -= (skill - 90) / 10; } EnhanceResult res = EnhanceResult.Success; PlayerMobile user = from as PlayerMobile; if (physBonus) { CheckResult(ref res, baseChance + phys); } if (fireBonus) { CheckResult(ref res, baseChance + fire); } if (coldBonus) { CheckResult(ref res, baseChance + cold); } if (nrgyBonus) { CheckResult(ref res, baseChance + nrgy); } if (poisBonus) { CheckResult(ref res, baseChance + pois); } if (duraBonus) { CheckResult(ref res, baseChance + (dura / 40)); } if (luckBonus) { CheckResult(ref res, baseChance + 10 + (luck / 2)); } if (lreqBonus) { CheckResult(ref res, baseChance + (lreq / 4)); } if (dincBonus) { CheckResult(ref res, baseChance + (dinc / 4)); } if (user.NextEnhanceSuccess) { user.NextEnhanceSuccess = false; user.SendLocalizedMessage(1149969); // The magical aura that surrounded you disipates and you feel that your item enhancement chances have returned to normal. res = EnhanceResult.Success; } switch (res) { case EnhanceResult.Broken: { if (!craftItem.ConsumeRes(from, resType, craftSystem, ref resHue, ref maxAmount, ConsumeType.Half, ref resMessage)) { return(EnhanceResult.NoResources); } item.Delete(); break; } case EnhanceResult.Success: { if (!craftItem.ConsumeRes(from, resType, craftSystem, ref resHue, ref maxAmount, ConsumeType.All, ref resMessage)) { return(EnhanceResult.NoResources); } if (craftItem.CaddelliteCraft) { Caddellite.TryInfuse(from, item, craftSystem); } if (item is IResource) { ((IResource)item).Resource = resource; } if (item is BaseWeapon) { BaseWeapon w = (BaseWeapon)item; w.DistributeMaterialBonus(attributes); int hue = w.GetElementalDamageHue(); if (hue > 0) { w.Hue = hue; } } else if (item is BaseArmor) { ((BaseArmor)item).DistributeMaterialBonus(attributes); } else if (item is FishingPole) { ((FishingPole)item).DistributeMaterialBonus(attributes); } break; } case EnhanceResult.Failure: { if (!craftItem.ConsumeRes(from, resType, craftSystem, ref resHue, ref maxAmount, ConsumeType.Half, ref resMessage)) { return(EnhanceResult.NoResources); } break; } } return(res); }
public InternalSellInfo() { Add(typeof(FishingPole), FishingPole.GetSBSellValue()); //Add(typeof(FishCommissionCompletedDeed), FishCommissionCompletedDeed.GetSBSellValue()); }
public InternalBuyInfo() { Add(new GenericBuyInfo("Fishing Pole", typeof(FishingPole), FishingPole.GetSBPurchaseValue(), 50, 0xDC0, 0)); }
public static void VendorBeg(Mobile m, object targeted, double chance) { //Console.WriteLine("Chance: {0}", chance); Mobile t = (Mobile)targeted; Item reward = null; string rewardName = ""; if (chance > .99 && m.Skills.Begging.Base >= 100) //Vendor Only (1 hour cooldown) { int rand = Utility.Random(9); //0-9 (10 Total) (40% chance for a item) if (rand == 0) { reward = new RockArtifact(); //Rock Artifact rewardName = "A rock"; } else if (rand == 2) { reward = new BeggerCoins(24); //Special Coins rewardName = "24 dull slver coins."; } else if (rand == 4) //Fur Boots { reward = new FurBoots(); rewardName = "a pair of Fur Boots"; } else if (rand == 6) { reward = new FlowerGarland(); rewardName = "a flower Garland"; } } Console.WriteLine("RewardName (1) {0}", reward); if (chance > .95 && m.Skills.Begging.Base >= 90 && reward == null) { int rand = Utility.Random(9); Console.WriteLine("Random 2 is {0}", rand); if (rand == 0) { reward = new BegBedRoll(); rewardName = "Bedroll"; } else if (rand == 1) { reward = new Cookies(); rewardName = "Cookies"; } else if (rand == 3) { reward = new FishSteak(); rewardName = "Fish Steaks"; } else if (rand == 4) { reward = new FishingPole(); rewardName = "Fishing Pole"; } else if (rand == 6) { reward = new BeggerCoins(12); rewardName = "12 Dull Silver Coins."; } else if (rand == 7) { reward = new Turnip(); rewardName = "Turnip"; } else if (rand == 9) { reward = new CeramicMug(); rewardName = "Ceramic Mug"; } } Console.WriteLine("RewardName (2) {0}", reward); if (reward == null) { JunkBeg(m, t, chance); } else { Reward(m, t, reward, rewardName); } }
public override void OnDoubleClick(Mobile from) { if (!from.Alive && from.AccessLevel == AccessLevel.Player) { from.SendMessage("You must be alive to use this."); return; } if (!from.InRange(Location, 2) && from.AccessLevel == AccessLevel.Player) { from.SendMessage("You are too far away to activate this."); return; } if (!from.CanBeginAction(typeof(FishingPole))) { from.SendMessage("You must wait a few moments before attempting to use that again."); return; } if (m_CurrentItem < m_MaxItems) { bool hasFishingPole = false; FishingPole fishingPole = from.FindItemOnLayer(Layer.TwoHanded) as FishingPole; if (fishingPole != null) { hasFishingPole = true; } from.BeginAction(typeof(FishingPole)); Timer.DelayCall(TimeSpan.FromSeconds(5), delegate { if (from != null) { from.EndAction(typeof(FishingPole)); } }); from.Direction = Utility.GetDirection(from.Location, Location); if (hasFishingPole) { from.SendMessage("You fish around within the fountain's water..."); from.Animate(11, 5, 1, true, false, 0); from.RevealingAction(); Timer.DelayCall(TimeSpan.FromSeconds(1), delegate { if (this == null) { return; } if (Deleted) { return; } if (from == null) { return; } if (!from.Alive || from.Deleted) { return; } Effects.PlaySound(Location, Map, 0x027); }); } else { from.SendMessage("You kneel down and begin searching the fountain's water. You feel, however, that a fishing pole and some skill at fishing would be of great benefit here..."); from.RevealingAction(); from.Animate(32, 5, 1, true, false, 0); //Bend Down Effects.PlaySound(Location, Map, 0x027); } int waterCount = Utility.RandomMinMax(1, 2); for (int a = 0; a < waterCount; a++) { TimedStatic water = new TimedStatic(Utility.RandomList(4650, 4651, 4653, 4654, 4655), 10); water.Name = "foul water"; water.Hue = 1107; Point3D waterLocation = new Point3D(Location.X + Utility.RandomMinMax(-1, 1), Location.Y + Utility.RandomMinMax(-1, 1), Location.Z); SpellHelper.AdjustField(ref waterLocation, Map, 12, false); water.MoveToWorld(waterLocation, Map); } Timer.DelayCall(TimeSpan.FromSeconds(5), delegate { if (from == null) { return; } if (from.Deleted || !from.Alive) { return; } if (this == null) { return; } if (Deleted) { return; } RetrievalAttempt(from, hasFishingPole); }); } else { from.SendMessage("The fountain's water appears to be devoid of life and items."); } }
public static void CheckTournament(Mobile from, Mobile fisher, Item dropped) { if (!isRunning) { // Only giving a extra reward for 10+ fish from.SendMessage("A reward has been placed in your bank box."); Bag bag = new Bag(); bag.DropItem(new BankCheck(250 * dropped.Amount)); bag.DropItem(new Harpoon(Utility.RandomMinMax(2, 5))); switch (Utility.Random(2)) { case 0: bag.DropItem(new SpecialFishingNet()); break; case 1: bag.DropItem(new MessageInABottle()); break; } if (dropped.Amount > 19) { fisher.Say("Wow! You caught {0}. You should have placed in the tournament! Better luck next time!", dropped.Amount.ToString()); bag.DropItem(new PowerScroll(SkillName.Fishing, 105)); } else if (dropped.Amount > 18) { fisher.Say("Wow! You caught 19. You were so close! Better luck next time!"); bag.DropItem(new FabledFishingNet()); } else if (dropped.Amount > 17) { fisher.Say("Wow! You caught 18. You did amazing. Better luck next time!"); FloppyHat fh = new FloppyHat(); fh.Hue = Utility.RandomMinMax(2498, 2640); fh.Name = "a designer fishing hat"; fh.LootType = LootType.Blessed; bag.DropItem(fh); } else if (dropped.Amount > 16) { fisher.Say("Wow! You caught 17. Almost... Maybe next time!"); Sandals s = new Sandals(); s.Hue = Utility.RandomMinMax(1910, 2040); s.Name = "a designer fishing sandals"; s.LootType = LootType.Blessed; bag.DropItem(s); } else if (dropped.Amount > 15) { fisher.Say("You caught 16. Thats not bad but you could have done better! Maybe next time!"); FishingPole fp = new FishingPole(); fp.Hue = Utility.RandomMinMax(1150, 1175); fp.Name = "a painted fishing pole"; bag.DropItem(fp); } else if (dropped.Amount > 14) { fisher.Say("You caught 15. Bad luck! Maybe next time!"); Item junk = new Item(Utility.RandomList(17784, 17785)); junk.Name = "a sea horse statue"; bag.DropItem(junk); } else if (dropped.Amount > 13) { fisher.Say("You caught 14. Maybe try different waters next time!"); Item junk = new Item(Utility.RandomList(17786, 17787)); junk.Name = "a mermaid statue"; bag.DropItem(junk); } else if (dropped.Amount > 12) { fisher.Say("You caught 13. Did you bring ale? You have to bring ale!"); Spellbook sb = new Spellbook(); sb.Name = "Fishing For Dummies"; sb.Hue = 52; bag.DropItem(sb); } else if (dropped.Amount > 11) { fisher.Say("You caught 12. Try different bait next time!"); Item junk = new Item(Utility.RandomList(0x1EA3, 0x1EA4, 0x1EA5, 0x1EA6)); junk.Name = "a worn fishing net"; bag.DropItem(junk); } else if (dropped.Amount > 10) { fisher.Say("You caught 11..."); Item junk = new Item(0x154D); junk.Name = "a barrel of fish (Not for shooting)"; bag.DropItem(junk); } else if (dropped.Amount > 9) { fisher.Say("You only caught 10. Half way... is still to far!"); } else if (dropped.Amount > 8) { fisher.Say("You only caught 9. Half way... is still to far!"); } else if (dropped.Amount > 7) { fisher.Say("You only caught 8... How long did you say you have been fishing?"); } else if (dropped.Amount > 6) { fisher.Say("You only caught 7... Find a lot of shoes do you?"); } else if (dropped.Amount > 5) { fisher.Say("You only caught 6... Ever consider taking up something more productivy like bird watching?"); } else if (dropped.Amount > 4) { fisher.Say("You only caught 5... Ever consider taking up something more exciting like... baskit weaving?"); } else if (dropped.Amount > 3) { fisher.Say("You caught 4!?! Was your cat on fire?"); } else if (dropped.Amount > 2) { fisher.Say("You caught 3!?! Were you sleeping all this time?"); } else if (dropped.Amount > 1) { fisher.Say("Two fish? Maybe you should keep them in a tank and hope they multiply!"); } else if (dropped.Amount > 0) { fisher.Say("One... One fish? Did someone hand this to you? Did you find this flopping around town? Tell me you didn't fish and catch this one lonely fish?"); } BankBox box = from.BankBox; box.DropItem(bag); dropped.Delete(); } else if (isRunning) { if (DateTime.UtcNow.DayOfWeek == TournyOne) { BankBox box = from.BankBox; if (from.Backpack.ConsumeTotal(typeof(ToxicTrout), 20) && firstPlace == null) { firstPlace = from.Name; World.Broadcast(0x35, true, "{0} has came in first in todays fishing tournament!", firstPlace); fisher.Say("Congrats! You are the first person to catch twenty toxic trout! Well done!"); from.SendMessage("Your reward has been placed into your bank box!"); box.DropItem(GiveReward(from, 1)); } else if (from.Backpack.ConsumeTotal(typeof(ToxicTrout), 20) && secondPlace == null) { secondPlace = from.Name; World.Broadcast(0x35, true, "{0} has placed 2nd in todays fishing tournament!", firstPlace); fisher.Say("Congrats! You are the second person to catch twenty toxic trout! Well done!"); from.SendMessage("Your reward has been placed into your bank box!"); box.DropItem(GiveReward(from, 2)); } else if (from.Backpack.ConsumeTotal(typeof(ToxicTrout), 20) && thirdPlace == null) { isRunning = false; thirdPlace = from.Name; World.Broadcast(0x35, true, "{0} has placed 3rd in todays fishing tournament!", firstPlace); World.Broadcast(0x35, true, "The tournament is now over! Congratulations to todays winners!", firstPlace); World.Broadcast(0x35, true, "If you didnt win today bring what fish you gathered and drop them on a tournament master to claim a consolation prize!", firstPlace); fisher.Say("Congrats! You are the third person to catch twenty toxic trout! Well done!"); from.SendMessage("Your reward has been placed into your bank box!"); box.DropItem(GiveReward(from, 3)); } else { fisher.Say("You need to catch and bring me twenty toxic trout before anyone else to win this tournament!"); fisher.Say("Why are you standing around here! Go fish!!!"); } } else if (DateTime.UtcNow.DayOfWeek == TournyTwo) { BankBox box = from.BankBox; if (from.Backpack.ConsumeTotal(typeof(CottonCandySwordfish), 20) && firstPlace == null) { firstPlace = from.Name; World.Broadcast(0x35, true, "{0} has came in first in todays fishing tournament!", firstPlace); fisher.Say("Congrats! You are the first person to catch twenty cotton candy swordfish! Well done!"); from.SendMessage("Your reward has been placed into your bank box!"); box.DropItem(GiveReward(from, 1)); } else if (from.Backpack.ConsumeTotal(typeof(CottonCandySwordfish), 20) && secondPlace == null) { secondPlace = from.Name; World.Broadcast(0x35, true, "{0} has placed 2nd in todays fishing tournament!", firstPlace); fisher.Say("Congrats! You are the second person to catch twenty cotton candy swordfish! Well done!"); from.SendMessage("Your reward has been placed into your bank box!"); box.DropItem(GiveReward(from, 2)); } else if (from.Backpack.ConsumeTotal(typeof(CottonCandySwordfish), 20) && thirdPlace == null) { isRunning = false; thirdPlace = from.Name; World.Broadcast(0x35, true, "{0} has placed 3rd in todays fishing tournament!", firstPlace); World.Broadcast(0x35, true, "The tournament is now over! Congratulations to todays winners!", firstPlace); World.Broadcast(0x35, true, "If you didnt win today bring what fish you gathered and drop them on a tournament master to claim a consolation prize!", firstPlace); fisher.Say("Congrats! You are the third person to catch twenty cotton candy swordfish! Well done!"); from.SendMessage("Your reward has been placed into your bank box!"); box.DropItem(GiveReward(from, 3)); } else { fisher.Say("You need to catch and bring me twenty cotton candy swordfish before anyone else to win this tournament!"); fisher.Say("Why are you standing around here! Go fish!!!"); } } else if (DateTime.UtcNow.DayOfWeek == TournyThree) { BankBox box = from.BankBox; if (from.Backpack.ConsumeTotal(typeof(MalasMoonfish), 20) && firstPlace == null) { firstPlace = from.Name; World.Broadcast(0x35, true, "{0} has came in first in todays fishing tournament!", firstPlace); fisher.Say("Congrats! You are the first person to catch twenty malas moonfish! Well done!"); from.SendMessage("Your reward has been placed into your bank box!"); box.DropItem(GiveReward(from, 1)); } else if (from.Backpack.ConsumeTotal(typeof(MalasMoonfish), 20) && secondPlace == null) { secondPlace = from.Name; World.Broadcast(0x35, true, "{0} has placed 2nd in todays fishing tournament!", firstPlace); fisher.Say("Congrats! You are the second person to catch twenty malas moonfish! Well done!"); from.SendMessage("Your reward has been placed into your bank box!"); box.DropItem(GiveReward(from, 2)); } else if (from.Backpack.ConsumeTotal(typeof(MalasMoonfish), 20) && thirdPlace == null) { isRunning = false; thirdPlace = from.Name; World.Broadcast(0x35, true, "{0} has placed 3rd in todays fishing tournament!", firstPlace); World.Broadcast(0x35, true, "The tournament is now over! Congratulations to todays winners!", firstPlace); World.Broadcast(0x35, true, "If you didnt win today bring what fish you gathered and drop them on a tournament master to claim a consolation prize!", firstPlace); fisher.Say("Congrats! You are the third person to catch twenty malas moonfish! Well done!"); from.SendMessage("Your reward has been placed into your bank box!"); box.DropItem(GiveReward(from, 3)); } else { fisher.Say("You need to catch and bring me twenty malas moonfish before anyone else to win this tournament!"); fisher.Say("Why are you standing around here! Go fish!!!"); } } else // Why? Because thats the kinda world we live in... { fisher.Say("I am sorry, I musta got my days mixxed up!"); isRunning = false; } } else { if (firstPlace != null && secondPlace != null && thirdPlace != null) { fisher.Say("Todays tournament has ended! Todays winners are {0}, {1), and {2}!", firstPlace, secondPlace, thirdPlace); } else { fisher.Say("Todays tournament has ended!"); } } }