Hallo
wie kann ich scripten, dass nur bestimmte player mit einem fahrzeug fahren dürfen?
danke im vorraus
Hallo
wie kann ich scripten, dass nur bestimmte player mit einem fahrzeug fahren dürfen?
danke im vorraus
Willst du einzelne Autos eines Modelles freigeben oder die gesamte Model klasse ?
nein keine ganze modell klasse. nur einzelne fahrzeuge
Nein.
Less doch mal genau
if(vehicleid == ID)
{
new name[32];
GetPlayerName(playerid, name, sizeof(name));
if(strfind("NAME", name, true) == 0)
{
SendClientMessage(playerid, COLOR_YELLOW, "[!] Willkommen in deinem Auto");
}
else
{
RemovePlayerFromVehicle(playerid);
}
}
return 1;
}
Musst nurnoch einfügen
Oder so............musst halt nurnoch die vorraussetzung, id und die Texte für dich anpassen.
if(GetPlayerVehicleID(67)) //1. vorraussetzung - Wenn die ID 67 ist
{
if(pInfo[playerid][fraktion] == LEADER_LSPD ) //2. vorraussetzung - Wenn LSPD Leader ist
{
GameTextForPlayer(playerid,"~g~Polizeiwagen (LSPD).", 1000, 3); // Dann Text
}
else // oder, bzw wenn vorraussetzungen nicht erfüllt sind
{
TogglePlayerControllable(playerid,1); // toggle 1 (hindert am einsteigen)
SendClientMessage(playerid,0xFF0000AA, "Du bist kein Cop !"); // +Text
}
return 1;
}
Gehört unter das callback "public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)"
Traxxter tut mir leid dies zusagen,
aber deins kann man fast garnicht gebrauchen.
Du hast das nun einer Gruppe zugewiesen, er will es aber nur einem bestimmten spieler.
Deswegen ist die Sache mit dem Namen besser anstatt sowas.
Weil evt. hat er pInfo nichtmal^^
Also ich zitiere
Zitatdass nur bestimmte player mit einem fahrzeug fahren dürfen
Er sagte nicht das nur bestimmte player mit einem bestimmten Fahrzeug fahren dürfen sondern ausdrücklich das bestimmte Player mit "einem" Fahrzeug fahren dürfen.Vorraussetzung is also das er bereits Gruppen hat oder welche erstellen muss. Ganz eindeutig ist seine Frage also nicht gestellt, ist jetzt auslegungssache.
Aber mir ist das ja wurst, er wird jetzt sicher nochmal erläutern wie genau er es gemeint hat
ich hab schon SpielerInfo. Ich post euch mal meinen code bis jetzt, der NICHT funktioniert
public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
if(IsABike(vehicleid) && ScheinInfo[playerid][bikeschein] == 0 && !ispassenger)
{
SendClientMessage(playerid,white,"Du hast keinen Motoradführerschein");
TogglePlayerControllable(playerid,0);
TogglePlayerControllable(playerid,1);
}
else if(IsACar(vehicleid) && ScheinInfo[playerid][autoschein] == 0 && !ispassenger)
{
SendClientMessage(playerid,white,"Du hast keinen Autoführerschein");
TogglePlayerControllable(playerid,0);
TogglePlayerControllable(playerid,1);
}
else if(IsAPlane(vehicleid) && ScheinInfo[playerid][flugschein] == 0 && !ispassenger)
{
SendClientMessage(playerid,white,"Du hast keinen Flugschein");
TogglePlayerControllable(playerid,0);
TogglePlayerControllable(playerid,1);
}
else if(IsABoat(vehicleid) && ScheinInfo[playerid][bootschein] == 0 && !ispassenger)
{
SendClientMessage(playerid,white,"Du hast keinen Bootfuehrerschein");
TogglePlayerControllable(playerid,0);
TogglePlayerControllable(playerid,1);
}
else if(IsAMofa(vehicleid) && ScheinInfo[playerid][mofaschein] == 0 && !ispassenger)
{
SendClientMessage(playerid,white,"Du hast keinen Mofafuehrerschein");
TogglePlayerControllable(playerid,0);
TogglePlayerControllable(playerid,1);
}
else
{
new carid = GetPlayerVehicleID(playerid);
if(carid == 2)
{
SendClientMessage(playerid,white,"ABC");
}
else{}
}
return 1;
}
das carid ist völlig unnötig, da vehicleid dafür schon benutzt wird.
mit vehicleid gehts, aber wenn ich
if(IsACopCar(vehicleid))
{
SendClientMessage(playerid,white,"ABC");
RemovePlayerFromVehicle(playerid);
}
schreibe, dann erscheint zwar der Text aber ich werde nicht aus dem auto geworfen
wieso funzt das nich, es kommt weder error noch sonst iwas, es steht halt nur das ABC dran wenn ich einsteig.