Files
UltimateFishing2020/Assets/Scripts/Assembly-CSharp/ChristmasSockObject.cs
2026-03-04 10:03:45 +08:00

61 lines
1.4 KiB
C#

using UnityEngine;
public class ChristmasSockObject : MonoBehaviour
{
[SerializeField]
private int sockIndex;
[SerializeField]
private GameObject sockGetShowKeyPrefab;
private GameObject currentGetShowKeyInfo;
private void Start()
{
Invoke("LoadSocks", 0.1f);
}
private void LoadSocks()
{
if (Singleton<SaveDataManager>.Instance.GetCurrentPlayerData().ChristmasData.sockCollectId.Contains(sockIndex))
{
Object.Destroy(base.gameObject);
}
}
private void Update()
{
if ((bool)currentGetShowKeyInfo && Input.GetKeyDown(KeyCode.E))
{
GetSock();
}
}
private void OnTriggerEnter(Collider other)
{
if (other.gameObject.layer == LayerMask.NameToLayer("Player") && !currentGetShowKeyInfo)
{
currentGetShowKeyInfo = Object.Instantiate(sockGetShowKeyPrefab, FScriptsHandler.Instance.m_Canvas.transform);
}
}
private void OnTriggerExit(Collider other)
{
if (other.gameObject.layer == LayerMask.NameToLayer("Player") && (bool)currentGetShowKeyInfo)
{
Object.Destroy(currentGetShowKeyInfo.gameObject);
currentGetShowKeyInfo = null;
}
}
private void GetSock()
{
ChristmasEventManager christmasEventManager = Object.FindObjectOfType<ChristmasEventManager>();
christmasEventManager.PlayGetSockSound();
christmasEventManager.AddSock(sockIndex);
christmasEventManager.RefreshData();
Object.Destroy(currentGetShowKeyInfo.gameObject);
Object.Destroy(base.gameObject);
}
}