diff options
Diffstat (limited to 'src/map/npc.c')
-rw-r--r-- | src/map/npc.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/src/map/npc.c b/src/map/npc.c index 5f9422e9f..f872a6170 100644 --- a/src/map/npc.c +++ b/src/map/npc.c @@ -1152,14 +1152,19 @@ int npc_click(struct map_session_data* sd, struct npc_data* nd) // another it's expected that the OnTouch event be put first in stack, because // unit_walktoxy_timer is executed before any other function in this case. // So it's best practice to put an 'end;' before OnTouch events in npcs that - // have view ids of mobs to avoid this kind of error [Panikon] + // have view ids of mobs to avoid this "issue" [Panikon] if (sd->npc_id != 0) { - ShowError("npc_click: npc_id != 0\n"); + // The player clicked a npc after entering an OnTouch area + if( sd->areanpc_id == sd->npc_id ); + else + ShowError("npc_click: npc_id != 0\n"); + return 1; } - if(!nd) return 1; - + if( !nd ) + return 1; + if ((nd = npc->checknear(sd,&nd->bl)) == NULL) return 1; |