コード例 #1
0
 /// <summary>
 /// 文字送りアニメーションデータの要素と絶対時間から何文字目までWaveしているか算出
 /// </summary>
 static private int CalcAnimationCharacterCount <TType>(float time, TextAnimation.ItemBase <TType> item)
 {
     if (item.wave <= 0.0f)
     {
         return(int.MaxValue);
     }
     return((int)((time - item.delay) / item.wave));
 }
コード例 #2
0
 /// <summary>
 /// 文字送りアニメーションデータの要素の特定文字の相対時間を算出
 /// </summary>
 static private float CalcAnimationTime <TType>(float time, int characterIndex, TextAnimation.ItemBase <TType> item)
 {
     if (time < item.delay)
     {
         return(0.0f);
     }
     if (item.time <= 0.0f)
     {
         return(1.0f);
     }
     return(Mathf.Clamp01(((time - item.delay) - (characterIndex * item.wave)) / item.time));
 }
コード例 #3
0
 /// <summary>
 /// 文字送りアニメーションデータの要素の最大時間を算出
 /// </summary>
 static private float CalcAnimationTotalTime <TType>(int characterCount, TextAnimation.ItemBase <TType> item)
 {
     if (characterCount <= 0)
     {
         return(0.0f);
     }
     if (!item.use)
     {
         return(0.0f);
     }
     return(item.delay + (characterCount - 1) * item.wave + item.time);
 }