10405人加入学习
(15人评价)
Unity版植物大战僵尸:游戏制作完全指南

制作完成于2023年11月22日 使用Unity2023.1 VS2022

价格 免费

程序

Card: using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; enum CardState { Cooling, WaitingSun, Ready } public class Crad : MonoBehaviour { private CardState cardState = CardState.Cooling; public GameObject cardLight; public GameObject cardGray; public Image cardMask; [SerializeField] private float cdTime = 2; private float cdTimer = 0; [SerializeField] private int needSunPoint = 50; private void Update() { switch (cardState) { case CardState.Cooling: CoolingUpdate(); break; case CardState.WaitingSun: WaitingSunUpdate(); break; case CardState.Ready: ReadyUpdate(); break; default: break; } } void CoolingUpdate() { cdTimer += Time.deltaTime; cardMask.fillAmount = (cdTime - cdTimer) / cdTime; if(cdTimer >= cdTime) { TransitionToWaitingSun(); } } void WaitingSunUpdate() { if (needSunPoint <= SunManager.Instance.SunPoint) { TransitionToReady(); } } void ReadyUpdate() { if (needSunPoint > SunManager.Instance.SunPoint) { TransitionToWaitingSun(); } } void TransitionToWaitingSun() { cardState = CardState.WaitingSun; cardLight.SetActive(false); cardGray.SetActive(true); cardMask.gameObject.SetActive(false); } void TransitionToReady() { cardState = CardState.Ready; cardLight.SetActive(true); cardGray.SetActive(false); cardMask.gameObject.SetActive(false); } void TransitionToCooling() { cardState = CardState.Cooling; cdTimer = 0; cardLight.SetActive(false); cardGray.SetActive(true); cardMask.gameObject.SetActive(true); } public void OnClick() { if (needSunPoint > SunManager.Instance.SunPoint) return; TransitionToCooling(); } } SunManager: using System.Collections; using System.Collections.Generic; using UnityEngine; public class SunManager : MonoBehaviour { public static SunManager Instance { get; private set; } private void Awake() { Instance = this; } [SerializeField] private int sunPoint; public int SunPoint { get { return sunPoint; } } }

[展开全文]

07-卡片的点击和状态切换到冷却

【冷却状态】【等待阳光状态】已完成

 

在Card Light上添加一个【button】

[展开全文]

授课教师

问问题加入A计划,有专门负责答疑的老师哦!!!

课程特色

下载资料(1)
视频(46)