/carlock für Besitzer immer Offen.

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
  • Guten Tag liebe sa-mp.de Community, ich habe eine Frage. Und zwar wie kann ich machen das für den Besitzer des Auto, das Auto immer offen ist.
    Könnt ihr mir da helfen?


    /carlock:

    Spoiler anzeigen
    if (strcmp("/carlock", cmdtext, true, 10) == 0)
    {
    if(Dtc_PlayerHaveCar[playerid][Dtc_PlayerKey[playerid]])
    {
    new Status = Dtc_Carlock[PlayerCar[playerid][Dtc_PlayerKey[playerid]][CarId]];
    new Float:dtc_X,Float:dtc_Y,Float:dtc_Z;
    GetVehiclePos(PlayerCar[playerid][Dtc_PlayerKey[playerid]][CarId],dtc_X,dtc_Y,dtc_Z);
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i) && IsPlayerInRangeOfPoint(i,20.0,dtc_X,dtc_Y,dtc_Z))
    {
    PlayerPlaySound(i,1147,dtc_X,dtc_Y,dtc_Z);
    }
    }
    switch (Status)
    {
    case 0:
    {
    GameTextForPlayer(playerid, "~w~Fahrzeug ~r~abgeschlossen", 5000, 6);
    PlayerPlaySound(playerid, 1145, 0.0, 0.0, 0.0);
    Dtc_Carlock[PlayerCar[playerid][Dtc_PlayerKey[playerid]][CarId]] = 1;
    Dtc_LockCar(PlayerCar[playerid][Dtc_PlayerKey[playerid]][CarId]);
    }
    case 1:
    {
    GameTextForPlayer(playerid, "~w~Fahrzeug ~g~aufgeschlossen", 5000, 6);
    PlayerPlaySound(playerid, 1145, 0.0, 0.0, 0.0);
    Dtc_Carlock[PlayerCar[playerid][Dtc_PlayerKey[playerid]][CarId]] = 0;
    Dtc_UnLockCar(PlayerCar[playerid][Dtc_PlayerKey[playerid]][CarId]);
    }
    }
    }



    MfG,
    FabianLP!

  • Poste mal deinen OnPlayerEnterVehilce public.
    Dort müsstest du was ändern..


    hier:

    Spoiler anzeigen
    Function OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    if(GetVehicleModel(vehicleid) == 456 && ispassenger != 1)
    {
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "*Mit diesem Fahrzeug kannst du Produkte ausliefern.");
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "*Kaufen kannst du Produkte am LS Airport Eingang.");
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "*Verkaufen kannst du sie an jedem Business, dass Produkte braucht.");
    SendClientMessage(playerid, COLOR_LIGHTBLUE, "*Befehl: /produkte, viel Spaß.");
    }
    if(IsANoTachoVehicle(vehicleid) || IsPlayerNPC(playerid))
    {
    new engine, lights, alarm, doors, bonnet, boot, objective;
    GetVehicleParamsEx(vehicleid,engine,lights,alarm,doors,bonnet,boot,objective);
    SetVehicleParamsEx(vehicleid,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
    }
    if(GetVehicleModel(vehicleid) == 548 && ispassenger == 1)
    {
    PutPlayerInVehicle(playerid, vehicleid, 1);
    TogglePlayerControllable(playerid, 1);
    InCargo[playerid] = vehicleid;
    }
    if(GetVehicleModel(vehicleid) == 417 && ispassenger == 1)
    {
    PutPlayerInVehicle(playerid, vehicleid, 1);
    TogglePlayerControllable(playerid, 1);
    InLevi[playerid] = vehicleid;
    }
    if(GetVehicleModel(vehicleid) == 427 && ispassenger == 1)
    {
    PutPlayerInVehicle(playerid, vehicleid, 1);
    TogglePlayerControllable(playerid, 1);
    InEnfo[playerid] = vehicleid;
    }
    if(PlayerInfo[playerid][pAdmin] == 0)
    {
    if(GetVehicleModel(vehicleid) == 432 || GetVehicleModel(vehicleid) == 425 || GetVehicleModel(vehicleid) == 520)
    {
    if(IsPlayerInFrac(playerid,3)|| PlayerInfo[playerid][pLeader] == 7) { }
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du weißt nicht wie du in das Fahrzeug kommen sollst!");
    TogglePlayerControllable(playerid,false);
    TogglePlayerControllable(playerid,true);
    }
    }
    if (IsACopCar(vehicleid) && !ispassenger)
    {
    if(IsACop(playerid)){}
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast keine Schlüssel");
    TogglePlayerControllable(playerid,false);
    TogglePlayerControllable(playerid,true);
    }
    }
    if (IsAFbiCar(vehicleid) && !ispassenger)
    {
    if(IsACop(playerid) || IsPlayerInFrac(playerid,23)) {}
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast keine Schlüssel");
    TogglePlayerControllable(playerid,false);
    TogglePlayerControllable(playerid,true);
    }
    }
    if (IsAFeuerCar(vehicleid) && !ispassenger)
    {
    if(IsAFeuer(playerid)) {}
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast kein Schlüssel!");
    TogglePlayerControllable(playerid,false);
    TogglePlayerControllable(playerid,true);
    }
    }
    if (IsAFahrschulVeh(vehicleid) && !ispassenger)
    {
    if(PlayerInfo[playerid][pLeader] == 11 || PlayerInfo[playerid][pMember]== 11 || TakingLesson[playerid] == 1)
    {
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD1, " Du hast keinen Schlüssel!");
    TogglePlayerControllable(playerid, 1); //Stoppt Betreten des Autos
    }
    }
    if (IsACopCar(vehicleid) && !ispassenger)
    {
    if(IsACop(playerid) || IsPlayerInFrac(playerid,3)) {}
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast keine Schlüssel");
    TogglePlayerControllable(playerid,false);
    TogglePlayerControllable(playerid,true);
    }
    }
    if (IsAnAmbulance(vehicleid) && !ispassenger)
    {
    if(IsPlayerInFrac(playerid,4) || IsPlayerInFrac(playerid,22)) {}
    else
    {
    SendClientMessage(playerid,COLOR_RED,"Du hast keine Schlüssel");
    TogglePlayerControllable(playerid, 1); //Stoppt Betreten des Autos
    }
    }
    }
    if(!IsANoTachoVehicle(vehicleid) && ispassenger != 1)
    {
    SendClientMessage(playerid, 0xFFFFFFFF, "Wenn du den Motor starten willst, tippe /motor, oder drück die rechte STRG-Taste.");
    }
    if(GetVehicleModel(vehicleid) == 532 && ispassenger != 1 && PlayerInfo[playerid][pJob] == 6)
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Um die Felder zu ernten, tippe /ernten.");
    }
    return 1;
    }




    MfG,
    Fabian.Deagle!

  • Mh da scheint die Abfrage nicht drin zu sein.
    Wo wird denn bei dir Abgefragt, wenn jemand ein Fahrzeug betreten will es aber abgeschlossen ist?


    Ich weiss nicht, dan steht ja auch nichts sondern man kann einfach nicht rein.


    #edit: ist es nicht in dem /carlock befehl wo ich ganz oben gepostet habe?


    MfG,
    FabianLP!

  • Function LetDoorsLocked(){
    for(new playerid = 0; playerid < MAX_PLAYERS; playerid++)
    {
    if(IsPlayerConnected(playerid))
    {
    for(new i = 0; i < 700; i++)
    {
    if(Dtc_Carlock[i])
    {
    if(i == PlayerCar[playerid][Dtc_PlayerKey[playerid]][CarId])
    {
    SetVehicleParamsForPlayer(i,playerid,0,0);
    SendClientMessage(playerid,0xFFFFFFFF,"Als Besitzer des Fahrzeugs kommst du rein. Für andere Spieler ist es allerdings abgeschlossen!");
    }
    else
    {
    SetVehicleParamsForPlayer(i,playerid,0,1);
    SendClientMessage(playerid,0xFF00FF00,"Fahrzeug abgeschlossen!");
    }
    }
    }
    }
    }
    }
    versuch mal ob das klappt


  • Es geht, jedoch passiert dauern das hier:


    MfG,
    FabianLP!

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Ganz oben im Script steht ja sicherlich "forward LetDoorsLocked()"
    dann steht irgendwo die Funktion wie du sie hier gepostet hast.
    Doch damit die Funktion ausgeführt wird muss noch irgendwo stehen:
    LetDoorsLocked();
    Und um dir weiter helfen zu können müsste ich wissen wo genau das steht^^

  • Ahaa das ist also ein Timer, dann ist das gespame natürlich kein Wunder :D


    Dann klammer SetTimer("LetDoorsLocked".... erst mal aus ( // Kommentar Funktion ) und
    ergänze das hier unter OnPlayerEnterVehicle:


    if(Dtc_Carlock[vehicleid])
    {
    if(vehicleid == PlayerCar[playerid][Dtc_PlayerKey[playerid]][CarId])
    {
    SetVehicleParamsForPlayer(vehicleid,playerid,0,0);
    SendClientMessage(playerid,0xFFFFFFFF,"Als Besitzer des Fahrzeugs kommst du rein. Für andere Spieler ist es allerdings abgeschlossen!");
    }
    else
    {
    SetVehicleParamsForPlayer(vehicleid,playerid,0,1);
    SendClientMessage(playerid,0xFF00FF00,"Fahrzeug abgeschlossen!");
    }
    }

  • Es geht wunderbar :D Ich danke dir, echt sauebere Arbeit! :thumbup:




    MfG,
    FabianLP!