summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changelog-Trunk.txt4
-rw-r--r--notice.txt4
-rw-r--r--src/map/script.c24
3 files changed, 19 insertions, 13 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt
index ba8a2439c..4af5d9451 100644
--- a/Changelog-Trunk.txt
+++ b/Changelog-Trunk.txt
@@ -3,6 +3,10 @@ Date Added
AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO INTO TRUNK.
IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
+2006/11/19
+ * Added 'cancel' button parsing in buildin_select menu system. Now scripts will continue
+ to load if 'cancel' is pressed and 255 will be returned. [Lance]
+
2006/11/17
* Corrected use of the party invitation reply packet, thanks to FlavioJS.
[Skotlex]
diff --git a/notice.txt b/notice.txt
index 348ae98af..f08eec226 100644
--- a/notice.txt
+++ b/notice.txt
@@ -1,8 +1,8 @@
//Notice\\
This branch, "Trunk", might not be stable due to bugs and whatsoever.
-It is highly recommended, if you have any dobts on using this svn version,
-it is best if you use an eAthena Official Version or use RC5.
+It is highly recommended, if you have any doubts on using this svn version,
+it is best if you use an eAthena Official Version or use the Stable branch.
on another note, if you found a bug, it is best if you report it on the eAthena
forums as http://eathena.ws/ . If you have made yourself a fix for
diff --git a/src/map/script.c b/src/map/script.c
index 650429bcc..8afd23e26 100644
--- a/src/map/script.c
+++ b/src/map/script.c
@@ -10298,21 +10298,23 @@ int buildin_select(struct script_state *st)
}
clif_scriptmenu(script_rid2sd(st),st->oid,buf);
aFree(buf);
- } else if(sd->npc_menu==0xff){ // cansel
- sd->state.menu_or_input=0;
- st->state=END;
- } else {
- //Skip empty menu entries which weren't displayed on the client (Skotlex)
- for(i=st->start+2;i< (st->start+2+sd->npc_menu) && sd->npc_menu < (st->end-st->start-2);i++) {
- conv_str(st,& (st->stack->stack_data[i])); // we should convert variables to strings before access it [jA1983] [EoE]
- if((int)strlen(st->stack->stack_data[i].u.str) < 1)
- sd->npc_menu++; //Empty selection which wasn't displayed on the client.
+ } /*else if(sd->npc_menu==0xff){ // Cancel will be parsed since this is select() [Lance]
+ sd->state.menu_or_input=0;
+ st->state=END;
+ }*/ else {
+ if(sd->npc_menu != 0xff){
+ //Skip empty menu entries which weren't displayed on the client (Skotlex)
+ for(i=st->start+2;i< (st->start+2+sd->npc_menu) && sd->npc_menu < (st->end-st->start-2);i++) {
+ conv_str(st,& (st->stack->stack_data[i])); // we should convert variables to strings before access it [jA1983] [EoE]
+ if((int)strlen(st->stack->stack_data[i].u.str) < 1)
+ sd->npc_menu++; //Empty selection which wasn't displayed on the client.
+ }
}
pc_setreg(sd,add_str((unsigned char *) "@menu"),sd->npc_menu);
sd->state.menu_or_input=0;
push_val(st->stack,C_INT,sd->npc_menu);
- }
- return 0;
+ }
+ return 0;
}
/*==========================================