Hallo. Ich wollte ein Taxisystem scripten. Mein Problem ist, wenn ich einen Befehl eingebe kommt da "Du bist in keinem Taxi." Obwohl ich in dem Taxi sitze...
for(new i = 0; i < sizeof(TaxiVeh); i++)
{
if(IsPlayerInVehicle(playerid,TaxiVeh[i]))
{
CODE
return 1;
}else { return SendClientMessage(playerid,COLOR_RED,"Du bist in keinem Taxi."); }
}
Ich weiß das er in dem Taxi sitzt weil ich vorher dem Taxi ein Nummernschild gebe.
Du bist in keinem Taxi! Scriptfehler?
- Masterman
- Geschlossen
- Erledigt
Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!
Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
-
-
mach mal statt
if(IsPlayerInVehicle(playerid,TaxiVeh[i]))
das
if(GetPlayerVehicleID(playerid) == TaxiVeh[i]) -
Nope, geht auch nicht
-
Wie erstellst du die Vehicles?
-
AddStaticVehicleEx aber mit CreateVehicle geht es auch nicht:/
hier ein bspTaxiVeh[3]=AddStaticVehicleEx(561, 1984.1375, -1995.8741, 13.2969, 0.0000, 6, 6, 100);
-
nach der for Schleife müsstest du glaube ich einen return machen, weiß aber leider nicht, welches
-
for(new i = 0; i < sizeof(TaxiVeh); i++)
{
if(IsPlayerInVehicle(playerid,TaxiVeh[i]))
{
CODE
return 1;
}
}
return SendClientMessage(playerid,COLOR_RED,"Du bist in keinem Taxi.");Ein return in der Schleife, auch im "else-Zweig" führt zur sofortigen Beendigung der Schleife.
EDIT: Zusatzinfo:
Spoiler anzeigen
Falls nach der Schleife noch code folgen würde, sähe das Ganze so aus:Spoiler anzeigen new bool:intaxi = false;
for(new i = 0; i < sizeof(TaxiVeh); i++)
{
if(IsPlayerInVehicle(playerid,TaxiVeh[i]))
{
CODE
intaxi = true;
}
}
if(!intaxi) return SendClientMessage(playerid,COLOR_RED,"Du bist in keinem Taxi.");
MEHR CODE, WIRD NUR AUFGERUFEN WENN IN TAXI
-
breadfish.de
Hat das Thema geschlossen.