У нас вы можете посмотреть бесплатно ГАСТЕР БЛАСТЕР В ГОДОТ!!!!! -- Урок 3 как сделать бой с Сансом "Как сделать Гастер бластер в годот4" или скачать в максимальном доступном качестве, видео которое было загружено на ютуб. Для загрузки выберите вариант из формы ниже:
Если кнопки скачивания не
загрузились
НАЖМИТЕ ЗДЕСЬ или обновите страницу
Если возникают проблемы со скачиванием видео, пожалуйста напишите в поддержку по адресу внизу
страницы.
Спасибо за использование сервиса ClipSaver.ru
Ура наконец-то закончил этот видос я ОЧЕНЬ ДОЛГО его делал, но вот и он. В этом видео: -Гастер бластер спрайт -Выстрел -Эффект отскока -Урон по игроку -Анимации КОД ИЗ ВИДЕО @export var open_time: float = 1.0 @export var laser_duration: float = 0.9 @export var recoil_distance: float = 100 @export var recoil_speed: float = 600 var damage = 40 var state := "closed" @export var Gaster_spawn :PackedScene @export var sprite_closed: AnimatedSprite2D = $AnimatedSprite2D.play("closed") @export var sprite_open: AnimatedSprite2D= $AnimatedSprite2D.play("open") @onready var collision: CollisionShape2D = $Area2D/CollisionShape2D @export var blaster_scene: PackedScene spawn point надо самому написать ютуб не разрешает фигурные скобки ставить @export var spawn_delay: float = 1.5 func spawn_blasters_in_sequence() void: await spawn_blasters() print("Все бластеры появились и начали стрелять!") func spawn_blasters() void: for i in range(spawn_points.size()): var blaster = blaster_scene.instantiate() add_child(blaster) blaster.position = spawn_points[i] print("Бластер №%d появился" % i) await get_tree().create_timer(spawn_delay).timeout func _ready() void: spawn_blasters_in_sequence() $Laser.visible = false $AnimatedSprite2D.play("closed") collision.disabled = true await get_tree().create_timer(open_time).timeout open_blaster() func open_blaster() void: state = "opening" $AnimatedSprite2D.play("open") shoot_laser() func shoot_laser() void: state = "shooting" $Laser.visible = true collision.disabled = false var start_pos = position var target_pos = position + Vector2(-recoil_distance, 0) var travel_time = recoil_distance / recoil_speed var elapsed := 0.0 while elapsed тут вставь знак больше travel_time: var delta := get_process_delta_time() elapsed += delta var t = clamp(elapsed / travel_time, 0.0, 1.0) position = start_pos.lerp(target_pos, t) await get_tree().process_frame await get_tree().create_timer(laser_duration).timeout end_shooting() func end_shooting() void: collision.disabled = true queue_free() func _on_area_2d_body_entered(body: Node2D) void: if body.is_in_group("player"): Global.hp -= damage print("Игрок получил урон: " + str(damage) + " Осталось HP: " + str(Global.hp)) #godot #tutorial #howto #gamedevblog #годот #анимация #gasterblaster #sans #undertale #undertaleau #санс #андертейл