summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--db/re/item_db.conf7
-rw-r--r--db/re/skill_db.conf50
-rw-r--r--db/re/skill_tree.conf4
-rw-r--r--npc/014-5-1/sagratha.txt8
-rw-r--r--npc/magic/cuteheart.txt59
-rw-r--r--npc/magic/kalboo.txt59
-rw-r--r--npc/magic/kalspike.txt59
-rw-r--r--npc/magic/plantkingdom.txt58
-rw-r--r--npc/scripts.conf4
9 files changed, 302 insertions, 6 deletions
diff --git a/db/re/item_db.conf b/db/re/item_db.conf
index 5b2637555..2b0d999e1 100644
--- a/db/re/item_db.conf
+++ b/db/re/item_db.conf
@@ -11045,16 +11045,21 @@ item_db: (
// Skills for Aegis Shield, all beyond maximum level
// Cave Maggot, Maggot, Green Dragon, Slimes, Snakes
// Wolverns, Fairies, Yeti (sometimes Moggun), Terranite
+ // Plants, PoisonS.Mushroom, Fluffy, Mouboo
// TODO: Lizards, (Black)Scorpions, Moonshroom, Black Mamba
- // TODO: Centaur, <todo>, plants/shrooms/squirrels (roots/spores)
+ // TODO: Centaur, <todo>, shrooms/squirrels (spores)
skill TMW2_ZARKOR, 7;
skill TMW2_HALHISS, 12;
+ skill TMW2_KALBOO, 9;
skill TMW2_KALMURK, 10;
skill TMW2_KALWULF, 9;
+ skill TMW2_KALSPIKE, 9;
skill TMW2_DRAGOKIN, 5;
skill TMW2_LIMERIZER, 14;
+ skill TMW2_CUTEHEART, 9;
skill TMW2_STONEHEART, 9;
skill TMW2_FROZENHEART, 9;
+ skill TMW2_PLANTKINGDOM, 9;
skill TMW2_FAIRYKINGDOM, 9;
">
OnUnequipScript: <"
diff --git a/db/re/skill_db.conf b/db/re/skill_db.conf
index 1d94fc3af..b0aa9676c 100644
--- a/db/re/skill_db.conf
+++ b/db/re/skill_db.conf
@@ -38556,7 +38556,7 @@ skill_db: (
Quest: true
}
},
-// More skills: 20036~20042
+// More skills: 20036~20062
{
Id: 20036
Name: "TMW2_HALHISS"
@@ -38617,4 +38617,52 @@ skill_db: (
Quest: true
}
},
+{
+ Id: 20041
+ Name: "TMW2_KALBOO"
+ Description: "Kalboo"
+ MaxLevel: 9
+ SkillType: {
+ Self: true
+ }
+ SkillInfo: {
+ Quest: true
+ }
+},
+{
+ Id: 20042
+ Name: "TMW2_KALSPIKE"
+ Description: "Kal Spike"
+ MaxLevel: 9
+ SkillType: {
+ Self: true
+ }
+ SkillInfo: {
+ Quest: true
+ }
+},
+{
+ Id: 20043
+ Name: "TMW2_CUTEHEART"
+ Description: "Cute Heart"
+ MaxLevel: 9
+ SkillType: {
+ Self: true
+ }
+ SkillInfo: {
+ Quest: true
+ }
+},
+{
+ Id: 20044
+ Name: "TMW2_PLANTKINGDOM"
+ Description: "Plant Kingdom"
+ MaxLevel: 9
+ SkillType: {
+ Self: true
+ }
+ SkillInfo: {
+ Quest: true
+ }
+},
)
diff --git a/db/re/skill_tree.conf b/db/re/skill_tree.conf
index 6d6bb9616..ad193bc3b 100644
--- a/db/re/skill_tree.conf
+++ b/db/re/skill_tree.conf
@@ -55,6 +55,10 @@ Human: {
TMW2_FAIRYKINGDOM: 5
TMW2_FROZENHEART: 5
TMW2_STONEHEART: 5
+ TMW2_KALBOO: 5
+ TMW2_KALSPIKE: 5
+ TMW2_CUTEHEART: 5
+ TMW2_PLANTKINGDOM: 5
// Unrelated
ALL_INCCARRY: 0
diff --git a/npc/014-5-1/sagratha.txt b/npc/014-5-1/sagratha.txt
index ff5f565f0..7f01e2af6 100644
--- a/npc/014-5-1/sagratha.txt
+++ b/npc/014-5-1/sagratha.txt
@@ -411,14 +411,14 @@ function teachMagic {
break;
}
/*
- TODO Plants Lv 1
+ NEW Plants Lv 1
Kalmurk Lv 10
Zarkor Lv 15
- TODO Fluffy Lv 15
- TODO Poison Spiky Mushroom Lv 25
+ NEW Fluffy Lv 15
+ NEW Poison Spiky Mushroom Lv 25
Limerizer Lv 30
- TODO Mouboo Lv 35
+ NEW Mouboo Lv 35
Halhiss Lv 40
Wolvern Lv 45
diff --git a/npc/magic/cuteheart.txt b/npc/magic/cuteheart.txt
new file mode 100644
index 000000000..d273feb31
--- /dev/null
+++ b/npc/magic/cuteheart.txt
@@ -0,0 +1,59 @@
+// TMW2 script
+// Author: Jesusalva <admin@tmw2.org>
+//
+// Magic Script: TMW2_CUTEHEART
+//
+// Summons mouboo
+
+- script sk#cuteheart 32767,{
+ end;
+
+OnCall:
+ // Other requeriments: 1x WhiteFur
+ if (countitem(WhiteFur) < 1) {
+ dispbottom l("You need 1x @@ to cast this skill.", getitemlink(WhiteFur));
+ end;
+ }
+
+ // Check cooldown
+ if (@cuteheart_at > gettimetick(2)) {
+ dispbottom l("Skill is in cooldown for @@.", FuzzyTime(@cuteheart_at));
+ end;
+ }
+
+ // Setup
+ @sk=TMW2_CUTEHEART;
+ @mp=235;
+ @amp=45;
+
+ // Check if you have mana to cast
+ // MagicCheck(SkillID, Mana{, MP per level})
+ if (!MagicCheck(@sk, @mp, @amp))
+ end;
+
+ // Destroy reagents
+ delitem WhiteFur, 1;
+
+ // set cooldown
+ @cuteheart_at=gettimetick(2);
+ @cuteheart_at=@cuteheart_at+44;
+
+ // As usual, magic profeciency affects success ratio
+ if (rand(1,6) < abizit()+1) {
+ .@mobId=Fluffy;
+ // Summon Magic
+ // SummonMagic(SkillID, MobID{, SkillLevelPerMob=2{, Level Override}})
+ SummonMagic(@sk, .@mobId, 4, MAGIC_LVL+getskilllv(@sk)-1);
+ } else {
+ dispbottom l("The spell fails!");
+ }
+
+ // Get 4~5 mana experience point (this is NOT used by Mana Stone)
+ GetManaExp(@sk, rand(4,5));
+
+ end;
+
+OnInit:
+ bindatcmd "sk-cuteheart", "sk#cuteheart::OnCall", 0, 100, 0;
+ end;
+}
diff --git a/npc/magic/kalboo.txt b/npc/magic/kalboo.txt
new file mode 100644
index 000000000..6956cdc2a
--- /dev/null
+++ b/npc/magic/kalboo.txt
@@ -0,0 +1,59 @@
+// TMW2 script
+// Author: Jesusalva <admin@tmw2.org>
+//
+// Magic Script: TMW2_KALBOO
+//
+// Summons mouboo
+
+- script sk#kalboo 32767,{
+ end;
+
+OnCall:
+ // Other requeriments: 1x MoubooFigurine
+ if (countitem(MoubooFigurine) < 1) {
+ dispbottom l("You need 1x @@ to cast this skill.", getitemlink(MoubooFigurine));
+ end;
+ }
+
+ // Check cooldown
+ if (@kalboo_at > gettimetick(2)) {
+ dispbottom l("Skill is in cooldown for @@.", FuzzyTime(@kalboo_at));
+ end;
+ }
+
+ // Setup
+ @sk=TMW2_KALBOO;
+ @mp=250;
+ @amp=55;
+
+ // Check if you have mana to cast
+ // MagicCheck(SkillID, Mana{, MP per level})
+ if (!MagicCheck(@sk, @mp, @amp))
+ end;
+
+ // Destroy reagents
+ delitem MoubooFigurine, 1;
+
+ // set cooldown
+ @kalboo_at=gettimetick(2);
+ @kalboo_at=@kalboo_at+44;
+
+ // As usual, magic profeciency affects success ratio
+ if (rand(1,6) < abizit()+1) {
+ .@mobId=Mouboo;
+ // Summon Magic
+ // SummonMagic(SkillID, MobID{, SkillLevelPerMob=2{, Level Override}})
+ SummonMagic(@sk, .@mobId, 4, MAGIC_LVL+getskilllv(@sk)-1);
+ } else {
+ dispbottom l("The spell fails!");
+ }
+
+ // Get 4~5 mana experience point (this is NOT used by Mana Stone)
+ GetManaExp(@sk, rand(4,5));
+
+ end;
+
+OnInit:
+ bindatcmd "sk-kalboo", "sk#kalboo::OnCall", 0, 100, 0;
+ end;
+}
diff --git a/npc/magic/kalspike.txt b/npc/magic/kalspike.txt
new file mode 100644
index 000000000..f3d07c32c
--- /dev/null
+++ b/npc/magic/kalspike.txt
@@ -0,0 +1,59 @@
+// TMW2 script
+// Author: Jesusalva <admin@tmw2.org>
+//
+// Magic Script: TMW2_KALSPIKE
+//
+// Summons mouboo
+
+- script sk#kalspike 32767,{
+ end;
+
+OnCall:
+ // Other requeriments: 1x MushroomSpores
+ if (countitem(MushroomSpores) < 1) {
+ dispbottom l("You need 1x @@ to cast this skill.", getitemlink(MushroomSpores));
+ end;
+ }
+
+ // Check cooldown
+ if (@kalspike_at > gettimetick(2)) {
+ dispbottom l("Skill is in cooldown for @@.", FuzzyTime(@kalspike_at));
+ end;
+ }
+
+ // Setup
+ @sk=TMW2_KALSPIKE;
+ @mp=250;
+ @amp=55;
+
+ // Check if you have mana to cast
+ // MagicCheck(SkillID, Mana{, MP per level})
+ if (!MagicCheck(@sk, @mp, @amp))
+ end;
+
+ // Destroy reagents
+ delitem MushroomSpores, 1;
+
+ // set cooldown
+ @kalspike_at=gettimetick(2);
+ @kalspike_at=@kalspike_at+44;
+
+ // As usual, magic profeciency affects success ratio
+ if (rand(1,6) < abizit()+1) {
+ .@mobId=PoisonSpikyMushroom;
+ // Summon Magic
+ // SummonMagic(SkillID, MobID{, SkillLevelPerMob=2{, Level Override}})
+ SummonMagic(@sk, .@mobId, 4, MAGIC_LVL+getskilllv(@sk)-1);
+ } else {
+ dispbottom l("The spell fails!");
+ }
+
+ // Get 4~5 mana experience point (this is NOT used by Mana Stone)
+ GetManaExp(@sk, rand(4,5));
+
+ end;
+
+OnInit:
+ bindatcmd "sk-kalspike", "sk#kalspike::OnCall", 0, 100, 0;
+ end;
+}
diff --git a/npc/magic/plantkingdom.txt b/npc/magic/plantkingdom.txt
new file mode 100644
index 000000000..4afa8e010
--- /dev/null
+++ b/npc/magic/plantkingdom.txt
@@ -0,0 +1,58 @@
+// TMW2 script
+// Author: Jesusalva <admin@tmw2.org>
+//
+// Magic Script: TMW2_PLANTKINGDOM
+//
+// Summons plants
+
+- script sk#plantkingdom 32767,{
+ end;
+
+OnCall:
+ // Other requeriments: 2x Root
+ if (countitem(Root) < 2) {
+ dispbottom l("You need 2x @@ to cast this skill.", getitemlink(Root));
+ end;
+ }
+
+ // Check cooldown
+ if (@plantkingdom_at > gettimetick(2)) {
+ dispbottom l("Skill is in cooldown for @@.", FuzzyTime(@plantkingdom_at));
+ end;
+ }
+
+ // Setup
+ @sk=TMW2_PLANTKINGDOM;
+ @mp=300;
+ @amp=30;
+
+ // Check if you have mana to cast
+ // MagicCheck(SkillID, Mana{, MP per level})
+ if (!MagicCheck(@sk, @mp, @amp))
+ end;
+
+ // Destroy reagents
+ delitem Root, 2;
+
+ // set cooldown
+ @plantkingdom_at=gettimetick(2);
+ @plantkingdom_at=@plantkingdom_at+54;
+
+ // As usual, magic profeciency affects
+ if (rand(1,6) < abizit()+1) {
+ // Summon Magic
+ // SummonMagic(SkillID, MobID{, SkillLevelPerMob=2{, Level Override}})
+ SummonMagic(@sk, any(ShadowPlant, AlizarinPlant, CobaltPlant, MauvePlant, GambogePlant, PlushroomField, ChagashroomField, AlizarinPlant, CobaltPlant, MauvePlant, GambogePlant), 2, MAGIC_LVL+getskilllv(@sk)-1);
+ } else {
+ dispbottom l("The spell fails!");
+ }
+
+ // Get 3~4 mana experience point (this is NOT used by Mana Stone)
+ GetManaExp(@sk, rand(3,4));
+
+ end;
+
+OnInit:
+ bindatcmd "sk-plantkingdom", "sk#plantkingdom::OnCall", 0, 100, 0;
+ end;
+}
diff --git a/npc/scripts.conf b/npc/scripts.conf
index 823f1913a..cf4871aba 100644
--- a/npc/scripts.conf
+++ b/npc/scripts.conf
@@ -104,16 +104,20 @@
"npc/commands/ucp.txt",
// Magic Commands
+"npc/magic/cuteheart.txt",
"npc/magic/demure.txt",
"npc/magic/dragokin.txt",
"npc/magic/fairykingdom.txt",
"npc/magic/frozenheart.txt",
"npc/magic/halhiss.txt",
+"npc/magic/kalboo.txt",
"npc/magic/kalmurk.txt",
+"npc/magic/kalspike.txt",
"npc/magic/kalwulf.txt",
"npc/magic/limerizer.txt",
"npc/magic/mkpot.txt",
"npc/magic/parum.txt",
+"npc/magic/plantkingdom.txt",
"npc/magic/stoneheart.txt",
"npc/magic/zarkor.txt",