Ein paar Car probleme

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 Leute ich versteh es immer noch nicht warum aber jeder Spieler kann in jedes Car einsteigen egal ob Fraki oder Privat auser in LSPD car. Und wenn einer seinen Privaten Car abschliesst kann trotzdem jeder rein und warum sind die Cars noch da wen der Spieler sich ausloggt? :D Würde mich freuen wen ich das endlich mal beheben könnte mit eurer hilfe.


  • poste mal die class/public wo du den carlock-code eingefügt hast.

    meinst du das?



    if(!strcmp("/lock", cmdtext, true))
    {
    if(IsPlayerInAnyVehicle(playerid))
    {
    for(new i = 0; i<MAX_VEHICLES; i++)
    {
    if(PlayerCar[i][vid] == GetPlayerVehicleID(playerid))
    {
    if(!strcmp(PlayerCar[i][Key], pn(playerid), false))
    {
    if(!PlayerCar[i][Lock])
    {
    PlayerCar[i][Lock] = 1;
    SetVehicleParams4All(PlayerCar[i][vid], 0, 1);
    SetVehicleParamsForPlayer(PlayerCar[i][vid], playerid, 0, 0);
    if(IsPlayerConnected(ReturnUser(PlayerCar[i][Key2]))) { SetVehicleParamsForPlayer(PlayerCar[i][vid], ReturnUser(PlayerCar[i][Key2]), 0, 0); }
    SendClientMessage(playerid, COLOR_GREEN, ".:: Fahrzeug aufgeschlossen! ::.");
    return 1;
    }
    else if(PlayerCar[i][Lock])
    {
    PlayerCar[i][Lock] = 0;
    SetVehicleParams4All(PlayerCar[i][vid], 0, 0);
    SendClientMessage(playerid, COLOR_GREEN, ".:: Fahrzeug abgeschlossen! ::.");
    return 1;
    }
    }
    else
    {
    return SendClientMessage(playerid, COLOR_GREY, "Dieses Fahrzeug gehört dir nicht!");
    }
    if(PlayerCar[i][Rented])
    {
    if(!strcmp(pn(playerid), PlayerCar[i][Key2], false))
    {
    if(!PlayerCar[i][Lock])
    {
    PlayerCar[i][Lock] = 1;
    SetVehicleParams4All(PlayerCar[i][vid], 0, 1);
    SetVehicleParamsForPlayer(PlayerCar[i][vid], playerid, 0, 0);
    if(IsPlayerConnected(ReturnUser(PlayerCar[i][Key2]))) { SetVehicleParamsForPlayer(PlayerCar[i][vid], ReturnUser(PlayerCar[i][Key2]), 0, 0); }
    SendClientMessage(playerid, COLOR_GREEN, ".:: Fahrzeug aufgeschlossen! ::.");
    return 1;
    }
    else if(PlayerCar[i][Lock])
    {
    PlayerCar[i][Lock] = 0;
    SetVehicleParams4All(PlayerCar[i][vid], 0, 0);
    SendClientMessage(playerid, COLOR_GREEN, ".:: Fahrzeug abgeschlossen! ::.");
    return 1;
    }
    }
    else
    {
    return SendClientMessage(playerid, COLOR_GREY, "Dieses Fahrzeug gehört dir nicht!");
    }
    }
    }
    }
    }
    return 1;
    }

  • nein im public

    Code
    OnPlayerEnterVehicle

    oder

    Code
    OnPlayerStateChange

    setzt du ja das diese fahrzeuge nur von fraktionsmembern gefahren werden können.



    Verwendust du DT_Cars?


    Selfmade oder gf edit?


    ein paar infos wären ganz gut

  • //edit ist kein DT_Cars
    OnPlayerEnterVehicle ist bei mir Leer und ja ist ein GF Edit und ist nicht dt



    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    if(newstate == PLAYER_STATE_DRIVER)
    {
    TextDrawShowForPlayer(playerid, Tacho[playerid]);
    if(!IsANoTachoVeh(GetPlayerVehicleID(playerid)))
    {
    SetTimerEx("Speedometer", 450, 1, "d", playerid);
    }
    new str[80], strr[150];
    for(new i = 0; i<MAX_VEHICLES; i++)
    {
    if(PlayerCar[vid] == GetPlayerVehicleID(playerid))
    {
    new PlayerVehicleModelID = GetVehicleModel(PlayerCar[vid]);
    PlayerVehicleModelID -= 400;
    format(str, sizeof str, "Dieser %s gehört %s!", PlayerVehicle[PlayerVehicleModelID], PlayerCar[Key]);
    SendClientMessage(playerid, COLOR_GREY, str);
    return 1;
    }
    }
    for(new j = 0;j<sizeof(ShowCars);j++)
    {
    if(ShowCars[j][v_id] == GetPlayerVehicleID(playerid))
    {
    format(strr, sizeof strr, "Datenblatt:\nFahrzeug: %s\nPreis: %d$", ShowCars[j][CarName], ShowCars[j][CarPreis]);
    ShowPlayerDialog(playerid, BuyDiag, 0, "Fahrzeugkauf", strr, "Kaufen", "Abbrechen");
    TogglePlayerControllable(playerid, 0);
    return 1;
    }
    }
    }
    if(newstate == PLAYER_STATE_ONFOOT)
    {
    TextDrawHideForPlayer(playerid, Tacho[playerid]);
    }
    return 1;
    }

  • jeder Spieler kann in jedes Car einsteigen egal ob Fraki oder Privat auser in LSPD car.

    Da müsstest du etwas in diese callbacks einbauen, das die vehid aus der variable mir der abgleicht wo er einsteigt oder schon drinne hickT(onplayerstaechange).
    dann nurnoch ejecten oder carabschließen. Freezen und unfreezen führt zu anzeige buggs zwischen den verschiedenen usern.

  • Da müsstest du etwas in diese callbacks einbauen, das die vehid aus der variable mir der abgleicht wo er einsteigt oder schon drinne hickT(onplayerstaechange).
    dann nurnoch ejecten oder carabschließen. Freezen und unfreezen führt zu anzeige buggs zwischen den verschiedenen usern.

    onplayerstaechange

    Was mus ich bei onplayerstatechange einbauen? :D