Форум программистов, компьютерный форум, киберфорум
Python: Tkinter
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 23.03.2019
Сообщений: 90

Проблема с кликером

14.01.2023, 23:16. Показов 613. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
from tkinter import * #Импортируем библиотеку tkinter
count = 0 # счётчик кликов
click_strength = 1 # кол-во шариков надеваемых за один клик
elka = 15 # вместимость ёлки
coin = 0 # конфеты
stars = 6 # звёздочки *
perv = 7 # первая половина _ на нижнем ярусе
vtor = 6 # вторая половина _ на нижнем ярусе
 
den = 20
coin = 0
n = 0
 
window = Tk()
window.title('NewYearClicker')
window.geometry('500x600')
window.resizable(False, False)
Label(window, text = '''
░░░░░░*░* *▀* *▀* *▀* *░*░░░░░
░░░░░░*▀* *▀* *▀▀ *▀▀ ▀*▀░░░░░
░░░░░░▀░▀ ▀░▀ ▀░░ ▀░ ░▀░░░░░░░
*▄░* *▀▀ *░*░*░░*░* *▀▀ *▀* *▀*
*░** *▀▀ *░*░*░░▀*▀ *▀▀ *▀* **▀
▀░░▀ ▀▀▀ ░▀▀▀░░░░▀░ ▀▀▀ ▀░▀ ▀░▀''', font = ('Arial Black', 10, 'normal')).pack()
igrushka = Label(window, text = 'Количество игрушек на ёлке: 0', font = ('Arial Black', 10, 'bold'))
igrushka.place(x = 0, y = 575)
coins = Label(window, text = 'Количество конфет: 0', font = ('Arial Black', 10, 'bold'))
coins.place(x = 0, y = 550)
el = Label(window, text = '''
__☆_________*_________☆_
______☆____**____☆_____
_☆________***_______☆_
_____☆___****___☆____
___☆____*****_____☆_
_______******______
___________|| ||___________''', font = ('Arial Black', 15, 'normal'))
el.pack()
def upgrade(): # создаём функцию
    global count, stars, elka, close, vtor, perv, coin # делаем глобальными все переменные которые нам нужны
    el['text'] = el['text'].replace('o', '') # Заменяем все игрушки на ёлке на пустоту
    el['text'] = el['text'].replace('_' * perv + '*' * stars + '_' * vtor, '_' * perv + '*' * stars + (vtor * '_') + '\n' + '_' * (perv - 1)  + '*' * (stars + 1) + '_' * (vtor - 1), 1) # создаём новый ярус для ёлки
    btup['state'] = DISABLED # закрываем для нажатия кнопку для улучшения
    count = 0 # обнуляем счётчик шариков на ёлке
    igrushka['text'] = 'Количество игрушек на ёлке:' + str(count) # Обновляем надпись
    but['state'] = NORMAL # теперь на кнопку клика снова можно нажать
    elka += stars # Добавляем к вместимости ёлки кол-во звёзд на первом ярусе
    close['text'] = '' # убираем надпись об необходимости улучшения
    coin -= coin // 2 # Забираем плату за улучшение
    coins['text'] = 'Количество конфет:' + str(coin) # обновляем надпись
    stars += 1 # добавляем 1 звезду чтобы в следующем ярусе их было больше
    vtor -= 1 # убираем нижнее подчёркивание
    perv -= 1 # убираем нижнее подчёркивание
 
def upgrade2(): # создаём функцию
    global n, count, stars, elka, close, vtor, perv, coin # делаем глобальными все переменные которые нам нужны
    el['text'] = el['text'].replace('**', '*o*', 1)    
    count += click_strength
    igrushka['text'] = 'Количество игрушек на ёлке:' + str(count) # Обновляем надпись
    but['state'] = NORMAL # теперь на кнопку клика снова можно нажать
    close['text'] = '' # убираем надпись об необходимости улучшения
    coin -= coin // 5 # Забираем плату за улучшение
    coins['text'] = 'Количество конфет:' + str(coin) # обновляем надпись
    if count == elka: # делаем проверку если кол-во шариков на ёлке равно вместимости ёлки, то
        but['state'] = DISABLED # Делаем нашу кнопку клика не деёствительной
        close = Label(window, text = 'Вместимость вашей ёлки закончилась, нажмите на улучшить для продолжения', font = ('Arial Black', 8, 'bold')) # делаем надпись
        close.place(x = 0, y = 475) # размещаем её
        coin += count # прибавляем кол-во шариков на ёлке к кол-ву конфет
        coins['text'] = 'Количество конфет:' + str(coin) # обновляем надпись
        btup['state'] = NORMAL # теперь пользователю можно нажать на кнопку улучшить
        btup['text'] = 'Улучшить за ' + str(den // 2) # обновляем плату за улучшение
 
btup = Button(window, text = 'Улучшить за ' + str(den // 2), bd = 5, state = DISABLED, font = ('Arial Black', 12, 'bold'), command = upgrade) # создаём кнопку
btup.place(x = 350, y = 560) # размещаем её
 
btup1 = Button(window, text = 'Игрушки за ' + str(den // 1), bd = 5, state = DISABLED, font = ('Arial Black', 12, 'bold'), command = upgrade2) # создаём кнопку
btup1.place(x = 350, y = 500) # размещаем её
 
 
 
def click():
    global n, count, click_strength, coin, close # делаем глобальными переменные которые нам нужны
    btup1['state'] = NORMAL
    
    btup1['text'] = 'Игрушки за ' + str(den // 1)
    money['text'] = 'Деньги :' + str(count) # изменяем текст надписи с каждым кликом
    n = n + 1
    money['text'] = 'Деньги :' + str(n)  # добавляем с каждым кликом шарик к нашей ёлке
    coins['text'] = 'Количество конфет:' + str(coin) # изменяем текст надписи с каждым кликом
 
    
    if n < 20:
        btup1['state'] = DISABLED # кнопка улучшения не действительна
        close3 = Label(window, text = 'Нельзя купить улучшения', font = ('Arial Black', 8, 'bold')) # делаем надпись
        close.place(x = 0, y = 475) # размещаем её
    elif n >= 20 : 
        n=n-20
    
        
    if count == elka: # делаем проверку если кол-во шариков на ёлке равно вместимости ёлки, то
        but['state'] = DISABLED # Делаем нашу кнопку клика не деёствительной
        close = Label(window, text = 'Вместимость вашей ёлки закончилась, нажмите на улучшить для продолжения', font = ('Arial Black', 8, 'bold')) # делаем надпись
        close.place(x = 0, y = 475) # размещаем её
        coin += count # прибавляем кол-во шариков на ёлке к кол-ву конфет
        coins['text'] = 'Количество конфет:' + str(coin) # обновляем надпись
        btup['state'] = NORMAL # теперь пользователю можно нажать на кнопку улучшить
        btup['text'] = 'Улучшить за ' + str(den // 2) # обновляем плату за улучшение
    if count == 45: # делаем проверку, если кол-во шариков на ёлке равно 45, то
        btup['state'] = DISABLED # кнопка улучшения не действительна
        close = Label(window, text = 'Ёлка достигла своего предела, купите новую для продолжения', font = ('Arial Black', 8, 'bold')) # делаем надпись
        close.place(x = 0, y = 475) # размещаем её
           
but = Button(window, text = 'Клик', bd = 10, command = click) # создаём кнопку
but.place(x = 210, y = 400) # распологаем её на экране по выбранным координатам
 
money = Label(window, text='Деньги :'+ str(n), font = ('Arial Black', 10, 'bold'))
money.place(x = 0, y = 525)
 
window.mainloop()
Как сделать чтоб счётчик не обнулялся при достижения 20 и шёл дальше и при достижение 20 кликов можно было бы купить игрушку и не уходило в минус. Нужно срочно
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
14.01.2023, 23:16
Ответы с готовыми решениями:

Проблемы с кликером
Есть игра-кликер. Каждая 25 покупка должна быть за алмазы. Но происходит она за золото и я не понимаю почему. Вот скрипт: using...

Просьба подсабить с Комбо авто кликером для MU Online
задача кликера: при зажатии ролика мишки Mous3 нажимать 1 затем правую кнопку мыши( там где она находится на данный момент), 2 - правую...

Проблема с кодом. Выдает ошибку, я не могу понять в чем проблема
Работаю первый раз с Maple. Установлен версии 2015 года. Выдает ошибку я не могу понять в чем проблема Вот код: restart: ...

1
312 / 192 / 98
Регистрация: 01.05.2014
Сообщений: 522
20.01.2023, 01:06
Лучший ответ Сообщение было отмечено Rayns как решение

Решение

95, 96 удалить.
Поправил функцию, должно помочь.
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
def upgrade2():  # создаём функцию
    global n, count, stars, elka, close, vtor, perv, coin  # делаем глобальными все переменные которые нам нужны
    el['text'] = el['text'].replace('**', '*o*', 1)
    count += click_strength
    igrushka['text'] = 'Количество игрушек на ёлке:' + str(count)  # Обновляем надпись
    but['state'] = NORMAL  # теперь на кнопку клика снова можно нажать
    close = Label(window, text='',
                  font=('Arial Black', 8, 'bold'))  # делаем надпись
    close.place(x=0, y=475)  # размещаем её
    coin -= coin // 5  # Забираем плату за улучшение
    coins['text'] = 'Количество конфет:' + str(coin)  # обновляем надпись
    if count == elka:  # делаем проверку если кол-во шариков на ёлке равно вместимости ёлки, то
        but['state'] = DISABLED  # Делаем нашу кнопку клика не деёствительной
        close['text'] = 'Вместимость вашей ёлки закончилась, нажмите на улучшить для продолжения'  # делаем надпись
        coin += count  # прибавляем кол-во шариков на ёлке к кол-ву конфет
        coins['text'] = 'Количество конфет:' + str(coin)  # обновляем надпись
        btup['state'] = NORMAL  # теперь пользователю можно нажать на кнопку улучшить
        btup['text'] = 'Улучшить за ' + str(den // 2)  # обновляем плату за улучшение
    n = n - 20
    money['text'] = 'Деньги :' + str(n)
    if n < den:
        btup1['state'] = DISABLED
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
20.01.2023, 01:06
Помогаю со студенческими работами здесь

Проблема со скоростью интернета(проблема точно не в роутере и кабеле, а соответственно в пк)
Доброй ночи всем! Поздравляю всех с Новым годом! Но теперь я попрошу вас о помощи! Давно замечал, что скорость интернета на пк крайне...

Проблема с движением объекта через компьютерную мышь, и также проблема, со сменой камеры
Делаю игру на unity, где будет танк. Тут у меня появились две проблемы. 1) При нажатии С, должна меняться камера, посредством смены...

проблема при работе с китайским J-LINK 8 или же проблема с с
Всем привет. Решил Сам собрать себе дисковери кит на базе at91sam7s64-ek. Подарили мне китайский J-Link 8 c прошивкой 3.20. Недолго...

Проблема собственной массы и энергии электрона в классической электродинамике и проблема абсолютно твердого тела в СТО
Проблема собственной массы и энергии электрона в классической электродинамике и проблема абсолютно твердого тела в СТО.. По моему...

Проблема с пингом, проблема которой не могу объяснить
Такая ситуация стряслась, поменяли роутер, у всех все нормально, но у меня на ноутбуке прыгает пинг в произвольном порядке, это вместе с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru