Posts by lily.fitzgerald


    junge, bist du dumm oder so? les doch mal was ich geschrieben habe, er soll stück für stück ausklammern und somit seinen fehler finden. kleiner dulli


    Okey hab jetzt den Beitrag gelesen. Ups :D
    Hab nur die eine Codezeile gelesen und für Trash empfunden. Mit Kontext machts bisschen mehr Sinn

    Aber wenn ich die neuen Hotkeys abspeicher dann sind die alten automatisch überschrieben.
    Ich denke ich probiere einfach eine Zuweisung über := aus und setze die Var damit neu


    Naja dann musst halt deine Hotkeys richtig einlesen. Soweit ich weiß, liest du deine Hotkeys einmal ein und weist ihnen eine Variable zu.
    Die steht dann fest. Und irgendwann schreibst du deine ini neu. Was ist jetzt der logische Schritt?
    Richtig. Entweder deine neugeschriebene Ini neu einlesen, oder die alten Variablen mit den alten Hotkeys aktualisieren.


    Und zu RegEx:
    Wonach genau soll denn diese Zeile suchen und zurückgeben?
    RegExMatch(DrogenStats,"(.*)",DrogenHandStats)
    Diese Funktion speichert dir in DrogenHandStats eine Zeichenfolge von DrogenStats, die mit dem gesamten Muster übereinstimmt. Da du aber deinen Platzhalter auf nichts einschränkst, müsste die Variable doch nur redundante Daten enthalten ?(

    Dann liegt der Fehler beim RegExMatch.
    RegExMatch(DrogenStats,"(.*)",DrogenHandStats)
    Probiers mal so, da müsste es so übernommen werden. Und dann Klammer eins nach dem anderen aus. Irgendwann findest du den Fehler. Falls es gar nicht klappt, schicke ich dir das wenn ich zuhause bin.


    Was ein Trashcode lol.
    Das verfehlt den Sinn von RegExMatch ja komplett.
    Du nimmst als Eingabevar dein DrogenStats und übergibst es 1 zu 1 an DrogenHandStats. Wofür RegExMatch, wenn du überhaupt nichts damit anfängst.
    Da kannst du entweder die Zuweisung direkt weglassen oder einfach den Wert von DrogenStats in DrogenHandStats schreiben. Sinnlos hier mit RegExMatch zu arbeiten. Dafür ist es nicht da



    Ist doch eigentlich logisch oder? Du überschreibst ja nirgendwo deine alten Hotkeys bzw. gibst sie wieder frei.
    Es ist ja nicht verboten auf mehreren Tasten den gleichen Befehl auszuführen. Sorg dafür, dass deine alten Hotkeys freigegeben werden und nicht mehr auf den Befehl reagieren und gut is


    Du hast FormatTime nicht verstanden.
    Wenn ich es richtig verstanden hab, ist deine Situation so:
    Du möchtest eine Inputvariable (einen int Wert!), welcher dir die Sekunden angibt in Minuten umwandeln.
    So funktioniert das aber nicht. Du musst in deiner Inputvariable einen Timestamp übergeben.
    Um das Ganze nur von deinen Sekunden aus zu berechnen kannst du folgenden Code verwenden (Aus der Wiki und an dich angepasst):


    Code
    1. MsgBox % FormatSeconds(900) // 900 Sekunden = 15 Minuten
    2. FormatSeconds(v)
    3. {
    4. time = 19990101 ; *Midnight* of an arbitrary date.
    5. time += %v%, seconds
    6. FormatTime, mmss, %time%, mm:ss
    7. return mmss
    8. }


    Zu deinem Suspend Problem sag ich nichts, da das echt nicht schwer ist und du ja offenbar damit erst gestern? (oder so) angenfangen hast.
    Schalt dein Hirn ein, dann kommst auch selber drauf. Der Thread hier ist ja nicht dein persönlicher Kummerkasten - hoff ich zumindest

    Dachte du willst nicht an jeder Stelle Round(foo) machen müssen lol.
    Daher einfach das Round in die Funktion packen und etwa 10 Zeichen bei jedem Aufruf sparen :D
    Aber joa mach wie du willst.
    War nur die Antwort auf dein:
    "
    Die neue SAMP APi nimmt alle werte auf die letzen 6 Stellen genau.
    Wie kann ich das ändern?
    Muss ich für alle Variablen nun den Round befehl einsetzen?
    "

    Dennis_Ventura:


    Ersetz deine getVehicleSpeed() durch diese hier. Dann sollte es passen:


    Soweit ich das beurteilen kann, ist das periodische Auslesen mit hoher Frequenz der StatsAPI etwas hinderlicher im Spiel, da das Statsfenster geöffnet und schnell wieder geschlossen wird.


    Und ja, man kann den Kofferraum-Dialog auslesen. In irgendeiner udf sind zumindest Funktionen zum Auslesen der SAMP-Dialoge vorhanden.
    Mit denen musst dann bisschen rumspielen. Kenne mich mit den Funktionen nicht aus, aber sie funktionieren auf jeden Fall, schon mal benutzt.


    Jap das stimmt. Da wirst du Spamprobleme bekommen, wenn du in deinen 2 Sekunden noch beispielsweise /lock oder so machst..
    Warum möchtest du nicht einfach einmal beim Keybinderstart den aktuellen Stand aus den Stats auslesen und von da an dann einfach alle Änderungen manuell mitloggen und darauf reagieren.


    Jede Aktion, die mit Drogen zu tun hat kann ja durch entweder Chatlogauszüge oder bestimmte Befehlseingaben mitverfolgt werden.
    Dementsprechend musst du nicht alle 2 Sekunden /stats öffnen, sondern arbeitest einfach parallel zum RGN System.
    Ansonsten kannst ja auch alle 5 Minuten oder so nen Abgleich machen, ob die Werte noch übereinstimmen und falls nicht entsprechende Maßnahmen ergreifen

    Falls es Bedarf für den SAPD-Keybinder gibt, werden Sachen eingebaut.
    Größtenteils besteht jedoch das Problem, dass Sachen wie z.B.

    • direktes Memory-Writing um Variablen zu ändern
    • Redmarker erstellen
    • WorldToScreen
    • ...


    offiziell verboten sind und es daher immer schwieriger wird etwas "sinnvolles" einzubauen.


    Oh. Wusste garnicht, dass das alles verboten ist :D Weißt du wo das steht? Memory schreiben sollte doch eigentlich nur dann verboten sein, wenn man bestimmten Adressen Werte zuweist, die sich nicht haben sollten :DD


    Und noch was: links in deinem Hex Code ist ein Zeichenfehler. So ist der Satz korrekt: 54 48 49 53 20 49 53 20 50 52 4F 42 41 42 4C 59 20 4E 4F 54 20 47 4F 4F 44


    Diese Backslashes sind sogenannte EscapeChars.
    Es gibt in AHK (und anderen Sprachen :D) gewisse Zeichen, die eben nicht "nur" ein Zeichen sind, sondern denen eine bestimmte Interpretation zugeschrieben ist.
    Wenn du jetzt aber ein solches Zeichen, welches eigentlich eine andere Bedeutung hast als normales Zeichen interpretieren möchtest, musst du dieses escapen.


    Link mit Infos: Wikipedia


    Bei RegExMatch Expressions kommt das sehr oft vor, da beispielsweise eine " ( " standardmäßig nicht nur für das Zeichen steht, dieses Zeichen aber sehr wohl einfach mal so in einem Fließtext vorkommen kann und dann auch dementsprechend ignoriert werden kann, oder viel mehrkeine besondere Beachtung geschenkt werden muss.
    Soweit ich weiß müssten das hier alle relevanten Zeichen sein: \.*?+[{|()^$

    Wieso konnte ich mir denken, dass so ein geistiger Dünnschiss noch von dir kommen muss?
    Naja, wahrscheinlich bist du stolz, dass du irgendeine Hochsprache kannst. Aber viel von deinen "Künsten" hat man ja bisher noch nicht sehen können.


    Und definier mir mal ne "echte Programmiersprache". Welche Merkmale weist sie auf?
    Freue mich auf deine Antwort.


    Ich spreche von Hochsprachen, wie C, C++ oder von mir aus auch noch Java (wobei letzteres nicht so meins ist).
    Allgemein bin ich der Meinung, dass Objekt-Orientierte Programmiersprachen zeitgemäßer sind und ein breiteres Spektrum an Anwendungsmöglichkeiten bieten.


    AutoHotkey ist zwar in C++ geschrieben, durch seine Built-In Delays, wirkt es aber zum Teil einfach langsamer.


    Auch bin ich der Meinung, dass man die meisten Programme, welche nicht trivial, wie "Drücke F, um was in den Chat zu schreiben" sind, in C++ effizienter und einfacher zu schreiben sind.


    Klar ist der Erste Einstieg schwieriger, da man sich mit Dingen, wie Pointern (+ Call-by Value vs. Call-by Reference), Polymorphie, Klassen oder Vererbung beschäftigen muss. Sobald man da aber mal den Dreh raus hat, gibt es KEINEN Grund AutoHotkey vorzuziehen.


    Es gibt nichts was AutoHotkey kann, was C++ nicht kann. Andersrum kann man das aber beim besten Willen nicht sagen...


    Dann gibt es natürlich noch das Problem mit der Kompilierung. Da bei einem AutoHotkeyprogramm dener gesamte Sourcecode in Klarschrift in den Speicher geschrieben wird, ist es ein Kinderspiel für jeden nicht auf den Kopf gefallenen diesen Sourcecode zu bekommen. Weiß zwar nicht wie es bei dir ist, aber ich finds besser, wenn mein geistiges Eigentum nicht einfach von Fremden geklaut wird und dann als das Ihrige ausgegeben wird.


    Eine letzte Sache, die mir grade noch einfällt ist, dass man gezwungen wird AHK erst zu installieren. C++ nicht (Das ist auch eins der Dinge, weswegen ich Java nicht mag - aber das ist ne andere Geschichte).


    Und zu deiner Aussage, dass man von mir von mir nicht viel gesehen hat:
    1. Hab ich es nicht nötig mich vor irgendwelchen Copy&Paste Kiddies in einem "GTA San Adreas Roleplay Server" Forum profilieren zu müssen
    und
    2. hat hier auf RGN AutoHotkey eine Art Monopol. Man schau sich einfach mal den C++ Release Bereich an (Viewerzahl lächerlich, Antworten nicht redenswert). Wofür soll ich Arbeiten von mir veröffentlichen, wenn diese eh nicht genutzt werden können, da hier kaum Leute mehr als SendInput t/q können.


    Ich hoffe ich konnte dir ein wenig meinen Standpunkt verdeutlichen.