[MenuItem("Tools/導出關卡數據到客戶端工程")]
static void init()
{
EditorWindow window = GetWindow(typeof(uteCopyStageLevelConfig));
window.position = new Rect(500, 300, 300, 400);
windowType = WindowType.StageLevelM2C;
display = CopyType.All;
window.Show();
}
private void OnGUI()
{
display = (CopyType)EditorGUI.EnumPopup(
new Rect(3, 10, position.width - 6, 15),
"選擇導出數據類型:",
display);
switch (display)
{
case CopyType.One:
EditorGUI.LabelField(new Rect(0, 50, position.width, 15),
"導出方式:",
"單個關卡數據導出");
GUI.Label(new Rect(0, 90, 150, 15), "輸入要導出的關卡ID數:");
idStr = GUI.TextField(new Rect(150, 90, 50, 15), idStr, 15);
errorStr = "";
break;
case CopyType.All:
EditorGUI.LabelField(new Rect(0, 50, position.width, 15),
"導出方式:",
"所有關卡數據導出");
errorStr = "";
break;
default:
Debug.LogError("Unrecognized Option");
break;
}
if (GUI.Button(new Rect(3, position.height - 25, position.width - 6, 24), "確定導出"))
{
switch (display)
{
case CopyType.One:
if (int.TryParse(idStr, out ID))
{
errorStr = "";
Copy(ID);
this.Close();
}
else
{
errorStr = "輸入的ID錯誤";
}
break;
case CopyType.All:
Copy();
this.Close();
break;
}
}
if (!errorStr.Equals(""))
{
GUIStyle titleStyle2 = new GUIStyle();
titleStyle2.normal.textColor = Color.red;
GUI.Label(new Rect(100, 150, position.width, 25), errorStr, titleStyle2);
}
}
效果圖: