CMD:stats(playerid, params[]) { new id; if(connected[playerid] == true) return GameTextForPlayer(playerid, "~r~Spawn First", 5000, 5); if(sscanf(params, "u", id)) return SendClientMessage(playerid, -1, "{c3c3c3}(INFO) /stats [id]"); if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, "{c3c3c3}(INFO) That player is not connected!"); { new iString[2000]; format (iString, sizeof(iString), "{ffff99}(INFO) Current session stats of: %s", PlayerName[id]); SendClientMessage(playerid, -1, iString); format(iString,sizeof(iString),"{ffff99}Score: %i ~ Level: %i ~ Duels Win: %i ~ Duels Lost: %i", pInfo[id][Score], pInfo[id][Level], pInfo[id][DuelsWin], pInfo[id][DuelsLost]); SendClientMessage(playerid, -1, iString); format(iString,sizeof(iString),"{ffff99}Points: %i ~ Respect: %i ~ Kills: %i ~ Deaths: %i ~ Ratio: %.2f", pInfo[id][Points], pInfo[id][Respect], pInfo[id][Kills], pInfo[id][Deaths], floatdiv(pInfo[id][Kills], pInfo[id][Deaths])); SendClientMessage(playerid, -1, iString); format(iString,sizeof(iString),"{ffff99}Session Kills: %i ~ Session Deaths: %i ~ Session Ratio: %.2f", PlayerKills[id], PlayerDeaths[id], floatdiv(PlayerKills[id], PlayerDeaths[id]), pInfo[id][Headshots]); SendClientMessage(playerid, -1, iString); format(iString,sizeof(iString),"{ffff99}Headshots given: %i/45", pInfo[id][Headshots]); SendClientMessage(playerid, -1, iString); } return 1; }
EVERY format specifier (that is, everything except '', {} and p) now has an optional equivalent - this is just their letter capitalised, so for example the old "z" optional string specifier is now "S" (there is still "z" and, for completeness, "Z", but both give warnings). In addition to optional specifiers, there are also now default values |
sscanf(params, "U(-1)", id);
if (id == -1)
{
// No player was entered.
}
else if (id == INVALID_PLAYER_ID)
{
// Entered player is not connected, send the error message.
}
else
{
// The rest of your code
}
if(sscanf(params, "U(-1)", id)) return SendClientMessage(playerid, -1, "{c3c3c3}(INFO) /stats [id]");
sscanf(params, "u", id);
if(id == INVALID_PLAYER_ID) {
SendClientMessage(playerid, -1, "{c3c3c3}(INFO) That player is not connected!");
}
else if (id == -1){
//Show the stats for the player.
}
else {
//Show stats for player specified in the sscanf params.
new iString[2000];
format (iString, sizeof(iString), "{ffff99}(INFO) Current session stats of: %s", PlayerName[id]);
SendClientMessage(playerid, -1, iString);
format(iString,sizeof(iString),"{ffff99}Score: %i ~ Level: %i ~ Duels Win: %i ~ Duels Lost: %i", pInfo[id][Score], pInfo[id][Level], pInfo[id][DuelsWin], pInfo[id][DuelsLost]);
SendClientMessage(playerid, -1, iString);
format(iString,sizeof(iString),"{ffff99}Points: %i ~ Respect: %i ~ Kills: %i ~ Deaths: %i ~ Ratio: %.2f", pInfo[id][Points], pInfo[id][Respect], pInfo[id][Kills], pInfo[id][Deaths], floatdiv(pInfo[id][Kills], pInfo[id][Deaths]));
SendClientMessage(playerid, -1, iString);
format(iString,sizeof(iString),"{ffff99}Session Kills: %i ~ Session Deaths: %i ~ Session Ratio: %.2f", PlayerKills[id], PlayerDeaths[id], floatdiv(PlayerKills[id], PlayerDeaths[id]), pInfo[id][Headshots]);
SendClientMessage(playerid, -1, iString);
format(iString,sizeof(iString),"{ffff99}Headshots given: %i/45", pInfo[id][Headshots]);
SendClientMessage(playerid, -1, iString);
}
if(isnull(id)) { player stats } else { stats for id }
CMD:stats(playerid, params[]) { new id; if(connected[playerid] == true) return GameTextForPlayer(playerid, "~r~Spawn First", 5000, 5); if(sscanf(params, "u", id)) return SendClientMessage(playerid, -1, "{c3c3c3}(INFO) /stats [id]"); if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, "{c3c3c3}(INFO) That player is not connected!"); if(isnull(id)) { new iString[2000]; format (iString, sizeof(iString), "{ffff99}(INFO) Current session stats of: %s", PlayerName[playerid]); SendClientMessage(playerid, -1, iString); format(iString,sizeof(iString),"{ffff99}Score: %i ~ Level: %i ~ Duels Win: %i ~ Duels Lost: %i", pInfo[playerid][Score], pInfo[playerid][Level], pInfo[playerid][DuelsWin], pInfo[playerid][DuelsLost]); SendClientMessage(playerid, -1, iString); format(iString,sizeof(iString),"{ffff99}Points: %i ~ Respect: %i ~ Kills: %i ~ Deaths: %i ~ Ratio: %.2f", pInfo[playerid][Points], pInfo[playerid][Respect], pInfo[playerid][Kills], pInfo[playerid][Deaths], floatdiv(pInfo[playerid][Kills], pInfo[playerid][Deaths])); SendClientMessage(playerid, -1, iString); format(iString,sizeof(iString),"{ffff99}Session Kills: %i ~ Session Deaths: %i ~ Session Ratio: %.2f", PlayerKills[playerid], PlayerDeaths[playerid], floatdiv(PlayerKills[playerid], PlayerDeaths[playerid]), pInfo[playerid][Headshots]); SendClientMessage(playerid, -1, iString); format(iString,sizeof(iString),"{ffff99}Headshots given: %i/45", pInfo[playerid][Headshots]); SendClientMessage(playerid, -1, iString); } else { new iString[2000]; format (iString, sizeof(iString), "{ffff99}(INFO) Current session stats of: %s", PlayerName[id]); SendClientMessage(playerid, -1, iString); format(iString,sizeof(iString),"{ffff99}Score: %i ~ Level: %i ~ Duels Win: %i ~ Duels Lost: %i", pInfo[id][Score], pInfo[id][Level], pInfo[id][DuelsWin], pInfo[id][DuelsLost]); SendClientMessage(playerid, -1, iString); format(iString,sizeof(iString),"{ffff99}Points: %i ~ Respect: %i ~ Kills: %i ~ Deaths: %i ~ Ratio: %.2f", pInfo[id][Points], pInfo[id][Respect], pInfo[id][Kills], pInfo[id][Deaths], floatdiv(pInfo[id][Kills], pInfo[id][Deaths])); SendClientMessage(playerid, -1, iString); format(iString,sizeof(iString),"{ffff99}Session Kills: %i ~ Session Deaths: %i ~ Session Ratio: %.2f", PlayerKills[id], PlayerDeaths[id], floatdiv(PlayerKills[id], PlayerDeaths[id]), pInfo[id][Headshots]); SendClientMessage(playerid, -1, iString); format(iString,sizeof(iString),"{ffff99}Headshots given: %i/45", pInfo[id][Headshots]); SendClientMessage(playerid, -1, iString); } return 1; }
C:\Users\yan\Desktop\LS DM\gamemodes\DBv1.pwn(3943) : error 028: invalid subscript (not an array or too many subscripts): "id" C:\Users\yan\Desktop\LS DM\gamemodes\DBv1.pwn(3943) : error 029: invalid expression, assumed zero C:\Users\yan\Desktop\LS DM\gamemodes\DBv1.pwn(3943) : error 028: invalid subscript (not an array or too many subscripts): "id" C:\Users\yan\Desktop\LS DM\gamemodes\DBv1.pwn(3943) : fatal error 107: too many error messages on one line Compilation aborted.Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase 4 Errors.
CMD:stats(playerid, params[])
{
new id;
if(connected[playerid] == true) return GameTextForPlayer(playerid, "~r~Spawn First", 5000, 5);
if(sscanf(params, "U(-1)", id)) return SendClientMessage(playerid, -1, "{c3c3c3}(INFO) /stats [id]");
if( id == -1 )
{
new iString[140];
format (iString, sizeof(iString), "{ffff99}(INFO) Current session stats of: %s", PlayerName[playerid]);
SendClientMessage(playerid, -1, iString);
format(iString,sizeof(iString),"{ffff99}Score: %i ~ Level: %i ~ Duels Win: %i ~ Duels Lost: %i", pInfo[playerid][Score], pInfo[playerid][Level], pInfo[playerid][DuelsWin], pInfo[playerid][DuelsLost]);
SendClientMessage(playerid, -1, iString);
format(iString,sizeof(iString),"{ffff99}Points: %i ~ Respect: %i ~ Kills: %i ~ Deaths: %i ~ Ratio: %.2f", pInfo[playerid][Points], pInfo[playerid][Respect], pInfo[playerid][Kills], pInfo[playerid][Deaths], floatdiv(pInfo[playerid][Kills], pInfo[playerid][Deaths]));
SendClientMessage(playerid, -1, iString);
format(iString,sizeof(iString),"{ffff99}Session Kills: %i ~ Session Deaths: %i ~ Session Ratio: %.2f", PlayerKills[playerid], PlayerDeaths[playerid], floatdiv(PlayerKills[playerid], PlayerDeaths[playerid]), pInfo[playerid][Headshots]);
SendClientMessage(playerid, -1, iString);
format(iString,sizeof(iString),"{ffff99}Headshots given: %i/45", pInfo[playerid][Headshots]);
SendClientMessage(playerid, -1, iString);
}
else if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, "{c3c3c3}(INFO) That player is not connected!");
else
{
new iString[140];
format (iString, sizeof(iString), "{ffff99}(INFO) Current session stats of: %s", PlayerName[id]);
SendClientMessage(playerid, -1, iString);
format(iString,sizeof(iString),"{ffff99}Score: %i ~ Level: %i ~ Duels Win: %i ~ Duels Lost: %i", pInfo[id][Score], pInfo[id][Level], pInfo[id][DuelsWin], pInfo[id][DuelsLost]);
SendClientMessage(playerid, -1, iString);
format(iString,sizeof(iString),"{ffff99}Points: %i ~ Respect: %i ~ Kills: %i ~ Deaths: %i ~ Ratio: %.2f", pInfo[id][Points], pInfo[id][Respect], pInfo[id][Kills], pInfo[id][Deaths], floatdiv(pInfo[id][Kills], pInfo[id][Deaths]));
SendClientMessage(playerid, -1, iString);
format(iString,sizeof(iString),"{ffff99}Session Kills: %i ~ Session Deaths: %i ~ Session Ratio: %.2f", PlayerKills[id], PlayerDeaths[id], floatdiv(PlayerKills[id], PlayerDeaths[id]), pInfo[id][Headshots]);
SendClientMessage(playerid, -1, iString);
format(iString,sizeof(iString),"{ffff99}Headshots given: %i/45", pInfo[id][Headshots]);
SendClientMessage(playerid, -1, iString);
}
return 1;
}
CMD:stats(playerid, params[])
{
new id;
if(connected[playerid] == true)
return GameTextForPlayer(playerid, "~r~Spawn First", 5000, 5);
if(isnull(params))
id = playerid;
else if(sscanf(params, "u", id))
return SendClientMessage(playerid, -1, "{c3c3c3}(INFO) /stats [id]");
if(!IsPlayerConnected(id))
return SendClientMessage(playerid, -1, "{c3c3c3}(INFO) That player is not connected!");
new iString[75];
format (iString, sizeof(iString), "{ffff99}(INFO) Current session stats of: %s", PlayerName[playerid]);
SendClientMessage(playerid, -1, iString);
format(iString,sizeof(iString),"{ffff99}Score: %i ~ Level: %i ~ Duels Win: %i ~ Duels Lost: %i", pInfo[playerid][Score], pInfo[playerid][Level], pInfo[playerid][DuelsWin], pInfo[playerid][DuelsLost]);
SendClientMessage(playerid, -1, iString);
format(iString,sizeof(iString),"{ffff99}Points: %i ~ Respect: %i ~ Kills: %i ~ Deaths: %i ~ Ratio: %.2f", pInfo[playerid][Points], pInfo[playerid][Respect], pInfo[playerid][Kills], pInfo[playerid][Deaths], floatdiv(pInfo[playerid][Kills], pInfo[playerid][Deaths]));
SendClientMessage(playerid, -1, iString);
format(iString,sizeof(iString),"{ffff99}Session Kills: %i ~ Session Deaths: %i ~ Session Ratio: %.2f", PlayerKills[playerid], PlayerDeaths[playerid], floatdiv(PlayerKills[playerid], PlayerDeaths[playerid]), pInfo[playerid][Headshots]);
SendClientMessage(playerid, -1, iString);
format(iString,sizeof(iString),"{ffff99}Headshots given: %i/45", pInfo[playerid][Headshots]);
SendClientMessage(playerid, -1, iString);
return 1;
}
CMD:stats(playerid, params[]) { new id; if(connected[playerid] == true) return GameTextForPlayer(playerid, "~r~Spawn First", 5000, 5); if(sscanf(params, "u", id)) return SendClientMessage(playerid, -1, "{c3c3c3}(INFO) /stats [id]"); if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, "{c3c3c3}(INFO) That player is not connected!"); sscanf(params, "U(-1)", id); if(id == -1) { new iString[2000]; format (iString, sizeof(iString), "{ffff99}(INFO) Current session stats of: %s", PlayerName[playerid]); SendClientMessage(playerid, -1, iString); format(iString,sizeof(iString),"{ffff99}Score: %i ~ Level: %i ~ Duels Win: %i ~ Duels Lost: %i", pInfo[playerid][Score], pInfo[playerid][Level], pInfo[playerid][DuelsWin], pInfo[playerid][DuelsLost]); SendClientMessage(playerid, -1, iString); format(iString,sizeof(iString),"{ffff99}Points: %i ~ Respect: %i ~ Kills: %i ~ Deaths: %i ~ Ratio: %.2f", pInfo[playerid][Points], pInfo[playerid][Respect], pInfo[playerid][Kills], pInfo[playerid][Deaths], floatdiv(pInfo[playerid][Kills], pInfo[playerid][Deaths])); SendClientMessage(playerid, -1, iString); format(iString,sizeof(iString),"{ffff99}Session Kills: %i ~ Session Deaths: %i ~ Session Ratio: %.2f", PlayerKills[playerid], PlayerDeaths[playerid], floatdiv(PlayerKills[playerid], PlayerDeaths[playerid]), pInfo[playerid][Headshots]); SendClientMessage(playerid, -1, iString); format(iString,sizeof(iString),"{ffff99}Headshots given: %i/45", pInfo[playerid][Headshots]); SendClientMessage(playerid, -1, iString); } else { new iString[2000]; format (iString, sizeof(iString), "{ffff99}(INFO) Current session stats of: %s", PlayerName[id]); SendClientMessage(playerid, -1, iString); format(iString,sizeof(iString),"{ffff99}Score: %i ~ Level: %i ~ Duels Win: %i ~ Duels Lost: %i", pInfo[id][Score], pInfo[id][Level], pInfo[id][DuelsWin], pInfo[id][DuelsLost]); SendClientMessage(playerid, -1, iString); format(iString,sizeof(iString),"{ffff99}Points: %i ~ Respect: %i ~ Kills: %i ~ Deaths: %i ~ Ratio: %.2f", pInfo[id][Points], pInfo[id][Respect], pInfo[id][Kills], pInfo[id][Deaths], floatdiv(pInfo[id][Kills], pInfo[id][Deaths])); SendClientMessage(playerid, -1, iString); format(iString,sizeof(iString),"{ffff99}Session Kills: %i ~ Session Deaths: %i ~ Session Ratio: %.2f", PlayerKills[id], PlayerDeaths[id], floatdiv(PlayerKills[id], PlayerDeaths[id]), pInfo[id][Headshots]); SendClientMessage(playerid, -1, iString); format(iString,sizeof(iString),"{ffff99}Headshots given: %i/45", pInfo[id][Headshots]); SendClientMessage(playerid, -1, iString); } return 1; }
CMD:stats(playerid, params[])
{
new id;
if(connected[playerid] == true) return GameTextForPlayer(playerid, "~r~Spawn First", 5000, 5);
if(sscanf(params, "u", id)) id = playerid;
if(!IsPlayerConnected(id)) return SendClientMessage(playerid, 0xc3c3c3FF, "(INFO) That player is not connected!");
new iString[75];
format (iString, sizeof(iString), "(INFO) Current session stats of: %s", PlayerName[id]);
SendClientMessage(playerid, 0xffff99FF, iString);
format(iString,sizeof(iString),"Score: %i ~ Level: %i ~ Duels Win: %i ~ Duels Lost: %i", pInfo[id][Score], pInfo[id][Level], pInfo[id][DuelsWin], pInfo[id][DuelsLost]);
SendClientMessage(playerid, 0xffff99FF, iString);
format(iString,sizeof(iString),"Points: %i ~ Respect: %i ~ Kills: %i ~ Deaths: %i ~ Ratio: %.2f", pInfo[id][Points], pInfo[id][Respect], pInfo[id][Kills], pInfo[id][Deaths], floatdiv(pInfo[id][Kills], pInfo[id][Deaths]));
SendClientMessage(playerid, 0xffff99FF, iString);
format(iString,sizeof(iString),"Session Kills: %i ~ Session Deaths: %i ~ Session Ratio: %.2f", PlayerKills[id], PlayerDeaths[id], floatdiv(PlayerKills[id], PlayerDeaths[id]), pInfo[id][Headshots]);
SendClientMessage(playerid, 0xffff99FF, iString);
format(iString,sizeof(iString),"Headshots given: %i/45", pInfo[id][Headshots]);
SendClientMessage(playerid, 0xffff99FF, iString);
return 1;
}
This should work as charm
PHP код:
|