ну вот мой например довольно навороченный код в котором половина всего скорее всего лишнее, над которым я потел 3 дня из-за того что было очень много ошибок и доработок а после переделываний из-за новых идей
from tkinter import *
import threading
import time
tk = Tk()
tk.title('Clicker')
tk.geometry("250x500")
btn1 = Button(text='Клик', width=10, height=5)
btn1.pack()
btn2 = Button(text='Улучшение', width=10, height=5)
btn2.pack()
btn3 = Button(text='Пассивка', width=10, height=5)
btn3.pack()
n = 0
m = 1
nb = 50
v = 1
p = 0
pb = 1000
def nplus(event):
global n
n = n + m
lob['text'] = str(n)
lobe['text'] = str(nb)
lobeb['text'] = str(m)
def mupgr(event):
global n
global m
global nb
global v
if n >= nb:
n = n - nb
m = m + v
nb = int(nb * 1.5)
lob['text'] = str(n)
lobe['text'] = str(nb)
lobeb['text'] = str(m)
def pupgr(event):
global p
global n
if n >= pb:
n = n - pb
p = p + 1
lob['text'] = str(n)
lobe['text'] = str(nb)
lobeb['text'] = str(m)
lobebe['text'] = str(pb)
lobebeb['text'] = str(p)
def autogain():
global p
global n
while True:
if p > 0:
n += p
lob['text'] = str(n)
lobe['text'] = str(nb)
lobeb['text'] = str(m)
lobebe['text'] = str(pb)
lobebeb['text'] = str(p)
time.sleep(1)
autogain_thread = threading.Thread(target=autogain)
autogain_thread.daemon = True
autogain_thread.start()
btn1.bind('<Button-1>', nplus)
btn2.bind('<Button-1>', mupgr)
btn3.bind('<Button-1>', pupgr)
lobt = Label(tk, text='Клики', font=('system'))
lobt.pack()
lob = Label(tk, text=str(n), font=('system'))
lob.pack()
lobet = Label(tk, text='Цена улучшения', font=('system'))
lobet.pack()
lobe = Label(tk, text=str(nb), font=('system'))
lobe.pack()
lobebt = Label(tk, text='За клик', font=('system'))
lobebt.pack()
lobeb = Label(tk, text=str(m), font=('system'))
lobeb.pack()
lobebet = Label(tk, text='Стоимость пассивки', font=('system'))
lobebet.pack()
lobebe = Label(tk, text=str(pb), font=('system'))
lobebe.pack()
lobebebt = Label(tk, text='За секунду', font=('system'))
lobebebt.pack()
lobebeb = Label(tk, text=str(p), font=('system'))
lobebeb.pack()
tk.mainloop()