页面淡出-淡入
[RequireComponent(typeof(MaskableGraphic))]
public class ScreenFader : MonoBehaviour
{
public float solidAlpha = 1f;
public float clearAlpha = 0f;
public float delay = 0f;
public float timeToFade = 1f;
MaskableGraphic m_graphic;
void Start()
{
m_graphic = GetComponent<MaskableGraphic>();
//FadeOff();
}
IEnumerator FadeRountine(float alpha)
{
yield return new WaitForSeconds(delay);
m_graphic.CrossFadeAlpha(alpha, timeToFade, true);
}
public void FadeOn()
{
StartCoroutine(FadeRountine(solidAlpha));
}
public void FadeOff()
{
StartCoroutine(FadeRountine(clearAlpha));
}
}
## 计数动态增加
public class ScoreManager : Singleton<ScoreManager>
{
int m_currentScore = 0;
int m_counterValue = 0;
int m_increment = 5;
[SerializeField]
public Text scoreText; void Start()
{
UpdateScoreText(m_currentScore);
}
public void UpdateScoreText(int scoreValue)
{
if (scoreText != null)
{
scoreText.text = scoreValue.ToString();
}
}
public void AddScore(int value)
{
m_currentScore += value;
StartCoroutine(CountScoreRoutine());
} IEnumerator CountScoreRoutine()
{
int iterations = 0;
while (m_counterValue < m_currentScore && iterations < 100000)
{
m_counterValue += m_increment;
UpdateScoreText(m_counterValue);
iterations++;
yield return null;
}
m_counterValue = m_currentScore;
UpdateScoreText(m_currentScore);
}
以上内容为https://www.udemy.com/course/make-a-puzzle-match-game-in-unity/课程的笔记。
很好的课程!推荐去看。