46 lines
1.2 KiB
C#
46 lines
1.2 KiB
C#
using UnityEngine;
|
|
using UnityEngine.SceneManagement; // Добавлено для загрузки сцены
|
|
|
|
public class UIButton : MonoBehaviour
|
|
{
|
|
[SerializeField] private GameObject targetObject;
|
|
[SerializeField] private string targetMessage;
|
|
[SerializeField] private string sceneName; // Название сцены для загрузки
|
|
public Color highlightColor = Color.cyan;
|
|
|
|
public void OnMouseOver()
|
|
{
|
|
SpriteRenderer sprite = GetComponent<SpriteRenderer>();
|
|
if (sprite != null)
|
|
{
|
|
sprite.color = highlightColor;
|
|
}
|
|
}
|
|
|
|
public void OnMouseExit()
|
|
{
|
|
SpriteRenderer sprite = GetComponent<SpriteRenderer>();
|
|
if (sprite != null)
|
|
{
|
|
sprite.color = Color.white;
|
|
}
|
|
}
|
|
|
|
public void OnMouseDown()
|
|
{
|
|
transform.localScale = new Vector3(1.1f, 1.1f, 1.1f);
|
|
}
|
|
|
|
public void OnMouseUp()
|
|
{
|
|
transform.localScale = Vector3.one;
|
|
if (targetObject != null)
|
|
{
|
|
targetObject.SendMessage(targetMessage);
|
|
}
|
|
if (!string.IsNullOrEmpty(sceneName))
|
|
{
|
|
SceneManager.LoadScene(sceneName); // Загрузка сцены
|
|
}
|
|
}
|
|
} |