Unity游戏开发 DoTween集成

下载地址:

http://dotween.demigiant.com/download.php

变化曲线效果参考:

http://robertpenner.com/easing/easing_demo.html

配置参考:

https://www.jianshu.com/p/252c18016b3f

封装:

TweenUtil (将Tween转换为链式编程)

using UnityEngine;
using DG.Tweening;
using System;
using UnityEngine.UI;

public class TweenUtil : MonoBehaviour
{
    private Tweener tempTweener = null;

    private Sequence tempSeq = null;

    private Transform tempTrans = null;

    /// <summary>
    /// 调用之前设置Transform
    /// </summary>
    public TweenUtil SetTransform(Transform trans)
    {
        Clear();
        tempTrans = trans;
        return this;
    }

    /// <summary>
    /// 设置循环次数
    /// </summary>
    public TweenUtil SetLoops(int count, int type)
    {
        if (tempSeq != null)
        {
            tempSeq.SetLoops(count, (LoopType)type);
        }
        else if (tempTweener != null)
        {
            tempTweener.SetLoops(count, (LoopType)type);
        }

        return this;
    }

    /// <summary>
    /// 设置缓冲类型
    /// </summary>
    public TweenUtil SetEase(int ease)
    {
        if (tempSeq != null)
        {
            tempSeq.SetEase((Ease)ease);
        }
        else if (tempTweener != null)
        {
            tempTweener.SetEase((Ease)ease);
        }

        return this;
    }

    /// <summary>
    /// 设置相对变化
    /// </summary>
    public TweenUtil SetRelative()
    {
        if (tempSeq != null)
        {
            tempSeq.SetRelative();
        }
        else if (tempTweener != null)
        {
            tempTweener.SetRelative();
        }

        return this;
    }

    /// <summary>
    /// 设置自动销毁
    /// </summary>
    public TweenUtil SetAutoKill(bool b)
    {
        if (tempSeq != null)
        {
            tempSeq.SetAutoKill(b);
        }
        else if (tempTweener != null)
        {
            tempTweener.SetAutoKill(b);
        }

        return this;
    }

    /// <summary>
    /// 设置延迟
    /// <summary>
    public TweenUtil SetDelay(float time)
    {
        if (tempSeq != null)
        {
            tempSeq.SetDelay(time);
        }
        else if (tempTweener != null)
        {
            tempTweener.SetDelay(time);
        }

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值