-
Sziasztok!
Azt szeretném megkérdezni, hogy mi lehet a baja az élet kijelzőnek. A pawnoban nem ír ki hibát meg is jeleníti a textdrawot, de mindig valamiért 0 az értéke az ember életének. Egyedül valamiért valószínűleg a GetPlayerHealth(playerid, health) lehet a baj, mert ha beírjuk azt hogy health=100 akkor beállítja 100-ra a játékba is.
A script egy része:
new string[10];
new Float:health;
GetPlayerHealth(playerid, health);
format(string, sizeof(string), \"%d\", health);
Textdraw3 = TextDrawCreate(548.000000, 141.000000, string);
TextDrawBackgroundColor(Textdraw3, 255);
TextDrawFont(Textdraw3, 3);
TextDrawLetterSize(Textdraw3, 0.529999, 1.800000);
TextDrawColor(Textdraw3, 16711935);
TextDrawSetOutline(Textdraw3, 0);
TextDrawSetProportional(Textdraw3, 1);
TextDrawSetShadow(Textdraw3, 1);
TextDrawShowForPlayer(playerid, Textdraw3);
-
Próbáld meg így.
new Text:Textdraw3[MAX_PLAYERS];
public OnPlayerConnect(playerid)
{
Textdraw3[playerid] = TextDrawCreate(548.000000, 141.000000, \"-\");
TextDrawBackgroundColor(Textdraw3[playerid], 255);
TextDrawFont(Textdraw3[playerid], 3);
TextDrawLetterSize(Textdraw3[playerid], 0.529999, 1.800000);
TextDrawColor(Textdraw3[playerid], 16711935);
TextDrawSetOutline(Textdraw3[playerid], 0);
TextDrawSetProportional(Textdraw3[playerid], 1);
TextDrawSetShadow(Textdraw3[playerid], 1);
return 1;
}
public OnPlayerSpawn(playerid)
{
TextDrawShowForPlayer(playerid, Textdraw3[playerid]);
return 1;
}
public OnPlayerUpdate(playerid)
{
new Float:health, string[10];
GetPlayerHealth(playerid, health);
format(string, sizeof(string), \"%.0f\", health);
TextDrawSetString(Textdraw3[playerid], string);
return 1;
}
-
A Health, az Float tipusú változó, te meg Intigert akarsz kiiratni..
Cseréld ki erre, a format() sort
format(string, sizeof(string), \"%f\", health);