[Brauche Hilfe] Autohotkey

  • Hallo Leute


    ich würde gerne mit AHK "eigene" Befehle machen.
    also z.B. /hallo und dann soll halt was passieren
    ich habe z,B, den Befehl /keks gemacht (gibt es vom server aus nicht) und dann isst man 6 mal einen keks
    :?:/keks::
    Suspend Permit
    SendInput t/isskeks{enter}
    SendInput t/isskeks{enter}
    SendInput t/isskeks{enter}
    SendInput t/isskeks{enter}
    SendInput t/isskeks{enter}
    SendInput t/isskeks{enter}
    return


    ich denke ohne API.ahk (API.dll) geht das nicht und die datei habe ich auch mit #Include API.ahk in mein Script included aber da steht dann immer "Die API.dll Datei konnte nicht gefunden werden!" obwohl die .ahk und .dll dateien im Ordner sind

  • Schau mal in der API.ahk ob dort auch der Pfad zur dll richtig angegeben ist.


    Da sie sich auch im gleichen Verzeichnis befindet müsste es eigentlich nur "API.dll" lauten.



    (PS: Der genannte Code funktioniert auch ohne der API genauso wie du ihn gepostet hast.)

  • Das was du vorhast funktioniert auch ohne eine API. Wie schon von Bookai erwähnt.
    Diese "API" greift nur näher ins Spiel ein und Verschafft einem einige Vorteile. Wie die abfrage deines Aktuellen Standortes, etc....


    Eine der aktuell bekanntesten API's ist die SAMP UDF.
    Diese kannst du dir hier herunterladen: https://github.com/SAMP-UDF/SAMP-UDF-for-AutoHotKey
    Du benötigst von dieser API nur die SAMP.ahk diese kopierst du in das Verzeichnis wo dein selbst erstelltes Script liegt also deine .AHK


    Dann schreibst du am besten in die oberste Zeile deines Scripts folgendes. "#Include SAMP.ahk" solltest du es eventuell die API in einem Unterordner liegen haben dann anstatt,
    "SAMP.ahk" - "includes/SAMP.ahk" somit inkludierst du die API in dein script.


    Nun kannst du beispielsweise auch die Befehle in deinem Fall "/isskeks" direkt über die API in den Chat senden.
    Dies gestaltest du dann gefolgt.



    Code
    :?:/keks::
    SendInput, {enter}
    Suspend, Permit
    loop, 6 {
    	SendChat("/isskeks")
    	Sleep, 1000
    }
    return

    Kurze Erklärungen zum Quellcode.


    Der "loop, 6" in der 4. Zeile ist dazu da dass etwas bestimmtes in diesem Fall SendChat und Sleep 6 mal wiederholt werden. du kannst auch einfach wenn du bei "loop" die Zahl 6 mit einer
    10 ersetzt dafür sorgen dass SendChat und Sleep 10 mal wiederholt werden.


    SendChat("") ist in diesem Fall eine Funktion der SAMP UDF. Diese sorgt dafür dass direkt die Nachricht in den Chat gesendet wird "sozusagen" die Fachbegriffe fallen mir um solch eine Uhrzeit leider nicht mehr ein.


    Der Sleep in Zeile 6 ist dafür da dass eine "PAUSE" zwischen SendChat gemacht wird. Es kann ja sein dass wenn du 6 mal hintereinander den Befehl /isskeks eingibst wegen SPAM ermahnt wirst. Sleep wird in diesem fall in
    Millisekunden angeben.


    Ich hoffe ich konnte dir hiermit helfen es kann ja sein dass du es jetzt schon selbst gelöst hat aber eventuell haben andere ja die gleiche Frage oder Problem.


    Gruß Herbert.

    Einmal editiert, zuletzt von Herbert Bobo () aus folgendem Grund: Eigener Fehler AddChatMessage mit SendChat ersetzt.