Timer help plz

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
  • hi
    ich hab mir heute ein fs runtergeladen, in dem einige minigames drin sind. unter anderem auch derby.
    mein problem ist jetzt, dass ich in meinem gm (ist ein stuntgm) einen timer drin hab, der alle paar sek die autos repariert.
    aber das ist nicht gerade gut für derby :/ ^^
    deswegen wollt ich wissen, ob ich den timer ganz ausbauen muss, oder ob es iwie geht, wenn man derby joint, dass der timer dann nicht aktiviert wird


    mfg
    Flo

  • Also Floh, als erstes musst du diese ganzen Timer suchen, danach musst du sie da einfach rauslöschen, es kommen auch errors aber du musst alles dan löschen [komplett] damit es auch wirklich geht.


    Also alles suchen und einfach rauslöschen !



    MFG ^^

  • Du hast z.B. bei /derby baust du ein bool ein
    new bool:ind[MAX_PLAYERS]
    Bei dem /derby machst du dann ind[playerid]=true;
    Und dann der Timer...
    public publicname^^() {
    for(new i... bla bla) {
    if(IsPlayerConnected(i)) {
    if(IsPlayerInAnyVehicle(i)) {
    if(ind[i]==false) {
    SetVehicleHealth(GetPlayerVehicleID(i),1000); }}}
    }

  • also ich hab ganz oben new bool:ind[MAX_PLAYERS]; das hin gemacht,
    dann forward RepairVehicles();
    public OnFilterScriptInit()
    {
    SetTimer("RepairVehicles",1000,1);
    return 1;
    }


    if(strcmp(cmd, "/derby", true) == 0)
    {
    ind[playerid]=true;
    if(derbyplaying == 1)
    ...


    public RepairVehicles()
    {
    for(new i)
    {
    if(IsPlayerConnected(i))
    {
    if(IsPlayerInAnyVehicle(i))
    {
    if(ind[i]==false)
    {
    SetVehicleHealth(GetPlayerVehicleID(i),1000);
    }
    }
    }
    return 1;
    }



    :/: D:\PROGRA~1\ROCKST~1\GTASAN~1\SAMP02~1.WIN\FILTER~1\MINIGA~1.PWN(2623) : error 001: expected token: ";", but found ")"
    D:\PROGRA~1\ROCKST~1\GTASAN~1\SAMP02~1.WIN\FILTER~1\MINIGA~1.PWN(2624 -- 2625) : error 029: invalid expression, assumed zero
    D:\PROGRA~1\ROCKST~1\GTASAN~1\SAMP02~1.WIN\FILTER~1\MINIGA~1.PWN(2625) : error 001: expected token: ";", but found ")"
    D:\PROGRA~1\ROCKST~1\GTASAN~1\SAMP02~1.WIN\FILTER~1\MINIGA~1.PWN(2625) : warning 217: loose indentation
    D:\PROGRA~1\ROCKST~1\GTASAN~1\SAMP02~1.WIN\FILTER~1\MINIGA~1.PWN(2625) : error 029: invalid expression, assumed zero
    D:\PROGRA~1\ROCKST~1\GTASAN~1\SAMP02~1.WIN\FILTER~1\MINIGA~1.PWN(2625) : fatal error 107: too many error messages on one line


    Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    5 Errors.

  • Schau mal wen du das hast if(derbyplaying == 1)


    Mach einfach bei /derby oder wie man da rein kommt
    if(!derbyplaying == 1)
    else
    SetVehicleHealth(GetPlayerVehicleID(i),1000);
    blablabla

  • Ja einfügen musst schon selber


    public RepairVehicles()
    {
    for(new i)
    {
    if(IsPlayerConnected(i))
    {
    if(!derbyplaying == 1)
    {
    if(IsPlayerInAnyVehicle(i))
    {
    SetVehicleHealth(GetPlayerVehicleID(i),1000);
    }
    }
    }
    return 1;
    }