Motor-Tank:Problem

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
  • Lieber Com,


    ich habe gestern bereits gefragt woran mein Problem liegen kann, nur habe ich das Gefühl, dass ich mich etwas undeutlich ausgedrückt habe.
    Ich schildere mein Problem noch einmal:
    Wenn der Server startet wird der Motor von jedem Vehicle auf false gesetzt.
    Bei dem Command /motor an , /motor aus wird der Motor dementsprechend auf true, bzw. auf false gesetzt.
    Die Boolean nennt sich schlicht "motor[MAX_VEHICLES]". In dem Public wo das Benzin immer abgezogen wird, habe ich vorher abgefragt ob der Motor an (sprich "true") ist.
    Jetzt ist mein Problem: Kein Vehicle verliert überhaupt Benzin, egal ob Motor an oder aus. Könnt ihr mir helfen? Würde mich sehr freuen :)


    Hier noch der Public wo das Benzin abgezogen wird:

    public CheckGas(playerid)
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(GetPlayerState(i) == PLAYER_STATE_DRIVER)
    {
    new vid = GetPlayerVehicleID(i);
    new Float: verbrauch = GetPlayerVehicleVerbrauch(i);
    new tank = speedcount[i]/130;
    if(GetVehicleModel(vid) == 481
    || GetVehicleModel(vid) == 509
    || GetVehicleModel(vid) == 510
    || IsAnEventCar(vid)) return 1;
    new engine,lights,alarm,doors,bonnet,boot,objective;
    if(IsANPCCar(vid)) return 1;
    if(spawncar_gas[vid] > 1)
    {
    if(tank < 1)
    {
    if(motor[vid] == true)
    {
    spawncar_gas[vid] -= 0.1;
    speedcount[i] = 0;
    }
    }
    if(tank >= 1 && tank <= 20)
    {
    if(motor[vid] == true)
    {
    spawncar_gas[vid] -= verbrauch;
    speedcount[i] = 0;
    }
    }
    if(tank > 20 && tank <= 60)
    {
    if(motor[vid] == true)
    {
    spawncar_gas[vid] -= verbrauch*2;
    speedcount[i] = 0;
    }
    }
    if(tank > 60)
    {
    if(motor[vid] == true)
    {
    spawncar_gas[vid] -= verbrauch*2;
    speedcount[i] = 0;
    }
    }
    }
    else
    {
    NoFuel[vid] = 1;
    GetVehicleParamsEx(GetPlayerVehicleID(playerid),engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(GetPlayerVehicleID(playerid),VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
    motor[vid] = false;
    PlayerPlaySound(i, 1085, 0.0, 0.0, 0.0);
    return 1;
    }
    }
    }
    }
    return 0;
    }//Sorry für das schlechte einrücken, liegt am Copy+Paste


    //Edit: Code verlängert, hat was gefehlt.

    Liebe Grüße


    Marcel