// Update is called once per frame void Update() { tempoDeDano += Time.deltaTime; alturaAtual = transform.position.y; direcao = Vector3.zero; if (alturaAtual < alturaDoDano + 0.5f) { direcao += 12 * Vector3.up; } if ((transform.position - posInicial).sqrMagnitude < esseGolpe.DistanciaDeRepulsao) { direcao += esseGolpe.VelocidadeDeRepulsao * esseGolpe.DirDeREpulsao;//direcaoDoDano; } vMove = Vector3.Lerp(vMove, direcao, 10 * Time.deltaTime); controle.Move(vMove * Time.deltaTime); if (tempoDeDano > esseGolpe.TempoNoDano) { gerente.LiberaMovimento(CreatureManager.CreatureState.emDano); animator.SetBool("dano1", false); Destroy(this); } }
private void LiberaDoAtacando() { gerente.LiberaMovimento(CreatureManager.CreatureState.aplicandoGolpe); GetComponent <Animator>().SetBool("atacando", false); retornou = true; }