summaryrefslogtreecommitdiff
path: root/world/map/npc/magic
diff options
context:
space:
mode:
Diffstat (limited to 'world/map/npc/magic')
-rw-r--r--world/map/npc/magic/_import.txt1
-rw-r--r--world/map/npc/magic/level0-wand.txt10
-rw-r--r--world/map/npc/magic/level2-make-arrows.txt8
-rw-r--r--world/map/npc/magic/level2-make-bones.txt28
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;
+}