From b9bb77adf044c9301ad3b28a7305391a9266d9a5 Mon Sep 17 00:00:00 2001 From: Jesusaves Date: Wed, 26 Dec 2018 03:24:38 -0200 Subject: New Skill: Make Haste Potion! Audsbel needs your help again, by the way... --- npc/magic/mkpot.txt | 70 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) create mode 100644 npc/magic/mkpot.txt (limited to 'npc/magic') diff --git a/npc/magic/mkpot.txt b/npc/magic/mkpot.txt new file mode 100644 index 000000000..c9182b177 --- /dev/null +++ b/npc/magic/mkpot.txt @@ -0,0 +1,70 @@ +// TMW2 script +// Author: Jesusalva +// +// Magic Script: TMW2_MKPOT +// +// Attempts to make a haste potion from Mouboo Milk and Plushroom. +// May make sewer water on failure. +// TODO: Using too much transmutation magic may have dire consequences! Like, uh, transmutating your head! +// Nah, it is probably just propaganda... I hope. ¬.¬ + +- script sk#mkpot 32767,{ + end; + +/* +OnFriendlyDeath: + emote 4; + end; +*/ + +OnCall: + // Other requeriments + if (countitem(Plushroom) < 10 || !countitem(Milk)) { + dispbottom l("You need @@ @@ and @@ to cast this skill.", 10, getitemlink(Plushroom), getitemlink(Milk)); + end; + } + + // Check cooldown + if (@mkpot_at > gettimetick(2)) { + dispbottom l("Skill is in cooldown for @@.", FuzzyTime(@mkpot_at)); + end; + } + + // Check requisites + if (!MagicCheck(TMW2_MKPOT, 185, -5)) + end; + + // Consume items + delitem Plushroom, 10; + delitem Milk, 1; + + // Create the stuff based on MAGIC_EXP + // The closer to zero, best; + // Each 3 mexp reduces chance to get a fail + // Each skill level reduces chances to get a fail + .@r=rand(141,181)-(MAGIC_EXP/3)-getskilllv(TMW2_MKPOT); + if (.@r < 21) { + // Get up to 6 Haste Potions depending on your skill. + getitem HastePotion, abizit()+1; + } else if (.@r < 82) { + getitem any(BottleOfTonoriWater, BottleOfWoodlandWater, BottleOfDivineWater, Milk, CelestiaTea, PileOfAsh), 1; + } else if (.@r < 122) { + getitem any(BottleOfSewerWater, Milk, CelestiaTea, PileOfAsh), 1; + } else if (.@r < 162) { + getitem any(BottleOfSewerWater, BottleOfSewerWater, PileOfAsh), 1; + } else { + dispbottom l("Your items vanishes into thin air. What?!"); + } + + // set cooldown + @mkpot_at=gettimetick(2); + @mkpot_at=@mkpot_at+6; + + // Get a few mana experience points (this is NOT used by Mana Stone) + GetManaExp(TMW2_MKPOT, rand(2,4)); + end; + +OnInit: + bindatcmd "sk-mkpot", "sk#mkpot::OnCall", 0, 100, 0; + end; +} -- cgit v1.2.3-60-g2f50