|
@@ -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;
|
|
|
}
|
|
|
|
|
|
/*==========================================
|