Car restriction bugs
#1

I have now made a mafia with vehicles with ID-s 41, 42, 43, 44, 45 and 46. The vehicle ID-s are correct, tested with /oldcar. CODE:

AddStaticVehicle(484,728.6279,-1497.3424,0.2674,180.7063,1,1); // la eme marquis
AddStaticVehicle(507,732.8143,-1433.2311,13.3562,88.1666,2,2); // la eme elegant
AddStaticVehicle(405,740.1882,-1433.0984,13.4172,90.2300,2,2); // la eme sentinel
AddStaticVehicle(409,724.2262,-1433.4420,13.3404,89.5132,2,1); // la eme stretch
AddStaticVehicle(580,703.9022,-1439.4098,13.3352,269.1850,2,1); // la eme stafford // ID 45
AddStaticVehicle(461,701.0748,-1484.9236,5.0450,267.8089,2,1); // la eme pcj-600 // ID 46*/


Now I wanted to restrict them for La Eme only. I did it with that! METHOD 1:
if(newcar==41||newcar==42||newcar==43||newcar==44| |newcar==45||newcar==46) //La Eme Cars
{
if(PlayerInfo[playerid][pMember] == 5 || PlayerInfo[playerid][pLeader] == 5) { }
else if(PlayerInfo[playerid][pMember] != 5 || [PlayerInfo[playerid][pLeader] != 5)//la eme cars
{
SendClientMessage(playerid,0xFF000000, "You don't have the keys to this car!");
RemovePlayerFromVehicle(playerid);
}
}

RESULT:
La Eme is the factionID 5 here. Now if I compile and all, it looks fine, go ingame, go in the car as a La Eme member, I can drive it. But, if I /makeleader myself for example LSPD leader, I can still drive it. So it looks like everything I wrote is a total zero.

METHOD 2:
I made IsALaEmeMember and IsALaEmeCar. Lines:

forward IsALaEmeCar(carid);
forward IsALaEmeMember(playerid);


Now the public-s of them:

public IsALaEmeCar(carid)
{
if(carid==41||carid==42||carid==43||carid==44||car id==45||carid==46)
{
return 1;
}
return 0;
}
public IsALaEmeMember(playerid)
{
if(IsPlayerConnected(playerid))
{
new leader = PlayerInfo[playerid][pLeader];
new member = PlayerInfo[playerid][pMember];
if(member==5)
{
return 1;
}
else if(leader==5)
{
return 1;
}
}
return 0;
}

Okay, so now I have public'ed em.
Now to the script.
if(IsALaEmeCar(newcar))
{
if(!IsALaEmeMember(playerid))
SendClientMessage(playerid,COLOR_GREY,"You are not a La Eme Member");
RemovePlayerFromVehicle(playerid);
}

Now what it did.
You go in the car for example as the LSPD leader, get message You are not a La Eme Member and get ejected.
You go in the car as the La Eme leader it just ejects you with no message.

I am a little concerned about one thing - Public isamember. It looks like that:

public IsAMember(playerid)
{
if(IsPlayerConnected(playerid))
{
new leader = PlayerInfo[playerid][pLeader];
new member = PlayerInfo[playerid][pMember];
if(member==5 || member==6 || member==
{
return 1;
}
if(leader==5 || leader==6 || leader==
{
return 1;
}
}
return 0;
}


Right now trying with this place locked, hope the best, editing in 3mins.
EDIT: Nope, no change
Reply
#2

Help PLEASE, I am really in a trouble with it :S
Reply
#3

I need help PLEASE. Now I have tested with default vehicles, the usual script neither works =/ what coudl this be about?
Reply
#4

if(PlayerInfo[playerid][pMember] == 5 || PlayerInfo[playerid][pLeader] == 5) { }
else
{
SendClientMessage(playerid,0xFF000000, "You don't have the keys to this car!");
RemovePlayerFromVehicle(playerid);
}


if(IsALaEmeCar(newcar)) { }
else {
SendClientMessage(playerid,COLOR_GREY,"You are not a La Eme Member");
RemovePlayerFromVehicle(playerid); }
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)