Hi, ich habe fas Problem das das Licht nicht an geht.
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
if(IsPlayerInAnyVehicle(playerid))
{
new Veh = GetPlayerVehicleID(playerid),
Mod = GetVehicleModel(Veh);
if(newkeys == KEY_NO)
{
if(vInfo[Veh][vLights] == false)
{
GetVehicleParamsEx(Veh, engine, lights, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(Veh, engine, VEHICLE_PARAMS_ON, alarm, doors, bonnet, boot, objective);
vInfo[Veh][vLights] = true;
}
if(vInfo[Veh][vLights] == true)
{
GetVehicleParamsEx(Veh, engine, lights, alarm, doors, bonnet, boot, objective);
SetVehicleParamsEx(Veh, engine, VEHICLE_PARAMS_OFF, alarm, doors, bonnet, boot, objective);
vInfo[Veh][vLights] = false;
}
}
}
return 1;
}
Doch ich finde den Fehler nicht. Schon seit ca 20 Minuten bin ich am suchen. Könnt ihr mir helfen? Ich bekomme weder warnings noch anderes.
MFG Acrio
Licht geht nicht an
- Acrio
- Geschlossen
- Erledigt
-
-
Bitte mal die Warnings und errors posten
-
Bitte mal die Warnings und errors posten
Da oben steht er hat keine Error's und Warnig's Lesen bildet
Elster, Da werden wohl die Glühbirnen Kaputt sein -
Schon mal daran gedacht das du Lights etc. Global definiert hast? Das heißt wenn ein anderer das Licht an macht wird deins aus gemacht wenn du es danach versuchst an zu machen. Deshalb Lights, etc. Lokal im Callback definieren, nicht Global.
-
-
Da oben steht er hat keine Error's und Warnig's Lesen bildet
Elster, Da werden wohl die Glühbirnen Kaputt seinFail hab gelesen bekomme errors und warnings
-
Schon mal daran gedacht das du Lights etc. Global definiert hast? Das heißt wenn ein anderer das Licht an macht wird deins aus gemacht wenn du es danach versuchst an zu machen. Deshalb Lights, etc. Lokal im Callback definieren, nicht Global.
Ähm, ne habe es für jedes Auto extra definiert.
enum VehInfo
{
bool:vEngine,
bool:vLights
}
new vInfo[MAX_VEHICLES][VehInfo]; -
und wo hast du das hier Deklariert? (Davon habe ich gesprochen)
engine, lights, alarm, doors, bonnet, boot, objective
-
Direkt darunter, zwar auch Global aber es funktionierte bisher immer ohne Probleme bei meinem anderen Script.
-
Direkt darunter, zwar auch Global aber es funktionierte bisher immer ohne Probleme bei meinem anderen Script.
Du wirst es spätestens merken wenn mehrere Spieler auf deinem Script Spielen das es Bugs geben wird.Auch schon die "Z" Taste probiert bzw. die "N" evtl. die Flasche Taste gedrückt da an deinem Code nichts Falsch ist.
-
Alles richtig gedrückt. Und werde es dann halt gleich ändern aber trotzdem soll der Code jetzt langsam mal funktionieren...
Gibt es noch andere Gründe warum es nicht funktioniert? -
Du wirst es spätestens merken wenn mehrere Spieler auf deinem Script Spielen das es Bugs geben wird.
Das stimmt doch gar nicht!
Er speichert die Motor-Variable doch für das Vehicle, nicht für den Spieler. Zu 1000000% wird das Licht von Vehicle 583679412 nicht ausgehen, wenn Spieler XY für Vehicle 12742359 das Licht anmacht -
Aber trotzdem, wie bekomme ich das licht nun an?
Edit: Habe gerade mal getestet ob es an der Taste liegt. Das ist es aber leider nicht. Irgendwo muss da ein Fehler sein. Kann mir wirklich keiner helfen?
-
if(newkeys == KEY_NO)
zu if(newkeys & KEY_NO)
da es Bitabfragen sind
-
Hatte ich auch schon probiert klappt trotzdem nicht. Es liegt aber halt nicht am KEY_NO, das funktioniert. Es muss was mit den VehicleParams zu tun haben.
-
breadfish.de
Hat das Thema geschlossen.