Verwirrender Fehler!

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
  • Hallöchen, ich arbeite immernoch an meinem Motorschaden System,
    doch wens Compiled kommt da des

    SQL
    error 021: symbol already defined: "chvtt"


    Das ist die Zeile
    public chvtt(playerid)
    {
    SetTimer("chvt",1039,true);//Fahrzeug checken
    }


    Und oben ist es so
    new chvtt[MAX_PLAYERS];


    Weiß jemande den Fail, habe alles versucht.
    MFG

  • Das ist korrekt das weiß ich auch,
    wen ich des mache kommt den.

    SQL
    error 028: invalid subscript (not an array or too many subscripts): "chvtt"
    warning 215: expression has no effect
    error 001: expected token: ";", but found "]"
    error 029: invalid expression, assumed zero
    fatal error 107: too many error messages on one line
  • Das ist korrekt das weiß ich auch,
    wen ich des mache kommt den.

    SQL
    error 028: invalid subscript (not an array or too many subscripts): "chvtt"
    warning 215: expression has no effect
    error 001: expected token: ";", but found "]"
    error 029: invalid expression, assumed zero
    fatal error 107: too many error messages on one line


    Hast du den Forward so gennant:



    forward chvtt(playerid);


    ?

    Mit freundlichen Grüßen
    [KoSoVa] :klugs:

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Komplette Code.
    Könnt ihr umstellen soll aber bitte das Selbe bezwecken.
    new chvtt2[MAX_PLAYERS];
    SetTimer("chvtt",1039,true);//Fahrzeug checken
    forward chvtt(playerid);
    public chvtt(playerid)
    {
    SetTimer("chvt",1039,true);//Fahrzeug checken
    }
    forward chvt(playerid);
    public chvt(playerid)
    {
    new vid = GetPlayerVehicleID(playerid);
    new engine,lightss,alarm,doors,bonnet,boot,objective;
    for(new i=0;i<sStats[playerid][sAutos];i++)
    if(IsPlayerConnected(playerid) && IsPlayerInAnyVehicle(playerid))
    {
    new vehicleid = GetPlayerVehicleID(playerid);
    new Float:vehiclehp;
    GetVehicleHealth(vehicleid,vehiclehp);
    if(vehiclehp <= 350)
    {
    SendClientMessage(playerid,0xFF6900AA,"Dieses Fahrzeug hat einen Motorschaden! Du kannst nicht mehr weiterfahren.");
    SetVehicleHealth(vehicleid,350.0);
    MotorDown[vehicleid] = 1;
    KillTimer(chvtt[playerid]);
    VehicleStarted[vid] = 0;
    PlayerCar[playerid][i][cMSchaden] = 1;
    GetVehicleParamsEx(vid,engine,lightss,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(vid,VEHICLE_PARAMS_OFF,lightss,alarm,doors,bonnet,boot,objective);
    }
    }
    return 1;
    }

  • Das macht doch kein Sinn.
    Du rufst einen Timer auf, und in dem Callback wird wieder ein Timer aufgerufen der den Motorschaden checkt.
    SetTimer("chvt",1039,true);//OnGameModeInit


    forward chvt(playerid);
    public chvt(playerid)
    {
    new vid = GetPlayerVehicleID(playerid);
    new engine,lightss,alarm,doors,bonnet,boot,objective;
    for(new i=0;i<sStats[playerid][sAutos];i++)
    if(IsPlayerConnected(playerid) && IsPlayerInAnyVehicle(playerid))
    {
    new vehicleid = GetPlayerVehicleID(playerid);
    new Float:vehiclehp;
    GetVehicleHealth(vehicleid,vehiclehp);
    if(vehiclehp <= 350)
    {
    SendClientMessage(playerid,0xFF6900AA,"Dieses Fahrzeug hat einen Motorschaden! Du kannst nicht mehr weiterfahren.");
    SetVehicleHealth(vehicleid,350.0);
    MotorDown[vehicleid] = 1;
    KillTimer(chvtt[playerid]);
    VehicleStarted[vid] = 0;
    PlayerCar[playerid][i][cMSchaden] = 1;
    GetVehicleParamsEx(vid,engine,lightss,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(vid,VEHICLE_PARAMS_OFF,lightss,alarm,doors,bonnet,boot,objective);
    }
    }
    return 1;
    }
    Das brauchst du eigentlich nur. Den anderen Timer kannst du weglassen, der ist unnötig.


  • Dann kommt wieder des
    C:\Users\Lukas\Desktop\TheGoldenReallife.pwn(15359) : error 028: invalid subscript (not an array or too many subscripts): "chvt"
    C:\Users\Lukas\Desktop\TheGoldenReallife.pwn(15359) : warning 215: expression has no effect
    C:\Users\Lukas\Desktop\TheGoldenReallife.pwn(15359) : error 001: expected token: ";", but found "]"
    C:\Users\Lukas\Desktop\TheGoldenReallife.pwn(15359) : error 029: invalid expression, assumed zero
    C:\Users\Lukas\Desktop\TheGoldenReallife.pwn(15359) : fatal error 107: too many error messages on one line


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



    4 Errors.

  • forward chvt();
    public chvt()
    {
    new engine,lightss,alarm,doors,bonnet,boot,objective;
    for(new i,vid,Float:vehiclehp;i<MAX_PLAYERS;i++)
    {
    if(IsPlayerConnected(i) && IsPlayerInAnyVehicle(i))
    {
    vid = GetPlayerVehicleID(i);
    GetVehicleHealth(vid,vehiclehp);
    if(vehiclehp <= 350)
    {
    SendClientMessage(playerid,0xFF6900AA,"Dieses Fahrzeug hat einen Motorschaden! Du kannst nicht mehr weiterfahren.");
    SetVehicleHealth(vehicleid,350.0);
    MotorDown[vehicleid] = 1;
    KillTimer(chvtt[playerid]);
    VehicleStarted[vid] = 0;
    PlayerCar[playerid][i][cMSchaden] = 1;
    GetVehicleParamsEx(vid,engine,lightss,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(vid,VEHICLE_PARAMS_OFF,lightss,alarm,doors,bonnet,boot,objective);
    }
    }
    }
    return 1;
    }
    Schreib den Callback mal so.



  • C:\Users\Lukas\Desktop\TheGoldenReallife.pwn(15346) : error 017: undefined symbol "playerid"
    C:\Users\Lukas\Desktop\TheGoldenReallife.pwn(15348) : error 017: undefined symbol "playerid"
    C:\Users\Lukas\Desktop\TheGoldenReallife.pwn(15349) : error 017: undefined symbol "playerid"
    C:\Users\Lukas\Desktop\TheGoldenReallife.pwn(15351) : error 017: undefined symbol "playerid"
    C:\Users\Lukas\Desktop\TheGoldenReallife.pwn(15356) : error 017: undefined symbol "playerid"
    C:\Users\Lukas\Desktop\TheGoldenReallife.pwn(15359) : error 028: invalid subscript (not an array or too many subscripts): "chvt"
    C:\Users\Lukas\Desktop\TheGoldenReallife.pwn(15359) : error 017: undefined symbol "playerid"
    C:\Users\Lukas\Desktop\TheGoldenReallife.pwn(15359) : error 029: invalid expression, assumed zero
    C:\Users\Lukas\Desktop\TheGoldenReallife.pwn(15359) : fatal error 107: too many error messages on one line


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



    9 Errors.