/Auto System

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, wie stelle ich am besten ein Auto System?
    Das System soll nur den spieler, dem das auto gehört ins Auto lassen, aber wie mache ich das am besten?
    Habe es so versucht gehabt.


    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(!IsPlayerConnected(i)) continue;
    if(vehicleid == slashauto[i]){
    if(vehicleid == Spieler[playerid][Auto]){
    } else {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid, Rot, "Das ist nicht dein /Auto!");
    }
    }
    }
    return 1;
    }

  • Beitrag von nexis1 ()

    Dieser Beitrag wurde vom Autor gelöscht ().
  • nexis1 Das ist mir schon klar, habe das auch erst mal mit einem Testcommand gemacht


    dcmd_auto(playerid,params[])
    {
    #pragma unused params
    new Float:PosX2, Float:PosY2, Float:PosZ2;
    GetPlayerPos(playerid, PosX2, PosY2, PosZ2);
    Spieler[playerid][Auto] = CreateVehicle(411, PosX2, PosY2, PosZ2, 1, 1, 1, 1);
    Spieler[playerid][Auto] = slashauto[playerid];
    PutPlayerInVehicle(playerid, Spieler[playerid][Auto], 0);
    return 1;
    }


    Denke aber eher, dass der Fehler im public liegt, oder?

  • Naja als erstes musst du mit GetPlayerName(playerid, name, sizeof(name));Den Namen des Spielers herausfinden. Dann z.B. mit new pname[MAX_PLAYER_NAME]; Den Namen des Spielers festlegen.
    Zum Beispiel so.
    new pname[MAX_PLAYER_NAME];
    GetPlayerName(playerid,pname,sizeof pname);
    if (newstate == PLAYER_STATE_DRIVER)
    {
    if (vehicleid == DEINEVEHICLEID)
    {
    if(strcmp(pname,"Rocky",true) ==0)
    {
    {
    SendClientMessage(playerid,COLOR_ORANGE,"Willkommen zurück mein Freund");
    }


    return 1;
    }
    else
    {
    RemovePlayerFromVehicle(playerid);
    SendClientMessage(playerid,ROT,"Raus aus meiner Karre! Gruß Rocky!");
    }
    }

  • Das ganze soll Dynmaischer laufen, ich habe es nun so versucht.
    und unter Onplayerconnect wird es festgelegt
    Slashauto[playerid] = CreateVehicle(Spieler[playerid][Auto], Spieler[playerid][ax], Spieler[playerid][ay], Spieler[playerid][az], Spieler[playerid][aza], 0, 1, 60);

    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    for(new i;i<MAX_PLAYERS;i++)
    {
    if(vehicleid == Slashauto[i]){
    if(vehicleid == Slashauto[playerid]){
    } else {
    RemovePlayerFromVehicle(playerid);
    }
    }
    }
    TextDrawShowForPlayer(playerid, carhealth[playerid]);
    return 1;
    }


    Aber wie mache ich das nur der Spieler von dem das Slashauto ist damit fahren kann?


    lg
    Flash