AHK | /eat 1-5 Wie mache ich das?

1 Antwort

Vom Fragesteller als hilfreich ausgezeichnet

Ich weiß ja nicht wie dein code aussieht... 

Mir fallen da aber zwei Möglichkeiten ein;

1. Methode;

Du kannst folgendes deklarieren; 

#Persistent (Sorgt dafür, dass das Skript weiterläuft)
SendMode Input (Schnellere und zuverlässigere Methode zum Senden von Tastendrücken)

Dann musst du einen Startwert festlegen

eatCounter := 1  

Dann kannst du eine taste festlegen, die bei betätigung das skript ausführt;

F1::
  Send, /eat %eatCounter%{Enter} ; Sendet den /eat Befehl mit dem aktuellen Zählerwert
  eatCounter := (eatCounter % 5) + 1 ; Erhöht den Zähler und setzt ihn nach 5 zurück auf 1
return

2.Methode;

#SingleInstance

global currentFish = 1

F1::
 currentFish += 1
 if currentFish > 5
  currentFish = 1
 SendInput, /eat %currentFish%

#SingleInstance verhindert, dass mehrere Instanzen des AHK-Scripts ausgeführt werden. Global currentFish = 1 deklariert die globale Variable currentFish und initialisiert sie mit dem Wert 1.

F1:: deklariert die Funktion F1::, die aufgerufen wird, wenn die Taste F1 gedrückt wird (da kannst du natürlich eine beliebige Taste nutzen).

currentFish += 1 erhöht die Variable currentFish um 1.

if currentFish > 5 überprüft, ob die Variable currentFish größer als 5 ist.

currentFish = 1 setzt die Variable currentFish auf 1 zurück.

SendInput, /eat %currentFish% sendet den Befehl /eat mit der aktuellen Nummer des Fishes als Argument.

Woher ich das weiß:Hobby – Programmierer

LarsS2000S 
Fragesteller
 31.01.2024, 10:39

Danke, hab deine 2. Methode verwendet und diese Funktioniert Einwandfrei <3

1