unity制作AVG 02——对话逐字显示,与快进

核心思路

先设一个bool型的变量来记录是否完全显示,再使用string.ToCharArray()将字符串转化为数组,然后逐字添加到Text组件上。当对话完全显示,bool值为true。当显示过程中被点击,则停止协程,直接显示全部Text组件

关键代码

   public IEnumerator TypeText(Text contentText, string content, float tpyeInterval = 0.075f)
    {
        contentText.text = "";
        foreach (char letter in content.ToCharArray())
        {
            contentText.text += letter;
            yield return new WaitForSeconds(tpyeInterval);
        }
    }

    public void OnClick()
    {
        if (isAllSet)
        {
            NextLine();
        }
        else
        {
            StopAllCoroutines();
            dialogContentText.text = content 
            isAllSet = true;           
        }
    }

实现效果

1.gif
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,282评论 19 139
  • ¥开启¥ 【iAPP实现进入界面执行逐一显】 〖2017-08-25 15:22:14〗 《//首先开一个线程,因...
    小菜c阅读 11,939评论 0 17
  • Scala与Java的关系 Scala与Java的关系是非常紧密的!! 因为Scala是基于Java虚拟机,也就是...
    灯火gg阅读 8,861评论 1 24
  • 每十个人一组,任意选一个人作为起点,起点对面的人作为终点,起点开始抛送物品,不能手递手,必须隔着至少一个人,每个人...
    LLWjh阅读 1,229评论 1 1
  • 近期baidu查找最大的动作应当即是baiduSpider3.0晋级了,简略的概括下晋级的特色即是:抓取更实时,录...
    说趣事阅读 2,498评论 0 0

友情链接更多精彩内容