hey leute, ich habe in mein script ein tacho system das mal ein sehr alter kollege vorn paar jahren für mich gescriptet hat nun laggt die kmh anzeige aber, kann man das iwie "umlaggen" ?
Tacho km/h anzeige laggt
- saya
- 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
-
-
Du rufst das ja in einem gewissen Intervall auf..z.B. von ~1000ms welches du in SetTimer/Ex eingestellt hast.
Den könntest du einfach etwas runter setzen, dann aktualisiert sich das öfters
-
Total Lag-Frei wäre es in https://wiki.sa-mp.com/wiki/OnPlayerUpdate den Tacho zu aktualisieren.
Je nach Berechnung und Coding des Tachos ist das aber mit Vorsicht zu genießen, da OnPlayerUpdate ca. 30 mal pro Sekunde ausgeführt wird. -
Du rufst das ja in einem gewissen Intervall auf..z.B. von ~1000ms welches du in SetTimer/Ex eingestellt hast.
Den könntest du einfach etwas runter setzen, dann aktualisiert sich das öfters
hmm ich finde gerade den timer nicht ist es vllt iwo drunter wie onplayerupdate oder so? denn unter onplayerupdate ist nichts mitn tacho
-
Der Code steht ja in einem public wie "TachoUpdate"...
und dann such mal im Skript nach "TachoUpdate" dann solltest du einen Timer finden
-
Der Code steht ja in einem public wie "TachoUpdate"...
und dann such mal im Skript nach "TachoUpdate" dann solltest du einen Timer finden
unter tachoupdate finde ich leider nichts
-
unter tachoupdate finde ich leider nichts
...das war ein Beispiel
Natürlich heißt die Funktion so nicht...ich kenne dein Skript schließlich nicht...
-
...das war ein Beispiel
Natürlich heißt die Funktion so nicht...ich kenne dein Skript schließlich nicht...zum tacho habe ich nur paar dinger gefunden ich haue dir mal den code hier rein...
hier erstmal der textdraw
CodeTacho4[playerid] = TextDrawCreate(488.000000, 371.000000, "0"); // Km/h TextDrawAlignment(Tacho4[playerid], 2); TextDrawBackgroundColor(Tacho4[playerid], 255); TextDrawFont(Tacho4[playerid], 3); TextDrawLetterSize(Tacho4[playerid], 0.570000, 2.899999); TextDrawColor(Tacho4[playerid], -1); TextDrawSetOutline(Tacho4[playerid], 0); TextDrawSetProportional(Tacho4[playerid], 1); TextDrawSetShadow(Tacho4[playerid], 0);
und hier glaube ich die grund funktionCode
Alles anzeigennew Float:Speedo_X,Float:Speedo_Y,Float:Speedo_Z; new Float:Speedo_HP; for(new i=0; i<SLOTS; i++) { if(IsPlayerConnected(i) && IsPlayerInAnyVehicle(i) && !IsANoTachoVehicle(GetPlayerVehicleID(i))) { GetPlayerPos(i, Speedo_X, Speedo_Y, Speedo_Z); GetPlayerVehicleID(i); GetVehicleHealth(GetPlayerVehicleID(i), Speedo_HP); new str1[256],str2[256],str3[256],str4[256]; if(SpeedoON[i] == 0) { TextDrawShowForPlayer(i, Tacho0); TextDrawShowForPlayer(i, Tacho1); TextDrawShowForPlayer(i, Tacho2[i]); TextDrawShowForPlayer(i, Tacho3); TextDrawShowForPlayer(i, Tacho4[i]); TextDrawShowForPlayer(i, Tacho5); TextDrawShowForPlayer(i, Tacho6); TextDrawShowForPlayer(i, Tacho7); TextDrawShowForPlayer(i, Tacho8[i]); TextDrawShowForPlayer(i, Tacho9[i]); TextDrawShowForPlayer(i, Tacho10); TextDrawShowForPlayer(i, Tacho11); TextDrawShowForPlayer(i, Tacho12[i]); TextDrawShowForPlayer(i, Tacho13[i]); SpeedoON[i] = 1; } new Float:speed_x,Float:speed_y,Float:speed_z,Float:final_speed,final_speed_int; new veh = GetPlayerVehicleID(i); GetVehicleVelocity(veh, speed_x, speed_y, speed_z); final_speed = floatsqroot(((speed_x*speed_x)+(speed_y*speed_y))+(speed_z*speed_z))*120.0; // 136.666667 = kmph // 85.4166672= mph final_speed_int = floatround(final_speed,floatround_round); new kmh_anzahl = final_speed_int; format(str1,sizeof(str1),"%s",VehicleName[GetVehicleModel(GetPlayerVehicleID(i))-400]); TextDrawSetString(Tacho2[i], str1); if(kmh_anzahl >= 150) { format(str2,sizeof(str2),"~r~~h~~h~~h~%d",kmh_anzahl); TextDrawSetString(Tacho4[i], str2); } else if(kmh_anzahl >= 100) { format(str2,sizeof(str2),"~y~~h~%d",kmh_anzahl); TextDrawSetString(Tacho4[i], str2); } else if(kmh_anzahl >= 50) { format(str2,sizeof(str2),"~g~~h~~h~~h~%d",kmh_anzahl); TextDrawSetString(Tacho4[i], str2); } else { format(str2,sizeof(str2),"%d",kmh_anzahl); TextDrawSetString(Tacho4[i], str2); }
ansonsten finde ich nichts...
-
Beitrag von FineTime ()
Dieser Beitrag wurde vom Autor gelöscht (). -
In welchem public steht denn deine "Grundfunktion"?
-
-
In welchem public steht denn deine "Grundfunktion"?
weiss nicht genau obs die grundfunktion ist..
aber es steht unter keinem public steht unter der function timer2
-
Auch gut, dann musst du nur noch den Intervall des Timers reduzieren.
Diesen findest du wahrscheinlich unter OnGameModeInit.
Du solltest aber aufpassen, dass du nicht versehentlich andere Dinge auch umstellst. -
Auch gut, dann musst du nur noch den Intervall des Timers reduzieren.
Diesen findest du wahrscheinlich unter OnGameModeInit.
Du solltest aber aufpassen, dass du nicht versehentlich andere Dinge auch umstellst.unter den timer sind noch paar andere sachen, zu den passieren aber nichts wenn ichs umönder oder? ( sry bin low im scripting ) & der timer ist zzt auf 1000 auf wv ist es optimal?
-
Kommt drauf an was alles dort drin steht.
Du kannst ja mal versuchen es auf 100 zu ändern, dann läuft es 10 mal schneller (100ms).
Wenn Probleme auftreten kannst du es ja auch wieder zurück ändern. -
Kommt drauf an was alles dort drin steht.
Du kannst ja mal versuchen es auf 100 zu ändern, dann läuft es 10 mal schneller (100ms).
Wenn Probleme auftreten kannst du es ja auch wieder zurück ändern.da steht nur die uhrzeit unsw drinne, ich habs jetz mal auf 100 & es läuft glatt, danke für eure hilfe
-
breadfish.de
Hat das Thema geschlossen.