csharp ランダムテキストアニメーション

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了csharp ランダムテキストアニメーション相关的知识,希望对你有一定的参考价值。

using UnityEngine;
using System.Collections;
using System.Collections.Generic;
using UnityEngine.UI;
using System.Linq;
using DG.Tweening;

public class RandomTextAnimation : MonoBehaviour
{
    [SerializeField]
    private Text _text;

    private void Awake()
    {
        _text.enabled = false;
    }

    public void WaveCount(int cnt, int total)
    {
        string result = string.Format("WAVE   {0} / {1}", cnt, total);
        _text.enabled = true;
        _text.DOKill();
        _text.color = Color.white;
        StartCoroutine(RandomTextAnimation(result, 1, ()=>{
            _text.DOFade(0, 0.6f).SetEase(Ease.OutSine).OnComplete(() => {
                _text.enabled = false;
            }).SetDelay(1f);
        }));
    }

    private IEnumerator RandomTextAnimation (string result, int speed = 1, System.Action onComplete = null)
    {
        int resultCharCnt = result.Length;
        int cnt = 0;
        for(int i = 0; i < resultCharCnt; i++)
        {
            _text.text = result.Substring(0, cnt) + string.Join(",", GetRandomTexts(resultCharCnt - cnt).ToArray());
            cnt += speed;
            cnt = Mathf.Clamp(cnt, 0, resultCharCnt);
            yield return null;
        }

        _text.text = result;
        onComplete.SafeInvoke();
    }

    private static string[] RAND_TEXTS = new string[]{
        "A", "B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","1","2","3","4","5","6","7","8","9","0","#","$"
        ,"!","%","&","(",")","¥"
    };

    private IEnumerable<string> GetRandomTexts (int cnt)
    {
        return RAND_TEXTS.Shuffle().Take(cnt);
    }
}

以上是关于csharp ランダムテキストアニメーション的主要内容,如果未能解决你的问题,请参考以下文章

scss グラデーションテキスト

csharp キー入力でアニメーションを切り替え,画面にアニメーション名を表示する

csharp uvScrollアニメーションを持っている场合の材料注意点。

csharp アニメーションクリップを少しリカバリーする编辑スクリプト

csharp interfaceの明示的実装の例(プレイヤーキャラクターのアニメーション切り替え)

xml [WPF]コードビハインド侧でアニメーション制御.DataGridの行を実行时にアニメーション制御。