1、切换到动画器
点击make transition和exit关联起来
2、设置参数
勾选掉Has Exit Time
3、脚本给动画器传参
csharp
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Fly : MonoBehaviour
{
//获取小鸟(刚体)
private Rigidbody2D bird;
//速度
public float speed;
//跳跃
public float jump;
//是否存活
public static bool life = true;
//获取动画器
private Animator animator;
// Start is called before the first frame update
void Start()
{
bird = GetComponent<Rigidbody2D>();
animator = GetComponent<Animator>();
}
// Update is called once per frame
void Update()
{
//村换的时候才能运动
if (life) {
bird.velocity = new Vector2(speed, bird.velocity.y);
//鼠标点击给目标一个纵向速度
if (Input.GetMouseButtonDown(0))
{
bird.velocity = new Vector2(bird.velocity.x, jump);
}
}
}
//如果碰撞器撞到了某个物体
private void OnCollisionEnter2D(Collision2D collision)
{
life = false;
animator.SetBool("life", false);
}
}