// onPick回调 public static bool onPick(XMLEventStruct e, List <string> param) { if (!(e.mParams.Count > 0 && param.Count > 0)) { return(false); } string strParam = param[0]; if (strParam == null || strParam.Length < 1) { return(false); } string strEvent = e.mParams[0]; if (strEvent == null || strEvent.Length < 1) { return(false); } if (e.mParams.Count == 1) { return(strParam.Equals(strEvent)); } else if (e.mParams.Count == 2) { return(strParam.Equals(strEvent) && (Convert.ToInt32(param[1]) == Convert.ToInt32(e.mParams[1]))); } return(false); }
// 摄像机事件触发 public static bool onCameraPathEvent(XMLEventStruct e, List <string> param) { if (param.Count != 1) { return(false); } if (e.mParams.Count != 1) { return(false); } string strParam = param[0]; if (strParam == null || strParam.Length < 1) { return(false); } string strEvent = e.mParams[0]; if (strEvent == null || strEvent.Length < 1) { return(false); } return(strParam.Equals(strEvent)); }
// 解析Events private void ParseEvents(XmlNode node) { XmlNodeList nodeList = node.ChildNodes; for (int i = 0; i < nodeList.Count; ++i) { XmlNode childNode = nodeList[i]; if (childNode != null && childNode.Name == "Event") { string type = childNode.Attributes["type"].Value; if (type == null || type.Length < 1) { continue; } XMLEventStruct xmlEvent = new XMLEventStruct(); xmlEvent.mName = childNode.Attributes["name"].Value; xmlEvent.mType = childNode.Attributes["type"].Value; int index = 1; XmlAttribute attrib = null; while ((attrib = childNode.Attributes["param" + index.ToString()]) != null) { xmlEvent.mParams.Add(attrib.Value); index++; } //mEventsList.Add(xmlEvent); if (mEventsNameMap.ContainsKey(xmlEvent.mName)) { GameDebug.LogError("ScriptXML Error : Event自命名重复!name:" + xmlEvent.mName); } mEventsNameMap.Add(xmlEvent.mName, xmlEvent); ArrayList arr = null; if (mEventsTypeMap.ContainsKey(xmlEvent.mType)) { arr = mEventsTypeMap[xmlEvent.mType]; } if (arr == null) { arr = new ArrayList(); mEventsTypeMap.Add(xmlEvent.mType, arr); } arr.Add(xmlEvent); } } mEventsInited = true; }
// onStoryEnd回调 public static bool onStoryEnd(XMLEventStruct e, List <string> param) { if (param.Count != 1) { return(false); } if (e.mParams.Count != 1) { return(false); } int intParam = int.Parse(param[0]); int intEvent = int.Parse(e.mParams[0]); return(intParam == intEvent); }
public static bool onGrowthTriggerFinish(XMLEventStruct e, List <string> param) { return(true); }
// onSceneInited回调 public static bool onSceneInited(XMLEventStruct e, List <string> param) { return(true); }
// onGameStart回调 public static bool onGameStart(XMLEventStruct e, List <string> param) { return(true); }