26.05.2012, 19:58
(
Последний раз редактировалось OPremium; 26.05.2012 в 20:03.
Причина: Failed in UpdateKillsDisplay :P
)
You are doing it wrong... For this you will need 1 textdraw for each player, use CreatePlayerTextDraw like in the following code, or else everything will mix up:
Now you can use "UpdateKillsDisplay" in OnPlayerDeath for example:
pawn Код:
new PlayerText:pKills[MAX_PLAYERS];
public OnPlayerConnect(playerid)
{
pKills[playerid] = CreatePlayerTextDraw(playerid, 3.0, 423.0, "_"); //Creates a textdraw for the player that just joined
// TextDraw settings here (font, text size, etc.) ... Remember to use the per-player variant! (Player[...])
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
PlayerTextDrawDestroy(playerid, pKills[playerid]); //Destroys the textdraw
return 1;
}
stock UpdateKillsDisplay(playerid)
{
new _str[32];
format(_str, sizeof(_str), "Kills : %d", AccountInfo[playerid][Kills]); //Formats the text... %d means an integer will be inserted there
PlayerTextDrawSetString(playerid, pKills[playerid], _str); //Updates the player's textdraw with the text we just formatted
PlayerTextDrawShow(playerid, pKills[playerid]); //Make sure the textdraw is visible
return 1;
}
pawn Код:
public OnPlayerDeath(playerid, killerid, reason)
{
//Anything else you have in this callback (Updating variables, etc)
if(killerid != INVALID_PLAYER_ID) UpdateKillsDisplay(killerid); //If player didn't suicide, update the display of the killer
return 1;
}

