2026-05-06 15:07:56 +02:00

54 lines
1.0 KiB
C#

using UnityEngine;
using System.Collections;
namespace UMA.PoseTools
{
public class ActiveObjectSwitcher : MonoBehaviour
{
public GameObject[] objects = new GameObject[0];
public GameObject activeObj = null;
private int selected = 0;
private string[] names = null;
// Position variables
public int xPos = 25;
public int yPos = 25;
// Use this for initialization
void Start()
{
if ((activeObj == null) && (objects.Length > 0))
{
activeObj = objects[0];
}
selected = 0;
names = new string[objects.Length];
for (int i = 0; i < objects.Length; i++)
{
names[i] = objects[i].name;
if (activeObj == objects[i])
{
selected = i;
}
}
}
void OnGUI()
{
GUILayout.BeginArea(new Rect(xPos, yPos, 80, 400));
int newSelected = GUILayout.SelectionGrid(selected, names, 1);
if (newSelected != selected)
{
activeObj.SetActive(false);
selected = newSelected;
activeObj = objects[newSelected];
activeObj.SetActive(true);
}
GUILayout.EndArea();
}
}
}