CMD:gmx(playerid)
{
if(xPlayerInfo[playerid][xAdmin] < 3000) return SendClientMessage(playerid, xBranco, "{CCCCCC}[ {FF0000}SERVER {CCCCCC}]:{E9EBE8} Vocк nгo tem permissгo para utilizar o comando.");
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
new Celulas[201];
xPlayerInfo[i][xLevel] = GetPlayerScore(i);
xPlayerInfo[i][xMoney] = GetPlayerMoney(i);
xPlayerInfo[i][xSkin] = GetPlayerSkin(i);
format(Celulas, 200, "UPDATE usuarios SET Admin='%i', Score='%i', Roupa='%d', Dinheiro='%i' WHERE Nick='%s'", xPlayerInfo[i][xAdmin], xPlayerInfo[i][xLevel], xPlayerInfo[i][xSkin], xPlayerInfo[i][xMoney], nomePlayer(i));
mysql_tquery(MySQLConnect, Celulas, #, #);
SetTimerEx("xPuxandoGMX", 5000, false, "i", i);
}
}
return 1;
}
forward xPuxandoGMX();
public xPuxandoGMX()
{
SendRconCommand(#gmx);
}
// Jб tentei a Public com return e sem return, resulta no mesmo...
forward xPuxandoGMX();
public xPuxandoGMX()
{
SendRconCommand(#gmx);
return 1;
}
CMD:gmx(playerid)
{
if(xPlayerInfo[playerid][xAdmin] < 3000) return SendClientMessage(playerid, xBranco, "{CCCCCC}[ {FF0000}SERVER {CCCCCC}]:{E9EBE8} Vocк nгo tem permissгo para utilizar o comando.");
for(new i = 0; i < MAX_PLAYERS; i++)
{
new Celulas[201];
xPlayerInfo[i][xLevel] = GetPlayerScore(i);
xPlayerInfo[i][xMoney] = GetPlayerMoney(i);
format(Celulas, 200, "UPDATE usuarios SET Admin='%i', Score='%i', Skin='%i', Dinheiro='%i' WHERE Nick='%s'", xPlayerInfo[i][xAdmin], xPlayerInfo[i][xLevel], GetPlayerSkin(i), xPlayerInfo[i][xMoney], nomePlayer(i));
mysql_tquery(MySQLConnect, Celulas, #, #);
}
SetTimerEx ( "xPuxandoGMX" , 5000 , false, "i" , i); // testei com playerid tambйm, jб que sу eu estou online, e nгo deu certo.
return 1;
}
Sua query update estб incorreta.
Cade a clausula Where? Como o Update vai saber no banco de dados qual player salvar? Tem que ter algo como: "Where `nick` = '%s'"... |
Tentas as seguintes alternativas:
- Fazer debug no valor do GetPlayerSkin - Trocar no format o '%i' por '%d' (sem sentido mas nгo custa ver) - Verificar se o nome da tabela no mysql estб Skin com 's' maisculo - fazer um if antes de executar a query para verificar se o jogador estб online.; Se nenhuma dessas forem entгo nгo sei. Nгo to afim de ficar analisando cуdigo agora.... |
CMD:gmx(playerid)
{
if(xPlayerInfo[playerid][xAdmin] < 3000) return SendClientMessage(playerid, xBranco, "{CCCCCC}[ {FF0000}SERVER {CCCCCC}]:{E9EBE8} Vocк nгo tem permissгo para utilizar o comando.");
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
new Celulas[201];
xPlayerInfo[i][xLevel] = GetPlayerScore(i);
xPlayerInfo[i][xMoney] = GetPlayerMoney(i);
xPlayerInfo[i][xSkin] = GetPlayerSkin(i);
format(Celulas, 200, "UPDATE usuarios SET Admin='%i', Score='%i', Roupa='%d', Dinheiro='%i' WHERE Nick='%s'", xPlayerInfo[i][xAdmin], xPlayerInfo[i][xLevel], xPlayerInfo[i][xSkin], xPlayerInfo[i][xMoney], nomePlayer(i));
mysql_tquery(MySQLConnect, Celulas, #, #);
SetTimerEx("xPuxandoGMX", 5000, false, "i", i);
}
}
return 1;
}
forward xPuxandoGMX();
public xPuxandoGMX()
{
SendRconCommand(#gmx);
}
// Jб tentei a Public com return e sem return, resulta no mesmo...