ConfigReader(三十一)—— ReadIGuideTaskConfig
来源:互联网 发布:美萍软件怎么样 编辑:程序博客网 时间:2024/06/05 01:16
目录为:Assets/Scripts/ConfigReader/目录下
ReadIGuideTaskConfig.cs
对应XML文件:
Assets/Resources/Config/UiTaskEvent.xml
部分如下:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><UiTaskEvent xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <info id="1000"> <startEvent>-8000</startEvent> <endEvent>-1000</endEvent> <textpath>Center/character</textpath> <textpos>240;240;0</textpos> <content>请输入您的账号昵称</content> <isshield>1</isshield> </info> <info id="1001"> <startEvent>-8001</startEvent> <endEvent>-1001</endEvent> <textpath>Center/character</textpath> <textpos>0;-186;0</textpos> <content>请选择您的角色性别</content> <isshield>1</isshield> </info> <info id="1002"> <startEvent>-8002</startEvent> <endEvent>-1002</endEvent> <textpath>Center/character</textpath> <textpos>315;30;0</textpos> <content>请选择您的角色头像</content> <isshield>1</isshield> </info> <info id="1003"> <startEvent>-8003</startEvent> <endEvent>-1003</endEvent> <textpath>Center/character</textpath> <textpos>270;-235;0</textpos> <content>点击确定完成注册</content> <isshield>1</isshield> </info>
ReadIGuideTaskConfig.cs
using System;using UnityEngine;using System.Xml;using System.Collections.Generic;//跟UI有关//对应配置文件:Assets/Resources/Config/UiTaskEventpublic class ReadIGuideTaskConfig{ XmlDocument xmlDoc = null; //构造函数 public ReadIGuideTaskConfig(string xmlFilePath) { ResourceUnit xmlfileUnit = ResourcesManager.Instance.loadImmediate (xmlFilePath, ResourceType.ASSET); TextAsset xmlfile = xmlfileUnit.Asset as TextAsset; if (!xmlfile) { Debug.LogError(" error infos: 没有找到指定的xml文件:" + xmlFilePath); } xmlDoc = new XmlDocument (); xmlDoc.LoadXml (xmlfile.text); XmlNodeList infoNodeList = xmlDoc.SelectSingleNode ("UiTaskEvent").ChildNodes; for (int i = 0; i < infoNodeList.Count; i++) { if ((infoNodeList[i] as XmlElement).GetAttributeNode("id") == null) { continue; } string typeName = (infoNodeList [i] as XmlElement).GetAttributeNode ("id").InnerText; IGuideData taskInfo = new IGuideData (); taskInfo.TaskId = Convert.ToInt32 (typeName); foreach (XmlElement xEle in infoNodeList[i].ChildNodes) { switch (xEle.Name) { case "startEvent": taskInfo.StartTaskEvent = Convert.ToInt32 (xEle.InnerText); break; case "endEvent": taskInfo.EndTaskEvent = Convert.ToInt32 (xEle.InnerText); break; case "textpath": taskInfo.TextPath = Convert.ToString (xEle.InnerText); break; case "textpos": taskInfo.TextPos = GameMethod.ResolveToVector3 (Convert.ToString (xEle.InnerText), ';'); break; case "content": taskInfo.TextContent = GameMethod.ResolveToStrList (Convert.ToString (xEle.InnerText), ';'); break; case "shakepath": taskInfo.ShakePath = Convert.ToString (xEle.InnerText); break; case "shakepos": taskInfo.ShakePos = GameMethod.ResolveToVector3 (Convert.ToString (xEle.InnerText), ';'); break; case "flashpath": taskInfo.FlashPath = Convert.ToString (xEle.InnerText); break; case "flashpos": taskInfo.FlashPos = GameMethod.ResolveToVector3 (Convert.ToString (xEle.InnerText), ';'); break; case "destpos": taskInfo.FlashDstPos = GameMethod.ResolveToVector3 (Convert.ToString (xEle.InnerText), ';'); break; case "isshield": taskInfo.IsMask = (Convert.ToInt32 (xEle.InnerText) == 1) ? true : false; break; } } ConfigReader.iGuideDataXmlInfoDict.Add (taskInfo.TaskId, taskInfo); } }}/*<info id="1004"> <startEvent>-8004</startEvent> <endEvent>-1004</endEvent> <textpath>Center/character</textpath> <textpos>-16;-240;0</textpos> <content>附近有个敌方基地,咱们找它练练手!</content> <isshield>1</isshield></info>*/public class IGuideData{ public int TaskId; public int StartTaskEvent; public int EndTaskEvent; public string TextPath; public Vector3 TextPos; public List<string> TextContent = new List<string> (); public string ShakePath; public Vector3 ShakePos; public string FlashPath; public Vector3 FlashPos; public Vector3 FlashDstPos; public bool IsMask;}
阅读全文
0 0
- ConfigReader(三十一)—— ReadIGuideTaskConfig
- ConfigReader(六十)—— ConfigReader
- Commom(十)—— ConfigReader
- ConfigReader(一)—— MapConfig
- ConfigReader(二)—— MapLoadConfig
- ConfigReader(三)—— ReadAdvancedGuideConfig
- ConfigReader(四)—— ReadBuffConfig
- ConfigReader(五)—— ReadBuySkinConfig
- ConfigReader(六)—— ReadCombineConfig
- ConfigReader(七)—— ReadDailyBonusConfig
- ConfigReader(八)—— ReadDailyTaskConfig
- ConfigReader(九)—— ReadGuideAbsorbTaskConfig
- ConfigReader(十)—— ReadGuideBornNpcTaskConfig
- ConfigReader(十一)—— ReadGuideCameraTaskConfig
- ConfigReader(十二)—— ReadGuideClickButtonTaskConfig
- ConfigReader(十三)—— ReadGuideFlashTaskConfig
- ConfigReader(十四)—— ReadGuideHelpConfig
- ConfigReader(十五)—— ReadGuideKillHeroTaskConfig
- USB 3.2 Knowledge
- mysql提示access denied for user ''@'localhost' to database
- java之poi
- Codeforces 873D:构造题
- FLAG_ACTIVITY_CLEAR_TOP会重启Activity的问题解决
- ConfigReader(三十一)—— ReadIGuideTaskConfig
- Emptying the Baltic(类似最短路?)
- 单链表的基本操作
- 爬取一个本地网页
- [分治][线性基]BZOJ 4184: shallot
- linux命令:ps命令
- 一人逾期,痛苦全家人!
- Android studio中常用快捷键
- 南阳理工_65另一种阶乘问题