Задать вопрос
@kontay

Как сделать активацию переменной bool в анимации при входе коллайдера объекта в другой объект?

делаю игру, есть анимация атаки коллайдер которой при входе в тригер объекта (по идее) должен активировать bool который включит анимацию при которой коллайдер убирает галочку с is trigger и по завершению возвращает в изначальное состояние.

вот код:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class iceUse : MonoBehaviour
{
    private Animator anim;

    // Start is called before the first frame update
    void Start()
    {
        anim = GetComponent<Animator>();
    }

    // Update is called once per frame
    void Update()
    {
        
    }

    void OnCollisionEnter2D(Collision2D coll)//если 2D
    {
        if (coll.gameObject.tag == "ice")
        {
            anim.SetBool("off", false);
            StartCoroutine(ExampleCoroutine());

        }

    }

    IEnumerator ExampleCoroutine()
    {
        Debug.Log("Started Coroutine at timestamp : " + Time.time);

        yield return new WaitForSeconds(2);

        Debug.Log("Finished Coroutine at timestamp : " + Time.time);
        anim.SetBool("off", true);
    }
}

иенумератор нужен чтоб через 2 секунды (сколько длится активация объекта) вернуть bool в изначальное состояние, для того чтоб анимация не повторялась беспрерывно. (если тут есть решение, то распишите так подробно как сможете пожалуйста)
  • Вопрос задан
  • 82 просмотра
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы