from tkinter import *
import tkinter as tk

clicks = 0
upgradelvl = 1
upgplus = 0.2
clickcoast= 10
auto_clicks_per_second = 0
auto_click_upgrade_cost = 15

def click():
  global clicks, upgradelvl
  clicks +=upgradelvl
  clickstext.config(text=f"Всего накликано: {clicks}")

def upgrade_auto_clicker():
  global clicks, auto_click_upgrade_cost,auto_clicks_per_second, update_click_label
  if clicks >= auto_click_upgrade_cost:
    clicks -= auto_click_upgrade_cost
    auto_clicks_per_second += 1
    auto_click_upgrade_cost = int(auto_click_upgrade_cost * (1 + upgplus))  # Увеличиваем стоимость автокликера
    update_click_label()

def auto_click():
  global clicks
  clicks += auto_clicks_per_second
  update_click_label()
  root.after(1000, auto_click)
def upgrade():
  global clicks, upgradelvl, clickcoast
  if clicks>=clickcoast:
    upgradelvl+=1
    clicks-=clickcoast
    clickcoast = int(clickcoast * (1 + upgplus))
    clickstext.config(text=f"Всего накликано: {clicks}")
    clickslvl.config(text=f"Уровень улучшения: {upgradelvl}")


def update_click_label():
  global clicks, auto_click_upgrade_cost, auto_clicks_per_second, update_click_label, click_upgrade_cost
  clickstext.config(text=f"Всего накликано: {clicks}")
  auto_clicker_label.config(text=f"Стоимость улучшения автокликера: {auto_click_upgrade_cost} (Текущий уровень: {auto_clicks_per_second})")



root = Tk()
root.geometry("707x400")
clickbutton = Button(root, text="Кликнуть", command = click)
clickbutton.config(height = 5, width = 10) #ИЗМЕНЕНИЕ РАЗМЕРА КНОПКИ
clickbutton.place(x=20, y=30) #ИЗМЕНЕНИЕ МЕСТОПОЛОЖЕНИЯ
upgradebutton = Button(root, text="Улучшить", command = upgrade)
upgradebutton.pack()
clickstext = tk.Label(root, text=f"Всего накликано: {clicks}")
clickstext.pack()
clickslvl = tk.Label(root, text=f"Уровень улучшения: {upgradelvl}")
clickslvl.pack()
# Кнопка для улучшения автокликера
auto_clicker_button = tk.Button(root, text="Улучшить автокликер", command=upgrade_auto_clicker)
auto_clicker_button.pack()
# Метка для отображения стоимости улучшения автокликера
auto_clicker_label = tk.Label(root, text=f"Стоимость улучшения автокликера: {auto_click_upgrade_cost} (Текущий уровень: {auto_clicks_per_second})")
auto_clicker_label.pack()

# Запуск обновления интерфейса
update_click_label()

# Запуск главного цикла
root.resizable(1,1)
root.title("Кликер")
root.after(1000, auto_click)  # Запуск автоклика
root.mainloop()оимость улучшения автокликера
increase_percentage = 0.2  # Увеличение на 20%

def click():
    global clicks
    clicks += click_value
    update_click_label()

def upgrade_auto_clicker():
    global clicks, auto_clicks_per_second, auto_click_upgrade_cost
    if clicks >= auto_click_upgrade_cost:
        clicks -= auto_click_upgrade_cost
        auto_clicks_per_second += 1
        auto_click_upgrade_cost = int(auto_click_upgrade_cost * (1 + increase_percentage))  # Увеличиваем стоимость автокликера
        update_click_label()

def buy_click_upgrade():
    global clicks, click_value, click_upgrade_cost
    if clicks >= click_upgrade_cost:
        clicks -= click_upgrade_cost
        click_value += 1
        click_upgrade_cost = int(click_upgrade_cost * (1 + increase_percentage))  # Увеличиваем стоимость клика
        update_click_label()

def auto_click():
    global clicks
    clicks += auto_clicks_per_second
    update_click_label()
    root.after(1000, auto_click)

def update_click_label():
    click_label.config(text=f"Клики: {clicks}")
    auto_clicker_label.config(text=f"Стоимость улучшения автокликера: {auto_click_upgrade_cost} (Текущий уровень: {auto_clicks_per_second})")
    click_upgrade_label.config(text=f"Стоимость улучшения клика: {click_upgrade_cost}")

# Создание главного окна
root = tk.Tk()
root.title("МАКСИКЛИКЕР")

# Загрузка изображений
click_image = PhotoImage(file="click_button.png").subsample(2, 2)
  # Замените на путь к вашему изображению

# Кнопка для клика с изображением
click_button = tk.Button(root, image=click_image, command=click)
click_button.pack(pady=20)

# Кнопка для улучшения автокликера
auto_clicker_button = tk.Button(root, text="Улучшить автокликер", command=upgrade_auto_clicker)
auto_clicker_button.pack(pady=20)

# Кнопка для улучшения кликов
click_upgrade_button = tk.Button(root, text="Улучшить значение клика", command=buy_click_upgrade)
click_upgrade_button.pack(pady=20)

# Метка для отображения количества кликов
click_label = tk.Label(root, text=f"Клики: {clicks}")
click_label.pack(pady=20)

# Метка для отображения стоимости улучшения автокликера
auto_clicker_label = tk.Label(root, text=f"Стоимость улучшения автокликера: {auto_click_upgrade_cost} (Текущий уровень: {auto_clicks_per_second})")
auto_clicker_label.pack(pady=20)

# Метка для отображения стоимости улучшения кликов
click_upgrade_label = tk.Label(root, text=f"Стоимость улучшения клика: {click_upgrade_cost}")
click_upgrade_label.pack(pady=20)

# Запуск обновления интерфейса
update_click_label()

# Запуск главного цикла
root.after(1000, auto_click)  # Запуск автоклика
root.mainloop()
				
			
				
					import tkinter as tk
from tkinter import Toplevel, Label, Button, StringVar
import random

# --- Логика игры против бота ---
def open_bot_mode():
    def play(choice):
        bot_choice = random.choice(['Камень', 'Ножницы', 'Бумага'])
        result = get_winner(choice, bot_choice)
        result_label.config(text=f"Вы: {choice}\nБот: {bot_choice}\nРезультат: {result}")

    bot_window = Toplevel(root)
    bot_window.title("Режим: Против бота")
    Label(bot_window, text="Выберите:").pack(pady=5)

    Button(bot_window, text="Камень", command=lambda: play("Камень")).pack(fill='x')
    Button(bot_window, text="Ножницы", command=lambda: play("Ножницы")).pack(fill='x')
    Button(bot_window, text="Бумага", command=lambda: play("Бумага")).pack(fill='x')

    result_label = Label(bot_window, text="", font=("Arial", 12), pady=10)
    result_label.pack()

# --- Логика игры между игроками ---
def open_player_mode():
    player_window = Toplevel(root)
    player_window.title("Режим: Против игрока")

    Label(player_window, text="Игрок 1, выберите:").pack()

    choice1 = StringVar()
    choice2 = StringVar()

    def set_choice1(choice):
        choice1.set(choice)
        status_label.config(text="Ожидается выбор игрока 2")

    def set_choice2(choice):
        choice2.set(choice)
        result = get_winner(choice1.get(), choice)
        result_label.config(text=f"Игрок 1: {choice1.get()}\nИгрок 2: {choice}\nРезультат: {result}")

    Button(player_window, text="Камень", command=lambda: set_choice1("Камень")).pack(fill='x')
    Button(player_window, text="Ножницы", command=lambda: set_choice1("Ножницы")).pack(fill='x')
    Button(player_window, text="Бумага", command=lambda: set_choice1("Бумага")).pack(fill='x')

    status_label = Label(player_window, text="Ожидается выбор игрока 1", pady=10)
    status_label.pack()

    Label(player_window, text="Игрок 2, выберите:").pack()

    Button(player_window, text="Камень", command=lambda: set_choice2("Камень")).pack(fill='x')
    Button(player_window, text="Ножницы", command=lambda: set_choice2("Ножницы")).pack(fill='x')
    Button(player_window, text="Бумага", command=lambda: set_choice2("Бумага")).pack(fill='x')

    result_label = Label(player_window, text="", font=("Arial", 12), pady=10)
    result_label.pack()

# --- Функция определения победителя ---
def get_winner(choice1, choice2):
    if choice1 == choice2:
        return "Ничья"
    wins = {
        'Камень': 'Ножницы',
        'Ножницы': 'Бумага',
        'Бумага': 'Камень'
    }
    if wins[choice1] == choice2:
        return "Победа первого игрока"
    else:
        return "Победа второго игрока"

# --- Главное окно ---
root = tk.Tk()
root.title("Камень, Ножницы, Бумага")
root.geometry("300x200")

Label(root, text="Выберите режим игры:", font=("Arial", 14)).pack(pady=10)

Button(root, text="Против бота", width=20, command=open_bot_mode).pack(pady=5)
Button(root, text="Против игрока", width=20, command=open_player_mode).pack(pady=5)

root.mainloop()