【UGUI】实现长按播放动画松手停止动画播放

场景部分,需要把角色和动画组件、动画控制器、动画片段准备好

然后设置好转换动画的参数RUN (bool类型的)

创建一个普通按钮在UGUI里面,为按钮添加组件EventTrgger

 在这个组件里面添加PointerDown 和PointerUp 这两个分别代表按下和弹起!

他们是回调函数!接下来就写两个回调函数控制动画切换跑步和站立状态即可!

被回调的函数代码:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class AnimaConManager : MonoBehaviour
{
    // 这个脚本负责拿到小女孩的动画控制器,跟随UI点击事件控制参数变化
    public Animator OneAnitor;
    public float speed=10f;
    bool TurnOn = false;

    public void DownTranRun()
    {
        Debug.Log("用户长按了按钮 可以切换到跑的状态了");
        OneAnitor.SetBool("StandARun", true);
        TurnOn = true;
    }
    public void UpTranIdle()
    {
        Debug.Log("用户离开了按钮,可以播放站立动画");
        OneAnitor.SetBool("StandARun", false);
        TurnOn = false;

    }
    private void Update()
    {
        if (TurnOn)
        {
           OneAnitor.gameObject.transform.Translate(new Vector3(0, 0, 1)* speed* Time.deltaTime, Space.Self);
        }        
    }
}

挂在空物体上!添加给回调!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Unity3d青子

难题的解决使成本节约,求打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值