ESC seit XYZ Sekunden buggt

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • 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 :/ ?