Automatische Startsystem von Fahrzeugen

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
  • Hallo zusammen, ich möchte das man mit der linken STRG Taste einen Motor starten kann und wieder ausmachen kann.
    Ich habe mich mit dem SAMP Wiki schon bisschen auseinander gesetzt, jedoch weiß ich nicth mehr weiter :/

    forward MotorAus(vehicleid);
    public MotorAus(vehicleid)
    {
    new engine, lights, alarm, doors, bonnet, boot, objective;
    GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);
    SetVehicleParamsEx(vehicleid, false, lights, alarm, doors, bonnet, boot, objective);
    }


    new engine, lights, alarm, doors, bonnet, boot, objective;
    GetVehicleParamsEx(vehicleid, engine, lights, alarm, doors, bonnet, boot, objective);


    Nun muss ich ja mit public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    return 1;
    } arbeiten oder?


    Aber weiß da nicht weiter:


    aber denk mal irgendwie dann mit "SetVehicleParamsEx(vehicleid, true, ... , ... ,) oder?


    Gruß

  • Du musst unter OnPlayerKeyState
    schauen.
    Dort musst du dann abfragen welche Taste er drückt.
    Hier alle keys
    Das ganze mit str würde dann so aussehen


    if(newkeys == Hier deine Taste)
    {
    new engine,lights,alarm,doors,bonnet,boot,objective;
    if(IsPlayerInAnyVehicle(playerid))
    {
    new vid = GetPlayerVehicleID(playerid);
    if(!(IsANoMotorVehicle(vid)))
    {
    if(GetPlayerVehicleSeat(playerid) == 0)
    {
    if(enginevar[vid] == 0)
    {
    GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(vid,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
    SendClientMessage(playerid,-1,"Motor wurde gestartet...");
    enginevar[vid] = 1;
    }
    else
    {
    GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(vid,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
    enginevar[vid] = 0;
    SendClientMessage(playerid,-1,"Motor wurde abgeschaltet...");
    }
    }
    }
    }
    }

  • C:\Users\Hanne\Desktop\Southstate - Roleplay\WoS 3.0.3\gamemodes\Southstate-Roleplay.pwn(7512) : error 017: undefined symbol "enginevar"
    C:\Users\Hanne\Desktop\Southstate - Roleplay\WoS 3.0.3\gamemodes\Southstate-Roleplay.pwn(7512) : warning 215: expression has no effect
    C:\Users\Hanne\Desktop\Southstate - Roleplay\WoS 3.0.3\gamemodes\Southstate-Roleplay.pwn(7512) : error 001: expected token: ";", but found "]"
    C:\Users\Hanne\Desktop\Southstate - Roleplay\WoS 3.0.3\gamemodes\Southstate-Roleplay.pwn(7512) : error 029: invalid expression, assumed zero
    C:\Users\Hanne\Desktop\Southstate - Roleplay\WoS 3.0.3\gamemodes\Southstate-Roleplay.pwn(7512) : fatal error 107: too many error messages on one line



    if(newkeys == KEY_ACTION)
    {
    new engine,lights,alarm,doors,bonnet,boot,objective;
    if(IsPlayerInAnyVehicle(playerid))
    {
    new vid = GetPlayerVehicleID(playerid);
    if(GetPlayerVehicleSeat(playerid) == 0)
    {
    //new enginevar(....)?
    if(enginevar[vid] == 0)
    {
    GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(vid,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
    SendClientMessage(playerid,-1,"Motor wurde gestartet...");
    enginevar[vid] = 1;
    }
    else
    {
    GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(vid,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
    enginevar[vid] = 0;
    SendClientMessage(playerid,-1,"Motor wurde abgeschaltet...");
    }
    }
    }
    }

  • kleines Problem hab ich noch und zwar es startet immer das Licht anstatt der Motor :O


    Sollte aber alles richtig sein,


    if(newkeys == KEY_ACTION)
    {
    new engine,lights,alarm,doors,bonnet,boot,objective;
    if(IsPlayerInAnyVehicle(playerid))
    {
    new vid = GetPlayerVehicleID(playerid);
    if(GetPlayerVehicleSeat(playerid) == 0)
    {
    if(enginevar[vid] == 0)
    {
    GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(vid,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
    SendClientMessage(playerid,-1,"Motor wurde gestartet...");
    enginevar[vid] = 1;
    }
    else
    {
    GetVehicleParamsEx(vid,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(vid,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
    enginevar[vid] = 0;
    SendClientMessage(playerid,-1,"Motor wurde abgeschaltet...");
    }
    }
    }
    }


    Gruß :huh: