Udemy-Unity制作类暗黑破坏神游戏记录-P134

2024-09-29
180看过
加载场景时,保存经验值,并让经验值在UI实时更新显示

Experience

  1. using RPG.Saving;
  2. using System.Collections;
  3. using System.Collections.Generic;
  4. using UnityEngine;
  5. namespace RPG.Resources
  6. {
  7.     public class Experience : MonoBehaviour,ISaveable
  8.     {
  9.         [SerializeField] float experiencePoints = 0;
  10.       
  11.         public void GainExperience(float experience)// 获得经验
  12.         {
  13.             experiencePoints += experience;
  14.         }
  15.         public float GetPoint()//返回经验的点数 -用于UI显示
  16.         {
  17.             return experiencePoints;
  18.         }
  19.         public object CaptureState()
  20.         {
  21.             return experiencePoints;
  22.         }
  23.         public void RestoreState(object state)
  24.         {
  25.             experiencePoints = (float)state;
  26.         }
  27.     }
  28. }
复制代码
ExperienceDisplay

  1. using System;
  2. using System.Collections;
  3. using System.Collections.Generic;
  4. using UnityEngine;
  5. using UnityEngine.UI;
  6. namespace RPG.Resources
  7. {
  8.     public class ExperienceDisplay : MonoBehaviour
  9.     {
  10.         Experience experience;
  11.         Text xpDisplay;
  12.         private void Awake()
  13.         {
  14.             experience = GameObject.FindWithTag("Player").GetComponent<Experience>();
  15.             xpDisplay = GetComponent<Text>();
  16.         }
  17.         private void Update()
  18.         {
  19.             xpDisplay.text = String.Format("{0:0}", experience.GetPoint());
  20.         }
  21.     }
  22. }
复制代码


回复

举报

 
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表