summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--db/re/item_db.conf2
-rw-r--r--maps/re/003-1.mcachebin1306 -> 1302 bytes
-rw-r--r--npc/items/grenade.txt11
3 files changed, 8 insertions, 5 deletions
diff --git a/db/re/item_db.conf b/db/re/item_db.conf
index b6fe79ca8..fdb2e4a46 100644
--- a/db/re/item_db.conf
+++ b/db/re/item_db.conf
@@ -1573,7 +1573,7 @@ item_db: (
Delay: 500
UseEffect: "FX_SMOKEBOMB"
Script: <"
- callfunc "smoke_grenade", 3, 600+BaseLevel*3;
+ callfunc "areasc", 3, 600+BaseLevel*3, SC_SLEEP, BL_MOB;
//itemskill AS_CLOAKING,1,1;
//itemskill SM_MAGNUM,1;
// Fallback: ~~TF_HIDING AS_CLOAKING SC_INVISIBILITY RA_CAMOUFLAGE~~ None work?
diff --git a/maps/re/003-1.mcache b/maps/re/003-1.mcache
index de1ff89de..e87aff702 100644
--- a/maps/re/003-1.mcache
+++ b/maps/re/003-1.mcache
Binary files differ
diff --git a/npc/items/grenade.txt b/npc/items/grenade.txt
index c9379bbff..0fdd5ea05 100644
--- a/npc/items/grenade.txt
+++ b/npc/items/grenade.txt
@@ -26,15 +26,18 @@ function script grenade {
return;
}
-// smoke_grenade(range, time) - defaults to 3x3 square, stun for 500ms.
-function script smoke_grenade {
+// areasc(range, time, sc, bl) - defaults to 3x3 square, sleep mob for 500ms.
+// before was: smoke_grenade(). Valid BL: BL_MOB | BL_PC | BL_HOM | BL_MER
+function script areasc {
.@r=getarg(0, 3);
.@d=getarg(1, 500);
+ .@s=getarg(2, SC_SLEEP);
+ .@b=getarg(3, BL_MOB);
getmapxy(.@m$, .@x, .@y, 0);
- .@c=getunits(BL_MOB, .@mbs, false, .@m$, .@x-.@r, .@y-.@r, .@x+.@r, .@y+.@r);
+ .@c=getunits(.@b, .@mbs, false, .@m$, .@x-.@r, .@y-.@r, .@x+.@r, .@y+.@r);
for (.@i = 0; .@i < .@c; .@i++) {
- sc_start SC_SLEEP, .@d, 1, 10000, SCFLAG_NONE, .@mbs[.@i];
+ sc_start .@s, .@d, 1, 10000, SCFLAG_NONE, .@mbs[.@i];
specialeffect(FX_BUFF, AREA, .@mbs[.@i]);
}
return;