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
|
- script CustomDropRates -1,{
OnInit:
setarray $@MobOkay_ID[0],1002;
set $@MaxDropChance,10;
end;
OnNPCKillEvent:
for(set @i,0; @i<getarraysize($@MobOkay_ID); set @i,@i+1)
{if (killedrid==$@MobOkay_ID[@i])
{callfunc "DropItemRate";}}
end;
}
function script DropItemRate {
set @i,0;
set @dropID,0;
deletearray $@MobDrop_item[0],128;
getmobdrops(killedrid);
goto iDropItemLoop;
iDropItemLoop:
set @i,rand(1,$@MaxDropChance);
if (@dropID == $@MobDrop_count){dispbottom "Success"; end;}
if (@i==1 && $@MobDrop_rate[@dropID]<=1)
{getitem $@MobDrop_item[@dropID],1;
set @dropID,@dropID+1; goto iDropItemLoop;}
if (@i<=$@MaxDropChance){set @dropID,@dropID+1; goto iDropItemLoop;}
end;
} |