09.08.2016, 08:57
Buenas, mi duda es: їComo hago para continuar un dialogo en el cual ya tengo un Top que llega hasta 10?
Me explico, cuando utilize /top me salen los 10 jugadores con mas score; lo que necesitaria saber es como continuar ese dialogo.
Asi tengo hecha mi funcion para crear los tops
Lo que quiero es que cuando apriete +10 (ejemplo de abajo) en el siguiente dialogo me salgan los otros 10 usuarios que siguen
Espero haberme explicado bien
Gracias de ante mano. Saludos
Me explico, cuando utilize /top me salen los 10 jugadores con mas score; lo que necesitaria saber es como continuar ese dialogo.
Asi tengo hecha mi funcion para crear los tops
Код:
stock CrearTop(playerid, header[] = "SCORE", refer[] = "USERS") { new string[128], query[256], str[450]; new string2[128]; new DBResult:result; new DBResult:result2; new DBResult:result3; new ZQuery[2][256], String[3][256], DialString[450], DialStr[128]; if(!strcmp(refer, "CLANS", false)) { format(ZQuery[0], 256, "SELECT `CLANNAME` FROM `CLANS` ORDER BY (`CLANKILLS` * 1) DESC limit %d", MAX_TOP_LIMIT); result = db_query(Database, ZQuery[0]); strcat(DialString, "{FFFFFF}Pos\t{FFFFFF}Nombre\t{FFFFFF}Kills\t{FFFFFF}Deaths\n"); for(new Qr; Qr < db_num_rows(result); Qr ++) { db_get_field(result, 0, String[0], 256); format(ZQuery[1], 256, "SELECT `CLANKILLS` FROM `CLANS` WHERE `CLANNAME` = '%s'", String[0]); result2 = db_query(Database, ZQuery[1]); db_get_field(result2, 0, String[1], 256); format(ZQuery[1], 256, "SELECT `CLANDEATHS` FROM `CLANS` WHERE `CLANNAME` = '%s'", String[0]); result3 = db_query(Database, ZQuery[1]); db_get_field(result3, 0, String[2], 256); format(DialStr, sizeof DialStr, "{00FF00}%d\t{FFFFFF}%s\t%s\t%s",Qr + 1, String[0], FormatNumber(strval(String[1])), FormatNumber(strval(String[2])), GetTotalMembers(String[0])); format(DialString,sizeof(DialString),"%s%s\n",DialString,DialStr); db_next_row(result); db_free_result(result2); db_free_result(result3); } ShowPlayerDialog(playerid, DIALOGO_TOPS+1, DIALOG_STYLE_TABLIST_HEADERS, "{00FF00}Clanes", DialString, "Atras"," Cerrar"); db_free_result(result); } else if(!strcmp(refer, "USERS", false)) { format(query,sizeof(query),"SELECT `NAME` FROM `%s` ORDER BY (`%s` * 1) DESC limit 10", refer, header); result = db_query(Database,query); strcat(str, "{FFFFFF}Pos\t{FFFFFF}Nombre\t{FFFFFF}Total\n"); for(new a;a<db_num_rows(result);a++) { db_get_field(result,0,string,128); format(query,sizeof(query),"SELECT `%s` FROM `%s` WHERE `NAME` = '%s'", header, refer, string); result2 = db_query(Database,query); db_get_field(result2,0,string2,128); if(!strcmp(header, "DINERO", false)) format(string,sizeof(string),"{00FF00}%d\t{FFFFFF}%s\t$%s",a+1,string,string2); else if(!strcmp(header, "HORAS", false)) format(string,sizeof(string),"{00FF00}%d\t{FFFFFF}%s\t%s hs",a+1,string,string2); else if(!strcmp(header, "KDR", false)) format(string,sizeof(string),"{00FF00}%d\t{FFFFFF}%s\t%s",a+1,string,string2); else format(string,sizeof(string),"{00FF00}%d\t{FFFFFF}%s\t%s",a+1,string,string2); format(str,sizeof(str),"%s%s\n",str,string); db_next_row(result); db_free_result(result2); } ShowPlayerDialog(playerid,DIALOGO_TOPS+1, DIALOG_STYLE_TABLIST_HEADERS,"{00FF00}Top Players",str,"Atras"," Cerrar"); db_free_result(result); } return 1; }
Код:
ShowPlayerDialog(playerid,DIALOGO_TOPS+1, DIALOG_STYLE_TABLIST_HEADERS,"{00FF00}Top Players",str,"+10"," Cerrar");
Gracias de ante mano. Saludos