0
基本上,正如標題所暗示的,我無法將我的數組保存到共享對象。無法將類對象保存到共享對象文件
我有一個包含不同的「兵」具有不同特徵的數組(健康,盔甲,武器,位置,精通,等級)等等等等,並想知道我怎麼會去保存它。當我重新載入swf時,我得到這個跟蹤(「,,,」),但在重新載入之前,我得到了一個正確的數組讀數。
這是我的代碼,如果有幫助:
//Saving game
function saveGame(E:MouseEvent){
var so:SharedObject = SharedObject.getLocal("saveFile"); //Instantiating the shared object
so.data.savedUnitArray = towerDefenceMain.unitArray;// is the array that stores the Soldiers
trace(so.data.savedUnitArray); //returns correct trace
so.flush();//Saving the operation
}
//Loading the data back
var so:SharedObject = SharedObject.getLocal("saveFile");
if(so.data.savedUnitArray != undefined){
unitArray = so.data.savedUnitArray;
trace(unitArray); //returns (",,,,")
}
所以基本上你的意思是,我應該存儲在像健康每個單獨士兵的所有變量,然後重新創建一個新戰士類和共享對象的類士兵健康設爲savedHealth? –
不完全。說你的士兵班有自己的變量「健康」。通過'writeInt()'調用將它寫入'writeExternal()'中,然後在'readInt()'調用中將其讀回到'readExternal()'中。與您想要保存的所有其他變量相同。請注意,順序很重要,因爲那些輸入和輸出實例不關心對象的數據完整性,所以您必須自己維護它。 – Vesper
好的謝謝你的幫助:)我不會想出來的!乾杯:D –