egret连连看项目实战之三(解析配置表)

本文涉及的产品
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
简介: egret连连看项目实战之三(解析配置表)
推荐阅读:

       这是一款连连看,如果只能连连,那估计大家看看就没兴趣了。如果在里面加上一些场景式对话,那么可能就会有意思许多。

       今天就带大家学习Unity解析配置表,显示配置表信息,即对话文字。
用excel写好对话信息,如下:
在这里插入图片描述
       百度“Excel转txt”,将上卖弄的excel格式转换成txt类型文件,命名为dialog。

       下载LitJson.dll文件,在Unity项目Assets目录下创建Plugins文件夹,并将下载好的LitJson.dll文件并放入其中。新建Configs文件夹并将dialog.txt文件放入其中。

       在unity中新建场景,并搭建如下对话UI,保存并命名为DialogScene
在这里插入图片描述
新建C#脚本并命名为ParseConfigs,写下如下代码:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using LitJson;
using System.IO;
using UnityEngine.UI;

public class ParseConfigs : MonoBehaviour {

    private Text dialogText;
    private JsonData jd;
    private int index=0;
    // Use this for initialization
    void Awak()
    {
        
    }
    void Start () {
        dialogText =GetComponent<Text>();
        StreamReader sr = File.OpenText("Assets/Resources/Configs/Dialog.txt");
        string strline = sr.ReadToEnd();
        jd = JsonMapper.ToObject(strline);//jd是一个数组数组中的每个元素是一个Object
        dialogText.text = (string)jd[index]["dialogText"];

    }

    // Update is called once per frame
    void Update () {

    }
    public void NextDialog()
    {
        index++;
        string ob = (string)jd[index]["ID"];//箱操作
        int id= int.Parse(ob);转换成int类型
        if (id > (GameManager.Instance.currDialog+1) * 1000)
        {
            //当前对话结束
            return;
        }
        else
        {
            dialogText.text = (string)jd[index]["dialogText"];
        } 
      }
}

       注意:上面代码中,jd是一个数组,数组中的每个元素都是一个object对象。取数组中的“ID”字段时,jdindex是一个引用类型,需要转换成值类型(用来判断当前对话是否应该结束),此处需要使用拆箱操作来转换成string类型,然后强制转换成int类型。

       上面的NextDialog()方法是点击事件需要调用的方法,我们设定点击对话文字,开始当前场景的下一对话,方法与文章连连看项目实战之一(搭建场景)中给按钮添加点击事件的方法相似。

       这里只实现了大致的方法,还有很多细节需要你慢慢优化,比如两人对话,一方说话时,另一方人物应该隐藏,隐藏方法为:setActive(false);同理显示方法为:setActive(true)。当前说话人物名字,都可以根据配置表取得。

相关文章
|
2天前
|
域名解析 网络协议 Ubuntu
DHCP与DNS的配置
通过这些步骤,您可以在Linux环境下成功配置和验证DHCP和DNS服务。希望这些内容对您的学习和工作有所帮助。
52 27
|
6天前
|
存储 人工智能 并行计算
2025年阿里云弹性裸金属服务器架构解析与资源配置方案
🚀 核心特性与技术创新:提供100%物理机性能输出,支持NVIDIA A100/V100 GPU直通,无虚拟化层损耗。网络与存储优化,400万PPS吞吐量,ESSD云盘IOPS达100万,RDMA延迟<5μs。全球部署覆盖华北、华东、华南及海外节点,支持跨地域负载均衡。典型应用场景包括AI训练、科学计算等,支持分布式训练和并行计算框架。弹性裸金属服务器+OSS存储+高速网络综合部署,满足高性能计算需求。
|
3月前
|
域名解析 存储 缓存
DNS是什么?内网电脑需要配置吗?
【10月更文挑战第22天】DNS是什么?内网电脑需要配置吗?
533 1
|
4月前
|
JSON JavaScript 前端开发
深入解析ESLint配置:从入门到精通的全方位指南,精细调优你的代码质量保障工具
深入解析ESLint配置:从入门到精通的全方位指南,精细调优你的代码质量保障工具
158 0
|
4月前
|
JavaScript 前端开发 索引
Vue3 + Vite项目实战:常见问题与解决方案全解析
Vue3 + Vite项目实战:常见问题与解决方案全解析
370 0
|
4月前
|
机器学习/深度学习 调度
mmseg配置解析 Polynomial Decay 多项式衰减
Polynomial Decay(多项式衰减)是一种常用的学习率调度方法,通过多项式函数逐步减少学习率,帮助模型更好地收敛。公式为:\[ lr = (lr_{initial} - \eta_{min}) \times \left(1 - \frac{current\_iter}{max\_iters}\right)^{power} + \eta_{min} \]。参数包括初始学习率、最小学习率、当前迭代次数、总迭代次数和衰减指数。适用于需要平滑降低学习率的场景,特别在训练后期微调模型参数。
112 0
mmseg配置解析 Polynomial Decay 多项式衰减
|
4月前
|
编解码 计算机视觉
mmseg配置解析 align_corners=False
`align_corners=False` 是图像插值操作中的一个参数,影响输入和输出图像的角点对齐方式。`align_corners=True` 严格对齐角点,而 `align_corners=False` 均匀分布像素点,更适用于保持整体比例关系的任务,如语义分割。
82 0
|
4月前
|
机器学习/深度学习 编解码
mmseg配置解析 contract_dilation=True
`contract_dilation=True` 是 ResNetV1c 中的一种设置,用于解决多层膨胀卷积中的“栅格效应”。通过调整膨胀率,使卷积核在不同阶段更密集地覆盖输入特征图,避免信息丢失,提升特征提取质量,尤其在语义分割任务中效果显著。
77 0
|
4月前
|
XML Java 数据格式
手动开发-简单的Spring基于注解配置的程序--源码解析
手动开发-简单的Spring基于注解配置的程序--源码解析
69 0
|
4月前
|
XML Java 数据格式
手动开发-简单的Spring基于XML配置的程序--源码解析
手动开发-简单的Spring基于XML配置的程序--源码解析
106 0

热门文章

最新文章

推荐镜像

更多