Habe das eingefügt eben,
Aber es geht um ein neues 3Dtextlabel ..
das ich eingefügt habe keine ahnung ob es falsch ist oder es nicht geht weil schon ein label auf dem kopf ist
hier code code:
#define MAX_ESC_TIME 3600 //60 Minute
forward UpdateSpieler(playerid);
new UpdateCount[MAX_PLAYERS], OldUpdateCount[MAX_PLAYERS], Spawned[MAX_PLAYERS],ESCWarns[MAX_PLAYERS];
new PlayerUpTimer[MAX_PLAYERS],IsPaused[MAX_PLAYERS],ESCSeconds[MAX_PLAYERS];
new ESCTime[MAX_PLAYERS];
new Text3D:ESCLabel[MAX_PLAYERS];
public OnPlayerDisconnect(playerid)
{
Spawned[playerid] = 0;
ESCTime[playerid] = 0;
UpdateCount[playerid] = 0;
OldUpdateCount[playerid] = 0;
ESCWarns[playerid] = 0;
KillTimer(PlayerUpTimer[playerid]);
if(IsPaused[playerid] == 1)
{
IsPaused[playerid] = 0;
Delete3DTextLabel(ESCLabel[playerid]);
ESCSeconds[playerid] = 0;
}
DeletePlayer3DTextLabel(playerid, label[playerid]);
return 1;
}
public OnPlayerUpdate(playerid)
{
UpdateCount[playerid] ++;
if(UpdateCount[playerid] >= 999999)
{
UpdateCount[playerid] = 0;
}
if(IsPaused[playerid] == 1)
{
IsPaused[playerid] = 0;
Delete3DTextLabel(ESCLabel[playerid]);
ESCSeconds[playerid] = 0;
ESCTime[playerid] = 0;
}
public UpdateSpieler(playerid)
{
if(IsPlayerConnected(playerid) && Spawned[playerid] == 1)
{
if(IsPaused[playerid] == 0)
{
if(UpdateCount[playerid] == OldUpdateCount[playerid])
{
ESCWarns[playerid]++;
switch (ESCWarns[playerid])
{
case 10:
{
IsPaused[playerid] = 1;
ESCSeconds[playerid] = 10;
ESCLabel[playerid] = Create3DTextLabel("menu/desktop seit 05 sek.",0xE00023FF,0.0,0.0,0.8,80,0,0);
Attach3DTextLabelToPlayer(ESCLabel[playerid],playerid,0.0, 0.0, 0.8);
}
}
}
else
{
ESCTime[playerid] = 0;
IsPaused[playerid] = 0;
ESCWarns[playerid] = 0;
OldUpdateCount[playerid] = UpdateCount[playerid];
}
}
else
{
ESCSeconds[playerid]++;
if(ESCSeconds[playerid] >= 3600)
{
ESCSeconds[playerid] = 0;
}
new str[30];
format(str,sizeof(str),"menu/desktop seit: d sek.",ESCSeconds[playerid]);
Update3DTextLabelText(ESCLabel[playerid],COLOR_WHITE,str);
ESCTime[playerid] ++;
if(ESCTime[playerid] >= MAX_ESC_TIME)
{
SendClientMessage(playerid,COLOR_LIGHTRED,"Du wurdest gekickt da du Über 60 Minuten auf dem MENU/DESKTOP Warst!");
Kick(playerid);// Hier wird man dann gekickt nach einer Minute oben im Script Zeit gerne auf mehr Definieren
}
}
}
return 1;
}
//EDIT:
onplayerconnect:
ESCTime[playerid] = 0;
UpdateCount[playerid] = 0;
OldUpdateCount[playerid] = 0;
ESCSeconds[playerid] = 0;
IsPaused[playerid] = 0;
ESCWarns[playerid] = 0;
PlayerUpTimer[playerid] = SetTimerEx("UpdateSpieler",1000,1,"d",playerid);
Spawned[playerid] = 0;
Habe ich irgendwas falsch gemacht bzw vergessen oder warum kommt kein Label seit xyz sekunden auf dem desktop über dem kopf ?