settimer hilfe

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
  • hey ich habe nun ein bus job das heisst die checkpoints über ein public laufen und dafür brauche ich ja ein timer wie mache ich den ? ich habe ein aber irwie funkt damit nix.


    hier mal alles was ich dafür gemacht habe also bus.-



    if(strcmp(cmd, "/linie", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(Spieler[playerid][Job] == 2)
    {
    if(IsPlayerInAnyVehicle(playerid))
    {
    new veh = GetPlayerVehicleID(playerid);
    for(new i = 0;i<sizeof(buscars);i++)
    {
    if(veh == buscars[i])
    {
    ShowPlayerDialog(playerid, DIALOG_LINIE, DIALOG_STYLE_LIST, "Busfahrer - Linie auswählen", "Linie 1\nLinie 2-In Arbeit\nLinie 3 LS-SF-In Arbeit\nLinie 4 SF-LS-In Arbeit", "Auswählen", "Abbrechen");
    return 1;
    }
    }
    SendClientMessage(playerid, ROT, "Du bist in keinem Bus.");
    return 1;
    }
    }
    else return SendClientMessage(playerid, ROT, "Du bist kein Busfahrer.");
    }
    return 1;
    }



    das der dialog wo mit ich meine linie aussuchen kan.




    forward BusCountdown(playerid);



    SetTimer("BusCountdown", 1000, 1);





    public BusCountdown(playerid)
    {
    if(IsPlayerConnected(playerid))
    {
    new string[128];
    if(Spieler[playerid][Job] == 2)
    {
    for(new i=0;i<sizeof(buscars);i++)
    {
    new vID = GetPlayerVehicleID(playerid);
    if(vID == buscars[i])
    {
    if(IsPlayerInCheckpoint(playerid))
    {
    if(buscd[playerid] == 10)
    {
    buscd[playerid] = 9;
    GameTextForPlayer(playerid, "~w~Warten ...~n~~b~9", 500, 1);
    }
    else if(buscd[playerid] == 9)
    {
    buscd[playerid] = 8;
    GameTextForPlayer(playerid, "~w~Warten ...~n~~b~8", 500, 1);
    }
    else if(buscd[playerid] == 8)
    {
    buscd[playerid] = 7;
    GameTextForPlayer(playerid, "~w~Warten ...~n~~b~7", 500, 1);
    }
    else if(buscd[playerid] == 7)
    {
    buscd[playerid] = 6;
    GameTextForPlayer(playerid, "~w~Warten ...~n~~b~6", 500, 1);
    }
    else if(buscd[playerid] == 6)
    {
    buscd[playerid] = 5;
    GameTextForPlayer(playerid, "~w~Warten ...~n~~b~5", 500, 1);
    }
    else if(buscd[playerid] == 5)
    {
    buscd[playerid] = 4;
    GameTextForPlayer(playerid, "~w~Warten ...~n~~b~4", 500, 1);
    }
    else if(buscd[playerid] == 4)
    {
    buscd[playerid] = 3;
    GameTextForPlayer(playerid, "~w~Warten ...~n~~b~3", 500, 1);
    }
    else if(buscd[playerid] == 3)
    {
    buscd[playerid] = 2;
    GameTextForPlayer(playerid, "~w~Warten ...~n~~b~2", 500, 1);
    }
    else if(buscd[playerid] == 1)
    {
    buscd[playerid] = 11;
    GameTextForPlayer(playerid, "~w~Warten ...~n~~b~1", 500, 1);
    if(pCP[playerid] == CHECKPOINT_BUSSTART)
    {
    SetPlayerCheckpoint(playerid, 794.1573,-1096.1975,23.5284, 5.0);
    pCP[playerid] = CHECKPOINT_BUSCP1;
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "Nächste Haltestelle: Vinewood.");
    }
    else if(pCP[playerid] == CHECKPOINT_BUSCP1)
    {
    SetPlayerCheckpoint(playerid, 742.7133,-1393.4297,13.0455, 5.0);
    pCP[playerid] = CHECKPOINT_BUSCP2;
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "Nächste Haltestelle: Vinewood - Intercars.");
    }
    else if(pCP[playerid] == CHECKPOINT_BUSCP2)
    {
    SetPlayerCheckpoint(playerid, 301.2852,-1397.0028,13.5145, 5.0);
    pCP[playerid] = CHECKPOINT_BUSCP3;
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "Nächste Haltestelle: Rodeo.");
    }
    else if(pCP[playerid] == CHECKPOINT_BUSCP3)
    {
    SetPlayerCheckpoint(playerid, 354.8143,-1648.1133,32.4861, 5.0);
    pCP[playerid] = CHECKPOINT_BUSCP4;
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "Nächste Haltestelle: Rodeo.");
    }
    else if(pCP[playerid] == CHECKPOINT_BUSCP4)
    {
    SetPlayerCheckpoint(playerid, 678.2159,-1760.6434,12.9662, 5.0);
    pCP[playerid] = CHECKPOINT_BUSCP5;
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "Nächste Haltestelle: Marina.");
    }
    else if(pCP[playerid] == CHECKPOINT_BUSCP5)
    {
    SetPlayerCheckpoint(playerid, 1153.5178,-1714.3553,13.4061, 5.0);
    pCP[playerid] = CHECKPOINT_BUSCP6;
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "Nächste Haltestelle: Conference Center.");
    }
    else if(pCP[playerid] == CHECKPOINT_BUSCP6)
    {
    SetPlayerCheckpoint(playerid, 1479.6708,-1735.2942,13.0075, 5.0);
    pCP[playerid] = CHECKPOINT_BUSCP7;
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "Nächste Haltestelle: Commerce.");
    }
    else if(pCP[playerid] == CHECKPOINT_BUSCP7)
    {
    SetPlayerCheckpoint(playerid, 1442.5582,-1524.2251,13.0075, 5.0);
    pCP[playerid] = CHECKPOINT_BUSCP8;
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "Nächste Haltestelle: Commerce.");
    }
    else if(pCP[playerid] == CHECKPOINT_BUSCP8)
    {
    SetPlayerCheckpoint(playerid, 1483.9996,-1065.5348,23.2813, 5.0);
    pCP[playerid] = CHECKPOINT_BUSCPENDE;
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "Nächste Haltestelle: Mulholland Intersection.");
    }
    else if(pCP[playerid] == CHECKPOINT_BUSCPENDE)
    {
    new rand = 3000 + random(5000);
    Spieler[playerid][PayDayGeld] += rand;
    format(string, sizeof(string), "Die Fahrt ist nun zuende. Du hast $%d verdient und erhälst es am nächsten Zahltag.", rand);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "Bus-Erfahrungspunkte sind um 5 aufgestiegen.");
    Spieler[playerid][BusExp] += 5;
    }
    }
    }
    }
    return 1;
    }
    SendClientMessage(playerid, COLOR_GRAD2, "Du bist in keinem Bus.");
    buscd[playerid] = 10;
    KillTimer(bustimer[playerid]);
    return 1;
    }
    }
    return 1;
    }


    ist das so richtig ih möchte halt wen ich linie 1 nehme das halt automatisch die checkpoints kommen.


    hoffe mir kan jemand helfen bei dem problem


    ich denke es klappt nicht weil was mit dem timer nicht stimmt