您的位置:首页 > 移动开发 > Unity3D

unity 长按按钮控制播放animator播放速度

2018-01-13 13:43 267 查看
using System.Collections;

using System.Collections.Generic;

using UnityEngine;

using UnityEditor.Animations;

using UnityEngine.Events;

using UnityEngine.EventSystems;

public class AnimationSpeed : MonoBehaviour, IPointerDownHandler, IPointerUpHandler, IPointerExitHandler

{

    public float speed = 1;//动画播放速度

    private float delay = 0.2f;//延迟时间

    private bool isDown = false;// 按钮是否是按下状态

    private float lastIsDownTime;// 按钮最后一次是被按住状态时候的时间

    public Animator anim;//动画

    void Start()

    {

        anim.speed = 1;

    }

    // Update is called once per frame

    void Update()

    {

        // 如果按钮是被按下状态

        if (isDown)

        {

            if (Time.time - lastIsDownTime > delay)

            {

                print("长按!");

                lastIsDownTime = Time.time;

                // 记录按钮最后一次被按下的时间

                speed = speed + 0.2f;

                anim.speed = speed;

                if (speed <= 0)

                {

                    anim.speed = 0;

                }

                if (speed >= 8)

                {

                    anim.speed = 8;

                }

            }

        }

    }

    public void OnPointerDown(PointerEventData eventData)

    {

        isDown = true;

        lastIsDownTime = Time.time;

    }

    public void OnPointerUp(PointerEventData eventData)

    {

        isDown = false;

    }

    public void OnPointerExit(PointerEventData eventData)

    {

        isDown = false;

    }

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: