diff options
author | Lance <Lance@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-05-14 12:57:50 +0000 |
---|---|---|
committer | Lance <Lance@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2006-05-14 12:57:50 +0000 |
commit | 3b800b8ffa7b6d2a21e4c66d830871a8cf51eaf1 (patch) | |
tree | 2d37f74ab98fd5d953b2f6e57ca4aca49d2f2d03 /src/map/npc.c | |
parent | 8add7789e56d8f40024cd68f2fdf647245f33a11 (diff) | |
download | hercules-3b800b8ffa7b6d2a21e4c66d830871a8cf51eaf1.tar.gz hercules-3b800b8ffa7b6d2a21e4c66d830871a8cf51eaf1.tar.bz2 hercules-3b800b8ffa7b6d2a21e4c66d830871a8cf51eaf1.tar.xz hercules-3b800b8ffa7b6d2a21e4c66d830871a8cf51eaf1.zip |
* Bugfix on fake npc
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6585 54d463be-8e91-2dee-dedb-b68131a5f0ec
Diffstat (limited to 'src/map/npc.c')
-rw-r--r-- | src/map/npc.c | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/src/map/npc.c b/src/map/npc.c index c463b0282..931a205c8 100644 --- a/src/map/npc.c +++ b/src/map/npc.c @@ -1076,14 +1076,19 @@ int npc_scriptcont(struct map_session_data *sd,int id) ShowWarning("npc_scriptcont: sd->npc_id (%d) is not id (%d).\n", sd->npc_id, id);
return 1;
}
- if (npc_checknear(sd,id)){
- ShowWarning("npc_scriptcont: failed npc_checknear test.\n");
- return 1;
- }
- nd=(struct npc_data *)map_id2bl(id);
+ if(sd->npc_id != fake_npc_id){ // Not item script
+ if (npc_checknear(sd,id)){
+ ShowWarning("npc_scriptcont: failed npc_checknear test.\n");
+ return 1;
+ }
+
+ nd=(struct npc_data *)map_id2bl(id);
- sd->npc_pos=run_script(nd->u.scr.script,sd->npc_pos,sd->bl.id,id);
+ sd->npc_pos=run_script(nd->u.scr.script,sd->npc_pos,sd->bl.id,id);
+ } else { // Item script, continue execution...
+ sd->npc_pos=run_script(sd->npc_scriptroot,sd->npc_pos,sd->bl.id,id);
+ }
return 0;
}
@@ -2920,7 +2925,7 @@ int do_init_npc(void) add_timer_func_list(npc_timerevent,"npc_timerevent");
// Init dummy NPC
- //dummy_npc_id = npc_get_new_npc_id();
+ fake_npc_id = npc_get_new_npc_id();
return 0;
}
|