2014-10-19 120 views
0

好的,所以基本上我有這個輕微的問題,我試圖得到一個修復。我正在使用一個名爲GameControl的GameObject,這是我從Unity教程中學到的。我想要做的是能夠在加載後編輯選項。我可以讓他們保存並加載得很好。因爲他們有不同的保存和加載數據,所以我不得不在單人模式和多人模式下切換選項。現在,當我保存/加載這個數據回來。我在加載後遇到了麻煩,因爲它似乎在不斷加載保存的數據,所以如果我要進行更改,它會變回保存的數據。C#[持久保存和加載]

當我剛下沿,我這個當選項都是相同的,我用:

void Start() { 
    GameControl.control.Load(); 
} 

這似乎工作得很好,但現在我有兩個不同的加載文件SP選項, MP選項。我只是不知道把這些文件放在哪裏,我想也許在我的Switch Operation中,當我點擊Singleplayer時,或者在點擊時加載Multiplayer時,我可以加載它。但這是我有連續加載問題的地方。當我去編輯窗口中的選項時,它會回覆,請幫我理解在哪裏放置這些負載。我不想有一個加載按鈕,我不喜歡這個想法,我希望它是一個自動加載,當你點擊Singleplayer(獲取單人加載文件);和多人(獲取多人加載文件)。

void OnGUI() { 
    GUI.skin=mainSkin; 
    menuSelection=GUI.SelectionGrid(new Rect(Screen.width*.025f,Screen.height*.025f,buttonW,buttonH), menuSelection, button, 1); 
    switch(menuSelection) { 
    default: 
     break; 
    case 0: 
     windowRect=GUI.Window(0,windowRect,SPOptionsWindow,"Singleplayer Options (Pre-Game)"); 
     break; 
    case 1: 
     windowRect=GUI.Window(1,windowRect,MPOptionsWindow,"Multiplayer Options (Pre-Game)"); 
     break; 
    case 2: 
     LeaderboardsWindow(); 
     break; 
    } 
} 

這裏是我在哪裏加載加載文件;但是我不確定這是它應該是的位置,除非有更多的代碼在第一次加載後停止運行。我也試圖加載它在SPOptionsWindow();和MPOptionsWindow();但我得到了同樣的結果。

回答

0

Ahhhhh,很長時間修復!所以基本上我所做的改正是在GameControl.cs文件中添加更多的代碼。雖然有些功能不一樣,但我只需使用不同的命名約定重新創建相同的類型即可。更多的代碼,但它絕對有效。但暫時。然而,長期思考,我不確定這是否是我希望能夠得到的確切解決方案。

可能會出現問題:•發生的實際選項需要更多的代碼才能實現。 •也許我無法實現更多的代碼,但是我不得不將它改回原來的樣子?

這些我才真正知道,直到我到達那座橋,但是,現在它是一個修復,如果有任何其他的答案,請把你的想法扔在那裏:)