Timer Fehler

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
  • Hallo liebe com,


    ich bräuchte noch einmal eure Hilfe..


    Ich habe mir einen Timer erstellt der alle 2 Sekunden die Tank Anzeige Aktualisieren soll allerdings habe ich jetzt das Phänomen dass sobalt ich in ein Beliebiges Auto einsteige der Gesammte Server hängen bleibt.. ich denke ich hab da einen Fetten Fehler gemacht bin finde ihn gerade nur nicht...


    Hier mal der Timer:


    Und natürlich wieder schonmal vielen dank im Vorraus

  • Du solltest mal sowas wie break benutzen...


    Ansonsten rattert der dir da ja eine Schleife mit 500*MAX_CARS*MAX_CARS*MAX_CARS durch...und das halt eben alle paar Millisekunden, je nach timer-intervall.


    Das ist ja jetzt nicht so das, was du eigentlich willst..


    Es ist an sich nicht sehr schlau den Tank für jedes Fahrzeug in nem anderen Array zu speichern ^^


    Vielleicht sollte man das vereinheitlichen.


    Zudem deklariert man keine Variablen in Schleifen...so muss der nämlich immer und immer wieder alles neu allozieren.


    Man kann das auch alles kürzen und eleganter schreiben, das werd ich dir machen, wenn du mir sagst wie groß jeweils:


    playerCar, fcarInfo und ahCarInfo sind.


    Also wie hast du die deklariert?

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Code
    new ahCarInfo[MAX_VEHICLES][AutoHausCarInfos];
    new fcarInfo[MAX_VEHICLES][FraktionsAutoDaten];
    new playerCar[MAX_VEHICLES][SpielerAutoDaten];

    So hatte ich die..


    //Edit


    falls hilfreich noch hier die enums:


    //edit2


    Habe das Problem gerade selber gelöst :D


    Habe statt einen dauerhaften Timer einfach bei OnPlayerStateChange SetTimerEx und KillTimer genutzt außerdem hab ich bei den for-schleifen jeweils sobalt es geupdated wurde ein return eingebaut dadurch verbraucht er nicht soviel kapazität..


    Vielen dank trozdem für die Hilfestellung :D

    Einmal editiert, zuletzt von RickFace ()

  • return eingebaut

    Damit zerstört du aber die Funktion der Schleife, deshalb sagte ich break. (Also für andere Spieler geht dann die Schleife evtl nicht mehr.)


    Auslagern hilft auch hier und hält den Code strukturierter.


    Hier mal ein Tutorial, was ich geschrieben hatte: Schneller & strukturierter skripten

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S