private void Awake() { if (overrideTrigger == null) { overrideTrigger = GetComponent <FunctionTrigger>(); } overrideTrigger.function += function; overrideTrigger.function2 += function2; }
// 解析功能触发器 private void ParseFunctionTrigger(XmlNode node) { FunctionTrigger trigger = new FunctionTrigger(mScene); trigger.name = node.Attributes["name"].Value; XmlNodeList nodeList = node.ChildNodes; for (int i = 0; i < nodeList.Count; ++i) { XmlNode childNode = nodeList[i]; if (childNode != null && childNode.Name == "Step") { FunctionTriggerStep step = new FunctionTriggerStep(); step.time = System.Convert.ToInt32(childNode.Attributes["time"].Value); XmlNodeList stepList = childNode.ChildNodes; for (int j = 0; j < nodeList.Count; ++j) { XmlNode stepNode = stepList[j]; if (stepNode != null && stepNode.Name == "FuncTrigger") { FunctionTriggerInfo info = new FunctionTriggerInfo(); info.funcname = stepNode.Attributes["function"].Value; step.functions.Add(info); } else if (stepNode != null && stepNode.Name == "TimeTrigger") { TimeTriggerInfo info = new TimeTriggerInfo(); info.mTotalTime = step.time; step.times.Add(info); } } trigger.steps.Add(step); } } mTriggers.Add(trigger.name, trigger); }
public ComponentData(string name, FunctionTrigger trigger, string language) { Name = name; Trigger = trigger; Language = language; }