Faction restricted vehicles help - Printable Version
+- SA-MP Forums Archive (
https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (
https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (
https://sampforum.blast.hk/forumdisplay.php?fid=12)
+--- Thread: Faction restricted vehicles help (
/showthread.php?tid=422407)
Faction restricted vehicles help -
Nathan_Taylor - 13.03.2013
pawn Код:
new LSPDvehicles[] =
{
596, 597, 598, 599, 601, 497, 528, 490, 430
};
new LSFDvehicles[] =
{
416, 544, 407, 563
};
new taxivehicles[] =
{
420, 431, 437, 438
};
pawn Код:
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
//get vehicle id
new vid;
new factionrequired[10];
vid = GetVehicleModel(vehicleid);
//check for factions
for(new i = 0; i <= 7; i++)
{
if(vid == LSPDvehicles[i])
{
factionrequired = "LSPD";
} else if(vid == LSFDvehicles[i])
{
factionrequired = "LSFD";
} else if(vid == taxivehicles[i])
{
factionrequired = "taxi";
} else {
factionrequired = "none";
}
}
new test[128];
format(test, sizeof(test), "FactionRequired: %s - Faction: %s", factionrequired, pInfo[playerid][Faction]);
SendClientMessage(playerid, -1, test);
if(!strcmp(pInfo[playerid][Faction], factionrequired, true, 20))
{
SendClientMessage(playerid, -1, "allowed");
} else {
SendClientMessage(playerid, -1, "not allowed");
}
return 1;
}
Anyone know why when I enter a vehicle, I don't get any messages at all when it should be sending two client message?
Re: Faction restricted vehicles help -
Nathan_Taylor - 13.03.2013
Bumpppppp
Re: Faction restricted vehicles help -
Threshold - 13.03.2013
This should work for you, basically your 'strcmp' function was using the cell length parameter, which does not equal 20 in this case... I won't explain it now, but research it a little and you'll understand.
pawn Код:
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
//get vehicle id
new vid;
new factionrequired[5] = "None";
vid = GetVehicleModel(vehicleid);
//check for factions
for(new i = 0; i < sizeof(LSPDvehicles); i++)
{
if(vid == LSPDvehicles[i])
{
factionrequired = "LSPD";
break;
}
else if(vid == LSFDvehicles[i])
{
factionrequired = "LSFD";
break;
}
else if(vid == taxivehicles[i])
{
factionrequired = "taxi";
break;
}
}
new test[128];
format(test, sizeof(test), "FactionRequired: %s - Faction: %s", factionrequired, pInfo[playerid][Faction]);
SendClientMessage(playerid, -1, test);
if(strcmp(pInfo[playerid][Faction], factionrequired, true) == 0)
{
SendClientMessage(playerid, -1, "allowed");
}
else
{
SendClientMessage(playerid, -1, "not allowed");
ClearAnimations(playerid);
}
return 1;
}