diff --git a/_server/editor.js b/_server/editor.js index 812d901d..1467914e 100644 --- a/_server/editor.js +++ b/_server/editor.js @@ -65,7 +65,7 @@ editor.prototype.init = function (callback) { editor_mode = editor_mode(editor); editor_unsorted_2_wrapper(editor_mode); editor.mode = editor_mode; - core.resetGame(core.firstData.hero, null, core.firstData.floorId, core.initStatus.maps); + core.resetGame(core.firstData.hero, null, core.firstData.floorId, core.clone(core.initStatus.maps)); core.changeFloor(core.status.floorId, null, core.firstData.hero.loc, null, function () { afterCoreReset(); }, true); diff --git a/libs/events.js b/libs/events.js index 5f0df116..fc654e2c 100644 --- a/libs/events.js +++ b/libs/events.js @@ -41,7 +41,7 @@ events.prototype.startGame = function (hard, seed, route, callback) { events.prototype._startGame_start = function (hard, seed, route, callback) { console.log('开始游戏'); - core.resetGame(core.firstData.hero, hard, null, core.initStatus.maps); + core.resetGame(core.firstData.hero, hard, null, core.clone(core.initStatus.maps)); var nowLoc = core.clone(core.getHeroLoc()); core.setHeroLoc('x', -1); core.setHeroLoc('y', -1); diff --git a/project/functions.js b/project/functions.js index b526890b..5b007f7a 100644 --- a/project/functions.js +++ b/project/functions.js @@ -9,7 +9,9 @@ var functions_d6ad677b_427a_4623_b50f_a445a3b0ef8a = // 这一步会清空状态栏和全部画布内容,并删除所有动态创建的画布 core.clearStatus(); // 初始化status - core.status = core.clone(core.initStatus); + core.status = core.clone(core.initStatus, function (name) { + return name != 'hero' && name != 'maps'; + }); core.status.played = true; // 初始化人物,图标,统计信息 core.status.hero = core.clone(hero); @@ -22,7 +24,7 @@ var functions_d6ad677b_427a_4623_b50f_a445a3b0ef8a = core.status.hard = hard || ""; // 初始化地图 core.status.floorId = floorId; - core.status.maps = core.clone(maps); + core.status.maps = maps; // 初始化怪物和道具 core.material.enemys = core.enemys.getEnemys(); core.material.items = core.items.getItems();