Ejemplo n.º 1
0
 public void StartOnMain(int idxMap, int idxScript, ScriptGui.ScriptYaml script, GameObject npcTarget, OnEndAction onEndAction = null)
 {
     if (mIsRun)
     {
         Debug.Log("Can't start action when running");
         return;
     }
     // if(mIsRun && !mIsMain){
     //  Debug.Log("Stop normal before run main");
     //  ForceEnd();
     // }
     Debug.Log("Start Main Action " + Key + " , idxScript: " + idxScript);
     IdxMap    = idxMap;
     IdxScript = idxScript;
     Script    = script;
     OBJTarget = npcTarget;
     mIsMain   = true;
     InputFieldHelper.Instance.HideMenu();
     mOnEndAction = ( ScriptGame s) => {
         // UI
         InputFieldHelper.Instance.HidePopupAction();
         InputFieldHelper.Instance.HideChatBottom();
         InputFieldHelper.Instance.ShowMenu();
         AutoTileMap_Editor.Instance.ResetMainCamWithAni(() => {
             onEndAction(s);
         });
     };
     ResetValueFlag();
     StartScope();
 }
Ejemplo n.º 2
0
 public void StartNormal(int idxMap, int idxScript, ScriptGui.ScriptYaml script, GameObject npcTarget, OnEndAction onEndAction = null)
 {
     // if(mIsRun){
     //  Debug.Log("Can't start action when running");
     //  return;
     // }
     Debug.Log("Start Normal Action " + Key + " ,idxScript: " + idxScript);
     IdxMap       = idxMap;
     IdxScript    = idxScript;
     Script       = script;
     OBJTarget    = npcTarget;
     mIsMain      = false;
     mOnEndAction = onEndAction;
     mActionWait  = null;
     ResetValueFlag();
     StartScope();
 }
Ejemplo n.º 3
0
 public Flags MapFlag(string hash, ScriptGui.ScriptYaml script)
 {
     if (_Flags == null)
     {
         _Flags = new Dictionary <string, Flags>();
     }
     if (!_Flags.ContainsKey(hash))
     {
         if (script.FlagsYaml != null)
         {
             _Flags[hash] = script.FlagsYaml.Clone();
         }
         else
         {
             _Flags[hash] = null;
         }
     }
     return(_Flags[hash]);
 }
Ejemplo n.º 4
0
 public ScriptGui.ScriptYaml GetOnCache(int triggerRef)
 {
     if (triggerRef < 0 || triggerRef >= MapData.ScriptData.Count)
     {
         return(null);
     }
     ScriptGui.ScriptYaml r = null;
     if (_cacheYaml == null)
     {
         _cacheYaml = new Dictionary <int, ScriptGui.ScriptYaml>();
     }
     if (_cacheYaml.ContainsKey(triggerRef))
     {
         r = _cacheYaml[triggerRef];
     }
     else
     {
         try{
             var scriptData = MapData.ScriptData;
             var script     = scriptData[triggerRef];
             // var deserializer = new DeserializerBuilder()
             // .WithNamingConvention(new CamelCaseNamingConvention())
             // .IgnoreUnmatchedProperties()
             // .Build();
             // var s = deserializer.Deserialize<ScriptGui.ScriptYaml>(script.YamlData);
             // s.IdToObj();
             // r = s;
             script.ScriptYaml.IdToObj();
             r = script.ScriptYaml;
             // if(script.YamlData != null){
             //  r = (ScriptGui.ScriptYaml)UtilsAON.DeepCopy(script.ScriptYaml);
             // }
         }
         catch {
         }
         if (r != null)
         {
             _cacheYaml.Add(triggerRef, r);
         }
     }
     return(r);
 }
Ejemplo n.º 5
0
 public Flags ScriptFlag(TriggerDetail triggerDetal, ScriptGui.ScriptYaml script)
 {
     return(MapDataAt(triggerDetal.refMap).MapFlag(triggerDetal.Hash, script));
 }