new bank[MAX_PLAYERS]
stock OnPlayerSave(playerid) { new query[2500], ip[25]; GetPlayerIp(playerid, ip, sizeof(ip)); money[playerid] = GetPlayerMoneyEx(playerid); mysql_format(ConnectMYSQL, query, sizeof(query), "UPDATE `accounts` SET `Username` = '%s', `IP` = '%s', `scorelevel` = '%d', `maconha` = '%d', `material` = '%d', `sementes` = '%d', `lastlogin` = '%d', `wanted` = '%d', `moneybag` = '%d', `COPskills` = '%d', `CRIMINALskills` = '%d', `PARAMEDICskills` = '%d', `admin` = '%d', `money` = '%d', `bank` = '%d' WHERE `Username` = '%s' ", GetName(playerid), ip, scorelevel[playerid], maconha[playerid], material[playerid], sementes[playerid], lastlogin[playerid], wanted[playerid], moneybag[playerid], COPskills[playerid], CRIMINALskills[playerid], PARAMEDICskills[playerid], admin[playerid], money[playerid], bank[playerid], GetName(playerid)); mysql_pquery(ConnectMYSQL, query);
stock OnPlayerLogin(playerid) { new query[512], rows, fields; mysql_format(ConnectMYSQL, query, sizeof(query), "SELECT * FROM `accounts` WHERE `Username` = '%s'", Nome(playerid) ); mysql_query(ConnectMYSQL,query); cache_get_data(rows, fields); if(rows) { new int_dest[58]; int_dest[0] = cache_get_field_content_int(0, "UserID"); pInfo[playerid][UserID] = int_dest[0]; int_dest[1] = cache_get_field_content_int(0, "scorelevel"); scorelevel[playerid] = int_dest[1]; int_dest[2] = cache_get_field_content_int(0, "maconha"); maconha[playerid] = int_dest[2]; int_dest[3] = cache_get_field_content_int(0, "material"); material[playerid] = int_dest[3]; int_dest[4] = cache_get_field_content_int(0, "sementes"); sementes[playerid] = int_dest[4]; int_dest[5] = cache_get_field_content_int(0, "wanted"); wanted[playerid] = int_dest[5]; int_dest[6] = cache_get_field_content_int(0, "moneybag"); moneybag[playerid] = int_dest[6]; int_dest[7] = cache_get_field_content_int(0, "COPskills"); COPskills[playerid] = int_dest[7]; int_dest[8] = cache_get_field_content_int(0, "CRIMINALskills"); CRIMINALskills[playerid] = int_dest[8]; int_dest[9] = cache_get_field_content_int(0, "PARAMEDICskills"); PARAMEDICskills[playerid] = int_dest[9]; int_dest[10] = cache_get_field_content_int(0, "admin"); admin[playerid] = int_dest[10]; int_dest[11] = cache_get_field_content_int(0, "money"); money[playerid] = int_dest[11]; int_dest[12] = cache_get_field_content_int(0, "bank"); bank[playerid] = int_dest[12];
CMD:rank(playerid,params[])
{
new sG[128], name[128];
if(sscanf(params,"s[68]",params))return SendClientMessage(playerid,-1,"Use: /rank [Opзгo]");
if(strcmp(params,"bank",true) == 0)
{
mysql_query(ConnectMYSQL,"SELECT * FROM `accounts` ORDER BY bank DESC");
cache_get_data(rows, fields);
for(new r; r < rows; r++)
{
SendClientMessage(playerid,-1,"Rank: Banco");
cache_get_field_content(r, "Username",name);
format(sG,sizeof(sG),"%s - $%d",name,cache_get_field_content(r, "bank"));
SendClientMessage(playerid,-1,sG);
}
}
}
Acho que compreendi, veja se isto lhe ajuda:
PHP код:
OBS:O cуdigo nгo foi testado, adeque a sua maneira. |
format(sG,sizeof(sG),"%s - $%d",name,cache_get_field_content(r, "bank"));
CMD:rank(playerid,params[]) { new sG[128], name[128]; if(sscanf(params,"s[68]",params)) { SendClientMessage(playerid,-1,"Use: /rank [option]"); SendClientMessage(playerid,-1,"Options: bank"); return 1; } if(strcmp(params,"bank",true) == 0) { new rows, fields; mysql_query(ConnectMYSQL,"SELECT * FROM `accounts` ORDER BY bank DESC"); cache_get_data(rows, fields); for(new r; r < 15; r++) { SendClientMessage(playerid,-1,"Rank: Banco"); cache_get_field_content(r, "Username",name); format(sG,sizeof(sG),"%s - $%d",name,cache_get_field_content(r, "bank")); // warning 202: number of arguments does not match definition SendClientMessage(playerid,-1,sG); } } return 1; }
CMD:rank(playerid,params[]) {
new sG[128], name[128];
if(sscanf(params,"s[68]",params)) {
SendClientMessage(playerid,-1,"Use: /rank [option]");
SendClientMessage(playerid,-1,"Options: bank");
return 1;
}
if(strcmp(params,"bank",true) == 0) {
new rows, fields;
mysql_query(ConnectMYSQL,"SELECT * FROM `accounts` ORDER BY bank DESC LIMIT 15");
cache_get_data(rows, fields);
for(new r; r < rows; r++) {
SendClientMessage(playerid,-1,"Rank: Banco");
cache_get_field_content(r, "Username",name);
format(sG,sizeof(sG),"%s - $%d",name,cache_get_field_content_int(r, "bank"));
SendClientMessage(playerid,-1,sG);
}
}
return 1;
}
Ajustado, adicionei a limitaзгo para 15 resultados no cуdigo tambйm.
Veja se estб ok: PHP код:
|
CMD:rank(playerid,params[]) { new sG[128], name[128]; if(sscanf(params,"s[68]",params)) { SendClientMessage(playerid,-1,"Use: /rank [option]"); SendClientMessage(playerid,-1,"Options: bank"); return 1; } new DialogNGL[1600]; if(strcmp(params,"bank",true) == 0) { new rows, fields; mysql_query(ConnectMYSQL,"SELECT * FROM `accounts` ORDER BY bank DESC LIMIT 15"); cache_get_data(rows, fields); for(new r; r < rows; r++) { if(r == 1) { // primeiro lugar cor: ouro cache_get_field_content(r, "Username",name); format(sG,sizeof(sG), "{FFFF00}%i- %s - $%d\n", r, name,cache_get_field_content_int(r, "bank")); strcat(DialogNGL,sG); } else if(r == 2) { // primeiro lugar cor: prata cache_get_field_content(r, "Username",name); format(sG,sizeof(sG), "{80FFFF}%i- %s - $%d\n", r, name,cache_get_field_content_int(r, "bank")); strcat(DialogNGL,sG); } else if(r == 3) { // primeiro lugar cor: bronze cache_get_field_content(r, "Username",name); format(sG,sizeof(sG), "{80FFFF}%i- %s - $%d\n", r, name,cache_get_field_content_int(r, "bank")); strcat(DialogNGL,sG); } else { // cor normal cache_get_field_content(r, "Username",name); format(sG,sizeof(sG), "{FFFFFF}%i- %s - $%d\n", r, name,cache_get_field_content_int(r, "bank")); strcat(DialogNGL,sG); } } } return 1; }
//Adicione ao topo do seu esta #define
#define DIALOG_RANK 1000
//----------------------------------------------//
//Comando abaixo, notei a falta do Dialog, apenas acrescentei o dialog.
CMD:rank(playerid,params[]) {
new sG[128], name[128];
if(sscanf(params,"s[68]",params)) {
SendClientMessage(playerid,-1,"Use: /rank [option]");
SendClientMessage(playerid,-1,"Options: bank");
return 1;
}
new DialogNGL[1600];
if(strcmp(params,"bank",true) == 0) {
new rows, fields;
mysql_query(ConnectMYSQL,"SELECT * FROM `accounts` ORDER BY bank DESC LIMIT 15");
cache_get_data(rows, fields);
for(new r; r < rows; r++) {
if(r == 1) { // primeiro lugar cor: ouro
cache_get_field_content(r, "Username",name);
format(sG,sizeof(sG), "{FFFF00}%i- %s - $%d\n", r, name,cache_get_field_content_int(r, "bank"));
strcat(DialogNGL,sG);
}
else if(r == 2) { // primeiro lugar cor: prata
cache_get_field_content(r, "Username",name);
format(sG,sizeof(sG), "{80FFFF}%i- %s - $%d\n", r, name,cache_get_field_content_int(r, "bank"));
strcat(DialogNGL,sG);
}
else if(r == 3) { // primeiro lugar cor: bronze
cache_get_field_content(r, "Username",name);
format(sG,sizeof(sG), "{80FFFF}%i- %s - $%d\n", r, name,cache_get_field_content_int(r, "bank"));
strcat(DialogNGL,sG);
}
else { // cor normal
cache_get_field_content(r, "Username",name);
format(sG,sizeof(sG), "{FFFFFF}%i- %s - $%d\n", r, name,cache_get_field_content_int(r, "bank"));
strcat(DialogNGL,sG);
}
}
ShowPlayerDialog(playerid,DIALOG_RANK,DIALOG_STYLE_LIST,"Rank: Bank",DialogNGL,"Fechar","");
}
return 1;
}
Veja se funciona:
PHP код:
|