Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помощь с годот

Денисов Брий Ученик (189), открыт 2 недели назад
 func ageNum(): 
if !Events.is_event:
month += 1
if month > 12:
month = 0
age += 1
event_trig += 3
print(month)
updateGui(age, month)
if event_trig >= 3:
month = 1
Events.is_event = true
event_trig = 0
Events.show_event()
К функции ageNum привязан таймер на 0.42с и поставлен autostart, но начинает двоиться текст как на фото, причём вот такой инпут, а функция updateGui просто обнавляет текст кнопки

 func updateGui(age1, month1): 
text = 'Год: ' + str(age1) + '\n' + 'Месяц: ' + str(month1)


  
0
2
1
3
2
4
3
5
4
6
5
7
6
8
7
9
8
10
9
11
10
12
11
0
11
1
11
1
11
1
11
1
11
1
11
1
11
1
11
2
12
3
0
3
1
3
1
3
1
4
2
5
3
6
4
7
5
8
6
9
7
10
8
1 ответ
Рустам Абдрашитов Мыслитель (9465) 2 недели назад
1. Проверьте частоту вызова функции
Убедитесь, что таймер действительно установлен на 0,42 секунды и не вызывает функцию ageNum() слишком часто. Вы можете добавить отладочный вывод в начало функции:
 func ageNum(): 
print("ageNum called")
# остальной код
2. Измените логику обновления
Убедитесь, что логика увеличения месяца и возраста работает правильно. Возможно, стоит добавить дополнительные проверки:
 func ageNum(): 
if !Events.is_event:
month += 1
if month > 12:
month = 1 # Измените на 1 вместо 0
age += 1
event_trig += 3

print(month)
updateGui(age, month)

if event_trig >= 3:
Events.is_event = true
event_trig = 0
Events.show_event()
3. Оптимизация функции updateGui
Убедитесь, что updateGui() правильно обновляет текст кнопки и не вызывает лишних изменений:
 func updateGui(age1, month1): 
var new_text = 'Год: ' + str(age1) + '\n' + 'Месяц: ' + str(month1)
if text != new_text: # Проверка на изменение текста
text = new_text
4. Логирование значений
Добавьте логирование значений возраста и месяца для отслеживания их изменений:
 print("Age: ", age, " Month: ", month) 
Денисов БрийУченик (189) 2 недели назад
Спс, но я уже исправил)
Похожие вопросы