コード例 #1
0
 private void Awake()
 {
     if (overrideTrigger == null)
     {
         overrideTrigger = GetComponent <FunctionTrigger>();
     }
     overrideTrigger.function  += function;
     overrideTrigger.function2 += function2;
 }
コード例 #2
0
    // 解析功能触发器
    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);
    }
コード例 #3
0
 public ComponentData(string name, FunctionTrigger trigger, string language)
 {
     Name     = name;
     Trigger  = trigger;
     Language = language;
 }