hi,
wenn ich den cmd /top eingebe, erscheint eine (eig. 5 Textdraws, für jeden der 5 top player eine Textdraw)
ein top 5 board. Geordnet nach der Anzahl der kills der Spieler(es wird auch der rank der player angezeigt), die gerade online sind.
Doch wenn mehr als ein spieler online ist, dann crasht der server sofort nach der command eingabe.
Kann mir vllt. jemand den fehler zeigen??
//OnPlayerCommand
if (strcmp("/top", cmdtext, true) == 0)
{
SendClientMessage(playerid,0xAA3333AA,"{283A90}The {B0171F}Top 5 {283A90}board is displayed.");
new TotalScores[6];
new TotalPlayers[6];
new PlayerScore[2];
new PlayerID[2];
for(new i; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
PlayerScore[0] = kills[i]; //kills
PlayerID[0] = i;
for(new place; place < sizeof(TotalScores); place++)
{
if(PlayerScore[0] > TotalScores[place])
{
strins(TotalScores, PlayerScore, place);
strins(TotalPlayers, PlayerID, place);
place = sizeof(TotalScores);
}
}
}
}
TextDrawShowForPlayer(playerid,Top51);
new string[200];
GetPlayerName(TotalPlayers[0], string, sizeof(string));
format(string, sizeof(string), "~r~1. ~w~%s ~r~%d ~w~Kills ~y~%s", string,TotalScores[0],RankName[pRank[TotalPlayers[0]]]);
TextDrawShowForPlayer(playerid,Top52);
TextDrawSetString(Text:Top52, string);
GetPlayerName(TotalPlayers[1], string, sizeof(string));
format(string, sizeof(string), "~r~2. ~w~%s ~r~%d ~w~Kills ~y~%s", string,TotalScores[1],RankName[pRank[TotalPlayers[1]]]);
TextDrawShowForPlayer(playerid,Top53);
TextDrawSetString(Text:Top53, string);
GetPlayerName(TotalPlayers[2], string, sizeof(string));
format(string, sizeof(string), "~r~3. ~w~%s ~r~%d ~w~Kills ~y~%s", string,TotalScores[2],RankName[pRank[TotalPlayers[2]]]);
TextDrawShowForPlayer(playerid,Top54);
TextDrawSetString(Text:Top54, string);
GetPlayerName(TotalPlayers[3], string, sizeof(string));
format(string, sizeof(string), "~r~4. ~w~%s ~r~%d ~w~Kills ~y~%s", string,TotalScores[3],RankName[pRank[TotalPlayers[3]]]);
TextDrawShowForPlayer(playerid,Top55);
TextDrawSetString(Text:Top55, string);
GetPlayerName(TotalPlayers[4], string, sizeof(string));
format(string, sizeof(string), "~r~5. ~w~%s ~r~%d ~w~Kills ~y~%s", string,TotalScores[4],RankName[pRank[TotalPlayers[4]]]);
TextDrawShowForPlayer(playerid,Top56);
TextDrawSetString(Text:Top56, string);
return 1;
}