17.12.2013, 22:39
How do you remove a 3DLabel from a player (Attach3DTextLabelToPlayer), I tried deleting it and that doesn't work, I also tried updating the text for something else, and it don't work
Update3DTextLabelText(labelID, 0xFFFFFFFF, " ");
use this function to delete: https://sampwiki.blast.hk/wiki/Delete3DTextLabel
But i myself just delete the label by updating it to "nothing". pawn Код:
function in order to edit/delete them. I also have had simillar issues in the past trying simply delete them. (Somehow the label IDs got messed up i suppose). |
Update3DTextLabelText(PlayerInfo[pid][pPlayername], COLGREEN, "ADMIN: NOT HERE IN CHARACTER (OOC)");
public OnPlayerSpawn(playerid)
{
new namestring[MAX_PLAYER_NAME];
format(namestring, sizeof(namestring), "%s", GetName(playerid));
PlayerInfo[playerid][pPlayername] = Create3DTextLabel(namestring, -1, 0, 0, 0, 10.0, 0, 0);
Attach3DTextLabelToPlayer(PlayerInfo[pid][pPlayername], playerid, 0, 0, 0.3);
}
//may i ask: Why "pid" and not "playerid"?
Attach3DTextLabelToPlayer(PlayerInfo[pid][pPlayername], playerid, 0, 0, 0.3);
//Also you have to update the label...
new Text3D:label[MAX_PLAYERS],
namestring[MAX_PLAYER_NAME];
public OnGameModeInit()//just create it here, we update it later
{
foreach(Player,i)
{
label[i] = Create3DTextLabel("", -1, 0, 0, 0, 10.0, 0, 0);
}
return 1;
}
public OnPlayerSpawn(playerid)//we update it on spawn and attach it to the player
{
format(namestring, sizeof(namestring), "%s", GetName(playerid));
Update3DTextLabelText(label[playerid],-1,namestring);
Attach3DTextLabelToPlayer(label[playerid], playerid, 0, 0, 0.3);
return 1;
}
//In case you want to "delete" the label, just empty it using:
Update3DTextLabelText(label[playerid], -1, " ");
pawn Код:
pawn Код:
This is a very simpel method and will work for sure! Hope this helps |