Damit nicht alle 407 Ids belegt sind sondern nur x der Array
Was für 407 IDs denn? 407 dient hier nur als Wertvergleich, damit das zu suchende Auto auch ein Wagen vom Model 407 ist.
Ist doch klar - du brichst per break; ja auch schon beim ersten Durchlauf die Schleife ab. Probiere es so, ansonsten teste per print(), bis wohin dein Befehl läuft. Returns haben hier nichts verloren - Schau dir mein Tutorial in der Signatur dazu an.
ocmd:ar1(playerid) {
new Float:pX, Float:pY, Float:pZ;
GetPlayerPos(playerid, pX, pY, pZ);
for(new i = 0; i != MAX_VEHICLES; i++) {
if(GetVehicleModel(i) == 407 && GetVehicleDistanceFromPoint(i, pX, pY, pZ) < 5) {
SetPlayerAttachedObject(playerid,2,18634,6,0.03,-0.01,0.13,100.0,-325.0,4.0,1.00,1.00,1.00);
break;
}
}
return 1;
}