Сразу после просмотра пары роликов подписался. Очень годно, понятно и без воды. Особенно радуют какие-то дополнительные пояснения, например как в ролике с подбором оружия сделать так, что оно не проходило сквозь стены, как сделать, чтобы шкала здоровья поворачивалась в нашу сторону и т. д.
Добрый день, можете пожалуйста скинуть ваш готовый проект? Потому что я сделал все как на видео( в том числе и поменял названия в скриптах) однако ничего не работает
Привет, спасибо что снимаешь такие крутые видео, у меня проблема что когда запускаю игру то шкала заполнена но когда бью то ничего не происходит, сто раз проверял тэги и иерархию но нигде ошибки нет, единственное не делал анимацию для enemy. Помоги пожалуйста что это может быть
Привет! Он у тебя скорее всего просто по коллайдеру не попадает. Увеличь коллайдеры на оружие и на враге и попробуй, главное, чтобы они у тебя гарантировано соприкоснулись. Если они все таки соприкасаются, то проверь срабатывает ли переменная на урон.
Если коллайдер меча вошёл в тэг enemy то врагу наносится урон. Но получается можно тогда просто не нажимая мыши касаться врага мечом и он будет терять здоровье?
Мне кажется здесь проще будет сделать с рэйкастом , типа при нажатии вылетает луч и если он касается врага то у врага отнимаем хп а на меч просто анимацию сделать
Как всегда круто. Есть вопросы. На сцене несколько врагов, а не один. Как сделать так, чтобы каждый был независим и урон каждый получал свой, а не общий, если получает только один из них(то есть сейчас все враги имеют тег "Enemy" и из-за этого при нанесении урона одному противнику с таким тэгом, урон получают и другие противники с таким же тэгом. Пробовал создать для каждого разные тэги, но как тогда правильно прописать проверку в коде?)? Ещё один вопрос, он похож на первый. У меня, к сожалению, нет анимации смерти, поэтому просто удаляю объект с помощью Destroy(gameObject), но в этом случае, опять удаляются все противники.
Ответ не нашли на свой вопрос, тоже интересует, подозреваю что бы было "каждый враг отдельно" надо не teg ами делать((( Вот бы узнать как сделать врага не глобальным а локальным...
Я не могу добавить урон и анимации на врага, потому что уже стоят анимации, чтобы он патрулировал и бегал за тобой.. только на врага можно только один раз повесить аниматор
Очень просто, я соединил код для атаки и поднятья оружия и приписал несколько строк. Получилось так: public class PicUP_weapon : MonoBehaviour { public GameObject Camera; public float distance = 3; GameObject currentWeapon; bool canPickUp = false; Animator anim; private void Start() { anim = GetComponent(); } void Update() { if (Input.GetKeyDown(KeyCode.E)) PickUp(); if (Input.GetKeyDown(KeyCode.Q)) Drop(); if (Input.GetKeyDown(KeyCode.Mouse0)) { currentWeapon.GetComponent().isTrigger = true; anim.SetBool("Hit", true); } else if (Input.GetKeyUp(KeyCode.Mouse0)) { currentWeapon.GetComponent().isTrigger = false; anim.SetBool("Hit", false); } } void PickUp() { RaycastHit hit; if (Physics.Raycast(Camera.transform.position, Camera.transform.forward, out hit, distance)) { if (hit.transform.tag == "Weapon") { if (canPickUp) Drop(); currentWeapon = hit.transform.gameObject; currentWeapon.GetComponent().isKinematic = true; currentWeapon.GetComponent().isTrigger = true; currentWeapon.transform.parent = transform; currentWeapon.transform.localPosition = Vector3.zero; currentWeapon.transform.localEulerAngles = new Vector3(0f, 90f, 10f); canPickUp = true; } } } void Drop() { currentWeapon.transform.parent = null; currentWeapon.GetComponent().isKinematic = false; currentWeapon.GetComponent().isTrigger = false; canPickUp = false; currentWeapon = null; } } Кидаешь на руку и все, не забудь поменять Hit на Attack. Крч поменяй некоторые значения под себя
@@Адскаячувырла У тебя в коде, лучше граматическая ошибка в названии класса, лучше исправить, не PicUp, а PickUpWeapon например. Просто не слишком понятно, что такое picup. Если будешь менять имя класса, не забудь поменять и название самого скрипта.
Смотри чтобы названия у тебя и в скрипте совпадали и все объекты были вставлены куда нужно, а то вы переменные называете по-своему, а в скрипте не меняете. У меня все скрипты рабочие, если делать все внимательно с нуля по видео.
А возможно ли в базовой версии Юнити (без плагинов и всяких HDRP) сделать шлейф от движения меча как в этой игре ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-pxGJuHr1MOw.html&ab_channel=AlphaBetaGamer
Да там все похожие. Вместо меча, например снаряд и все, ну может какие то еще изменения незначительные, но суть одна снаряд попадает шкала здоровья отнимается.
Привет если кто поможет дам денег рублей 100 у меня не получается сделать что бы при нажатии на кнопку в канвасе анимация после ее окончания переходила в анимацию idle помогите пожалуйста
@@THECAPITALFORT Сделай Button, сделай скрипт с методом например StartIdle в нем пиши логику, то есть меняй переменную со своей анимацией на true. Потом вешай этот скрипт например на лббой объект, а лучше на эту же кнопку. Вставляй эту кнопку со скриптом в OnClick кнопки и выбирай в function свой метод StartIdle.