diff options
Diffstat (limited to 'npc/magic')
-rw-r--r-- | npc/magic/halhiss.txt | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/npc/magic/halhiss.txt b/npc/magic/halhiss.txt new file mode 100644 index 000000000..b86840cb8 --- /dev/null +++ b/npc/magic/halhiss.txt @@ -0,0 +1,65 @@ +// TMW2 script +// Author: Jesusalva <admin@tmw2.org> +// +// Magic Script: TMW2_HALHISS +// +// Summons snakes (mountain snakes if GHQ was completed and enough skill) + +- script sk#halhiss 32767,{ + end; + +OnCall: + // Other requeriments: 20x Maggot Slime + if (countitem(SnakeEgg) < 1) { + dispbottom l("You need 1x @@ to cast this skill.", getitemlink(SnakeEgg)); + end; + } + + // Check cooldown + if (@halhiss_at > gettimetick(2)) { + dispbottom l("Skill is in cooldown for @@.", FuzzyTime(@halhiss_at)); + end; + } + + // Setup + @sk=TMW2_HALHISS; + @mp=350; + @amp=60; + + // Check if you have mana to cast + // MagicCheck(SkillID, Mana{, MP per level}) + if (!MagicCheck(@sk, @mp, @amp)) + end; + + // Destroy reagents + delitem SnakeEgg, 1; + + // set cooldown + @halhiss_at=gettimetick(2); + @halhiss_at=@halhiss_at+44; + + // As usual, magic profeciency affects success ratio + if (rand(1,4) < abizit()+1) { + .@mobId=Snake; + if (abizit() > 3 && + GHMEMO[GHQ_GetQuestIDByMonsterID(MountainSnake)] >= 10000 && + rand(1,3) == 2) + { + .@mobId=MountainSnake; + } + // 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-halhiss", "sk#halhiss::OnCall", 0, 100, 0; + end; +} |