Код:
new PlayerText:KillsLevel[MAX_PLAYERS];
public OnGameModeExit()
{
for(new i = GetMaxPlayers() - 1; i != -1; i--)
{
if(!IsPlayerConnected(i)) continue;
PlayerTextDrawDestroy(i, KillsLevel[i]);
}
return 1;
}
public OnPlayerConnect(playerid)
{
KillsLevel[playerid] = CreatePlayerTextDraw(playerid, 499.0, 101.0, "Kills: 0/0\nLevel: 0");
PlayerTextDrawFont(playerid, KillsLevel[playerid], 1);
PlayerTextDrawLetterSize(playerid, KillsLevel[playerid], 0.34, 1.5);
PlayerTextDrawSetOutline(playerid, KillsLevel[playerid], 1);
PlayerTextDrawColor(playerid, KillsLevel[playerid], 0xFDE39DFF);
PlayerTextDrawAlignment(playerid, KillsLevel[playerid], 1);
PlayerTextDrawShow(playerid, KillsLevel[playerid]);
UpdateKillsLevel(playerid);
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
#pragma unused reason
PlayerTextDrawDestroy(playerid, KillsLevel[playerid]);
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
#pragma unused reason
SetPlayerScore (killerid, GetPlayerScore (killerid) + 1);
UpdateKillsLevel(playerid);
return 1;
}
UpdateKillsLevel(playerid)
{
new kills = GetPlayerScore(playerid); // <<<<<
if(kills % 50 == 0) SetPlayerScore(playerid,GetPlayerScore(playerid) + 1); // <<<<<<
new level = GetPlayerScore(playerid), string[32];
format(string, sizeof(string), "Level: %d\nKills: %d/%d", level, kills, level * 50);
PlayerTextDrawSetString(playerid, KillsLevel[playerid], string); // <<<<<<<
}
pawn Код:
public OnPlayerDeath(playerid, killerid, reason)
{
#pragma unused reason
SetPlayerScore (killerid, GetPlayerScore (killerid) + 1);
UpdateKillsLevel(killerid);
return 1;
}
pawn Код:
UpdateKillsLevel(playerid)
{
new kills = GetPlayerScore(playerid);
if(kills % 50 == 0) SetPlayerScore(playerid,GetPlayerScore(playerid) + 1);
new level = GetPlayerScore(playerid), string[32];
format(string, sizeof(string), "Level: %d\nKills: %d/%d", level, kills, level * 50);
PlayerTextDrawSetString(playerid, KillsLevel[playerid], string);
PlayerTextDrawShow( playerid , KillsLevel[playerid] );
}