Files
FueraDeEscala/Assets/Game Kit Controller/Scripts/Combat System/Melee Combat System/meleeUISystem.cs
Robii Aragon fd87a6ffd5 add ckg
plantilla base para movimiento básico
2026-02-05 05:07:55 -08:00

86 lines
1.8 KiB
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.Events;
public class meleeUISystem : MonoBehaviour
{
[Header ("Main Settings")]
[Space]
public bool meleeUIEnabled = true;
[Space]
[Header ("Debug")]
[Space]
public bool meleeUIActive;
public string currentMeleeWeaponName;
[Space]
[Header ("UI Components")]
[Space]
public Text meleeWeaponText;
public RawImage meleeWeaponImage;
public GameObject meleePanelGameObject;
[Space]
[Header ("Events Settings")]
[Space]
public bool useEventsOnMeleePanelStateChange;
public UnityEvent eventOnEnableMeleePanel;
public UnityEvent eventOnDisableMeleePanel;
public void setCurrentMeleeWeaponName (string newName)
{
currentMeleeWeaponName = newName;
meleeWeaponText.text = GKC_Utils.getInteractionObjectsLocalizationManagerLocalizedText (currentMeleeWeaponName);
}
public void setCurrrentMeleeWeaponIcon (Texture newIcon)
{
meleeWeaponImage.texture = newIcon;
}
public void enableOrDisableMeleeUI (bool state)
{
if (!meleeUIEnabled) {
return;
}
if (meleeUIActive == state) {
return;
}
meleeUIActive = state;
if (meleeUIActive) {
} else {
}
if (meleePanelGameObject.activeSelf != meleeUIActive) {
meleePanelGameObject.SetActive (meleeUIActive);
}
checkEventsOnMeleePanelStateChange (meleeUIActive);
}
void checkEventsOnMeleePanelStateChange (bool state)
{
if (useEventsOnMeleePanelStateChange) {
if (state) {
eventOnEnableMeleePanel.Invoke ();
} else {
eventOnDisableMeleePanel.Invoke ();
}
}
}
}