fix ui updates

This commit is contained in:
2022-11-01 07:36:17 +01:00
parent ddb7ce73c9
commit 484244c249

View File

@@ -6,6 +6,8 @@ namespace Escape_Room_Engine.Engine.Scripts.Editor
{
public class EngineEditor : EditorWindow
{
private Button _generateRoomButton;
[MenuItem("Window/Engine/Engine Editor")]
public static void ShowEditor()
{
@@ -15,20 +17,29 @@ namespace Escape_Room_Engine.Engine.Scripts.Editor
public void CreateGUI()
{
var generateRoom = new Button(GenerateRoom)
{
text = Engine.DefaultEngine.NumberOfRooms == 0 ? "Generate Room" : "Regenerate Room"
};
generateRoom.SetEnabled(EditorApplication.isPlaying);
_generateRoomButton = new Button(GenerateRoom);
rootVisualElement.Add(generateRoom);
rootVisualElement.Add(_generateRoomButton);
EditorApplication.playModeStateChanged += _ => UpdateUI();
UpdateUI();
}
private void GenerateRoom()
{
Debug.Log("Generating new room...");
Engine.DefaultEngine.DisposeOldestRoom();
Engine.DefaultEngine.GenerateRoom();
if (EditorApplication.isPlaying)
{
Debug.Log("Generating new room...");
Engine.DefaultEngine.DisposeOldestRoom();
Engine.DefaultEngine.GenerateRoom();
UpdateUI();
}
}
private void UpdateUI()
{
_generateRoomButton.SetEnabled(EditorApplication.isPlaying);
_generateRoomButton.text = Engine.DefaultEngine.NumberOfRooms == 0 ? "Generate Room" : "Regenerate Room";
}
}
}