Files
tianrunCRM/Assets/CoolapeFrame/Editor/Inspectors/CLBaseLuaInspector.cs

62 lines
1.7 KiB
C#
Raw Normal View History

2020-07-04 14:41:25 +08:00
using UnityEngine;
using System.Collections;
using UnityEditor;
using System.IO;
using Coolape;
[CanEditMultipleObjects]
[CustomEditor (typeof(CLBaseLua), true)]
public class CLBaseLuaInspector :Editor
{
private CLBaseLua instance;
Object luaAsset = null;
public override void OnInspectorGUI ()
{
instance = target as CLBaseLua;
DrawDefaultInspector ();
if (instance != null) {
init ();
drawLuaInfor();
}
}
public void drawLuaInfor()
{
instance = target as CLBaseLua;
ECLEditorUtl.BeginContents();
{
GUILayout.BeginHorizontal();
{
EditorGUILayout.LabelField("Lua Text", GUILayout.Width(100));
luaAsset = EditorGUILayout.ObjectField(luaAsset, typeof(UnityEngine.Object), GUILayout.Width(125));
}
GUILayout.EndHorizontal();
string luaPath = AssetDatabase.GetAssetPath(luaAsset);
// if(!string.IsNullOrEmpty(luaPath)) {
instance.luaPath = Utl.filterPath(luaPath);
// }
EditorUtility.SetDirty(instance);
GUI.contentColor = Color.yellow;
EditorGUILayout.LabelField("注意绑定的lua要求返回luatable");
GUI.contentColor = Color.white;
}
ECLEditorUtl.EndContents();
}
bool isFinishInit = false;
void init ()
{
if (!isFinishInit || luaAsset == null) {
isFinishInit = true;
if (!string.IsNullOrEmpty (instance.luaPath)) {
string tmpPath = instance.luaPath.Replace ("/upgradeRes", "/upgradeRes4Dev");
luaAsset = AssetDatabase.LoadMainAssetAtPath ("Assets/" + tmpPath);
}
}
}
}