Chests began
This commit is contained in:
@@ -10,11 +10,14 @@ public class XpPass : MonoBehaviour
|
||||
public Slider levelSlider;
|
||||
[SerializeField]
|
||||
public XpPassReward[] rewards;
|
||||
public Sprite goldRewardIcon, gemRewardIcon;
|
||||
public Sprite goldRewardIcon, gemRewardIcon, chestRewardIcon;
|
||||
public GameObject rewardCardPrefab;
|
||||
public GameObject xpLevelPointPrefab;
|
||||
public Sprite disabledXpPointIcon;
|
||||
public Transform xpLevelPointsParent, rewardCardsParent;
|
||||
|
||||
public GameObject chestPrefab;
|
||||
public Transform chestSpawnParent;
|
||||
void Start()
|
||||
{
|
||||
Refresh();
|
||||
@@ -63,8 +66,21 @@ public class XpPass : MonoBehaviour
|
||||
GameObject xpLevelPoint = Instantiate(xpLevelPointPrefab, xpLevelPointsParent);
|
||||
|
||||
xpLevelPoint.GetComponentInChildren<TMP_Text>().text = reward.level.ToString();
|
||||
rewardCard.transform.GetChild(1).GetComponent<Image>().sprite = (reward.rewardType == XpRewardType.Gold) ? goldRewardIcon : gemRewardIcon;
|
||||
|
||||
rewardCard.GetComponentInChildren<TMP_Text>().text = (reward.amount >=1000) ? reward.amount.ToString("0,000") : reward.amount.ToString();
|
||||
switch(reward.rewardType){
|
||||
case XpRewardType.Gold:
|
||||
rewardCard.transform.GetChild(1).GetComponent<Image>().sprite = goldRewardIcon;
|
||||
break;
|
||||
case XpRewardType.Gems:
|
||||
rewardCard.transform.GetChild(1).GetComponent<Image>().sprite = gemRewardIcon;
|
||||
break;
|
||||
case XpRewardType.Chest:
|
||||
rewardCard.transform.GetChild(1).GetComponent<Image>().sprite = chestRewardIcon;
|
||||
rewardCard.GetComponentInChildren<TMP_Text>().text = "";
|
||||
break;
|
||||
}
|
||||
|
||||
if(reward.level > DBmanager.Level){
|
||||
xpLevelPoint.GetComponent<Image>().sprite = disabledXpPointIcon;
|
||||
rewardCard.GetComponent<Button>().interactable=false;
|
||||
@@ -92,6 +108,8 @@ public class XpPass : MonoBehaviour
|
||||
DBmanager.SetCoins(DBmanager.Coins+ reward.amount);
|
||||
}else if(reward.rewardType == XpRewardType.Gems){
|
||||
DBmanager.SetGems(DBmanager.Gems + reward.amount);
|
||||
}else if(reward.rewardType == XpRewardType.Chest){
|
||||
StartCoroutine(destroyTimer(Instantiate(chestPrefab, chestSpawnParent),5));
|
||||
}
|
||||
|
||||
break;
|
||||
@@ -99,6 +117,11 @@ public class XpPass : MonoBehaviour
|
||||
}
|
||||
Refresh();
|
||||
}
|
||||
|
||||
IEnumerator destroyTimer(GameObject item, float time){
|
||||
yield return new WaitForSeconds(time);
|
||||
Destroy(item);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -112,5 +135,6 @@ public class XpPassReward{
|
||||
|
||||
public enum XpRewardType{
|
||||
Gold,
|
||||
Gems
|
||||
Gems,
|
||||
Chest
|
||||
}
|
||||
Reference in New Issue
Block a user