diff options
Diffstat (limited to 'world/map/npc/magic')
-rw-r--r-- | world/map/npc/magic/_import.txt | 1 | ||||
-rw-r--r-- | world/map/npc/magic/level0-wand.txt | 10 | ||||
-rw-r--r-- | world/map/npc/magic/level2-make-arrows.txt | 8 | ||||
-rw-r--r-- | world/map/npc/magic/level2-make-bones.txt | 28 |
4 files changed, 38 insertions, 9 deletions
diff --git a/world/map/npc/magic/_import.txt b/world/map/npc/magic/_import.txt index c3cd11ec..5b1ea65c 100644 --- a/world/map/npc/magic/_import.txt +++ b/world/map/npc/magic/_import.txt @@ -19,6 +19,7 @@ npc: npc/magic/level1-sense-spouse.txt npc: npc/magic/level1-detect-magic.txt npc: npc/magic/level2-arrow-hail.txt npc: npc/magic/level2-make-arrows.txt +npc: npc/magic/level2-make-bones.txt npc: npc/magic/level2-make-iron-powder.txt npc: npc/magic/level2-magic-knuckles.txt npc: npc/magic/level2-summon-snakes.txt diff --git a/world/map/npc/magic/level0-wand.txt b/world/map/npc/magic/level0-wand.txt index b1dfb686..b12bc649 100644 --- a/world/map/npc/magic/level0-wand.txt +++ b/world/map/npc/magic/level0-wand.txt @@ -53,8 +53,8 @@ S_SetWand: set QL_MORGAN, 3; setarray @wandspell[0], .WandsAnim[.@wand_loop], // wand anim/id - (.@pwr * (BaseLevel / 15) + 2), // wand cost - (.@pwr * (@spellpower / 3)), // wand dmg + ((.@pwr * BaseLevel * 2 / 3) / 15 + 2), // wand cost + (.@pwr * (@spellpower * (11-.@pwr) / 30)), // wand dmg (((200 - Agi) * 1200) / 200), //delay (.@pwr + (@spellpower / 10)); // charges return; @@ -73,9 +73,9 @@ L_Failed: end; OnInit: - setarray .Wands[0], 0, 758, 1171, 906; - setarray .WandsPwr[0], 0, 2, 1, 1; - setarray .WandsAnim[0], 0, OVERRIDE_WAND_STAFF, OVERRIDE_WAND_WAND, OVERRIDE_BLADE; + setarray .Wands[0], 0, 758, 1170, 1171, 906; + setarray .WandsPwr[0], 0, 2, 2, 1, 1; + setarray .WandsAnim[0], 0, OVERRIDE_WAND_STAFF, OVERRIDE_WAND_STAFF, OVERRIDE_WAND_WAND, OVERRIDE_BLADE; set .school, SKILL_MAGIC; set .invocation$, chr(MAGIC_SYMBOL) + "confringo"; // used in npcs that refer to this spell void call("magic_register"); diff --git a/world/map/npc/magic/level2-make-arrows.txt b/world/map/npc/magic/level2-make-arrows.txt index 4451128f..dbd2bc2f 100644 --- a/world/map/npc/magic/level2-make-arrows.txt +++ b/world/map/npc/magic/level2-make-arrows.txt @@ -4,16 +4,16 @@ if (Sp < 8) end; if (getskilllv(SKILL_MAGIC) < .level) end; if (getskilllv(.school) < .level) end; - if (countitem("RawLog") < 1) end; - delitem "RawLog", 1; + if (countitem(RawLog) < 1) end; + delitem RawLog, 1; set @_M_BLOCK, 1; // block casting, until the timer clears it addtimer 5000, "Magic Timer::OnClear"; // set the new debuff sc_start SC_COOLDOWN, 5000, 0, BL_ID; callfunc "adjust_spellpower"; set Sp, Sp - 8; misceffect FX_MAGIC_ARROW_CAST, strcharinfo(0); - setarray @create_params[0], (@spellpower/40)+1+(rand(max(1,(800-@spellpower)))/80), 500; - setarray @create_items$[0], "Arrow", "WarpedLog"; + setarray @create_params[0], (@spellpower/32)+1+(rand(max(1,(800-@spellpower)))/80), 500; + setarray @create_items$[0], "IronArrow", "WarpedLog"; callfunc "magic_create_item"; callfunc "magic_exp"; end; diff --git a/world/map/npc/magic/level2-make-bones.txt b/world/map/npc/magic/level2-make-bones.txt new file mode 100644 index 00000000..3cd9989a --- /dev/null +++ b/world/map/npc/magic/level2-make-bones.txt @@ -0,0 +1,28 @@ +-|script|make-bones|32767 +{ + if(call("magic_checks")) end; + if (Sp < 16) end; + if (getskilllv(SKILL_MAGIC) < .level) end; + if (getskilllv(.school) < .level) end; + if (countitem(Bone) < 1) end; + delitem Bone, 1; + set @_M_BLOCK, 1; // block casting, until the timer clears it + addtimer 5000, "Magic Timer::OnClear"; // set the new debuff + sc_start SC_COOLDOWN, 5000, 0, BL_ID; + callfunc "adjust_spellpower"; + set Sp, Sp - 16; + misceffect FX_MAGIC_ARROW_CAST, strcharinfo(0); + setarray @create_params[0], (@spellpower/32)+1+(rand(max(1,(800-@spellpower)))/80), 500; + setarray @create_items$[0], "BoneArrows", "IronArrow"; + callfunc "magic_create_item"; + callfunc "magic_exp"; + end; + +OnInit: + set .school, SKILL_MAGIC_TRANSMUTE; + set .invocation$, chr(MAGIC_SYMBOL) + "kularzunevelafrill"; // used in npcs that refer to this spell + void call("magic_register"); + set .level, 2; + set .exp_gain, 1; + end; +} |