diff options
author | shennetsind <ind@henn.et> | 2014-09-20 18:18:07 -0300 |
---|---|---|
committer | shennetsind <ind@henn.et> | 2014-09-20 18:18:07 -0300 |
commit | 34624b97980e256256897832eda4c7a8c00ca725 (patch) | |
tree | abcceb5b2e77f0d5e4be874701249c73336fb0b7 /src/map/script.c | |
parent | a9cbfd803a82464e9d715f806409526cedb25537 (diff) | |
download | hercules-34624b97980e256256897832eda4c7a8c00ca725.tar.gz hercules-34624b97980e256256897832eda4c7a8c00ca725.tar.bz2 hercules-34624b97980e256256897832eda4c7a8c00ca725.tar.xz hercules-34624b97980e256256897832eda4c7a8c00ca725.zip |
Fixed Bug 8301
reloadscript now clears npc-spawned (by warpportal script command) warps properly.
Special Thanks to Emistry, Cydh
http://hercules.ws/board/tracker/issue-8301-warpportal-reloadscript-map-server-error/
Signed-off-by: shennetsind <ind@henn.et>
Diffstat (limited to 'src/map/script.c')
-rw-r--r-- | src/map/script.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/map/script.c b/src/map/script.c index 3b5264de9..f46ee78fe 100644 --- a/src/map/script.c +++ b/src/map/script.c @@ -15909,8 +15909,7 @@ BUILDIN(warpportal) { struct block_list* bl; bl = map->id2bl(st->oid); - if( bl == NULL ) - { + if( bl == NULL ) { ShowError("script:warpportal: npc is needed\n"); return false; } @@ -15924,6 +15923,9 @@ BUILDIN(warpportal) { if( map_index == 0 ) return true;// map not found + if( bl->type == BL_NPC ) + unit->bl2ud2(bl); // ensure nd->ud is safe to edit + group = skill->unitsetting(bl, AL_WARP, 4, spx, spy, 0); if( group == NULL ) return true;// failed |