DEADSOFTWARE

Add inventory bar
[cavedroid.git] / core / src / ru / deadsoftware / cavecraft / GameScreen.java
1 package ru.deadsoftware.cavecraft;
2
3 import com.badlogic.gdx.Gdx;
4 import com.badlogic.gdx.InputProcessor;
5 import com.badlogic.gdx.Screen;
6 import ru.deadsoftware.cavecraft.game.GameInputHandler;
7 import ru.deadsoftware.cavecraft.game.GameProc;
8 import ru.deadsoftware.cavecraft.game.GameRenderer;
9
10 public class GameScreen implements Screen {
11
12 private GameProc gameProc;
13 private GameInputHandler gameInput;
14
15 public GameScreen() {
16 Assets.load();
17 BlocksLoader.load();
18 gameProc = new GameProc();
19 gameInput = new GameInputHandler(gameProc);
20 Gdx.input.setInputProcessor(new InputHandler());
21 }
22
23 public static int getWidth() {
24 return Gdx.graphics.getWidth();
25 }
26
27 public static int getHeight() {
28 return Gdx.graphics.getHeight();
29 }
30
31 @Override
32 public void show() {
33
34 }
35
36 @Override
37 public void render(float delta) {
38 gameProc.update(delta);
39 gameProc.renderer.render();
40 }
41
42 @Override
43 public void resize(int width, int height) {
44 gameProc.resetRenderer();
45 }
46
47 @Override
48 public void pause() {
49
50 }
51
52 @Override
53 public void resume() {
54
55 }
56
57 @Override
58 public void hide() {
59
60 }
61
62 @Override
63 public void dispose() {
64
65 }
66
67 private class InputHandler implements InputProcessor {
68
69 @Override
70 public boolean keyDown(int keycode) {
71 gameInput.keyDown(keycode);
72 return false;
73 }
74
75 @Override
76 public boolean keyUp(int keycode) {
77 gameInput.keyUp(keycode);
78 return false;
79 }
80
81 @Override
82 public boolean keyTyped(char character) {
83 return false;
84 }
85
86 @Override
87 public boolean touchDown(int screenX, int screenY, int pointer, int button) {
88 screenX *= gameProc.renderer.camera.viewportWidth/getWidth();
89 screenY *= gameProc.renderer.camera.viewportHeight/getHeight();
90 gameInput.touchDown(screenX, screenY, button);
91 return false;
92 }
93
94 @Override
95 public boolean touchUp(int screenX, int screenY, int pointer, int button) {
96 screenX *= gameProc.renderer.camera.viewportWidth/getWidth();
97 screenY *= gameProc.renderer.camera.viewportHeight/getHeight();
98 gameInput.touchUp(screenX, screenY, button);
99 return false;
100 }
101
102 @Override
103 public boolean touchDragged(int screenX, int screenY, int pointer) {
104 screenX *= gameProc.renderer.camera.viewportWidth/getWidth();
105 screenY *= gameProc.renderer.camera.viewportHeight/getHeight();
106 gameInput.touchDragged(screenX, screenY);
107 return false;
108 }
109
110 @Override
111 public boolean mouseMoved(int screenX, int screenY) {
112 screenX *= gameProc.renderer.camera.viewportWidth/getWidth();
113 screenY *= gameProc.renderer.camera.viewportHeight/getHeight();
114 gameInput.mouseMoved(screenX,screenY);
115 return false;
116 }
117
118 @Override
119 public boolean scrolled(int amount) {
120 gameInput.scrolled(amount);
121 return false;
122 }
123 }
124 }