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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
|
-|script|raise|32767
{
if (GM < 40 && GM < G_SYSOP) end;
set .@rid, if_then_else(@args$ != "", getcharid(3, @args$), BL_ID);
if (.@rid < 1 || !(isloggedin(.@rid))) end;
addtimer 0, strnpcinfo(0) + "::OnRaise", .@rid;
message strcharinfo(0), "absolve : player absolved.";
end;
OnRaise:
warp getsavepoint(0), getsavepoint(1), getsavepoint(2);
set PC_DIE_COUNTER, 0;
set Hp, MaxHp;
message strcharinfo(0), "Server : you have been revived.";
end;
OnInit:
registercmd "@raise", strnpcinfo(0);
end;
}
-|script|absolve|32767
{
if (GM < 40 && GM < G_SYSOP) end;
set .@rid, if_then_else(@args$ != "", getcharid(3, @args$), BL_ID);
if (.@rid < 1 || !(isloggedin(.@rid))) end;
addtimer 0, strnpcinfo(0) + "::OnRaise", .@rid;
message strcharinfo(0), "absolve : player absolved.";
end;
OnRaise:
set Zeny, 0;
getinventorylist;
set @item_it, 0;
freeloop 1;
goto L_Drop; // drop all items
L_Drop:
delitem @inventorylist_id[@item_it], @inventorylist_amount[@item_it];
set @item_it, @item_it + 1;
if (@item_it >= @inventorylist_count) goto L_Raise;
goto L_Drop;
L_Raise:
warp getsavepoint(0), getsavepoint(1), getsavepoint(2);
set PC_DIE_COUNTER, 0;
set Hp, 1;
message strcharinfo(0), "Server : your sins have been forgiven.";
end;
OnInit:
registercmd "@absolve", strnpcinfo(0);
end;
}
|