Nabend
Ich habe ein Problem. Ich habe folgendes Fraktions System in meinem Selfmade script.
Im Enum gibts eine Variable die heißt Fraktion. Sollte diese auf 0 sein ist man Zivi, ist die auf 1 LSPD, 2 FBI und so weiter.
Die Fraktionsautos habe ich so gemacht.
forward IsACopCar;
new CopCars[1];
CopCars[0] = AddStaticVehicle(bla)
public IsACopCar(carid)
{
for(new i = 0; i < sizeof(CopCars); i++)
{
if(carid == CopCars[i])
{
return 1;
}
}
return 0;
}
Soo
dann habe ich folgendes beim einsteigen gemacht.
public OnPlayerStateChange(playerid, newstate, oldstate)
{
new newcar = GetPlayerVehicleID(playerid);
if(newstate == PLAYER_STATE_DRIVER)
{
if(IsACopCar(newcar))
{
if(PlayerInfo[playerid][Fraktion] == 1 || PlayerInfo[playerid][Fraktion] == 2)
{
if(PlayerInfo[playerid][Autoschein] == 1)
{
}
else
{
SendClientMessage(playerid,COLOR_GRAD2,"Du hast keinen Führerschein");
RemovePlayerFromVehicle(playerid);
}
}
else
{
SendClientMessage(playerid,COLOR_GRAD2,"Du bist kein Mitgleid des SAPD");
RemovePlayerFromVehicle(playerid);
}
}
das klappt beim LSPD und beim FBI.
hier, eig. das selbe wie beim LSPD/FBI aber es geht hier nicht. Hier kann ich einsteigen und fahren. DIe Variable Fraktion ist auf 0 und Autoschein ebenfalls.
if(IsAStaatCar(newcar))
{
if(PlayerInfo[playerid][Fraktion] == 5)
{
if(PlayerInfo[playerid][Autoschein] == 1)
{
}
else
{
SendClientMessage(playerid,COLOR_GRAD2,"Du hast keinen Führerschein");
RemovePlayerFromVehicle(playerid);
}
}
else
{
SendClientMessage(playerid,COLOR_GRAD2,"Du bist kein Staatsmitglied");
RemovePlayerFromVehicle(playerid);
}
}
Also ich kann die LSPD/FBI Autos nicht fahren, aber die Staat autos schon. Ich bitte um Hilfe, vielen dank