DEADSOFTWARE

Add world saving
[cavedroid.git] / core / src / ru / deadsoftware / cavecraft / game / GameProc.java
index 2cdc302291cac2ec1c3faf961c5a8285cd261b13..a4a6c94f698892faf86e7fd98cd3f30a27e7a088 100644 (file)
@@ -31,19 +31,36 @@ public class GameProc {
     public long touchDownTime;
 
     public GameProc() {
-        world = new GameWorld(1024,256);
-        renderer = new GameRenderer(this);
+        world = new GameWorld();
+        if (WorldSaver.exists()) {
+            world.load();
+        } else {
+            world.generate(1024, 256);
+        }
+        if (CaveGame.TOUCH) {
+            renderer = new GameRenderer(this,320,
+                    320*((float)GameScreen.getHeight()/GameScreen.getWidth()));
+        } else {
+            renderer = new GameRenderer(this,480,
+                    480*((float)GameScreen.getHeight()/GameScreen.getWidth()));
+        }
         physics = new GamePhysics(this);
-        player = new Player(world.getSpawnPoint());
+        player = new Player(world.getSpawnPoint(0));
         mobs = new Array<Mob>();
         for (int i=0; i<world.getWidth(); i+=64) {
-            mobs.add(new Pig(i*16, 0, world));
+            mobs.add(new Pig(i*16, (int)world.getSpawnPoint(i).y, world));
         }
         if (!CaveGame.TOUCH) ctrlMode = 1;
     }
 
     public void resetRenderer() {
-        renderer = new GameRenderer(this);
+        if (CaveGame.TOUCH) {
+            renderer = new GameRenderer(this,320,
+                    320*((float)GameScreen.getHeight()/GameScreen.getWidth()));
+        } else {
+            renderer = new GameRenderer(this,480,
+                    480*((float)GameScreen.getHeight()/GameScreen.getWidth()));
+        }
     }
 
     private boolean isAutoselectable(int x, int y) {