diff options
author | Jesusaves <cpntb1@ymail.com> | 2019-03-07 01:36:09 -0300 |
---|---|---|
committer | Jesusaves <cpntb1@ymail.com> | 2019-03-07 01:36:09 -0300 |
commit | ea2159c2ac1819038ca179a8367a5bfa5cc2fc45 (patch) | |
tree | afff2ce52783b28e5c28edcee4bfa07c529d2603 /npc/magic | |
parent | fb5b21006958e7ce0ad298b1c99043402e06de77 (diff) | |
download | serverdata-ea2159c2ac1819038ca179a8367a5bfa5cc2fc45.tar.gz serverdata-ea2159c2ac1819038ca179a8367a5bfa5cc2fc45.tar.bz2 serverdata-ea2159c2ac1819038ca179a8367a5bfa5cc2fc45.tar.xz serverdata-ea2159c2ac1819038ca179a8367a5bfa5cc2fc45.zip |
Make @sk-demure (aka. “Divine Rage”) available via @setskill
Diffstat (limited to 'npc/magic')
-rw-r--r-- | npc/magic/demure.txt | 102 |
1 files changed, 102 insertions, 0 deletions
diff --git a/npc/magic/demure.txt b/npc/magic/demure.txt new file mode 100644 index 000000000..0a6f6d8bf --- /dev/null +++ b/npc/magic/demure.txt @@ -0,0 +1,102 @@ +// TMW2 script +// Author: Jesusalva <admin@tmw2.org> +// +// Magic Script: TMW2_DEMURE +// +// Let yourself rage and go out of control destroy everything around you +// Doubles attack speed but nullifies evade complety for 30 seconds. +// Each level grants +30s and +1% evade and +5% attack speed. +// After level 1, evade penalty/cooldown raises in 1s per additional level +// +// Cooldown is cast duration + +- script sk#demure 32767,{ + end; + +/* + SC_INCAGI: 190 + SC_INCVIT: 191 + SC_INCINT: 192 + SC_INCDEX: 193 + SC_INCLUK: 194 + SC_INCHIT: 195 + SC_INCHITRATE: 196 + SC_INCFLEE: 197 + SC_INCFLEERATE: 198 + SC_INCMHPRATE: 199 + SC_INCMSPRATE: 200 + SC_INCATKRATE: 201 + SC_INCMATKRATE: 202 + SC_INCDEFRATE: 203 + + SC_WALKSPEED (?) + SC_INVINCIBLE (?) + SC_MANA_PLUS (?) + SC_INCMHP (?) + SC_INCMSP (?) + + // The basic ones + SC_STONE: 0 + SC_FREEZE: 1 + SC_STUN: 2 + SC_SLEEP: 3 + SC_POISON: 4 + SC_CURSE: 5 + SC_SILENCE: 6 + SC_CONFUSION: 7 + SC_BLIND: 8 + SC_BLOODING: 9 + SC_DPOISON: 10 + SC_FEAR: 11 + SC_COLD: 12 + SC_BURNING: 13 + SC_DEEP_SLEEP: 14 + SC_PROVOKE: 20 + SC_ENDURE: 21 + + SC_ATTHASTE_POTION1: 55 + SC_ATTHASTE_POTION2: 56 + SC_ATTHASTE_POTION3: 57 + SC_ATTHASTE_INFINITY: 58 + SC_MOVHASTE_HORSE: 59 + SC_MOVHASTE_INFINITY: 60 + SC_PLUSATTACKPOWER: 61 + SC_PLUSMAGICPOWER: 62 + +*/ + +OnCall: + + // Check cooldown + if (@demure_at > gettimetick(2)) { + dispbottom l("Skill is in cooldown for @@.", FuzzyTime(@demure_at)); + end; + } + + // Check requisites + if (!MagicCheck(TMW2_DEMURE, 100, 100)) + end; + + // Determine length: 30s per skill level + .@length=getskilllv(TMW2_DEMURE)*30000; + .@effect=100+getskilllv(TMW2_DEMURE)*5; + .@penalty=getskilllv(TMW2_DEMURE)-101; + .@malus=(getskilllv(TMW2_DEMURE)-1)*1000; + + // Add two SC_ effects: One to raise attack speed and other to drop evade + //sc_start(<effect type>, <ticks>, <value 1>{, <rate>, <flag>{, <GID>}}) + sc_start SC_ATTHASTE_POTION2, .@length, .@effect; + sc_start SC_INCFLEERATE, (.@length+.@malus), .@penalty; + + // set cooldown + @demure_at=gettimetick(2); + @demure_at=@demure_at+(.@length+.@malus)/1000; + + // Get a few mana experience points (this is NOT used by Mana Stone) + GetManaExp(TMW2_DEMURE, rand(1,getskilllv(TMW2_DEMURE))); + end; + +OnInit: + bindatcmd "sk-demure", "sk#demure::OnCall", 0, 100, 0; + end; +} |