DEADSOFTWARE

Better creative inventory scrolling
[cavedroid.git] / core / src / ru / deadsoftware / cavecraft / game / GameProc.java
index 29b3d3b8a39b6a1efcb9aaa805e5e4cf3657c2fd..4b841bd47af0fd7103b3ac70b50f9cd73e67adc4 100644 (file)
@@ -2,12 +2,14 @@ package ru.deadsoftware.cavecraft.game;
 
 import com.badlogic.gdx.Gdx;
 import com.badlogic.gdx.Input;
-import com.badlogic.gdx.utils.Array;
 import com.badlogic.gdx.utils.TimeUtils;
-import ru.deadsoftware.cavecraft.*;
+import ru.deadsoftware.cavecraft.CaveGame;
+import ru.deadsoftware.cavecraft.GameScreen;
 import ru.deadsoftware.cavecraft.game.mobs.Mob;
 import ru.deadsoftware.cavecraft.game.mobs.Pig;
 import ru.deadsoftware.cavecraft.game.objects.Player;
+import ru.deadsoftware.cavecraft.misc.AppState;
+import ru.deadsoftware.cavecraft.misc.Assets;
 
 import java.io.Serializable;
 import java.util.ArrayList;
@@ -27,6 +29,7 @@ public class GameProc implements Serializable{
     public int cursorX, cursorY;
     public int invSlot;
     public int ctrlMode;
+    public int creativeScroll, maxCreativeScroll;
 
     public boolean isTouchDown, isKeyDown;
     public int touchDownX, touchDownY, keyDownCode;
@@ -39,17 +42,18 @@ public class GameProc implements Serializable{
         player = new Player(world.getSpawnPoint());
         mobs = new ArrayList<Mob>();
         for (int i=0; i<16; i++) {
-            mobs.add(new Pig(i*256, 128&16, this));
+            mobs.add(new Pig(i*256, 196*16));
         }
         physics = new GamePhysics(this);
-        if (!CaveGame.TOUCH) ctrlMode = 1;
         if (CaveGame.TOUCH) {
             renderer = new GameRenderer(this,320,
                     320*((float)GameScreen.getHeight()/GameScreen.getWidth()));
         } else {
+            ctrlMode = 1;
             renderer = new GameRenderer(this,480,
                     480*((float)GameScreen.getHeight()/GameScreen.getWidth()));
         }
+        maxCreativeScroll = Items.BLOCKS.size/8;
         GameSaver.save(this);
     }
 
@@ -117,8 +121,7 @@ public class GameProc implements Serializable{
             if (touchDownButton== Input.Buttons.RIGHT) {
                 world.placeToBackground(cursorX, cursorY,
                         player.inventory[invSlot]);
-            } else if (touchDownButton==Input.Buttons.LEFT &&
-                    touchDownY< Assets.invBar.getRegionHeight() &&
+            } else if (touchDownY< Assets.invBar.getRegionHeight() &&
                     touchDownX>renderer.camera.viewportWidth/2-Assets.invBar.getRegionWidth()/2 &&
                     touchDownX<renderer.camera.viewportWidth/2+Assets.invBar.getRegionWidth()/2) {
                 CaveGame.STATE = AppState.GAME_CREATIVE_INV;