Guten Tag,
ich habe mir folgendes Filterscript runtergeladen DInv - Kofferrauminventar
nun habe ich das Problem das mir immer die Nachricht kommt " Du hast keinen Schlüssel für dieses Fahrzeug."
Wenn ich die Zeile entferne dann kommt diese Meldung zwar nicht aber jeder kann auf jeden Kofferraum zugreifen,
ich hoffe jemand kann mir weiterhelfen ich bedanke mich im voraus.
So geht ES:
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp("/verstauen",cmdtext,true,10) == 0)
{
if(!IsPlayerNearVehicle(playerid)) return SendClientMessage(playerid,0xFFFFFFFF," Du befindest dich nicht in der Nähe eines Vehikels.");
/*if(GetPVarInt(playerid,Barriere) != GetVehicleRights(GetClosestVehicle(playerid)))
{
return SendClientMessage(playerid,0xFF9900AA," Du hast keinen Schlüssel für dieses Fahrzeug.");
}*/
new engine,lights,alarm,doors,bonnet,boot,objective,Float:Pos[3],Float:distance,Float:bootdistance;
SetPVarInt(playerid,"ClosestVehicle",GetClosestVehicle(playerid));
bootdistance = GetVehicleBootDistance(GetVehicleModel(GetPVarInt(playerid,"ClosestVehicle")));
GetVehiclePos(GetPVarInt(playerid,"ClosestVehicle"),Pos[0],Pos[1],Pos[2]);
distance = GetPlayerDistanceFromPoint(playerid,Pos[0],Pos[1],Pos[2]);
if(bootdistance-0.20 < distance && distance < bootdistance+0.20)
{
GetVehicleParamsEx(GetPVarInt(playerid,"ClosestVehicle"),engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(GetPVarInt(playerid,"ClosestVehicle"),engine,lights,alarm,doors,bonnet,1,objective);
ShowPlayerDialog(playerid,Verstauen,DIALOG_STYLE_MSGBOX,"Verstauen - Menü",GetVehicleSlotDataV(playerid),"Verstauen","Abbrechen");
}
return 1;
}
So geht es NICHT:
public OnPlayerCommandText(playerid, cmdtext[])
{
if(strcmp("/verstauen",cmdtext,true,10) == 0)
{
if(!IsPlayerNearVehicle(playerid)) return SendClientMessage(playerid,0xFFFFFFFF," Du befindest dich nicht in der Nähe eines Vehikels.");
if(GetPVarInt(playerid,Barriere) != GetVehicleRights(GetClosestVehicle(playerid)))
{
return SendClientMessage(playerid,0xFF9900AA," Du hast keinen Schlüssel für dieses Fahrzeug.");
}
new engine,lights,alarm,doors,bonnet,boot,objective,Float:Pos[3],Float:distance,Float:bootdistance;
SetPVarInt(playerid,"ClosestVehicle",GetClosestVehicle(playerid));
bootdistance = GetVehicleBootDistance(GetVehicleModel(GetPVarInt(playerid,"ClosestVehicle")));
GetVehiclePos(GetPVarInt(playerid,"ClosestVehicle"),Pos[0],Pos[1],Pos[2]);
distance = GetPlayerDistanceFromPoint(playerid,Pos[0],Pos[1],Pos[2]);
if(bootdistance-0.20 < distance && distance < bootdistance+0.20)
{
GetVehicleParamsEx(GetPVarInt(playerid,"ClosestVehicle"),engine,lights,alarm,doors,bonnet,boot,objective);
SetVehicleParamsEx(GetPVarInt(playerid,"ClosestVehicle"),engine,lights,alarm,doors,bonnet,1,objective);
ShowPlayerDialog(playerid,Verstauen,DIALOG_STYLE_MSGBOX,"Verstauen - Menü",GetVehicleSlotDataV(playerid),"Verstauen","Abbrechen");
}
return 1;
}
Das habe ich wenn ich ehrlich bin nicht richtig verstanden was ich eintragen soll.
#define Barriere "Fraktion" //Ändere den Namen in den Anführungszeichen (" ") in den PVar, welcher für die Fraktionsabfrage genutzt wird.
stock GetVehicleRights(vehicleid)
{
switch(vehicleid)
{
//Hier kommt die Abfrage herein, welche Personen den
//Kofferraum welcher Fahrzeuge benutzen dürfen.
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//----Beispiel: //
//----switch(vehicleid) //
//----{ //
//---- case 1 .. 10: return 1; Der Kofferraum von VehicleID 1 - 10 ist jetzt nur noch für Fraktion 1 verfügbar. //
//---- case 11 .. 24: return 2; Der Kofferraum von VehicleID 11 - 24 ist jetzt nur noch für Fraktion 2 verfügbar. //
//----} //
//----return -1; //
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
}
return -1;
}