// TMW2 script // Author: Jesusalva // // 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 /* 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 */ function script SK_Demure { // non-melee weapons not allowed if (getiteminfo(getequipid(EQI_HAND_R), ITEMINFO_RANGE) > 3) { dispbottom l("Only melee weapons are permitted for use with this skill."); end; } // Determine length: 30s per skill level .@length=getskilllv(TMW2_DEMURE)*30000; .@effect=25+getskilllv(TMW2_DEMURE); .@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(, , {, , {, }}) sc_start SC_ATTHASTE_POTION2, .@length, .@effect; SC_Bonus(.@length, SC_INCHITRATE, .@effect); SC_Bonus(.@length, SC_INCATKRATE, .@effect); SC_Bonus((.@length+.@malus), SC_INCFLEERATE, .@penalty); SC_Bonus((.@length+.@malus), SC_INCDEFRATE, .@penalty); SC_Bonus((.@length+.@malus), SC_INCMHPRATE, .@penalty); // set cooldown and timer @demure_at=gettimetick(2); @demure_at=@demure_at+(.@length+.@malus)/1000; addtimer(rand(786,1346), "sk#demure::OnTMW2DemureCheck"); // Get a few mana experience points (this is NOT used by Mana Stone) GetManaExp(TMW2_DEMURE, rand(1,getskilllv(TMW2_DEMURE))); return; } - script sk#demure 32767,{ end; // If you switch to a bow, you lose the effect at once and loop dies OnTMW2DemureCheck: if (@demure_at < gettimetick(2)) end; if (getiteminfo(getequipid(EQI_HAND_R), ITEMINFO_RANGE) > 3) sc_start SC_ATTHASTE_POTION2, 100, -50; else addtimer(rand(786,1346), "sk#demure::OnTMW2DemureCheck"); end; OnInit: end; }