summaryrefslogtreecommitdiff
path: root/npc/magic/transmigration.txt
diff options
context:
space:
mode:
authorJesusaves <cpntb1@ymail.com>2019-08-07 19:48:52 -0300
committerJesusaves <cpntb1@ymail.com>2019-08-07 19:48:52 -0300
commitc01ee518f81d117b92ac69f634c50e42f69eafe4 (patch)
treeab18122f3a04c3ccc6e57c14083278d5bb45dc9f /npc/magic/transmigration.txt
parent6b8f2f371ffded885490bc4cb265d9784385b4d2 (diff)
downloadserverdata-c01ee518f81d117b92ac69f634c50e42f69eafe4.tar.gz
serverdata-c01ee518f81d117b92ac69f634c50e42f69eafe4.tar.bz2
serverdata-c01ee518f81d117b92ac69f634c50e42f69eafe4.tar.xz
serverdata-c01ee518f81d117b92ac69f634c50e42f69eafe4.zip
Replace makepot with Transmigration/Transmutation general spell (TODO/WIP)
Diffstat (limited to 'npc/magic/transmigration.txt')
-rw-r--r--npc/magic/transmigration.txt62
1 files changed, 62 insertions, 0 deletions
diff --git a/npc/magic/transmigration.txt b/npc/magic/transmigration.txt
new file mode 100644
index 000000000..4e45d8510
--- /dev/null
+++ b/npc/magic/transmigration.txt
@@ -0,0 +1,62 @@
+// TMW2 script
+// Author: Jesusalva <admin@tmw2.org>
+//
+// Magic Script: TMW2_TRANSMIGRATION
+//
+// Attempts to make stuff from other stuff
+// This is actually referred as transmutation in human-readable forms, and
+// transmigration in scripts.
+
+- script sk#mkpot 32767,{
+ 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_TRANSMIGRATION, 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_TRANSMIGRATION);
+ 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_TRANSMIGRATION, rand2(4,11));
+ end;
+
+OnInit:
+ bindatcmd "sk-trans", "sk#mkpot::OnCall", 0, 100, 0;
+ end;
+}