SetVehicleParamsForPlayer 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
  • Hallo,
    bisher habe ich noch kein Locksystem geschrieben, jetzt brauche ich es aber und habe ein recht großes Problem. Wenn Fahrzeuge geladen werden, wird ihnen der Wert "besitzer" zugewiesen (entweder Zahl, welche für eine Airline-ID steht - oder ein Name, welcher für den Privatbesitzer steht). Aktuell ist aber das Problem, dass das nur für die Fahrzeuge der Airlines funktioniert - Fahrzeuge von Privatpersonen sind für jeden geöffnet und können auch von jedem locked/unlocked werden. Ich hoffe ihr könnt mir weiterhelfen.
    public OnVehicleStreamIn(vehicleid, forplayerid)
    {
    if(Autozeug[vehicleid][locked] == true)
    {
    new name[24];
    GetPlayerName(forplayerid,name,24);
    if(Spieler[forplayerid][aktfirma] == strval(Autozeug[vehicleid][besitzer]) || !strcmp(name,Autozeug[vehicleid][besitzer])) SetVehicleParamsForPlayer(vehicleid,forplayerid,0,0);
    else SetVehicleParamsForPlayer(vehicleid,forplayerid,0,1);
    }
    return 1;
    }


    // OnPlayerCommandText
    if(strcmp(cmdtext, "/lock", true) == 0)
    {
    if(GetPlayerVehicleSeat(playerid) != 0) return SendClientMessage(playerid, COLOR_TOMATO, "Du musst einen Wagen fahren.");
    new vehicleid = GetPlayerVehicleID(playerid), name[24];
    GetPlayerName(playerid,name,24);
    if(!strcmp(name,Autozeug[vehicleid][besitzer]) || Spieler[playerid][aktfirma] == strval(Autozeug[vehicleid][besitzer]))
    {
    if(Autozeug[vehicleid][locked] == false)
    {
    Autozeug[vehicleid][locked] = true;
    SendClientMessage(playerid, COLOR_WHITE, ColouredText("** Du hast dein Auto #FF6347abgeschlossen#FFFFFF."));
    for(new i=0;i<MAX_PLAYERS;i++)
    {
    if(IsPlayerConnected(i))
    {
    if(i == playerid) continue;
    if(IsNumeric(Autozeug[vehicleid][besitzer]) && Spieler[i][aktfirma] == strval(Autozeug[vehicleid][besitzer])) SetVehicleParamsForPlayer(vehicleid,i,0,0);
    else SetVehicleParamsForPlayer(vehicleid,i,0,1);
    }
    }
    }
    else
    {
    Autozeug[vehicleid][locked] = false;
    SendClientMessage(playerid, COLOR_WHITE, ColouredText("** Du hast dein Auto #33AA33aufgeschlossen#FFFFFF."));
    for(new i=0;i<MAX_PLAYERS;i++)
    {
    if(IsPlayerConnected(i))
    {
    if(i == playerid) continue;
    SetVehicleParamsForPlayer(vehicleid,i,0,0);
    }
    }
    }
    }
    else SendClientMessage(playerid, COLOR_TOMATO, "Du bist nicht der Besitzer dieses Fahrzeuges.");
    return 1;
    }


    Ich hoffe, ihr könnt mir helfen.


    Mit freundl. Grüßen
    Padarom

    Ich bin
    .. seit etwa 2007 in der Webentwicklung tätig, seit 2013 professionell
    .. Erfahrener Entwickler in PHP, Swift, Javascript, Typescript und Ruby. Zusätzlich habe ich Erfahrung in Python, Java, C#, C++, Prolog und einigen esoterischen Programmiersprachen
    .. Luftfahrtenthusiast und Segelflieger

    2 Mal editiert, zuletzt von Padarom () aus folgendem Grund: Neues Problem eingefügt