Feleslegesen használsz több változót illetve tényleg egyszerûbb SetPlayerChatBubble nélkül. Az én változatom:
new Text3D:fejefolott[MAX_PLAYERS];
CMD:settext(playerid, params[])
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, \"[HIBA] Nincs jogosultságod a parancs megtekintéséhez!\");
new str[128], player, szoveg[64]; // lokális változók deklarálása; elég a fentebbi feltétel után, különben csak feleslegesen hozzuk létre azokat
if(sscanf(params, \"us[64]\", player, szoveg)) return SendClientMessage(playerid, -1, \"[HIBA] Használat: /settext [játékos névrészlet / azonosító] [szöveg]\");
if(player == INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, \"[HIBA] Hibás játékos név/azonosító!\");
// paraméterek ellenõrzése
///
fejefolott[player] = Create3DTextLabel(szoveg, -1, 0, 0, 0, 30.0, 0, 0); // létrehozzuk a 3Dtextet
Attach3DTextLabelToPlayer(fejefolott[player], player, 0, 0, 0.6); // a fentebb létrehozott 3Dtextet hozzácsatoljuk a megadott játékoshoz
format(str, 128, \"Beállítottad a játékos 3D szövegét: %s\", szoveg);
SendClientMessage(playerid, -1, str);
format(str, 128, \"Beállítottak neked egy 3D szöveget: %s\", szoveg);
SendClientMessage(player, -1, str);
// Felesleges kettõ szinte ugyanolyan kiíratásnak külön-külön változó, elég egy.
return 1;
}
// ha már itt tartunk, legyen egy olyan parancs is ami leszedi a fejünk felõl a 3Dtextet
CMD:leszed(playerid, params[])
{
if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid, -1, \"[HIBA] Nincs jogosultságod a parancs megtekintéséhez!\");
new player, str[128];
if(sscanf(params, \"u\", player)) return SendClientMessage(playerid, -1, \"[HIBA] Használat: /leszed [id]\");
if(player == INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, \"[HIBA] Hibás játékos név/azonosító!\");
Destroy3DTextLabel(fejefolott[player]); // leszedjük a szöveget
SendClientMessage(playerid, -1, \"Leszedted a játékosnak a 3D szövegét.\");
SendClientMessage(player, -1, \"Leszedték a fejed felõl a 3D szöveget.\");
// ide még változó sem szükséges.
return 1;
}