How to make weapons in Godot 2D [Eng. subt.]

แชร์
ฝัง

ความคิดเห็น • 45

  • @vorongo
    @vorongo  5 หลายเดือนก่อน +2

    я смог настроить удаление пуль при прикосновение к стенам и слаймам:
    if "slime" in body.name:
    удалить
    elif body.name == "TileMap":
    удалить

    • @user-gd1qt1ce7q
      @user-gd1qt1ce7q 2 หลายเดือนก่อน

      прошу указать что пулька будет работать только на левале иначе крашит

  • @IIcux-op3dt
    @IIcux-op3dt 2 หลายเดือนก่อน +3

    Мужик починил микрофон, но ничего не слышно.

  • @lalex9757
    @lalex9757 5 หลายเดือนก่อน

    Мужик, большое тебе спасибо!!!

    • @vorongo
      @vorongo  5 หลายเดือนก่อน

      всегда пожалуйста)

  • @Lenya_Ost
    @Lenya_Ost 2 หลายเดือนก่อน

    Спасибо, брат!

    • @vorongo
      @vorongo  2 หลายเดือนก่อน

      Рад помочь)

  • @user-gd1qt1ce7q
    @user-gd1qt1ce7q หลายเดือนก่อน

    Я не понимаю почему этот гайд такой не популярный

    • @vorongo
      @vorongo  หลายเดือนก่อน

      Так решил боженька Ютуб 💀

    • @user-gd1qt1ce7q
      @user-gd1qt1ce7q หลายเดือนก่อน

      @@vorongo я его уже 4 раз смотрю

  • @desko8638
    @desko8638 หลายเดือนก่อน

    Спасибо большое, можешь подсказать как сделать стрельбу зажимая мышь, чтобы патроны вылетали быстр, а не кликать по 100 раз?

    • @vorongo
      @vorongo  หลายเดือนก่อน +1

      var is_shooting: bool = false #состояние стрельбы, стреляем или не стреляем)
      создаём таймер, можно из сцены используя onready.
      func _ready():
      timer.wait_time = fire_rate # Устанавливаем интервал стрельбы
      timer.connect("timeout", self, "_on_Timer_timeout")
      func _input(event):
      if event is InputEventMouseButton:
      if event.button_index == MouseButton.LEFT:
      if event.pressed:
      # Если кнопка зажата, то мы просто запускаем таймер
      is_shooting = True
      timer.start()
      else:
      # еесли кнопка отпущена, останавливаем таймер
      is_shooting = False
      timer.stop()
      func _on_Timer_timeout():
      if is_shooting:
      shoot() #стреляем по окончанию таймера.
      Вроде это всё что нужно

  • @user-gd1qt1ce7q
    @user-gd1qt1ce7q 5 หลายเดือนก่อน

    вопрос у меня при нажатии клавиши за стрельбу по траектории движется персонаж а не стреляется пуля

    • @user-gd1qt1ce7q
      @user-gd1qt1ce7q 5 หลายเดือนก่อน

      P.S код полностью скопировал

    • @vorongo
      @vorongo  5 หลายเดือนก่อน +1

      Скорее всего, ты установил смену позиции у игрока, а не пули.
      b.transform = $GunCast2D/Marker2D.global_transform
      Если ты забудешь, написать 'b', то персонаж будет телепортироваться, а не пуля.

    • @user-gd1qt1ce7q
      @user-gd1qt1ce7q 5 หลายเดือนก่อน

      @@vorongo с этим я сам разобрался, но спасибо за твою отзывчивость)

  • @user-gd1qt1ce7q
    @user-gd1qt1ce7q 2 หลายเดือนก่อน

    у меня выдаёт ошибку Cannot cal methood 'ad_child' on a nul value как фиксить?

    • @user-gd1qt1ce7q
      @user-gd1qt1ce7q 2 หลายเดือนก่อน

      всё я пофиксил

  • @Zavgar_DiM
    @Zavgar_DiM 5 หลายเดือนก่อน

    Это на какой версии движка?

    • @vorongo
      @vorongo  5 หลายเดือนก่อน +1

      4

    • @IIcux-op3dt
      @IIcux-op3dt 2 หลายเดือนก่อน

      4.2.1 стабилка на видео ведь видно.

  • @zeron7727
    @zeron7727 2 หลายเดือนก่อน +1

    Что делать если пистолет стреляет как миниган(как сделать так чтобы пистолет стрелял единожды)

    • @vorongo
      @vorongo  2 หลายเดือนก่อน +1

      сменить тип нажатия, там после Input.action_presed или action_just_presed

    • @zeron7727
      @zeron7727 2 หลายเดือนก่อน +1

      @@vorongo Спасибо🙏

  • @user-zh6kn6tm9d
    @user-zh6kn6tm9d 25 วันที่ผ่านมา

    Пуля летит не с оружия а с неба что делать?

    • @vorongo
      @vorongo  25 วันที่ผ่านมา

      за поворот пули отвечает строчка b.transform = 'наш маркер'.global_transform

    • @user-zh6kn6tm9d
      @user-zh6kn6tm9d 25 วันที่ผ่านมา

      @@vorongo что можно сделать чтобы такого не было?

  • @ktonaxyutakou
    @ktonaxyutakou 4 หลายเดือนก่อน

    пожалуйста помогите пуля просто не появляется(сделал все как в ролике)

    • @vorongo
      @vorongo  4 หลายเดือนก่อน

      скорее всего небыло активирована функция "Shoot" напиши её активацию пр нажатии кнопки в функции init() или другой функции

    • @vorongo
      @vorongo  4 หลายเดือนก่อน

      или сцена пули не сохранена

    • @ktonaxyutakou
      @ktonaxyutakou 4 หลายเดือนก่อน

      @@vorongo спасибо

    • @notAleksJustA
      @notAleksJustA 4 หลายเดือนก่อน

      Если оно моментально исчезает, то оно бьётся об игрока

    • @diobrando5839
      @diobrando5839 4 หลายเดือนก่อน

      Или z индекс слишком мал

  • @faxnuts1977
    @faxnuts1977 5 หลายเดือนก่อน

    что такое owner? owner.add....

    • @vorongo
      @vorongo  5 หลายเดือนก่อน

      он позволяет узнать к какой сцене относится узел, по сути он просто создаёт копию сцены(пули) в сцене(игрока).

    • @faxnuts1977
      @faxnuts1977 5 หลายเดือนก่อน

      @@vorongo 1. Спасибо, кажется понял, но не до конца. Почему спрашиваю, просто, то что относится к синтаксису годот подсвечивается синим, красным, зеленым, желтым цветами.. а название переменных и др. белым текстом и не всегда понятно, owner, transform и тд. в других роликах тоже, это название переменной, название сцены, плеера или это относится к встроенному языку годот.
      1.1 получается owner создает копию объекта внутри текущей сцены, но скрипт ты крепишь к плееру, а не к ружью, пуля вылетает из маркера, выходит owner привязан к маркеру? если я удалю маркер, то будет ли пуля вылетать из центра персонажа или же нужно крепить маркер к персонажу, чтобы из него вылетал объект?
      2. при нажатии кнопки ты написал shoot(), после вызвал туже функцию. эта функция встроена уже по дефолту в движок, или это ты ее создал, назвал и задал ей параметры. В других роликах вижу функции shot(), Death() и тд. они вшиты в годот, как ready(), process(), не совсем понимаю как они работают, тогда (типо, реди готов к исполнению, процесс - ежесекундно выполняется, а шут как работает?), или создаются новые функции человеком?

    • @vorongo
      @vorongo  5 หลายเดือนก่อน

      1. если удалить маркер у оружие, то пуля будет появляться из центра персонажа или центра оружия, смотря как настроено.
      2. функция shoot() не вшита в godot, такие функции требуют активации, в других функциях, например в ready(), но как я знаю, между вшитыми функциями есть различие в частоте их активации, а точнее их приоритете.

    • @faxnuts1977
      @faxnuts1977 5 หลายเดือนก่อน

      @@vorongo я понял, Спасибо

  • @l_N_e_o_l
    @l_N_e_o_l 5 หลายเดือนก่อน +1

    Тихо слышно

    • @vorongo
      @vorongo  5 หลายเดือนก่อน +1

      F, звук уменьшен на 50%, так как снимал ночью и забыл добавить до рендера

    • @delast1772
      @delast1772 5 หลายเดือนก่อน

      нормально слышно, звук у себя добавь

    • @l_N_e_o_l
      @l_N_e_o_l 5 หลายเดือนก่อน +1

      ⁠@@delast1772я звук на максимум добавлял, че думаешь, не догадаюсь

  • @haizes
    @haizes 4 หลายเดือนก่อน

    Пишет ошибку Invalid set index ‘transform’ (on base: 'Area2D (bullet.gd)’) with value of type 'Vector2’. Мол у Area2D нет индекса transform

    • @vorongo
      @vorongo  4 หลายเดือนก่อน

      В сцене Bullet используется transform.x, то есть заставляем пулю лететь, а в игрока мы лишь спавним копии и назнвчаем направление, а если честно я вообще не понял, откуда у тебя это ошибка...