diff options
-rw-r--r-- | db/re/item_db.conf | 2 | ||||
-rw-r--r-- | maps/re/003-1.mcache | bin | 1306 -> 1302 bytes | |||
-rw-r--r-- | npc/items/grenade.txt | 11 |
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 Binary files differindex de1ff89de..e87aff702 100644 --- a/maps/re/003-1.mcache +++ b/maps/re/003-1.mcache 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; |