2016-04-22 103 views
1

目前我正在嘗試使用電暈模擬器進行一個簡單的遊戲。遊戲結束後,我想加入一個重播按鈕。到目前爲止,按鈕重新啓動遊戲,但我無法「重置環境/清除內存/清除變量的先前值」。尋找專家的指導。如何重置lua環境?

+0

我不能評論lua的最佳編碼實踐,但您可能想看看Corona中的垃圾收集文檔:https://docs.coronalabs。 COM/API /庫/全球/ collectgarbage.html。 使用垃圾回收功能時,內存會自動重新分配給未使用的資源。 –

回答

2

我猜這樣做的好方法是爲了避免爲你的遊戲狀態使用全局變量,所以垃圾收集將清理一旦你的本地的東西失去焦點。

另一種方法是清理表_G,其中Lua存儲它的全局變量。

0

看看Corona Composer。這是在Corona和(IMO)開發非常簡單而有效的推薦方式。它爲您處理複雜的內容,如內存管理和垃圾回收。

就你而言,你會爲你的遊戲創建一個場景,然後你可以重新加載該場景,只要你堅持指導原則,它會爲你處理垃圾收集。至於如何最有效地重新載入場景,請嘗試this