Sinnvoll ist mit den Variablen zu arbeiten, nicht mit möglichen ModelIDs.
Bsp:
new v0=CreateVehicle(Blabla)
new v1=CreateVehicle(Blabla)
new v2=CreateVehicle(Blabla)
new v3=CreateVehicle(Blabla)
new v4=CreateVehicle(Blabla)
Danach kannst du mit einer Funktion ermitteln, um was es sich handelt.
Bspw:
GetVehicleType(myvehicleid)
{
switch(GetVehicleModelID(myvehicle)
{
case 123,125,77:7 //Gehen wir einfach mal davon aus, dass ModelID 123/125/777 ein Boot ist (später halt durch die echten ModelIDs ersetzen)
return 0; //Wir geben den internen Wert 0 aus und merken uns irgendwo, dass 0 für ModelID123, also ein Boot steht (Vorzugsweise unten irgendwo auskommentiert im Script)
case 555,556
return 1; //Denken wir uns einfach mal dass 555 und 556 LKWs sind, die RückgabeID1 merken wir uns also für LKW
//Das machst du dann einfach weiter mit allen Typen die du haben willst, gib einfach immer eine andere Zahl zurück
default: //Das wird ausgelöst, wenn es keiner der anderen Fälle ist. Denk dran, es als letztes in dieses Caseteil zu packen
return -1; //Merken wir uns, dass -1 immer zurückgibt, wenn das Fahrzeug kein in dieser Funktion zugewiesener Typ ist
}
}
Und dann kannst du das im Script ganz einfach abfragen, beispielsweise wollen wir nun irgendwo im Script wissen, ob das erstellte Fahrzeug v1 ein Boot ist:
if(GetVehicleType(veh1)==0) //In der Funktion geben die ModelIDs für "Boot" 0 zurück, würden wir nach einem LKW suchen würde die Abfrage ..==1 heißen
{
print("Juhu, wir haben ein Boot gefunden");
}
Es ist ungetestet, sollte es aber tun. Denk dran, dass die von mir geschriebenen ModelIDs ausgedacht sind, die richtigen findest du in der SA-MP Wiki.
EDIT1: @ hp: Das bringt nichts, da er scheinbar die Fahrzeuge im Script testen will. Daher macht GetPlayerVehicleID keinen Sinn.
Wenn ich mich irre vergesst meinen Post.