[英]Unity 2D: How can I flip through a specific sequences of scenes, not lose my score data and then retrieve my score data?
我是統一和 C# 的新手,我有幾個問題。 這是背景:我創建了 7 個不同的場景,它們基本上是不同的迷你游戲。 我的目標如下:一開始,參與者選擇模式 1 或模式 2。如果他們選擇模式 1,接下來應該播放場景 1,2 和 3。 如果他們選擇模式 2,接下來應該播放場景 2,4,5,6,7。 在小游戲結束時,我想用視覺圖形顯示參與者在所有小游戲中的得分。
所以這是我的問題:
如何設置我的游戲,當參與者選擇“模式 1”時,播放特定場景 1、2 和 3? 或者如果他們 select '模式 2',播放場景 2、4、5、6 和 7? 他們是一種讓他們以隨機順序播放的方法嗎?
如何保存每個迷你游戲的分數,以便在最后訪問它們並使用分數制作圖形?
對於場景順序,我做了這樣的事情:
void Start()
{
RandNum = Random.Range(0, 8);
if (RandNum == 0)
{
SceneManager.LoadScene(MiniGame1);
}
if (RandNum == 1)
{
SceneManager.LoadScene(MiniGame2);
}
if (RandNum == 2)
{
SceneManager.LoadScene(MiniGame3);
}
...ETC。 這行得通嗎?
而對於分數保存,當我在網上搜索時,我發現我可以使用 PlayPrefs.SetIn("Score mini-game 1", score1) 例如。 這是一個好方法嗎? 如果是這樣,最后我將如何檢索這些信息?
非常感謝你的幫助:)
要從 PlayerPrefs 中獲取您的分數,請使用PlayerPrefs.GetInt
對於場景加載序列,您可以創建一些具有級別隊列預設的ScriptableObject (例如每種模式的 int arrays)。
對於整體架構,我將創建一些將在整個游戲生命周期中保留的游戲對象(即在加載新場景后不會被銷毀)並使用該游戲對象來保存您的游戲管理器。 為此使用DontDestroyOnLoad 。 但是這種方法可能不適合您的情況,因此在選擇某種方法之前先考慮一下。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.