Onaylı Üye
Dostlar Steamde Quaver adinda osu!mania tarzi bir ritim oyunu var. Bu oyunda autoplay bot yapmak istiyorum pythonla. Kodu basit ve guzel yazmaya calisirken bir anda karma karisik bir seyler ortaya cikardim. Kodu soyle birakayim.
kod calisiyor konsola gerekli ciktilari veriyor. DFKL tuslarina bastiginin ciktisini, Aktif pencerenin ismini, basilan tusu ve pixel rengine kadar soyluyor. Kodda 2 tane hata var, Bot calisiyor konsola tus basildiginin ciktisini veriyor ama basmiyor ve windowsun sesini surekli ac kapat yapiyor. Yardimlarinizi bekliyorum
Kod:
import pyautogui
import time
import keyboard
import win32gui
import threading
def get_active_window_title():
try:
title = win32gui.GetWindowText(win32gui.GetForegroundWindow())
print(f"Active window title: {title}")
return title
except Exception as e:
print(f"Error getting window title: {e}")
return ""
def is_game_window_active(window_title):
return window_title == "Quaver v1.4.1"
def toggle_audio():
while True:
if keyboard.is_pressed("M"):
pyautogui.press("volumemute")
time.sleep(1)
def main():
ac = False
kapat = "Z"
audio_thread = threading.Thread(target=toggle_audio, daemon=True)
audio_thread.start()
while True:
if keyboard.is_pressed("A"):
ac = True
print("A aktif")
while ac:
time.sleep(0.1)
active_window_title = get_active_window_title()
if is_game_window_active(active_window_title):
print(f"Pixel colors: {pyautogui.pixel(762, 894)}, {pyautogui.pixel(902, 894)}, {pyautogui.pixel(1032, 894)}, {pyautogui.pixel(1166, 894)}")
if pyautogui.pixel(762, 894) == (0, 0, 0):
pyautogui.press("D")
print("D'ye tıklandı")
if pyautogui.pixel(902, 894) == (0, 0, 0):
pyautogui.press("F")
print("F'ye tıklandı")
if pyautogui.pixel(1032, 894) == (0, 0, 0):
pyautogui.press("K")
print("K'ye tıklandı")
if pyautogui.pixel(1166, 894) == (0, 0, 0):
pyautogui.press("L")
print("L'ye tıklandı")
else:
print("Game window not active")
if keyboard.is_pressed("S"):
ac = False
print("Kapatıldı")
if keyboard.is_pressed(kapat):
break
if keyboard.is_pressed(kapat):
break
if __name__ == "__main__":
main()
kod calisiyor konsola gerekli ciktilari veriyor. DFKL tuslarina bastiginin ciktisini, Aktif pencerenin ismini, basilan tusu ve pixel rengine kadar soyluyor. Kodda 2 tane hata var, Bot calisiyor konsola tus basildiginin ciktisini veriyor ama basmiyor ve windowsun sesini surekli ac kapat yapiyor. Yardimlarinizi bekliyorum
Son düzenleme: