public void OnBeforeSerialize()
 {
     confsToSerialize = new List <ActuatorConfiguration>();
     foreach (AbstractConfiguration conf in actuatorsConfs)
     {
         //Debug.Log("before serialization " + ((ActuatorConfiguration)conf));
         ActuatorConfiguration actuatorConf = (ActuatorConfiguration)conf;
         confsToSerialize.Add(actuatorConf);
     }
 }
Пример #2
0
        internal override void onDeleting(AbstractConfiguration c)
        {
            EditorUtility.SetDirty((ActuatorsManager)manager);
            AssetDatabase.SaveAssets();
            ActuatorConfiguration actuatorConf = (ActuatorConfiguration)c;

            if (!(AssetDatabase.LoadAssetAtPath("Assets/Resources/Actuators/" + actuatorConf.configurationName + ".asset", typeof(ActuatorConfiguration)) is null))
            {
                AssetDatabase.DeleteAsset("Assets/Resources/Actuators/" + actuatorConf.configurationName + ".asset");
            }
        }
Пример #3
0
        public SimpleActuator(ActuatorConfiguration s)
        {
            actuatorName = s.configurationName;
            properties   = new List <string>();
            gO           = ReflectionExecutor.GetGameObjectWithName(s.gOName);
            // MyDebugger.MyDebug(s.gOName);
            // MyDebugger.MyDebug(gO);
            gOName = s.gOName;
            cleanDataStructures();
            foreach (string st in s.properties)
            {
                if (!properties.Contains(st))
                {
                    properties.Add(st);
                }
            }

            populateDataStructures();
        }
        public SimpleActuator(ActuatorConfiguration s)
        {
            actuatorName = s.configurationName;
            properties   = new List <string>();
            ReflectionExecutor re = ScriptableObject.CreateInstance <ReflectionExecutor>();

            gO = re.GetGameObjectWithName(s.gOName);
            // Debug.Log(s.gOName);
            // Debug.Log(gO);
            gOName = s.gOName;
            cleanDataStructures();
            foreach (string st in s.properties)
            {
                if (!properties.Contains(st))
                {
                    properties.Add(st);
                }
            }

            populateDataStructures();
        }
Пример #5
0
        internal override string onSaving()
        {
            if (!Directory.Exists("Assets/Resources/Actuators"))
            {
                Directory.CreateDirectory("Assets/Resources/Actuators");
            }

            if (AssetDatabase.LoadAssetAtPath("Assets/Resources/ActuatorsManager.asset", typeof(ActuatorsManager)) == null)
            {
                AssetDatabase.CreateAsset((ActuatorsManager)manager, "Assets/Resources/ActuatorsManager.asset");
            }
            else
            {
                EditorUtility.SetDirty((ActuatorsManager)manager);
                foreach (AbstractConfiguration conf in ((ActuatorsManager)manager).getConfigurations())
                {
                    ActuatorConfiguration actuatorConf = (ActuatorConfiguration)conf;
                    if (AssetDatabase.LoadAssetAtPath("Assets/Resources/Actuators/" + actuatorConf.configurationName + ".asset", typeof(ActuatorConfiguration)) == null)
                    {
                        AssetDatabase.CreateAsset(actuatorConf, "Assets/Resources/Actuators/" + actuatorConf.configurationName + ".asset");
                    }
                    else
                    {
                        EditorUtility.SetDirty(actuatorConf);
                    }
                }
                AssetDatabase.SaveAssets();
            }

            /* ConfigurationPopup popup = new ConfigurationPopup();
             * Vector2 pos = new Vector2((this.position.xMax + this.position.xMin) / 2, (this.position.yMax + this.position.yMin) / 2);
             * Vector2 dim = new Vector2(100, 100);
             * Rect popupRect = new Rect(pos,dim);
             * popup.window = this;
             * PopupWindow.Show(popupRect,popup);
             * popup.wait();
             * Debug.Log("Configuration name " + configurationName);
             * return configurationName;*/
            return("");
        }