diff options
-rw-r--r-- | db/re/item_db.conf | 4 | ||||
-rw-r--r-- | db/re/skill_db.conf | 12 | ||||
-rw-r--r-- | db/re/skill_tree.conf | 1 | ||||
-rw-r--r-- | npc/magic/fairykingdom.txt | 59 | ||||
-rw-r--r-- | npc/scripts.conf | 1 |
5 files changed, 76 insertions, 1 deletions
diff --git a/db/re/item_db.conf b/db/re/item_db.conf index fd097d64e..21d6cea49 100644 --- a/db/re/item_db.conf +++ b/db/re/item_db.conf @@ -11174,7 +11174,8 @@ item_db: ( // Skills for Aegis Shield, all beyond maximum level // Cave Maggot, Maggot, Green Dragon, Slimes, Snakes - // TODO: Wolverns, Lizards, (Black)Scorpions, Fairies, + // Wolverns + // TODO: Lizards, (Black)Scorpions, Fairies, // TODO: Yeti (sometimes Moggun), Moonshroom, Terranite // TODO: Black Mamba, Centaur, <todo>, plants/shrooms/squirrels (roots/spores) skill TMW2_ZARKOR, 7; @@ -11183,6 +11184,7 @@ item_db: ( skill TMW2_LIMERIZER, 14; skill TMW2_HALHISS, 12; skill TMW2_KALWULF, 9; + skill TMW2_FAIRYKINGDOM, 9; "> OnUnequipScript: <" @min = 20; diff --git a/db/re/skill_db.conf b/db/re/skill_db.conf index 710310701..5d1e254f4 100644 --- a/db/re/skill_db.conf +++ b/db/re/skill_db.conf @@ -38558,4 +38558,16 @@ skill_db: ( Quest: true } }, +{ + Id: 20038 + Name: "TMW2_FAIRYKINGDOM" + Description: "Fairy Kingdom" + MaxLevel: 9 + SkillType: { + Self: true + } + SkillInfo: { + Quest: true + } +}, ) diff --git a/db/re/skill_tree.conf b/db/re/skill_tree.conf index 59cb7cf89..732948d99 100644 --- a/db/re/skill_tree.conf +++ b/db/re/skill_tree.conf @@ -51,6 +51,7 @@ Human: { TMW2_LIMERIZER: 5 TMW2_HALHISS: 8 TMW2_KALWULF: 5 + TMW2_FAIRYKINGDOM: 5 // Unrelated ALL_INCCARRY: 0 diff --git a/npc/magic/fairykingdom.txt b/npc/magic/fairykingdom.txt new file mode 100644 index 000000000..3490ab823 --- /dev/null +++ b/npc/magic/fairykingdom.txt @@ -0,0 +1,59 @@ +// TMW2 script +// Author: Jesusalva <admin@tmw2.org> +// +// Magic Script: TMW2_FAIRYKINGDOM +// +// Summons snakes (mountain snakes if GHQ was completed and enough skill) + +- script sk#fairykingdom 32767,{ + end; + +OnCall: + // Other requeriments: 1x Fluo Powder + if (countitem(FluoPowder) < 1) { + dispbottom l("You need 1x @@ to cast this skill.", getitemlink(FluoPowder)); + end; + } + + // Check cooldown + if (@fairykingdom_at > gettimetick(2)) { + dispbottom l("Skill is in cooldown for @@.", FuzzyTime(@fairykingdom_at)); + end; + } + + // Setup + @sk=TMW2_FAIRYKINGDOM; + @mp=400; + @amp=42; + + // Check if you have mana to cast + // MagicCheck(SkillID, Mana{, MP per level}) + if (!MagicCheck(@sk, @mp, @amp)) + end; + + // Destroy reagents + delitem FluoPowder, 1; + + // set cooldown + @fairykingdom_at=gettimetick(2); + @fairykingdom_at=@fairykingdom_at+47-abizit(); + + // As usual, magic profeciency affects success ratio + if (rand(1,6) < abizit()+1) { + .@mobId=any(FireFairy, EarthFairy, WaterFairy, WindFairy, PoisonFairy); + // 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 3~4 mana experience point (this is NOT used by Mana Stone) + GetManaExp(@sk, rand(3,4)); + + end; + +OnInit: + bindatcmd "sk-fairykingdom", "sk#fairykingdom::OnCall", 0, 100, 0; + end; +} diff --git a/npc/scripts.conf b/npc/scripts.conf index 1be772346..e725a1393 100644 --- a/npc/scripts.conf +++ b/npc/scripts.conf @@ -101,6 +101,7 @@ // Magic Commands "npc/magic/demure.txt", "npc/magic/dragokin.txt", +"npc/magic/fairykingdom.txt", "npc/magic/halhiss.txt", "npc/magic/kalmurk.txt", "npc/magic/kalwulf.txt", |