Auto nur für einen Spieler zugänglich

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,
    wie kann ich es machen, dass ein Auto nur für einen Spieler zugänglich ist?
    Zum Beispiel ich will jetzt ein Auto mit der FahrzeugID 402. Das Spawnt neben dem LSPD. Jetzt kann nur ich damit fahren.


    Ich hoffe ihr wisst es. :rolleyes:

  • public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    if(!ispassenger && GetVehicleModel(vehicleid) == 402) {
    new p_name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, p_name, sizeof(p_name));
    if(strfind(p_name,"gloaScholzi") == -1) {
    TogglePlayerControllable(playerid, false);
    SendClientMessage(playerid, "Du hast nicht die Berechtigung dieses Auto zu benutzen!");
    }
    }
    return 1;
    }


    Dürfte funktionieren. ^^

  • AddStaticVehicle(402,1575.8850,-1611.1359,13.2614,2.5860,3,3);


    Sorry ich lerne erst scripten. Kann man es machen, dass das Auto bei den oben genannten Koordinaten spawnt.
    Und wo muss ich die ganze Sache einfügen.

  • ganz oben
    new auto;


    unter public OnGameModeInit()
    auto = AddStaticVehicle(402,1575.8850,-1611.1359,13.2614,2.5860,3,3);


    das ganz unten
    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    if(newstate == PLAYER_STATE_DRIVER)
    {
    if(GetPlayerVehicleID(playerid) == auto)
    {
    new name[32];
    GetPlayerName(playerid, name, sizeof(name));
    if(strfind("gloaScholzi", name, true) == 0)
    {
    SendClientMessage(playerid,gelb,"Willkommen gloaScholzi");
    }
    else
    {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid,rot,"Das Auto gehört dir nicht!");
    }
    }
    }
    return 1;
    }

  • Oki danke schonmal für die Antworten.


    Nachdem ich alles eingefügt und angepasst hab kommt noch ein Error.
    Der Error
    C:\Users\Manuel\Desktop\bb.pwn(5239) : error 001: expected token: ";", but found "if"


    Die Zeilen
    if(GetPlayerVehicleID(playerid) == auto)
    {
    new name[32];
    GetPlayerName(playerid, name, sizeof(name));
    if(strfind("gloaScholzi", name, true) == 0)
    {
    SendClientMessage(playerid,COLOR_YELLOW,"Willkommen gloaScholzi");
    }
    else
    {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid,COLOR_RED,"Das Auto gehört dir nicht!");
    }
    }
    }
    return 1
    if(newstate == PLAYER_STATE_PASSENGER) // TAXI & BUSSES
    {
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, name, sizeof(name));
    new vehicleid = GetPlayerVehicleID(playerid);
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    In diesem Fall ist die Errorzeile die Zeile 17


    Hat jemand eine Lösung?

  • Versuchs mal so ^^
    if(GetPlayerVehicleID(playerid) == auto)
    {
    new name[32];
    GetPlayerName(playerid, name, sizeof(name));
    if(strfind("gloaScholzi", name, true) == 0)
    {
    SendClientMessage(playerid,COLOR_YELLOW,"Willkommen gloaScholzi");
    }
    else
    {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid,COLOR_RED,"Das Auto gehört dir nicht!");
    }
    }
    }
    return 1;
    }
    if(newstate == PLAYER_STATE_PASSENGER) // TAXI & BUSSES
    {
    new name[MAX_PLAYER_NAME];
    GetPlayerName(playerid, name, sizeof(name));
    new vehicleid = GetPlayerVehicleID(playerid);
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {

  • Danke ;) Es geht. Herzlichen Dank an alle.


    Wenn ich jetzt noch ein Auto für einen anderen Spieler möchte was und wo muss ich wo einfügen?


    Also zum Beispiel ein Auto mit mit der FahrzeugID 451 mit den Koordinaten: AddStaticVehicle(451,1564.2977,-1609.7694,13.0910,0.1197,15,13);

  • Also zum Bleistift so:
    ganz oben
    new auto2;


    unter public OnGameModeInit()
    auto2 = AddStaticVehicle(451,1564.2977,-1609.7694,13.0910,0.1197,15,13);;




    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    if(newstate == PLAYER_STATE_DRIVER)
    {
    if(GetPlayerVehicleID(playerid) == auto2)
    {
    new name[32];
    GetPlayerName(playerid, name, sizeof(name));
    if(strfind("Notes", name, true) == 0)
    {
    SendClientMessage(playerid,gelb,"Willkommen Notes");
    }
    else
    {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid,rot,"Das Auto gehört dir nicht!");
    }
    }
    }
    return 1;
    }

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen