版本: Unity 6 (6000.0)
语言英语
  • C#

Animator.ResetTrigger

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交,但我们会阅读用户提出的每项建议并根据需要进行更新。

关闭

提交失败

由于某些原因,您的建议更改无法提交。请<a>稍后再试</a>。感谢您花时间帮助我们提高 Unity 文档的质量。

关闭

取消

切换到手册

声明

public void ResetTrigger(string name);

声明

public void ResetTrigger(int id);

参数

name 参数名称。
id 参数 ID。

描述

重置给定触发器参数的值。

使用此方法重置 Animator 控制器中可能仍然处于活动状态的触发器参数。确保在 Animator 控制器中创建名称相同的参数。有关如何设置触发器的更多信息,请参见Animator.SetTrigger

//Attach this script to a GameObject with an Animator component attached.
//For this example, create parameters in the Animator and name them “Crouch” and “Jump”
//Apply these parameters to your transitions between states

//This script allows you to trigger an Animator parameter and reset the other that could possibly still be active. Press the up and down arrow keys to do this.

using UnityEngine;

public class Example : MonoBehaviour { Animator m_Animator;

void Start() { //Get the Animator attached to the GameObject you are intending to animate. m_Animator = gameObject.GetComponent<Animator>(); }

void Update() { //Press the up arrow button to reset the trigger and set another one if (Input.GetKey(KeyCode.UpArrow)) { //Reset the "Crouch" trigger m_Animator.ResetTrigger("Crouch"); //Send the message to the Animator to activate the trigger parameter named "Jump" m_Animator.SetTrigger("Jump"); }

if (Input.GetKey(KeyCode.DownArrow)) { //Reset the "Jump" trigger m_Animator.ResetTrigger("Jump"); //Send the message to the Animator to activate the trigger parameter named "Crouch" m_Animator.SetTrigger("Crouch"); } } }