Unity对话系统

代码源码

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using TMPro;
using UnityEngine.UI;

public class DialogManager : MonoBehaviour
{
    // Start is called before the first frame update
    public TextAsset dialogDataFile;
    public TMP_Text nameText;
    public TMP_Text dialogText;
    public int dialogIndex;//保存当前的对话索引值
    public string[] dialogRows;//对话文本,按行分割
    public Button next;
    void Start()
    {
        ReadText(dialogDataFile);
        ShowDialogRow();
        //UpdateText("博士", "匠心独具");

    }

    // Update is called once per frame
    void Update()
    {
        
    }
    public void UpdateText(string _name,string _text)
    {
        nameText.text = _name;
        dialogText.text = _text;
    }
    public void ReadText(TextAsset _textAsset)
    {
        dialogRows = _textAsset.text.Split('\n');
       // foreach (var row in rows)
       // {
        //    string[] cell = row.Split(",");
      //  }
        Debug.Log("读取成功");
    }
    public void ShowDialogRow()
    {
        foreach (var row in dialogRows)
        {
            string[] cells = row.Split(',');
            if (cells[0] == "#"&& int.Parse(cells[1]) == dialogIndex )
            {
                UpdateText(cells[2], cells[4]);
                // UpdateImage(cells[2],)
                dialogIndex = int.Parse(cells[5]);
                break;
            }
        }
    }
    public void OnClickNext()
    {
        ShowDialogRow();
    }
}


黄帝内径——粘贴到记事本中,拖拽到Unity

标志,ID,人物,位置,内容,跳转,效果,目标
#,0,黄帝:,右,我听说上古时候的人,年龄都能超过百岁,动作不显衰老;现在的人,年龄刚至半百,而动作就都衰弱无力了,这是由于时代不同所造成的呢还是因为今天的人们不会养生所造成的呢?,1,,
#,1,医圣:,左,上古时代的人,那些懂得养生之道的,能够取法于天地阴阳自然变化之理而加以适应,调和养生的办法,使之达到正确的标准。,2,,
#,2,医圣:,左,饮食有所节制,作息有一定规律,既不妄事操劳,又避免过度的房事,所以能够形神俱旺,协调统一,活到天赋的自然年龄,超过百岁才离开人世,3,,
#,3,医圣:,左,现在的人就不是这样了,把酒当水浆,滥饮无度,使反常的生活成为习惯,醉酒行房,因放情纵欲,而使阴精竭绝,因满足欲望而使真气耗散,不知谨慎地保持精气的充满,,4,,
#,4,医圣:,左,不善于做精神的主人,而专求心志的一时之快,违逆人生乐趣,起居作息,毫无规律,所以到半百之年就衰老了。,5,,
#,5,黄帝:,右,人年纪老的时候,不能生育子女,是由于精力衰竭了呢,还是受自然规律的限定呢?,6,,
#,6,医圣:,左,女子到了七岁,肾气盛旺了起来,乳齿更换,头发开始茂盛。十四岁时,任脉通畅,太冲脉旺盛,月经按时来潮,具备了生育子女的能力。,7,,
#,7,医圣:,左,二十一岁时,肾气充满,真牙生出,牙齿就长全了。二十八岁时,筋骨强健有力,头发的生长达到最茂盛的阶段,此时身体最为强壮。三十五岁时,阳明经脉气血渐衰弱,面部开始懦悴,头发也开始脱落。,8,,
#,8,医圣:,左,四十二岁时,三阳经脉气血衰弱,面部憔悴无华,头发开始变白。四十九岁时,任脉气血虚弱,太冲脉的气血也衰少了,天葵枯竭,月经断绝,所以形体衰老,失去了生育能力。,9,,
#,9,医圣:,左,男子到了八岁,肾气充实起来,头发开始茂盛,乳齿也更换了,十六岁时,肾气旺盛,精气满溢而能外泻,两性交合,就能生育子女。二十四岁时,肾气充满,筋骨强健有力,真牙生长,牙齿长全。,10,,
#,10,医圣:,左,三十二岁时,筋骨丰隆盛实,肌肉亦丰满健壮。四十岁时,肾气衰退,头发开始脱落,牙齿开始损坏。四十八岁时,上部阳气逐渐衰竭,面部憔悴无华,头发和两鬓花白。,11,,
#,11,医圣:,左,五十六岁时,肝气衰弱,筋的活动不能灵活自如。六十四岁时,精气少,肾脏衰,牙齿头发脱落,形体衰疲。肾主水,接受其他各脏的精气而加以贮藏,所以五脏功能旺盛,肾脏才能外泻精气。,12,,
#,12,医圣:,左,现在年老,五脏功能都已衰退,筋骨懈惰无力。所以发鬓都变白,身体沉重,步伐不稳,也不能生育子女了。,13,,
#,13,黄帝:,右,有的人年纪已老,仍能生育,是什么道理呢?,14,,
#,14,医圣:,左,这是他天赋的精力超过常人,气血经脉保持畅通,肾气有余的缘故。这种人虽有生育能力,但男子一般不超过六十四岁,女子一般不超过四十九岁,精气变枯竭了。,15,,
#,15,黄帝:,右,掌握养生之道的人,年龄都可以达到一百岁左右,还能生育吗?,16,,
#,16,医圣:,左,掌握养生之道的人,能防止衰老而保全形体,虽然年高,也能生育子女。,17,,
#,17,黄帝:,右,自古以来,都以通于天气为生命的根本,而这个根本不外天之阴阳。天地之间,六合之内,大如九州之域,小如人的九窍、五脏、十二节,都与天气相通。天气衍生五行,阴阳之气又依盛衰消长而各分为三。,18,,
#,18,黄帝:,右,如果经常违背阴阳五行的变化规律,那么邪气就会伤害人体。因此,适应这个规律是寿命得以延续的根本。,19,,
#,19,医圣:,左,是的,阴是藏精于内不断地扶持阳气的;阳是卫护于外使体表固密的。如果阴不胜阳,阳气旺盛,就使血脉流动迫促,若再受热邪,阳气更盛就会发为狂症。,20,,
#,20,医圣:,左,如果阳不胜阴,阴气旺盛,就会使五脏之气不调,以致九窍不通。所以圣人使阴阳平衡,无所偏胜,从而达到筋脉调和,骨髓坚固,血气畅顺。这样,则会内外调和,邪气不能侵害,耳目聪明,气机正常运行。,21,,
#,21,黄帝:,右,自然界有八风,人的经脉病变又有五风的说法,这是怎么回事呢?,22,,
#,22,医圣:,左,自然界的八风是外部的致病邪气,他侵犯经脉,产生经脉的风病,风邪还会继续循经脉而侵害五脏,使五脏发生病变。,23,,
#,23,医圣:,左,一年的四个季节,有相克的关系,如春胜长夏,长夏胜冬,冬胜夏,夏胜秋,冬胜春,某个季节出现了克制它的季节气候,这就是所谓四时相胜。,24,,
#,24,医圣:,左,东风生于春季,病多发生在肝,肝的经气输注于颈项。所以春季邪气伤人,多病在头部。,25,,
#,25,医圣:,左,南风生于夏季,病多发生于心,心的经气输注于胸胁。夏季邪气伤人,多病在心。,26,,
#,26,医圣:,左,西风生于秋季,病多发生在肺,肺的经气输注于肩背。秋季邪气伤人,多病在肩背,27,,
#,27,医圣:,左,北风生于冬季,病多发生在肾,肾的经气输注于腰股。冬季邪气伤人,多病在四肢。,28,,
#,28,完结!,左,恭喜你学习完《黄帝内经》精选!历史进入数千年后的今天,"黄帝之问"与"医圣之答"的似乎说的就是今天的情况,希望会对你今后的身体健康有所帮助!,29,,
END,29,,,,30,,
Button

字体

需要自己创建

Unity对话系统是一个轻量级的对话系统和界面,设计用于绑定到任何UI系统。它需要Unity 5.0.0或更高版本。 在Unity中实现对话系统的一种方法是使用VIDE Dialogues (Pro) 2.1。你需要在脚本中引入命名空间using UnityEngine.UI;,并创建相应的游戏对象和文本组件来显示对话内容。你可以使用[TextArea(1,3)]特性来在Inspector窗口中将文字区域显示为三行。对话内容可以存储在一个字符串数组中,并通过索引进行访问。你还可以将对话信息存储在ScriptableObject(SO)中,使用[CreateAssetMenu(fileName ="New Dialogue",menuName ="Dialogue/Dialogue Data")]特性来创建对话数据的菜单选项。对话数据可以存储在一个包含对话片段的列表中。 总之,Unity对话系统是一个可以绑定到任何UI系统的轻量级对话系统,可以通过使用VIDE Dialogues来实现,并且还可以使用ScriptableObject来存储对话数据。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Unity对话系统源码](https://download.youkuaiyun.com/download/nippyli/10143335)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [UNITY 对话系统](https://blog.youkuaiyun.com/qq_45783556/article/details/116171371)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [Unity3D RPG实现 3 —— 对话、任务系统](https://blog.youkuaiyun.com/weixin_43757333/article/details/123287146)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值