DEADSOFTWARE

Implement dependency injection for game classes #13
[cavedroid.git] / core / src / ru / deadsoftware / cavedroid / misc / Renderer.java
index 18e077ac586e31ff158f21b7d6da1e41d7b5022f..b59e977c5045c05195f72e870c2c3c0b82d69335 100644 (file)
@@ -1,22 +1,22 @@
 package ru.deadsoftware.cavedroid.misc;
 
+import com.badlogic.gdx.Gdx;
+import com.badlogic.gdx.InputProcessor;
 import com.badlogic.gdx.graphics.OrthographicCamera;
 import com.badlogic.gdx.graphics.g2d.SpriteBatch;
 import com.badlogic.gdx.graphics.glutils.ShapeRenderer;
-import ru.deadsoftware.cavedroid.GameScreen;
 
-public abstract class Renderer {
+public abstract class Renderer implements InputProcessor {
 
-    private OrthographicCamera camera;
+    protected final ShapeRenderer shaper;
+    protected final SpriteBatch spriter;
+    private final OrthographicCamera camera;
 
-    protected ShapeRenderer shaper;
-    protected SpriteBatch spriter;
-
-    public Renderer() {
-        this(GameScreen.getWidth(), GameScreen.getHeight());
+    protected Renderer() {
+        this(Gdx.graphics.getWidth(), Gdx.graphics.getHeight());
     }
 
-    public Renderer(float width, float height) {
+    protected Renderer(float width, float height) {
         camera = new OrthographicCamera();
         camera.setToOrtho(true, width, height);
         shaper = new ShapeRenderer();
@@ -63,6 +63,46 @@ public abstract class Renderer {
                 getHeight() / 2 - (float) Assets.getStringHeight(str) / 2);
     }
 
-    public abstract void render();
+    public abstract void render(float delta);
+
+    @Override
+    public boolean keyDown(int keycode) {
+        return false;
+    }
+
+    @Override
+    public boolean keyUp(int keycode) {
+        return false;
+    }
+
+    @Override
+    public boolean keyTyped(char character) {
+        return false;
+    }
+
+    @Override
+    public boolean touchDown(int screenX, int screenY, int pointer, int button) {
+        return false;
+    }
+
+    @Override
+    public boolean touchUp(int screenX, int screenY, int pointer, int button) {
+        return false;
+    }
+
+    @Override
+    public boolean touchDragged(int screenX, int screenY, int pointer) {
+        return false;
+    }
+
+    @Override
+    public boolean mouseMoved(int screenX, int screenY) {
+        return false;
+    }
+
+    @Override
+    public boolean scrolled(int amount) {
+        return false;
+    }
 
 }