/Lock 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
  • Hey, ich habe ein /lock System gemacht welches im Grunde auch Funktioniert


    Allerdings kommt ab und zu wenn die Userzahlen mehr werden die Meldung "Du besitzt keinen Schlüssel für dieses Fahrzeug !" Obwohl das Fahrzeug dem Spieler gehört


    Ich denke das hat was damit zu tun das sich die Vehicle IDs verschieben ? Bei Fraktionsfahrzeugen hab ich das Problem Jedenfalls nicht


    Die Abfrage "GetDtCarOwner" Scheint Fehlerhaft zu sein weil daran scheitert es Aber eben nicht immer Das Autohaus ist "DT Cars" Vom Godfather

    [list=1][*]if (strcmp("/lock", cmd, true, 10) == 0)
    [*]{
    [*]if(IsPlayerInAnyVehicle(playerid) && GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    [*]{
    [*]new vid = GetPlayerVehicleID(playerid);
    [*]if(IsADtCar(vid))// Privatfahrzeuge
    [*]{
    [*]new carowner = GetDtCarOwner(vid);
    [*]if (carowner == playerid)
    [*]{
    [*]new engine, lights, alarm, doors, bonnet, boot, objective;
    [*]GetVehicleParamsEx(vid, engine, lights, alarm, doors, bonnet, boot, objective);
    [*]if(doors == 1)
    [*]{
    [*]SetVehicleParamsEx(vid, engine, lights, alarm, 0, bonnet, boot, objective);
    [*]SendClientMessage(playerid, COLOR_LIGHTBLUE, "Du hast dein Fahrzeug aufgeschlossen.");
    [*]}
    [*]else
    [*]{
    [*]SetVehicleParamsEx(vid, engine, lights, alarm, 1, bonnet, boot, objective);
    [*]SendClientMessage(playerid, COLOR_LIGHTBLUE, "Du hast dein Fahrzeug abgeschlossen.");
    [*]}
    [*]}
    [*]else
    [*]{
    [*]SendClientMessage(playerid, COLOR_GREY, "Du besitzt keinen Schlüssel für dieses Fahrzeug (debug 1)!");
    [*]return 1;
    [*]}
    [*]}
    [*]else for(new fc;fc<sizeof(FactionCars);fc++)// Fraktionsfahrzeug
    [*]{
    [*]if(FactionCars[fc][fVehid] >= 400 && FactionCars[fc][fVehid] <= 611)
    [*]{
    [*]if(vid == FactionCars[fc][fCarid])
    [*]{
    [*]if(PlayerInfo[playerid][sMember] == FactionCars[fc][fFaction])
    [*]{
    [*]
    [*]new engine, lights, alarm, doors, bonnet, boot, objective;
    [*]GetVehicleParamsEx(vid, engine, lights, alarm, doors, bonnet, boot, objective);
    [*]
    [*]if(doors == 1)
    [*]{
    [*]SetVehicleParamsEx(vid, engine, lights, alarm, 0, bonnet, boot, objective);
    [*]SendClientMessage(playerid, COLOR_LIGHTBLUE, "Du hast dein Fahrzeug aufgeschlossen.");
    [*]}
    [*]else
    [*]{
    [*]SetVehicleParamsEx(vid, engine, lights, alarm, 1, bonnet, boot, objective);
    [*]SendClientMessage(playerid, COLOR_LIGHTBLUE, "Du hast dein Fahrzeug abgeschlossen.");
    [*]}
    [*]}
    [*]else
    [*]{
    [*]SendClientMessage(playerid, COLOR_GREY, "Du besitzt keinen Schlüssel für dieses Fahrzeug (debug 2)!");
    [*]return 1;
    [*]}
    [*]}
    [*]}
    [*]}
    [*]}
    [*]return 1;
    [*]}
    [/list]



    [list=1][*]forward GetDtCarOwner(veh);
    [*]public GetDtCarOwner(veh)
    [*]{
    [*]for(new i = 0; i < MAX_PLAYERS; i++)
    [*]{
    [*]for(new x = 0; x < MaxVeh; x++)
    [*]{
    [*]if(PlayerCar[i][x][CarId] == veh)
    [*]{
    [*]return i;
    [*]}
    [*]}
    [*]}
    [*]return 555;
    [*]}
    [/list]

  • @Ronaldo2832
    Schreibe es so.


    Privat


    Fraktion