UI HUGE UPDATE
This commit is contained in:
@@ -2,5 +2,90 @@ using UnityEngine;
|
||||
|
||||
public class uHonor : MonoBehaviour
|
||||
{
|
||||
|
||||
public enum HonorPrefabType
|
||||
{
|
||||
Normal,
|
||||
Bronze,
|
||||
Silver,
|
||||
Gold
|
||||
}
|
||||
|
||||
[Header("Honor Prefabs")]
|
||||
[SerializeField] private GameObject normalHonorPrefab;
|
||||
[SerializeField] private GameObject bronzeHonorPrefab;
|
||||
[SerializeField] private GameObject silverHonorPrefab;
|
||||
[SerializeField] private GameObject goldHonorPrefab;
|
||||
|
||||
[Header("Honor Parent")]
|
||||
[SerializeField] private Transform honorParent;
|
||||
|
||||
public Transform HonorParent => honorParent;
|
||||
|
||||
public void ClearHonors()
|
||||
{
|
||||
if (honorParent == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
for (int i = honorParent.childCount - 1; i >= 0; i--)
|
||||
{
|
||||
Transform child = honorParent.GetChild(i);
|
||||
if (child != null)
|
||||
{
|
||||
Destroy(child.gameObject);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public GameObject SpawnHonor(HonorPrefabType prefabType)
|
||||
{
|
||||
if (honorParent == null)
|
||||
{
|
||||
Debug.LogWarning("[uHonor] honorParent is not assigned.");
|
||||
return null;
|
||||
}
|
||||
|
||||
GameObject prefab = GetHonorPrefab(prefabType);
|
||||
if (prefab == null)
|
||||
{
|
||||
Debug.LogWarning($"[uHonor] Honor prefab for type {prefabType} is not assigned.");
|
||||
return null;
|
||||
}
|
||||
|
||||
return Instantiate(prefab, honorParent);
|
||||
}
|
||||
|
||||
public GameObject SpawnHonor(GameObject prefab)
|
||||
{
|
||||
if (honorParent == null)
|
||||
{
|
||||
Debug.LogWarning("[uHonor] honorParent is not assigned.");
|
||||
return null;
|
||||
}
|
||||
|
||||
if (prefab == null)
|
||||
{
|
||||
Debug.LogWarning("[uHonor] Requested prefab is null.");
|
||||
return null;
|
||||
}
|
||||
|
||||
return Instantiate(prefab, honorParent);
|
||||
}
|
||||
|
||||
public GameObject GetHonorPrefab(HonorPrefabType prefabType)
|
||||
{
|
||||
switch (prefabType)
|
||||
{
|
||||
case HonorPrefabType.Gold:
|
||||
return goldHonorPrefab != null ? goldHonorPrefab : normalHonorPrefab;
|
||||
case HonorPrefabType.Silver:
|
||||
return silverHonorPrefab != null ? silverHonorPrefab : normalHonorPrefab;
|
||||
case HonorPrefabType.Bronze:
|
||||
return bronzeHonorPrefab != null ? bronzeHonorPrefab : normalHonorPrefab;
|
||||
case HonorPrefabType.Normal:
|
||||
default:
|
||||
return normalHonorPrefab;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user