Как добавить HealthBar в GODOT 4 | Урок 12 | Подробный курс по Годот с нуля

  Рет қаралды 13,671

GameCrafter

GameCrafter

Күн бұрын

Пікірлер: 131
@s2xy492
@s2xy492 24 күн бұрын
Ахтунг! Ссылка на Health Bar под Первым роликом. Под именами Sprite -001 etc
@АлексейЧерноштан
@АлексейЧерноштан 9 ай бұрын
У меня возникла ошибка перехода на сцену меню после смерти. Проблему удалось решит следующей записью : get_tree().change_scene_to_file.bind("res://scn/menu/menu.tscn").call_deferred()
@GameCrafter_GD
@GameCrafter_GD 9 ай бұрын
Ясненько, спасибо за пояснение)
@SuForisTc
@SuForisTc 9 ай бұрын
Спасибо большое, добрый человек =)))
@konter277
@konter277 9 ай бұрын
Топчик чел))
@КиловаттКиловатт
@КиловаттКиловатт 9 ай бұрын
Благодарю. Помогло.
@yl1ne
@yl1ne 8 ай бұрын
Спасибо большое
@sassas1433
@sassas1433 Жыл бұрын
Готовый хелсбар в движке это огонь 🔥
@GameCrafter_GD
@GameCrafter_GD Жыл бұрын
Согласен)
@PlayverseX-YT
@PlayverseX-YT 3 ай бұрын
Да
@mrdixioner
@mrdixioner Жыл бұрын
Странно, а у меня всё работает (14:17): при запуске игры коллайдер выключен, и я не делал скрипт в damage_box. Продолжаю смотреть!!! Огромное спасибо за ваш труд!!!
@GameCrafter_GD
@GameCrafter_GD Жыл бұрын
Спасибо!
@amadexin
@amadexin 6 ай бұрын
Решил проблему с бесконечной агрессией грибов к мертвому игроку вот так: Создал глобальный сигнал в Signals signal player_death () Законектил этот сигнал грибу в 0 func _ready(): Signals.connect("player_death", Callable (self, "_on_player_death")) Сделал функцию _on_player_death func _on_player_death(): state = IDLE Игроку в func death_state(): сказал отправлять сигнал Signals.emit_signal("player_death") Теперь гриб знает когда умирает игрок и начинает чилить
@scream-w3l
@scream-w3l 5 ай бұрын
Спасибо
@Леонид-с5з
@Леонид-с5з 13 күн бұрын
Правильно ли я понимаю, что глобальный скрипт signals срабатывает постоянно (постоянно посылает сигнал), когда срабатывает функция _on_hit_box_area_entered в скрипте mushrooms, и, следовательно, в скрипте player, каждый раз, когда это происходит, триггерится функция _ready(), а через нее уже триггерится_on_damage_received(enemy_damage)?
@OverSAX
@OverSAX Ай бұрын
Тех кого враг постоянно избивает у вас слишком длинная анимация получения урона пусть даже если там всего 1 кадр В AnimationPlayet можно уменьшить время анимации Баг пройдёт после того как вы настроите момент нанесения урона в анимации противника
@Леонид-с5з
@Леонид-с5з 12 күн бұрын
21:18 а зачем записывать в _ready()? Что это дает? Почему нельзя просто при создании переменной указать "var health = max_health"? Я так сделал - у меня все точно также работало. Для чего вообще нужна функция _ready() и что будет, если код писать вне ее (в каких случаях код вне ее не будет работать или будет работать не оптимально/неправильно)? Тот же вопрос про функцию _physics_process.
@vavan0121
@vavan0121 Ай бұрын
Как гриб начинает атаку если она привязана на отключенную колизию?
@tvoysunboy8112
@tvoysunboy8112 4 ай бұрын
Спасибо за видео!
@mr._thecat9614
@mr._thecat9614 Жыл бұрын
Уже второй день лазаю по разным источникам, отсылаю проблему на форумы и не помогает😢. В функции death_state возникает ошибка, когда здоровье игрока уходит в ноль анимация смерти бесконечно проигрывается и враг продолжает наносить удары(без урона конечно). Animation loop не стоит, убрав строки с анимацией все работает, заменив anim на animPlayer проблема сохраняется. В остальном все работает... Есть мысли?....
@GameCrafter_GD
@GameCrafter_GD Жыл бұрын
Можно попробовать добавить переменную и условие типа dead, и проигрывать анимацию только если dead == true
@mr._thecat9614
@mr._thecat9614 Жыл бұрын
@@GameCrafter_GD Спасибо за совет, но боюсь он не помог, проверяя работает ли оператор if убрав death = true в моменте изменения переменной state, все прошло нормально, анимации не было и игрока выкинуло в меню. Уже даже не знаю что делать, может проблема не в player...
@mr._thecat9614
@mr._thecat9614 Жыл бұрын
@@GameCrafter_GD Простите за беспокойство, вместо anim я использовал animPlayer и вместо ожидания конца анимации создал вручную таймер со временем анимации смерти указанным в animationPlayer. Такой вот костыль вышел)
@dimalev9353
@dimalev9353 Жыл бұрын
@@mr._thecat9614 такая же фигня была, зацикливалась анимация смерти при переходе здоровья в 0, без перехода в меню, но проблема ушла после изменения в функции death_state() переменной anim на animPlayer, без всяких таймеров
@matyuioprs9831
@matyuioprs9831 8 ай бұрын
В AnimatedSprit2D выключи функцию повторение анимации смерти и всё
@bgrix
@bgrix 2 ай бұрын
Очень обидно, что вы поменяли половину кода, у меня не работает обратно в меню после смерти, он когда умирает либо крашит, либо просто идёт в лево. Придётся переписывать весь код😢😢
@Pc-software
@Pc-software Жыл бұрын
Лучший
@GameCrafter_GD
@GameCrafter_GD Жыл бұрын
Спасибо
@mixfirenettoday165
@mixfirenettoday165 8 ай бұрын
привет мне очень нравится твой труд и смотрю твои туториалы, у меня как то столкнулось много проблем со скриптом и не могу понять где, если можешь, можешь скинуть весь файл всей игры до этого момента?
@AcrobatYT
@AcrobatYT Жыл бұрын
ты не оставил ссылку на texture health bar((
@GameCrafter_GD
@GameCrafter_GD Жыл бұрын
Сорри 😅 посмотри под первым роликом
@b-1-ters
@b-1-ters 8 ай бұрын
А где ссылка на healthbar ?(
@artur1772
@artur1772 Жыл бұрын
Спасибо!!! 👍🏻
@iridiumandhydrargyrum9943
@iridiumandhydrargyrum9943 4 ай бұрын
Гайд отличный, всё понятно, правда у меня возниклк проблема, прогресс бар при запуске не отображается, что делать?
@yl1ne
@yl1ne 8 ай бұрын
Как отзеркалить тень, когда игрок поворачивается, если у тень нет flip?
@samj2090
@samj2090 11 ай бұрын
Привет! Спасибо огромное за уроки, черезвычайно полезные! Столкнулся с задачей: при настройке DamageBox для игрока и для врага. А именно при настройке кругов коллизии - если меняю у врага, они меняются и у игрока и наоборот, но не так как мне нужно. То есть не получается настроить круги независимо. У меня враг и игрок имеют разные размеры. Подскажи пожалуйста сделать DamageBox локальным для игрока и для врага или какое-то другое решение?
@GameCrafter_GD
@GameCrafter_GD 11 ай бұрын
Да я в роликах показывал, во всплывающем меню в котором выбирается форма коллизии нужно выбрать make unique, и спасибо за отзыв! 👍
@Skilful-bx5wt
@Skilful-bx5wt 11 ай бұрын
@@GameCrafter_GD он имеет ввиду, что созданная сцена damage_box одна для всех и изменяя у игрока меняется и у врага. Мое предположение, что автор просто паказывает как можно реализовать и в его проекте это работает корректно. Но если использовать другой ассет, где размеры другие, или где нужно у одного выбрать квадрат, а у другого круг, то тогда беда. В это случае создавать damage_box нужно в сцене каждого свои. Лично я смотрю, как автор реализует механики, но буду делать по своему, как привык.
@GameCrafter_GD
@GameCrafter_GD 11 ай бұрын
@@Skilful-bx5wt полностью поддерживаю такой подход 👍
@КириллКолесник-х2ц
@КириллКолесник-х2ц 9 ай бұрын
@@Skilful-bx5wt если сделать уникальным один из кругов, то для них можно создавать нужные для тебя формы в сцене моба или игрока, т.е сцена damageBox будет существовать со скриптом и прочим, а у остальных сущностей он может быть любой формы и размера
@СергейБарбон-ь5й
@СергейБарбон-ь5й Жыл бұрын
Люди добрые, подскажите почему в ноде TileMap отсутствует вкладка collision в инспекторе ?С чем это может быть связано?
@GameCrafter_GD
@GameCrafter_GD Жыл бұрын
В инспекторе если нажать на добавленный tilemap откроются дополнительные настройки, в которых можно добавить physics layers
@explosivevideos-p8x
@explosivevideos-p8x Жыл бұрын
Привет где ты учил gdscript
@GameCrafter_GD
@GameCrafter_GD Жыл бұрын
Привет, я все еще его учу, везде где могу, в основном на англоязычных каналах, через документацию, иногда через chat gpt
@domtoreto3596
@domtoreto3596 Жыл бұрын
Сделал всё в точности как у тебя) но Хп бар не уменьшается , текстовый работает ))) не могу понять в чем причина , если можешь помоги пожалуйста )))))
@GameCrafter_GD
@GameCrafter_GD Жыл бұрын
Помогу)) но мне надо видеть твой код, можешь в тг группе скинуть скрины, ссылка на группу в описании канала есть
@sergeiseniuto627
@sergeiseniuto627 Ай бұрын
Вряд ли актуально но, проще создавать онреади переменную, перетягивая с зажатым Ctrl ;)
@megutoxic8203
@megutoxic8203 10 ай бұрын
Привет! У меня возникла проблема с тем. что когда меня хитает гриб, мой персонаж зацикливается в анимации получения урона. В коде вроде ошибок нет на первый взгляд, не могу понять в чем проблема
@GameCrafter_GD
@GameCrafter_GD 10 ай бұрын
Привет, с такими вопросами лучше пройти в телегу и предоставить скрины)
@xandermassonov3731
@xandermassonov3731 10 ай бұрын
Это все из-за того, что автор переделал проект. У меня так же. Я второй раз прохожу курс до этого урока и опять на те же грабли, нужно переписать код плеера как у него в этом видео, думаю сработает
@xandermassonov3731
@xandermassonov3731 10 ай бұрын
в damage_state замени строчку await anim.animation_finished на await get_tree().create_timer(0.3).timeout Время в скобках можно менять.
@megutoxic8203
@megutoxic8203 9 ай бұрын
@@xandermassonov3731 Это сработало! Теперь чувствую себя идиотом, будто мог сам до этого додуматься)
@КириллКолесник-х2ц
@КириллКолесник-х2ц 9 ай бұрын
@@xandermassonov3731 спасибо бро, очень помог
@milyukov1492
@milyukov1492 3 ай бұрын
Привет, буду очень вам благодарен кто сможет помочь с моей проблемой. Суть в чем - пробегая грибочек и его коллизию по мне все равно приходит урон, хоть я и не стою в коллизии
@XENTc
@XENTc Жыл бұрын
Есть проблема, ты не скинул ссылку на спрайты с хпбаром
@GameCrafter_GD
@GameCrafter_GD Жыл бұрын
Я скидывал, только не помню под каким видео, я сейчас все ассеты в телеграм группу скину в раздел ассеты
@XENTc
@XENTc Жыл бұрын
@@GameCrafter_GD Сейчас загляну
@GydLis
@GydLis Жыл бұрын
Здравствуйте, я так понимаю что код нужно по хп не в игроке вводить а в глобальном скрипте и от туда отправлять к игроку сигнал чтобы хп оставалось между локациям?
@GameCrafter_GD
@GameCrafter_GD Жыл бұрын
Здравствуйте, думаю что это поможет
@GydLis
@GydLis Жыл бұрын
​​@@GameCrafter_GDЗдравствуйте попробовал зделать но не получилось, можете помочь пожалуйста всяко пробовал постоянно вылетает игра.
@лупапуповна-б5т
@лупапуповна-б5т 4 ай бұрын
@@GydLis у тебя получилось по итогу? столкнулась с такой же проблемой. изначально делала без сигналов с глобальной переменной хп и все работало, но не было анимаций
@VoiceMd
@VoiceMd Жыл бұрын
скинь ссылочку на health bar плиз, если не сложно
@GameCrafter_GD
@GameCrafter_GD Жыл бұрын
Посмотри под первым роликом плз как нибудь под все добавлю
@VoiceMd
@VoiceMd Жыл бұрын
спасибо@@GameCrafter_GD
@МифунеЮкки
@МифунеЮкки 7 ай бұрын
такая проблема: на моменте когда плеер должен умереть бесконечно проигрывается анимация смерти персонаж не исчезает и сцена не меняется. я предположил, что анимация зациклена но нет, так же была гипотеза что плеер не успевает исчезнуть как снова получает урон и заново умирает, я пробовал создать сигнал который при смерти плеер отправляет мобу, чтобы тот перешел в состояние айдол, ничего не помогло, какие есть еще варианты подскажите пожаплуйста
@susibaka691
@susibaka691 7 ай бұрын
У меня такая же проблема
@susibaka691
@susibaka691 7 ай бұрын
ты смог решить?
@Татьяна-я8ж3к
@Татьяна-я8ж3к Жыл бұрын
Спасибо👍👍👍
@D0cez
@D0cez 9 ай бұрын
Столкнулся с проблемой, прочитал что баг движка, не выкидывает на сцену меню, в дебаггере пишет что Parameter "data.tree" is null. Как решить эту проблему?
@lilhost5487
@lilhost5487 9 ай бұрын
Столкнулся с такой же проблемой. Пока решения не нашел
@Mrkhamzat
@Mrkhamzat 9 ай бұрын
get_tree().change_scene_to_file.call.deferred( моя сцена ) У меня тоже такая проблема была вот так и решилась
@Mrkhamzat
@Mrkhamzat 9 ай бұрын
@@lilhost5487 get_tree().change_scene_to_file.call.deferred( моя сцена )
@D0cez
@D0cez 9 ай бұрын
@@Mrkhamzat спасибо
@yl1ne
@yl1ne 8 ай бұрын
Ты это вставил вместо get_tree().change_scene_to_file( моя сцена)? А то я так сделал и всё равно не работает.@@Mrkhamzat
@artemtv9498
@artemtv9498 29 күн бұрын
а что делать если у меня вроде все правильно но урон не отнимается?(я вроде все проверил все как у него но неменого по другому как раньше когда он заново не начал песать код)
@artemtv9498
@artemtv9498 29 күн бұрын
сигналы есть переменые есть но серовно не робоате игрок принимает сигнал о дамаге но дамаг не происходит можете помочь пж
@Леонид-с5з
@Леонид-с5з 13 күн бұрын
тоже самое, правда у меня он отнимает только 1 раз на 20 очков, а дальше просто бьет, но здоровье не отнимается
@Fany_moments
@Fany_moments 3 ай бұрын
Все работает только после того как игрок умер не выходит в меню и выбивает ошибку
@Леонид-с5з
@Леонид-с5з 12 күн бұрын
у меня та же самая проблема, если за 2 месяца смог решить - напиши пожалуйста решение проблемы.
@bgrix
@bgrix 2 ай бұрын
Спасибо большое, очень классный курс, но вот то что у вас все сбилось и вы что то изменили или добавили - это не понятно, так как я в этом не особо разбираюсь и некоторые люди тоже, было бы лучше, если бы вы показали что добавили и как. Потому что дальше все сложнее и не понятно 😢, а так спасибо! 😅
@-lQ_Ql-
@-lQ_Ql- 2 ай бұрын
нам остается лишь страдать и надеяться что все будет работать
@bgrix
@bgrix 2 ай бұрын
@@-lQ_Ql- у меня из-за того что он половину кода поменял, не работает обратно в меню, после смерти я иду влево, и много чего не работает ((
@bgrix
@bgrix 2 ай бұрын
@@-lQ_Ql- сейчас буду переписывать весь код 🤧
@-lQ_Ql-
@-lQ_Ql- 2 ай бұрын
​@@bgrix у меня тоже на етом моменте проблема. анимации смерти нет и перехода в меню тоже. но переписывать пока что не собираюсь.
@-lQ_Ql-
@-lQ_Ql- 2 ай бұрын
я свою проблему решил поменяв animPlayer на anim в строке с анимацией смерти. а ты походу допустил какие то ошибки. я тоже не стал переписывать код заново когда у автора все поменялось, но тем не менее у меня все работает и игрок в лево не уходил ни разу. Он у тебя всегда в лево уходит или только если ты в лево перед смертью шел? если что попробуй посмотреть в код, ты наверное пропустил velocity.x = 0 в функции смерти и поетому игрок не останавливается у тебя.
@spoilsportXD
@spoilsportXD 7 ай бұрын
Спасибо за урок. Как ты сделал так, чтобы при открытии на весь экран, игра растягивалась адекватно сама. У меня все не так :(
@spoilsportXD
@spoilsportXD 7 ай бұрын
Если кому то нужно, чтобы их игра растягивалась под размер экрана (вьюпорт), то сделайте так: ProjectSettings -> Window -> Stretch/Mode -> viewport
@3MX_VHC
@3MX_VHC 2 ай бұрын
@@spoilsportXD спасибо, бро
@3MX_VHC
@3MX_VHC 2 ай бұрын
@@spoilsportXD спасибо, бро
@stasy3923
@stasy3923 4 ай бұрын
Что делать если анимация смерыти непроигровоица
@xandermassonov3731
@xandermassonov3731 10 ай бұрын
У меня проблема с анимацией смерти. Перс бесконечно проигрывает анимацию смерти. Никто не сталкивался?
@GameCrafter_GD
@GameCrafter_GD 10 ай бұрын
Возможно анимация зациклена, или проблема в логике кода, в телеге можешь спросить и скрины скинуть
@matyuioprs9831
@matyuioprs9831 8 ай бұрын
В AnimatedSprit2D выключи функцию повторение анимации смерти и всё
@Epic_games18
@Epic_games18 10 ай бұрын
помоги пожалуста смотри у меня когда моб атакует идет анимация игрока урона и я немогу двигаться и он меня не может убит
@yl1ne
@yl1ne 8 ай бұрын
Тоже самое
@matyuioprs9831
@matyuioprs9831 8 ай бұрын
​@@yl1neвам просто нужно убрать анимацию DAMAGE с цикла повторения в AnimatedSprit2D
@yl1ne
@yl1ne 8 ай бұрын
я уже исправил проблему и она заключалась не в этом, но спасибо за помощь.@@matyuioprs9831
@asdqw1d
@asdqw1d Жыл бұрын
Где взять спрайт для хелбара?
@GameCrafter_GD
@GameCrafter_GD Жыл бұрын
Можно самому нарисовать, или можно по ссылке на Гугл диске моем скачать, обычно под роликами в описании она должна быть
@igurkin
@igurkin Жыл бұрын
@@GameCrafter_GD обычно ее там нет :)
@GameCrafter_GD
@GameCrafter_GD Жыл бұрын
@@igurkin под первым роликом точно есть
@lilianagrabde2564
@lilianagrabde2564 8 ай бұрын
Я понимаю, что никому не платят за туториалы, но меня безумно бесит, что не добавляют обещанные ссылки и просто предлагают присоединиться к группе в тг. Еще бесит, что у всех возникает одна и та же ошибка, но вместо того чтобы просто прикрепить решение к этой проблеме(которая очевидно появилась потому что автор переписал свой код, но не показал что именно и где его изменил), он всех отсылает к своей группе тг. В общем, я зла потому что вместо того чтобы разобраться с этими проблемами на которые уходит куча времени у начинающих разработчиков, автор просто отсылает всех на свою группу тг
@lilianagrabde2564
@lilianagrabde2564 8 ай бұрын
drive.google.com/drive/folders/13UfIpml42QN-P1UVhSYHic9QILc5TFrd ссылка на спрайты
@-lQ_Ql-
@-lQ_Ql- 2 ай бұрын
ну если речь о той самое проблеме с анимацией смерти то ее не так уж сложно решить было, а в остальном согл. Но хочу сказать что когда ты сталкиваешся с ошибкой из за своей не внимательности и долго не можеш найти где ошибся то тг очень помогает.
@liray2570
@liray2570 8 ай бұрын
где ссылка на спрайты прогресс бара
@curtan1530
@curtan1530 8 ай бұрын
Тот-же вопрос
@lol-xt3sb
@lol-xt3sb 11 ай бұрын
Что делать если моб не наносит урон
@GameCrafter_GD
@GameCrafter_GD 11 ай бұрын
Надо разбираться, скинь скриншот с кодом в телеграмм группу
How to make a Video Game - Godot Beginner Tutorial
1:17:12
Brackeys
Рет қаралды 2,2 МЛН
How I Turned a Lolipop Into A New One 🤯🍭
00:19
Wian
Рет қаралды 13 МЛН
小丑家的感情危机!#小丑#天使#家庭
00:15
家庭搞笑日记
Рет қаралды 38 МЛН
Elza love to eat chiken🍗⚡ #dog #pets
00:17
ElzaDog
Рет қаралды 10 МЛН
Try Not To Laugh 😅 the Best of BoxtoxTv 👌
00:18
boxtoxtv
Рет қаралды 4,3 МЛН
РЕАЛЬНЫЙ масштаб Майнкрафта!
12:40
Парни из коридора
Рет қаралды 37 М.
HD-2D Style in Godot 4.1
12:57
Gamedev Aki
Рет қаралды 62 М.
Твоя первая игра на Godot
1:34:34
Фронтенд Паштет
Рет қаралды 77 М.
I Made My First Game in Godot in 3 Weeks...
26:21
Jack Sather
Рет қаралды 403 М.
How I Turned a Lolipop Into A New One 🤯🍭
00:19
Wian
Рет қаралды 13 МЛН