public override void OnInspectorGUI() { DrawObject(Target); EditorGUILayout.LabelField("Resources"); EditorGUI.indentLevel++; foreach (CGM.Resource res in resources) { EditorGUILayout.BeginHorizontal(); if (res.CGME_Resource == null) { EditorGUILayout.LabelField("Resource Null"); continue; } else { EditorGUILayout.LabelField(res.CGME_Resource.CGType); } if (res.Resource_type == CGM.ResourceType.Number) { CGME.ResourceNumber cgres = (CGME.ResourceNumber)res.CGME_Resource; cgres.Value = EditorGUILayout.IntField(cgres.Value); //cgres.SetValue(EditorGUILayout.IntField (cgres.Value)); } else if (res.Resource_type == CGM.ResourceType.Text) { CGME.ResourceText cgres = (CGME.ResourceText)res.CGME_Resource; cgres.Value = EditorGUILayout.TextField(cgres.Value); } else if (res.Resource_type == CGM.ResourceType.Bool) { CGME.ResourceBool cgres = (CGME.ResourceBool)res.CGME_Resource; cgres.Value = EditorGUILayout.Toggle(cgres.Value); } else if (res.Resource_type == CGM.ResourceType.Action) { CGME.ResourceAction cgres = (CGME.ResourceAction)res.CGME_Resource; //cgres. = EditorGUILayout.TextArea.Field (cgres.Value); //EditorGUILayout.LabelField (library.GetAction(cgres.ActionIndex).name); } EditorGUILayout.EndHorizontal(); } EditorGUI.indentLevel--; //EditorGUILayout.LabelField("Level", myTarget.Level.ToString()); }
void Start() { if (CGME_resource is CGME.ResourceAction) { CGME.ResourceAction resource_action = (CGME.ResourceAction)CGME_resource; resource_action.Value = new CGME.ActionGroup(); //CGME.Action action = FindObjectOfType<GameManager>().GetChildrenActions()[resource_action.ActionIndex].CGME_ActionRoot; CGME.Action action = FindObjectOfType <GameManager>().Actions[resource_action.ActionIndex].CGME_ActionRoot; //Debug.Log ("Getting " + action.CGType + " index is " + resource_action.ActionIndex); resource_action.Value.CopyFrom(action); ; } CGME_resource.AddListener(this); }
//CGM.Library Target; public bool DisplayResource(CGME.Resource res) { EditorGUILayout.BeginHorizontal(); { if (res is CGME.ResourceNumber) { res.CGType = EditorGUILayout.TextField("Number Resource", res.CGType); } else if (res is CGME.ResourceText) { res.CGType = EditorGUILayout.TextField("Text Resource", res.CGType); } else if (res is CGME.ResourceBool) { res.CGType = EditorGUILayout.TextField("Boolean Resource", res.CGType); } else if (res is CGME.ResourceAction) { CGME.ResourceAction res_action = res as CGME.ResourceAction; int diff = res_action.ActionIndex; res_action.ActionIndex = EditorGUILayout.Popup( "Action", res_action.ActionIndex, action_string); if (res_action.ActionIndex != diff) { res_action.Value = new CGME.ActionGroup(); res_action.Value.CopyFrom(actions[res_action.ActionIndex].CGME_ActionRoot); res_action.CGType = res_action.Value.CGType; Debug.Log("Copying " + actions[res_action.ActionIndex].CGME_ActionRoot.CGType); } } if (GUILayout.Button("Delete " + res.CGType)) { Target.CGME_Lib.resourceLibrary.Remove(res); return(true); } } EditorGUILayout.EndHorizontal(); return(false); }
void DrawResourceAction() { CGME.ResourceAction cgres = (CGME.ResourceAction)Target.CGME_Resource; //Target.Action_Object = (CGM.Action)EditorGUILayout.ObjectField("Action",Target.Action_Object ,typeof(CGM.Action),true); //cgres.Phase = EditorGUILayout.Popup("Phase",cgres.Phase,phase_names.ToArray()); int phase_index = GetPhaseIndex(); phase_index = EditorGUILayout.Popup("Phase", phase_index, phase_names.ToArray()); cgres.Phase = SetPhaseIndex(phase_index); //EditorGUILayout.BeginHorizontal(); EditorGUILayout.BeginHorizontal(); Target.RestrictParent = EditorGUILayout.Toggle("Restrict Parent", Target.RestrictParent); if (Target.RestrictParent) { Target.ParentType = EditorGUILayout.TextField("Parent Type", Target.ParentType); } EditorGUILayout.EndHorizontal(); Target.Trigger = (CGM.InterfaceEvent)EditorGUILayout.EnumPopup("Trigger", Target.Trigger); }
void RunAction(CGME.ResourceAction resact, CGME.Actor source) { resact.RunAction(source, source); Debug.Log("Running " + resact.Value.CGType); }