1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
-|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(AnimalBones) > 0) goto L_Animal;
if (countitem(Bone) > 0) goto L_Normal;
end;
L_Animal:
delitem AnimalBones, 1;
goto L_Resume;
L_Normal:
delitem Bone, 1;
goto L_Resume;
L_Resume:
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;
set CASTS, CASTS + 1;
if (CASTS < 0) set CASTS, 1; // overflow
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;
}
|