Skip to content

Instantly share code, notes, and snippets.

@CodeAlDente
Last active January 21, 2018 19:05
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save CodeAlDente/755b9a3216a9b9a892fd578da019a667 to your computer and use it in GitHub Desktop.
Save CodeAlDente/755b9a3216a9b9a892fd578da019a667 to your computer and use it in GitHub Desktop.
Adjust this command to see other player's stats as well
// Displays the statictics of the player
COMMAND:stats(playerid, params[])
{
// Setup local variables
new StatsMsg[1000], TitleMsg[128], StatsPlayer;
// Send the command to all admins so they can see it
SendAdminText(playerid, "/stats", params);
// Check if the player has logged in
if (APlayerData[playerid][LoggedIn] == true)
{
if(sscanf(params, "U(-1)", StatsPlayer)) SendClientMessage(playerid, COLOR_RED, "Usage: \"/stats <StatsPlayer (optional)>\"");
else
{
if (INVALID_PLAYER_ID == StatsPlayer)
StatsPlayer = playerid;
// Check if stats player is online
if (IsPlayerConnected(StatsPlayer)) {
if (playerid == StatsPlayer) {
format(TitleMsg, sizeof(TitleMsg), "Your Statistics");
} else {
new Name[MAX_PLAYER_NAME];
// Get the player's name
GetPlayerName(StatsPlayer, Name, sizeof(Name));
// Construct the title for the dialog
format(TitleMsg, sizeof(TitleMsg), "Statistics for %s:", Name);
}
// Construct the stats
format(StatsMsg, sizeof(StatsMsg), "Distance driven: {00FF00}%.0f meters (%.2f km)\n", APlayerData[StatsPlayer][StatsMetersDriven], (APlayerData[StatsPlayer][StatsMetersDriven] / 1000));
format(StatsMsg, sizeof(StatsMsg), "%sFinished trucker jobs: {00FF00}%i{FFFFFF}\n", StatsMsg, APlayerData[StatsPlayer][StatsTruckerJobs]);
format(StatsMsg, sizeof(StatsMsg), "%sFinished convoy jobs: {00FF00}%i{FFFFFF}\n", StatsMsg, APlayerData[StatsPlayer][StatsConvoyJobs]);
format(StatsMsg, sizeof(StatsMsg), "%sFinished busdriver routes: {00FF00}%i{FFFFFF}\n", StatsMsg, APlayerData[StatsPlayer][StatsBusDriverJobs]);
format(StatsMsg, sizeof(StatsMsg), "%sFinished pilot jobs: {00FF00}%i{FFFFFF}\n", StatsMsg, APlayerData[StatsPlayer][StatsPilotJobs]);
format(StatsMsg, sizeof(StatsMsg), "%sFinished courier jobs: {00FF00}%i{FFFFFF}\n", StatsMsg, APlayerData[StatsPlayer][StatsCourierJobs]);
format(StatsMsg, sizeof(StatsMsg), "%sFinished roadworker jobs: {00FF00}%i{FFFFFF}\n", StatsMsg, APlayerData[StatsPlayer][StatsRoadworkerJobs]);
format(StatsMsg, sizeof(StatsMsg), "%sFixed vehicles for assistance: {00FF00}%i{FFFFFF}\n", StatsMsg, APlayerData[StatsPlayer][StatsAssistance]);
format(StatsMsg, sizeof(StatsMsg), "%sFinished mafia jobs: {00FF00}%i{FFFFFF}\n", StatsMsg, APlayerData[StatsPlayer][StatsMafiaJobs]);
format(StatsMsg, sizeof(StatsMsg), "%sDelivered stolen mafia-loads: {00FF00}%i{FFFFFF}\n", StatsMsg, APlayerData[StatsPlayer][StatsMafiaStolen]);
format(StatsMsg, sizeof(StatsMsg), "%sFined players: {00FF00}%i{FFFFFF}\n", StatsMsg, APlayerData[StatsPlayer][StatsPoliceFined]);
format(StatsMsg, sizeof(StatsMsg), "%sJailed players: {00FF00}%i{FFFFFF}\n", StatsMsg, APlayerData[StatsPlayer][StatsPoliceJailed]);
// Show the dialog
ShowPlayerDialog(playerid, DialogStats, DIALOG_STYLE_LIST, TitleMsg, StatsMsg, TXT_DialogButtonOk, TXT_DialogButtonCancel);
}
else
SendClientMessage(playerid, COLOR_RED, "Player isn't connected");
}
}
else
return 0;
// Let the server know that this was a valid command
return 1;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment