111 lines
2.9 KiB
C#
111 lines
2.9 KiB
C#
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
|
|
public class SelectSetButton : MonoBehaviour
|
|
{
|
|
public int slotID;
|
|
|
|
public Text setNameText;
|
|
|
|
public Image rodImage;
|
|
|
|
public Image baitImage;
|
|
|
|
public Image emptyImage;
|
|
|
|
public Image damageImage;
|
|
|
|
public Color setEmptyColor;
|
|
|
|
public Color setNormalColor;
|
|
|
|
public Color currentSetColor;
|
|
|
|
private QuickMenu quickMenu;
|
|
|
|
private void Start()
|
|
{
|
|
quickMenu = Object.FindObjectOfType<QuickMenu>();
|
|
}
|
|
|
|
private void Update()
|
|
{
|
|
}
|
|
|
|
private void OnEnable()
|
|
{
|
|
setNameText.text = LanguageManager.Instance.GetText("SET_EQUIPMENT").ToUpper() + " " + (slotID + 1);
|
|
GameManager.PlayerData.CRods rod = Singleton<SaveDataManager>.Instance.GetCurrentPlayerData().PlayerSlotsEquip[slotID].rod;
|
|
GameManager.PlayerData.CBaits bait = Singleton<SaveDataManager>.Instance.GetCurrentPlayerData().PlayerSlotsEquip[slotID].bait;
|
|
if (rod.isNull)
|
|
{
|
|
rodImage.enabled = false;
|
|
baitImage.enabled = false;
|
|
damageImage.enabled = false;
|
|
emptyImage.enabled = true;
|
|
GetComponent<Image>().color = setEmptyColor;
|
|
return;
|
|
}
|
|
emptyImage.enabled = false;
|
|
rodImage.enabled = true;
|
|
baitImage.enabled = true;
|
|
damageImage.enabled = false;
|
|
GetComponent<Image>().color = setNormalColor;
|
|
if (!rod.isNull)
|
|
{
|
|
rodImage.sprite = GameManager.Instance.gameRods[GameManager.Instance.GetIndexByItemId(GameManager.ItemType.Rod, rod.ID)].GetIconImage();
|
|
}
|
|
else
|
|
{
|
|
rodImage.enabled = false;
|
|
}
|
|
if (!bait.isNull)
|
|
{
|
|
baitImage.sprite = GameManager.Instance.gameBaits[GameManager.Instance.GetIndexByItemId(GameManager.ItemType.Bait, bait.ID)].GetIconImage();
|
|
}
|
|
else
|
|
{
|
|
baitImage.enabled = false;
|
|
}
|
|
if ((bool)FScriptsHandler.Instance.m_PlayerMain.currentRod && FScriptsHandler.Instance.m_PlayerMain.currentRod.indexOfslot == slotID)
|
|
{
|
|
GetComponent<Image>().color = currentSetColor;
|
|
}
|
|
int num = Singleton<SaveDataManager>.Instance.GetCurrentPlayerData().PlayerSlotsEquip[slotID].CheckSlotAndRod();
|
|
if (num != -1)
|
|
{
|
|
GetComponent<Button>().interactable = false;
|
|
if (num == 0 || num == 1)
|
|
{
|
|
damageImage.enabled = true;
|
|
}
|
|
}
|
|
else if (!TutorialManager.Instance)
|
|
{
|
|
GetComponent<Button>().interactable = true;
|
|
}
|
|
}
|
|
|
|
public void SelectSet()
|
|
{
|
|
int num = Singleton<SaveDataManager>.Instance.GetCurrentPlayerData().PlayerSlotsEquip[slotID].CheckSlotAndRod();
|
|
if (num != -1)
|
|
{
|
|
if (num == 2)
|
|
{
|
|
GameManager.Instance.ShowMessagePopup(LanguageManager.Instance.GetText("SET_EMPTY"), FScriptsHandler.Instance.m_Canvas.transform);
|
|
}
|
|
if (num == 0 || num == 1)
|
|
{
|
|
GameManager.Instance.ShowMessagePopup(LanguageManager.Instance.GetText("SET_DAMAGED"), FScriptsHandler.Instance.m_Canvas.transform);
|
|
}
|
|
}
|
|
else if (!FScriptsHandler.Instance.m_PlayerMain.currentRod || !FScriptsHandler.Instance.m_PlayerMain.currentRod.CheckIsInUse())
|
|
{
|
|
FScriptsHandler.Instance.m_InventoryManager.nextShowSlotIndex = slotID;
|
|
quickMenu.ShowHide(isHide: true);
|
|
quickMenu.PlayClickSound();
|
|
}
|
|
}
|
|
}
|