예제 #1
0
        //---------------------------------------------------------------------
        // Load (static)
        //---------------------------------------------------------------------
        public static GolemEditorData Load(Golem golem)
        {
            // // Only load prefab instances
            // bool isPrefab = PrefabUtility.GetPrefabType(entity) == PrefabType.PrefabInstance;
            // if (!isPrefab)
            // {
            //     return null;
            // }

            GolemEditorAsset editorAsset = golem.EditorAsset as GolemEditorAsset;

            if (editorAsset == null)
            {
                // editorAsset = Helper.FindAssetInPrefab<EntityEditorAsset>(entity);
                editorAsset = ScriptableObject.CreateInstance <GolemEditorAsset>();
                Debug.Assert(editorAsset != null);
            }
            editorAsset.hideFlags = HideFlags.DontSaveInBuild;

            var editorData = editorAsset.EditorData;

            if (editorData == null)
            {
                editorData = new GolemEditorData();
            }
            editorData.Golem       = golem;
            editorData.EditorAsset = editorAsset;
            golem.EditorAsset      = editorAsset;

            golem.Load();
            editorData.Load();

            return(editorData);
        }
예제 #2
0
 public virtual void OnExit(Golem golem)
 {
 }
예제 #3
0
 //-----------------------------------------------------
 // OnEnable
 //-----------------------------------------------------
 private void OnEnable()
 {
     _golem    = target as Golem;
     _editable = GolemEditorData.Load(_golem);
 }
예제 #4
0
 public virtual void OnUpdate(Golem golem)
 {
 }
예제 #5
0
 public virtual void OnEnter(Golem golem)
 {
 }
예제 #6
0
 public virtual void Acquire(Golem golem)
 {
 }
예제 #7
0
 public virtual void Update(Golem golem, bool dirty, ref bool running)
 {
 }
예제 #8
0
 public virtual void Acquire(Golem golem, ref bool running)
 {
 }