|
游戏效果:
1
Create XML Document —— 创建所需的XML文档
注意路径:
我的XML文档”Dialog.xml”放在了 Assets 目录下创建的一个 Data 目录中
如果名字不一样,需要改名
或者直接修改解析XML代码中的读取路径,为你自己的路径
document.Load(Application.dataPath + "/Data/Dialog.xml"); //加载 XML 内容
背景1 雨声 船长 曲境一号船长1花痴诗1 我的小鱼你醒了,还记认识早晨吗? 秀秀 秀秀1花痴诗2 昨夜你曾经说, 愿夜幕永不开启。 船长 曲境一号船长2花痴诗3 你的香腮边轻轻滑落的 秀秀 秀秀2花痴诗4 是你的泪,还是我的泪? 背景2 秀秀 秀秀3花痴诗5 初吻吻别的那个季节 船长 曲境一号船长3花痴诗6 不是已经哭过了吗? 背景3 船长 曲境一号船长4花痴诗7 我的指尖还记忆着 秀秀 秀秀4花痴诗8 你慌乱的心跳 船长 曲境一号船长1花痴诗9 温润的体香里 背景4 秀秀 秀秀1花痴诗10 那一缕长发飘飘…
2
Audio Manager —— 音频管理器脚本
将此脚本挂在保证激活状态的 GameObject 上,并添加 2 个 AudioSource 组件
通过拖动的方式
在 Inspecter 面板中将 2 个 AudioSource 组件拖到 ↓
背景音: BgmAudioSource 和音效: SeAudioSource 框中
代码直接 Copy
using UnityEngine;////// 声音管理类/// public class AudioManager : MonoBehaviour{ public static AudioManager Instance; //单例 public AudioSource BgmAudioSource; //背景音 public AudioSource SeAudioSource; //音效 private AudioClip _clip; //音乐文件 ////// 初始化函数 /// void Start() { Instance = this; } ////// 播放背景音 /// public void PlayBgm(string inName) { _clip = Resources.Load(inName); //加载音乐文件 BgmAudioSource.clip = _clip; //更换音乐文件为Clip默认文件 BgmAudioSource.Play(); //播放音乐 } /// /// 播放音效 /// public void PlaySe(string inName) { _clip = Resources.Load(inName); //加载音乐文件 SeAudioSource.PlayOneShot(_clip); //播放音效,一声就完了 } /// /// 停止背景音 /// public void StopBgm() { BgmAudioSource.Stop(); //停止播放器 }}
3
UI Manager —— 界面交互控制
将此脚本挂在保证激活状态的 GameObject 上
通过拖动的方式
Inspecter —— 面板中:分别添加声明的 6 个对象
代码直接 Copy
using UnityEngine;using System.Xml; //引用XMLusing UnityEngine.UI; //引用UIusing System.Collections.Generic; //引用集合using UnityEngine.SceneManagement; //引用命名空间////// 枚举指令类型/// public enum CommandType{ Say, //说话 Bgm, //背景音 Bg //背景}////// 基类:指令类/// public class Command{ public CommandType AllType; //定义成员变量 类型对象}////// 说话指令类:继承 指令基类/// public class Say : Command{ public string Name; //名字 public string Image; //图片 public string Sound; //音乐 public string Content; //内容}////// 背景音指令类:继承 指令基类/// public class Bgm : Command{ public string Name; //名字}////// 背景指令类:继承 指令基类/// public class Bg : Command{ public string Name; //名字}////// 对话系统/// public class DialogUI : MonoBehaviour{ public ListCommands = new List (); //声明一个 List 数组 类型为:Command private int _index = 0; //默认索引为0 public GameObject GameImage; //游戏界面 public GameObject ReloadBut; //重开按钮 public Image BgImage; //背景图 public Image HeadPortrait; //头像 public Text NameText; //名字文本 public Text ConttentText; //内容文本 private bool _isExecute = false; //是否执行命令:默认不执行 /// /// 初始化方法 /// void Start() { AnalysisXml(); //调用解析XML方法 GameObject.Find("StartGameButton").GetComponent
4
Finish —— 测试运行
直接点击运行 Or Alt+PChinar所作,Down下即可!
附:
本博客为非营利性个人原创,除部分有明确署名的作品外,所刊登的所有作品的著作权均为本人所拥有,本人保留所有法定权利。违者必究 对于需要复制、转载、链接和传播博客文章或内容的,请及时和本博主进行联系,留言,Email: ichinar@icloud.com 对于经本博主明确授权和许可使用文章及内容的,使用时请注明文章或内容出处并注明网址