编写自定义打字机(C#)
通过使用“Text Animator for Unity”你可以创建你自己的 自定义打字机,在字母之间设置不同类型的延迟以及更多功能。 (如果你想了解默认的打字机,请 在此阅读).
添加自定义打字机
为了为你的游戏创建自定义打字机,你需要创建一个继承自的自定义类 Febucci.UI.Core.TypewriterCore [脚本 API].
基本方法
你必须重写/实现以下方法:
float GetWaitAppearanceTimeOf(int charIndex)
它告诉打字机每个字符需要等待的时间。通过这种方式,你可以实现自己的特殊字符,这些字符需要独特的等待时间等。
你可以通过以下方式根据索引访问字符:
char character = TextAnimator.Characters[charIndex].info.character例如,为了在输入标点符号时具有不同的等待时间:
[SerializeField] float normalTime = .1f;
[SerializeField] float punctuationTime = .3f;
protected override float GetWaitAppearanceTimeOf(int charIndex)
{
char character = TextAnimator.Characters[charIndex].info.character;
return char.IsPunctuation(character) ? punctuationTime : normalTime;
}可选方法
你还可以重写以下方法以获得额外功能。
float GetWaitDisappearanceTimeOf(int charIndex)
如果你希望不同的消失等待时间/速度,请重写此方法。否则,你的自定义 textAnimatorPlayer 将使用与其打字机相同的延迟(GetWaitAppearanceTimeOf);
✅ 就这些!真的!
👍🏻 别忘了将你的打字机组件添加到与 TextAnimator 组件相同的 gameObject 上。
玩得开心,自己实现你喜欢的打字机 <3
最后更新于