Und kann man machen, dass wenn ein Fahrzeug einen Berg runterfährt, dass der dann keinen Speedboost benutzen kann?
Ja und Ja
Dazu brauchst du einmal das Streamerplugin:
Da gibt es folgende Funktionen:
native Streamer_GetFloatData(type, {Text3D,_}:id, data, &Float:result);
native Streamer_SetFloatData(type, {Text3D,_}:id, data, Float:value);
native Streamer_GetIntData(type, {Text3D,_}:id, data);
native Streamer_SetIntData(type, {Text3D,_}:id, data, value);
native Streamer_GetArrayData(type, {Text3D,_}:id, data, dest[], maxlength = sizeof dest);
native Streamer_SetArrayData(type, {Text3D,_}:id, data, const src[], maxlength = sizeof src);
native Streamer_IsInArrayData(type, {Text3D,_}:id, data, value);
native Streamer_AppendArrayData(type, {Text3D,_}:id, data, value);
native Streamer_RemoveArrayData(type, {Text3D,_}:id, data, value);
native Streamer_GetUpperBound(type);
um nur die objectid zu ermitteln kannst du die Funktion nutzen
native Streamer_GetIntData(type, {Text3D,_}:id, data);
den typ und den datenwert data bekommst du hier raus http://forum.sa-mp.com/showthread.php?t=102865
siehe Definitions(type) und Enumerator(data)
Beim zweiten Punkt ermittelst du ganz einfach die Velocity des fahrzeugs du benötigst davon lediglich den z-wert.
zusätzlich kannst du abfragen mit dem mapandreas (include doer plugin) ob das Fahrzeug sich auf der straße fährt oder in der Luft ist falls das gewünscht ist.