From 9babdbcbb4209a6ae861550eb662ac810d7ad886 Mon Sep 17 00:00:00 2001 From: ultramage Date: Mon, 12 May 2008 09:18:24 +0000 Subject: Fixed a script engine problem where warping away while having a menu window open and talking to an another npc with a menu would produce menu option count mismatch errors (bugreport:1208) git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@12703 54d463be-8e91-2dee-dedb-b68131a5f0ec --- src/map/script.c | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) (limited to 'src/map/script.c') diff --git a/src/map/script.c b/src/map/script.c index 01d3470d5..ce42a0eec 100644 --- a/src/map/script.c +++ b/src/map/script.c @@ -3812,8 +3812,10 @@ BUILDIN_FUNC(menu) st->state = END; return 1; } + StringBuf_Init(&buf); - for( i = 2, sd->npc_menu = 0; i < script_lastdata(st); i += 2 ) + sd->npc_menu = 0; + for( i = 2; i < script_lastdata(st); i += 2 ) { // menu options text = script_getstr(st, i); @@ -3909,13 +3911,14 @@ BUILDIN_FUNC(select) struct StringBuf buf; StringBuf_Init(&buf); - for( i = 2, sd->npc_menu = 0; i <= script_lastdata(st); ++i ) + sd->npc_menu = 0; + for( i = 2; i <= script_lastdata(st); ++i ) { text = script_getstr(st, i); if( sd->npc_menu > 0 ) StringBuf_AppendStr(&buf, ":"); StringBuf_AppendStr(&buf, text); - sd ->npc_menu += menu_countoptions(text, 0, NULL); + sd->npc_menu += menu_countoptions(text, 0, NULL); } st->state = RERUNLINE; @@ -3969,13 +3972,14 @@ BUILDIN_FUNC(prompt) struct StringBuf buf; StringBuf_Init(&buf); - for( i = 2, sd->npc_menu = 0; i <= script_lastdata(st); ++i ) + sd->npc_menu = 0; + for( i = 2; i <= script_lastdata(st); ++i ) { text = script_getstr(st, i); if( sd->npc_menu > 0 ) StringBuf_AppendStr(&buf, ":"); StringBuf_AppendStr(&buf, text); - sd ->npc_menu += menu_countoptions(text, 0, NULL); + sd->npc_menu += menu_countoptions(text, 0, NULL); } st->state = RERUNLINE; -- cgit v1.2.3-70-g09d2