Files
ichni_Creator_Studio/Assets/Scripts/EditorGame/Grids/GridController.cs
2025-04-04 15:29:03 -04:00

50 lines
1.7 KiB
C#

using System;
using System.Collections;
using System.Collections.Generic;
using Ichni.RhythmGame;
using Ichni.RhythmGame.Beatmap;
using UnityEngine;
namespace Ichni.Editor
{
public class GridController : MonoBehaviour, IBaseElement
{
public BaseElement_BM matchedBM { get; set; }
public EditorGrid yPlaneGrid;
public EditorGrid xPlaneGrid;
public EditorGrid zPlaneGrid;
public bool yPlaneEnabled;
public bool xPlaneEnabled;
public bool zPlaneEnabled;
private void Start()
{
yPlaneEnabled = true;
xPlaneEnabled = false;
zPlaneEnabled = false;
RefreshPlanes();
}
public void SetUpInspector()
{
IHaveInspection inspector = EditorManager.instance.uiManager.inspector;
var container = inspector.GenerateContainer("Grid Controller");
var yPlaneToggle = inspector.GenerateToggle(this, container, "Y Plane", nameof(yPlaneEnabled));
yPlaneToggle.AddListenerFunction(RefreshPlanes);
var xPlaneToggle = inspector.GenerateToggle(this, container, "X Plane", nameof(xPlaneEnabled));
xPlaneToggle.AddListenerFunction(RefreshPlanes);
var zPlaneToggle = inspector.GenerateToggle(this, container, "Z Plane", nameof(zPlaneEnabled));
zPlaneToggle.AddListenerFunction(RefreshPlanes);
}
private void RefreshPlanes()
{
yPlaneGrid.gameObject.SetActive(yPlaneEnabled);
xPlaneGrid.gameObject.SetActive(xPlaneEnabled);
zPlaneGrid.gameObject.SetActive(zPlaneEnabled);
}
}
}