Deepseek Python 20250509 b887f
Deepseek Python 20250509 b887f
class AdvancedTriggerBot:
def __init__(self, root):
self.root = root
self.root.title("Advanced TriggerBot")
self.root.geometry("450x400")
# Переменные настроек
self.is_running = False
self.trigger_key = tk.StringVar(value="shift")
self.target_color = (255, 0, 255) # Фиолетовый по умолчанию
self.tolerance = tk.IntVar(value=30)
self.scan_radius = tk.IntVar(value=5)
self.delay = tk.DoubleVar(value=0.05)
self.hotkey_enabled = tk.BooleanVar(value=True)
# Создание интерфейса
self.create_gui()
def create_gui(self):
main_frame = ttk.Frame(self.root, padding=10)
main_frame.pack(fill=tk.BOTH, expand=True)
# Блок параметров
params_frame = ttk.LabelFrame(main_frame, text="Параметры", padding=10)
params_frame.pack(fill=tk.X, pady=5)
# Блок управления
control_frame = ttk.Frame(main_frame)
control_frame.pack(pady=10)
ttk.Button(control_frame, text="Остановить",
command=self.stop_bot).pack(side=tk.LEFT, padx=5)
# Статус
self.status_var = tk.StringVar(value="Готов к работе")
ttk.Label(main_frame, textvariable=self.status_var).pack()
# Информация
ttk.Label(main_frame, text="Удерживайте выбранную клавишу для активации",
font=("Arial", 8)).pack()
def choose_color(self):
color = colorchooser.askcolor(title="Выберите цвет цели")[0]
if color:
self.target_color = tuple(map(int, color))
hex_color = "#{:02x}{:02x}{:02x}".format(*self.target_color)
self.color_preview.config(bg=hex_color)
def start_bot(self):
if not self.is_running:
self.is_running = True
self.status_var.set("Работает - активация: " + self.trigger_key.get())
self.start_btn.config(state=tk.DISABLED)
def stop_bot(self):
self.is_running = False
self.status_var.set("Остановлен")
self.start_btn.config(state=tk.NORMAL)
def bot_loop(self):
while self.is_running:
if not self.hotkey_enabled.get() or
keyboard.is_pressed(self.trigger_key.get()):
x, y = pyautogui.position()
screen = ImageGrab.grab(bbox=(
x - self.scan_radius.get(),
y - self.scan_radius.get(),
x + self.scan_radius.get(),
y + self.scan_radius.get()
))
pixels = np.array(screen)
for row in pixels:
for pixel in row:
if all(abs(p - t) <= self.tolerance.get() for p, t in
zip(pixel[:3], self.target_color)):
pyautogui.click()
time.sleep(self.delay.get())
break
time.sleep(0.01)
if __name__ == "__main__":
root = tk.Tk()
app = AdvancedTriggerBot(root)
root.mainloop()