Esempio n. 1
0
 /// <summary>
 /// 把IL文件的一行解析为SceneActionPackage
 /// </summary>
 /// <param name="oneline">IL文件的行</param>
 /// <returns>动作序列包</returns>
 private SceneActionPackage ParseSceneActionPackage(string oneline)
 {
     SceneActionPackage sa = null;
     string[] lineitem = oneline.Split('^');
     if (lineitem.Length == this.IL_LINEITEM_NUM)
     {
         sa = new SceneActionPackage();
         sa.saNodeName = lineitem[0];
         sa.aType = (SActionType)Enum.Parse(typeof(SActionType), lineitem[0].Split('@')[1], false);
         sa.argsDict = this.DispatchArgs(lineitem[1]);
         sa.condPolish = this.DecodeString(lineitem[2]);
         sa.next = lineitem[3];
         sa.trueRouting = this.DispatchRouting(lineitem[4]);
         sa.falseRouting = this.DispatchRouting(lineitem[5]);
         sa.isBelongFunc = lineitem[6] == "1";
         sa.funcName = lineitem[7];
         sa.aTag = this.DecodeString(lineitem[8]);
     }
     else
     {
         throw new Exception("IL损坏");
     }
     return sa;
 }
Esempio n. 2
0
 /// <summary>
 /// 带SAP项的构造函数
 /// </summary>
 /// <param name="sap">SceneActionPackage项目</param>
 public SceneAction(SceneActionPackage sap)
 {
     this.saNodeName = sap.saNodeName;
     this.aType = (SActionType)Enum.Parse(typeof(SActionType), sap.saNodeName.Split('@')[1]);
     this.argsDict = new Dictionary<string, string>(sap.argsDict);
     this.condPolish = sap.condPolish;
     this.isBelongFunc = sap.isBelongFunc;
     this.funcName = sap.funcName;
     this.aTag = sap.aTag;
 }