diff options
author | Jesusaves <cpntb1@ymail.com> | 2018-07-02 00:16:14 -0300 |
---|---|---|
committer | Jesusaves <cpntb1@ymail.com> | 2018-07-02 00:16:14 -0300 |
commit | 367370970161a620c60fee5eb13fa3ac7d99ea41 (patch) | |
tree | e3df093af0a01b5443f432027926f9731b6b3284 /npc/config | |
parent | 36d1cfca08d38941f1f726d01b261d2e944a1c9d (diff) | |
download | serverdata-367370970161a620c60fee5eb13fa3ac7d99ea41.tar.gz serverdata-367370970161a620c60fee5eb13fa3ac7d99ea41.tar.bz2 serverdata-367370970161a620c60fee5eb13fa3ac7d99ea41.tar.xz serverdata-367370970161a620c60fee5eb13fa3ac7d99ea41.zip |
Attempt to rewrite magic to use more function helpers
Diffstat (limited to 'npc/config')
-rw-r--r-- | npc/config/magic.txt | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/npc/config/magic.txt b/npc/config/magic.txt new file mode 100644 index 000000000..0ec8dd99b --- /dev/null +++ b/npc/config/magic.txt @@ -0,0 +1,48 @@ +// TMW2 script +// Author: Jesusalva <admin@tmw2.org> +// +// Magic Script Core Functions +// +// Used for our pseudo-magic. +// These are only helpers, you can add more restrictions and effects freely. + +// SkillID, Mana, MobID{, MP per level, Script} +function script SummonMagic { + .@sk=getarg(0); + .@mp=getarg(1); + .@id=getarg(2); + .@scr$=getarg(4,"Cassia::OnSkip"); + + // PRE EXECUTION + // Check Skill + if (getskilllv(.@sk) < 1) + end; + + // Load mana cost + .@amp=getarg(3,0); + .@mp=.@mp+getskilllv(.@sk)*.@amp-.@amp; + + // Check mana + if (readparam(Sp) < .@mp) { + dispbottom l("Insufficient mana: @@/@@.", readparam(Sp), .@mp); + end; + } + + + // EXECUTION + // Apply costs + heal 0, 0-.@mp; + + // Cause effect + getmapxy(.@map$,.@x,.@y,0); + monster(.@map$, .@x, .@y, "Summoned Monster", .@id, getskilllv(.@sk), .@scr, Size_Medium, 1); + dispbottom l("All monsters summoned!"); + /* AI Options + 0 = none (default) + 1 = attack/friendly + 2 = sphere (Alchemist skill) + 3 = flora (Alchemist skill) + 4 = zanzou (Kagerou/Oboro skill) + */ + +} |