diff --git a/AndorsTrail/src/com/gpl/rpg/AndorsTrail/Savegames.java b/AndorsTrail/src/com/gpl/rpg/AndorsTrail/Savegames.java index 1395ba0e1..1acf919c3 100644 --- a/AndorsTrail/src/com/gpl/rpg/AndorsTrail/Savegames.java +++ b/AndorsTrail/src/com/gpl/rpg/AndorsTrail/Savegames.java @@ -55,10 +55,10 @@ public final class Savegames { return false; } } - public static int loadWorld(WorldContext world, Context androidContext, int slot) { + public static int loadWorld(WorldContext world, ViewContext view, Context androidContext, int slot) { try { FileInputStream fos = getInputFile(androidContext, slot); - int result = loadWorld(world, fos); + int result = loadWorld(world, view, fos); fos.close(); return result; } catch (IOException e) { @@ -112,12 +112,11 @@ public final class Savegames { dest.close(); } - public static int loadWorld(WorldContext world, InputStream inState) throws IOException { + public static int loadWorld(WorldContext world, ViewContext view, InputStream inState) throws IOException { DataInputStream src = new DataInputStream(inState); final FileHeader header = new FileHeader(src); if (header.fileversion > AndorsTrailApplication.CURRENT_VERSION) return LOAD_RESULT_FUTURE_VERSION; - ViewContext view = new ViewContext(null, world); world.maps.readFromParcel(src, world, view, header.fileversion); world.model = new ModelContainer(src, world, view, header.fileversion); src.close(); diff --git a/AndorsTrail/src/com/gpl/rpg/AndorsTrail/WorldSetup.java b/AndorsTrail/src/com/gpl/rpg/AndorsTrail/WorldSetup.java index 3b06df68e..09dc30b32 100644 --- a/AndorsTrail/src/com/gpl/rpg/AndorsTrail/WorldSetup.java +++ b/AndorsTrail/src/com/gpl/rpg/AndorsTrail/WorldSetup.java @@ -139,7 +139,7 @@ public final class WorldSetup { private int continueWorld() { Context ctx = androidContext.get(); - int result = Savegames.loadWorld(world, ctx, loadFromSlot); + int result = Savegames.loadWorld(world, view, ctx, loadFromSlot); if (result == Savegames.LOAD_RESULT_SUCCESS) { MovementController.cacheCurrentMapData(ctx.getResources(), world, world.model.currentMap); } diff --git a/AndorsTrail/src/com/gpl/rpg/AndorsTrail/controller/MonsterMovementController.java b/AndorsTrail/src/com/gpl/rpg/AndorsTrail/controller/MonsterMovementController.java index 3c0dcaef8..272434127 100644 --- a/AndorsTrail/src/com/gpl/rpg/AndorsTrail/controller/MonsterMovementController.java +++ b/AndorsTrail/src/com/gpl/rpg/AndorsTrail/controller/MonsterMovementController.java @@ -91,7 +91,7 @@ public final class MonsterMovementController { monsterMovementListeners.onMonsterSteppedOnPlayer(m); view.combatController.monsterSteppedOnPlayer(m); } else { - CoordRect previousPosition = new CoordRect(m.position, m.rectPosition.size); + CoordRect previousPosition = new CoordRect(new Coord(m.position), m.rectPosition.size); m.position.set(m.nextPosition.topLeft); monsterMovementListeners.onMonsterMoved(m, previousPosition); }