protected override void OnInspectorDefaultGUI() { base.OnInspectorDefaultGUI(); GUILayout.BeginHorizontal(); GUILayout.Label("Evaluation Type", GUILayout.Width(100)); if (GUILayout.Button(Target.EvaluationType, EditorGlobalTools.Styles.MiniPopup)) { GenericMenu gm = new GenericMenu(); List <Type> types = ReflectionToolkit.GetTypesInRunTimeAssemblies(type => { return(type.IsSubclassOf(typeof(AStarEvaluation))); }); for (int i = 0; i < types.Count; i++) { int j = i; gm.AddItem(new GUIContent(types[j].FullName), Target.EvaluationType == types[j].FullName, () => { Undo.RecordObject(target, "Set Evaluation"); Target.EvaluationType = types[j].FullName; HasChanged(); }); } gm.ShowAsContext(); } GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("Size", GUILayout.Width(100)); Vector2Field(Target.Size, out Target.Size, ""); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("Node Radius", GUILayout.Width(100)); FloatField(Target.NodeRadius, out Target.NodeRadius, ""); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("Ignore Oblique", GUILayout.Width(100)); Toggle(Target.IsIgnoreOblique, out Target.IsIgnoreOblique, ""); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("Auto Generate", GUILayout.Width(100)); Toggle(Target.IsAutoGenerate, out Target.IsAutoGenerate, ""); GUILayout.EndHorizontal(); }
protected override void OnInspectorDefaultGUI() { base.OnInspectorDefaultGUI(); PropertyField("Picture", "超武图像"); PropertyField("ExplodePicture", "爆炸特效图像"); PropertyField("Attack", "攻击力"); PropertyField("Speed", "飞行力"); PropertyField("CoolingTime", "冷却时间"); PropertyField("ShootSound", "射击音效"); PropertyField("ExplodeSound", "爆炸音效"); GUILayout.BeginHorizontal(); GUILayout.Label("描述信息", GUILayout.Width(100)); Target.Info = EditorGUILayout.TextArea(Target.Info); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("携带BUFF类型", GUILayout.Width(100)); if (GUILayout.Button(Target.BuffType, EditorGlobalTools.Styles.MiniPopup)) { GenericMenu gm = new GenericMenu(); List <Type> types = ReflectionToolkit.GetTypesInRunTimeAssemblies(); for (int i = 0; i < types.Count; i++) { // if (types[i].IsSubclassOf(typeof(Buff))) // { // Type type = types[i]; // gm.AddItem(new GUIContent(type.FullName), type.FullName == Target.BuffType, () => // { // Target.BuffType = type.FullName; // HasChanged(); // }); // } } gm.ShowAsContext(); } GUILayout.EndHorizontal(); if (GUI.changed) { HasChanged(); } }
protected override void OnInspectorDefaultGUI() { base.OnInspectorDefaultGUI(); PropertyField("Picture", "坦克图像"); PropertyField("ExplodePicture", "爆炸特效图像"); PropertyField("HP", "生命力"); PropertyField("Speed", "行动力"); PropertyField("Info", "介绍"); PropertyField("Weapon", "常规主炮"); PropertyField("SuperWeapon", "超级武器"); PropertyField("Shield", "能量护盾"); PropertyField("ExplodeSound", "爆炸音效"); GUILayout.BeginHorizontal(); GUILayout.Label("大脑(AI控制时)", GUILayout.Width(100)); if (GUILayout.Button(Target.AIController, EditorGlobalTools.Styles.MiniPopup)) { GenericMenu gm = new GenericMenu(); List <Type> types = ReflectionToolkit.GetTypesInRunTimeAssemblies(); for (int i = 0; i < types.Count; i++) { if (types[i].IsSubclassOf(typeof(TankController)) && types[i] != typeof(PlayerController)) { Type type = types[i]; gm.AddItem(new GUIContent(type.FullName), type.FullName == Target.AIController, () => { Target.AIController = type.FullName; HasChanged(); }); } } gm.ShowAsContext(); } GUILayout.EndHorizontal(); }
protected override void OnInspectorDefaultGUI() { base.OnInspectorDefaultGUI(); GUILayout.BeginHorizontal(); EditorGUILayout.HelpBox("XHotfix manager, this module encapsulated using XLua!", MessageType.Info); GUILayout.EndHorizontal(); GUILayout.BeginVertical("box"); #region XHotfixProperty GUILayout.BeginHorizontal(); GUILayout.Label("Loader Type", GUILayout.Width(100)); if (GUILayout.Button(Target.XHotfixLoaderType, EditorGlobalTools.Styles.MiniPopup)) { GenericMenu gm = new GenericMenu(); List <Type> types = ReflectionToolkit.GetTypesInRunTimeAssemblies(type => { return(type.IsSubclassOf(typeof(XHotfixLoaderBase))); }); for (int i = 0; i < types.Count; i++) { int j = i; gm.AddItem(new GUIContent(types[j].FullName), Target.XHotfixLoaderType == types[j].FullName, () => { Undo.RecordObject(target, "Set XHotfixLoader"); Target.XHotfixLoaderType = types[j].FullName; HasChanged(); }); } gm.ShowAsContext(); } GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("Auto StartUp", GUILayout.Width(100)); Toggle(Target.IsAutoStartUp, out Target.IsAutoStartUp, ""); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("Tick Interval", GUILayout.Width(100)); FloatField(Target.TickInterval, out Target.TickInterval, ""); GUILayout.EndHorizontal(); #endregion GUILayout.Space(10); #region XHotfixAssetBundle GUILayout.BeginHorizontal(); GUILayout.Label("XHotfixCode AssetBundleName"); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); TextField(Target.HotfixCodeAssetBundleName, out Target.HotfixCodeAssetBundleName, ""); GUI.enabled = _hotfixIsCreated; if (GUILayout.Button("Mark All", EditorStyles.miniButton, GUILayout.Width(60))) { MarkLuaFolder(new DirectoryInfo(Application.dataPath + Target.HotfixCodeAssetsPath.Replace("Assets", "") + "/")); } GUI.enabled = true; GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("XHotfixCode AssetsPath"); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); TextField(Target.HotfixCodeAssetsPath, out Target.HotfixCodeAssetsPath, ""); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("XHotfixCode Main"); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); TextField(Target.HotfixCodeMain, out Target.HotfixCodeMain, ""); GUILayout.EndHorizontal(); #endregion GUILayout.EndVertical(); #region XHotfixWizard if (_hotfixIsCreated) { GUILayout.BeginHorizontal(); EditorGUILayout.HelpBox("XHotfix environment is created!", MessageType.Info); GUILayout.EndHorizontal(); } else { GUILayout.BeginHorizontal(); if (GUILayout.Button("Create XHotfix Environment", "LargeButton")) { CreateXHotfixEnvironment(); _hotfixIsCreated = true; } GUILayout.EndHorizontal(); } #endregion }