25.03.2011, 00:50
Look at this CODE:
I did try and it works fine with me, but not on a other Text3D:labelname[playerid]. Then you have to make the same thing but with a other Text3D:labelname[MAX-PLAYERS] and with other name for PlayerLabel().
Geeting from Marco Koobs(MKxXx)
Код:
[ pawn] #define geel 0xffff00ff // color yelow new Text3D:LabelA[MAX_PLAYERS], Controle_Timer[MAX_PLAYERS], Float:B = 1.0, Float:C, Float:D, Float:E, Float:G, TEXT[64+1]; stock PlayerLabel(Text3D:id[], playerid, text[], color, Float:OffsetX, Float:OffsetY, Float:OffsetZ, Float:OffsetDrawDistance, virtualworld, testLOS=0) { Delete3DTextLabel(id[playerid]); format(TEXT, sizeof(TEXT), "%s", text); LabelA[playerid] = Create3DTextLabel(TEXT, color, OffsetX, OffsetY, OffsetZ, OffsetDrawDistance, virtualworld, testLOS); } public OnPlayerConnect(playerid) // Or on public OnPlayerSpawn(playerid) { MKxXx_Create_3DText(playerid); Controle_Timer[playerid] = SetTimer("Controle", 50, true); } public OnPlayerDisconnect(playerid, reason) { KillTimer(Controle_Timer[playerid]); MKxXx_Delete_3DText(playerid); } MKxXx_Create_3DText(playerid) { new Level1[15], Level0 = APlayerData[playerid][XPLevel];// I use APlayerData[playerid][XPLevel] not for admin level, but for XP LEVEL. And Get/SetPlayerScore(playerid) I use for XP Points. On 100 XP Points you get 1 XP Level up. GetPlayerName(playerid, playername, sizeof(playername)); GetPlayerPos(playerid,C,D,E); G = E + B; format(Level1, sizeof(Level1), "%s, Level : %d", playername, Level0); LabelA[playerid] = Create3DTextLabel(Level1,geel,C,D,G,100.0,0,0); return 1; } MKxXx_Update_3DText(playerid) { new Level1[79], Level0 = APlayerData[playerid][XPLevel]; GetPlayerName(playerid, playername, sizeof(playername)); GetPlayerPos(playerid,C,D,E); G = E + B; if(!IsPlayerNPC(playerid)) { format(Level1, sizeof(Level1), "%s, Level : %d", playername, Level0); PlayerLabel(LabelA[playerid], playerid, Level1, geel, C, D, G, 100.0, 0, 0); } return 1; } MKxXx_Delete_3DText(playerid) { Delete3DTextLabel(LabelA[playerid]); return 1; } forward Controle(playerid); public Controle(playerid) { MKxXx_Update_3DText(playerid); } [/pawn]
Geeting from Marco Koobs(MKxXx)