写一个unity中 动画状态机的float值为100,血量为100,在脚本拿到并且触发器触发一次就减20伤害的代码。
时间: 2023-06-06 09:08:57 浏览: 133
状态机代码
3星 · 编辑精心推荐
好的,以下是您所需的Unity动画状态机脚本代码:
public class EnemyHealth : MonoBehaviour {
public Animator animator;
public float health = 100f;
private float damage = 20f;
void OnTriggerEnter(Collider other) {
if (other.tag == "PlayerAttack") {
health -= damage;
animator.SetFloat("Health", health);
}
}
}
在这段代码中,我们首先定义动画器(animator)和生命值(health),并且将每次攻击造成的伤害量(damage)设置为20。在触发器(Collider)中检测到玩家攻击时,我们减去20点生命值并更新动画状态机中的生命值属性。注意,我们需要在状态机中创建名为“Health”的浮点属性并将其值与实际生命值相关联。
希望这可以解决您的问题。
阅读全文