Ich habe scheinbar unbewusst einen Fehler gemacht.
Er wirft mir den Wert von
if(pID > -1) { format(string,sizeof(string),"Besitzer %s [%d] Letzterr Fahrer: %s",getPlayerName(pID),pID,LastDriver[vid]); SendClientMessage(playerid,-1,string); }
Allerdings nicht den
getPlayerName(pID),
sondern nur
,pID,LastDriver[vid]
// Edit
Problem folgender Maßen behoben
Den Name über getPlayername abgefragt und als string an die Funktion übergeben
GetPlayerName(i, string, MAX_PLAYER_NAME);
// Edit
Doch noch nicht erledigt. Nun wird mir zwar der Name angezeigt wenn ich Ihn abfrage allerdings nicht wenn der /motor befehl verwendet wurde um den letzten Fahrer auszulesen.
Vielleicht kann mir da noch wer helfen
ocmd:carinfo(playerid,params[])
{
if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid,COLOR_RED,"Du musst dein Fahrzeug verlassen um die Abfrage tätigen zu können.");
new string[128],vid,Float:x,Float:y,Float:z,pID;
if(sscanf(params,"d",vid)) return SendClientMessage(playerid,-1,"/carinfo [CARID]");
if(vid == INVALID_VEHICLE_ID) return SendClientMessage(playerid,-1,"Ungültige Fahrzeug ID");
GetVehiclePos(vid,x,y,z);
if(!IsPlayerInRangeOfPoint(playerid,8,x,y,z)) return SendClientMessage(playerid,-1,"Du bist nicht in der Nähe des Fahrzeugs das du abrufen möchtest!");
pID = GetVehicleBesitzer(vid);
if(strlen(LastDriver[vid]) <= 0)
{
if(IsAFahrschule(vid))
{
format(string,sizeof(string),"Dieses Fahrzeug gehört der Fahrschule. Letzter Fahrer: %s",LastDriver[GetPlayerVehicleID(p_id)]);
SendClientMessage(playerid,-1,string);
print("Privat3");
}
else if(IsAOamtCar(vid))
{
format(string,sizeof(string),"Dieses Fahrzeug gehört dem Ordnungsamt. Letzter Fahrer: %s vID: %i",LastDriver[GetPlayerVehicleID(pID)],vid);
SendClientMessage(playerid,-1,string);
print("Privat2");
}
else if(IsABus(vid))
{
format(string,sizeof(string),"Dieses Fahrzeug gehört der Bus Organisation. Letzter Fahrer: %s",LastDriver[GetPlayerVehicleID(pID)]);
SendClientMessage(playerid,-1,string);
print("Privat1");
}
else if(pID == -1)
{
SendClientMessage(playerid,COLOR_RED,"Dieses Fahrzeug gehört dem Staat");
}
else
{ new i;
GetPlayerName(i, string, MAX_PLAYER_NAME);
format(string,sizeof(string),"Besitzer %s [%d]",string,pID);
SendClientMessage(playerid,-1,string);
}
}
else
{
if(pID == -1)
{
SendClientMessage(playerid,-1,"Dies ist ein Staatsfahrzeug");
format(string,sizeof(string),"Letzter Fahrer %s",LastDriver[GetPlayerVehicleID(playerid)]);
SendClientMessage(playerid,-1,string);
}
else
{
format(string,sizeof(string),"Besitzer %s [%d] ",getPlayerName(pID),pID);
SendClientMessage(playerid,-1,string);
}
format(string,sizeof(string),"Letzter Fahrer: %s",LastDriver[GetPlayerVehicleID(playerid)]);
SendClientMessage(playerid,-1,string);
}
return 1;
}
ocmd:motor(playerid,params[])
{
if(GetPlayerState(playerid)!=PLAYER_STATE_DRIVER)return
SendClientMessage(playerid,COLOR_RED,"Du bist nicht der Fahrer eines Fahrzeugs.");
new Vehicle = GetPlayerVehicleID(playerid), engine,lights,alarm,doors,bonnet,boot,objective;
//Fahrschule
if(IsAFahrschule(Vehicle))
{
if(PlayerInfo[playerid][pFahrschulmotor]==0)
{
SendClientMessage(playerid,COLOR_RED,"Es findet kein Termin in der Fahrschule statt.");
return 1;
}
GetVehicleParamsEx(Vehicle, engine,lights,alarm,doors,bonnet,boot,objective);
if(engine == VEHICLE_PARAMS_ON)
{
SetVehicleParamsEx(Vehicle,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
GameTextForPlayer(playerid, "~n~~n~~n~~n~~n~~n~~W~Motor ~r~aus!", 2000, 5);
DestroyVehicle(playerid);
}
else
{
SetVehicleParamsEx(Vehicle,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
GameTextForPlayer(playerid, "~n~~n~~n~~n~~n~~n~~W~Motor ~g~an!", 2000, 5);
PlayerInfo[playerid][pFahrschulmotor]=0;
format(LastDriver[Vehicle],30,"%s",getPlayerName2(playerid));
}
return 1;
}
//Bus
if(IsAbus(Vehicle) && PlayerInfo[playerid][pJob] == 1)
{
GetVehicleParamsEx(Vehicle, engine,lights,alarm,doors,bonnet,boot,objective);
if(engine == VEHICLE_PARAMS_ON)
{
SetVehicleParamsEx(Vehicle,VEHICLE_PARAMS_OFF,lights,alarm,doors,bonnet,boot,objective);
GameTextForPlayer(playerid, "~n~~n~~n~~n~~n~~n~~W~Motor ~r~aus!", 2000, 5);
}
else
{
SetVehicleParamsEx(Vehicle,VEHICLE_PARAMS_ON,lights,alarm,doors,bonnet,boot,objective);
GameTextForPlayer(playerid, "~n~~n~~n~~n~~n~~n~~W~Motor ~g~an!", 2000, 5);
format(LastDriver[Vehicle],30,"%s",getPlayerName(playerid));
}
return 1;
}
//Private Fahrzeuge
for(new id = 0; id < sizeof(cInfo); id++)
{
if(cInfo[id][id_x] == Vehicle)
{
if(cInfo[id][besitzer] == PlayerInfo[playerid][p_id])
{
GetVehicleParamsEx(Vehicle, engine,lights,alarm,doors,bonnet,boot,objective);
if(engine == 1)
{
SetVehicleParamsEx(Vehicle,0,lights,alarm,doors,bonnet,boot,objective);
GameTextForPlayer(playerid, "~n~~n~~n~~n~~n~~n~~W~Motor ~r~aus!", 2000, 5);
}
else
{
SetVehicleParamsEx(Vehicle,1,lights,alarm,doors,bonnet,boot,objective);
GameTextForPlayer(playerid, "~n~~n~~n~~n~~n~~n~~W~Motor ~g~an!", 2000, 5);
format(LastDriver[Vehicle],30,"%s",getPlayerName(playerid));
}
}
else
{
SendClientMessage(playerid, 0xFF0000FF, "Dieses Fahrzeug gehört nicht dir.");
}
return 1;
}
SendClientMessage(playerid,COLOR_RED,"Du besitzt keinen Schlüssel für dieses Fahrzeug.");
return 1;
}
return 1;
}