DEADSOFTWARE

1d47b9074cb9f65144944486e024ad7462a579cd
[cavedroid.git] / core / src / ru / deadsoftware / cavedroid / game / GameScreen.java
1 package ru.deadsoftware.cavedroid.game;
3 import com.badlogic.gdx.Gdx;
4 import com.badlogic.gdx.Screen;
5 import ru.deadsoftware.cavedroid.MainConfig;
7 import javax.annotation.CheckForNull;
8 import javax.inject.Inject;
9 import javax.inject.Singleton;
11 @Singleton
12 public class GameScreen implements Screen {
14 private final MainConfig mMainConfig;
16 @CheckForNull
17 private GameProc mGameProc;
18 @CheckForNull
19 private GameInputProcessor mGameInputProcessor;
20 @CheckForNull
21 private GameItemsHolder mGameItemsHolder;
23 @Inject
24 public GameScreen(MainConfig mainConfig) {
25 mMainConfig = mainConfig;
26 }
28 public void newGame(int gameMode) {
29 if (mGameProc != null) {
30 mGameProc.dispose();
31 }
33 GameModule.loaded = true;
35 GameComponent gameComponent = DaggerGameComponent.builder()
36 .mainComponent(mMainConfig.getMainComponent()).build();
38 mGameProc = gameComponent.getGameProc();
39 mGameInputProcessor = gameComponent.getGameInputProcessor();
41 mGameProc.setPlayerGameMode(gameMode);
43 Gdx.input.setInputProcessor(gameComponent.getGameInputProcessor());
44 }
46 public void loadGame() {
47 if (mGameProc != null) {
48 mGameProc.dispose();
49 }
51 GameModule.loaded = false;
53 GameComponent gameComponent = DaggerGameComponent.builder()
54 .mainComponent(mMainConfig.getMainComponent()).build();
56 mGameProc = gameComponent.getGameProc();
57 mGameInputProcessor = gameComponent.getGameInputProcessor();
59 Gdx.input.setInputProcessor(gameComponent.getGameInputProcessor());
60 }
62 @Override
63 public void render(float delta) {
64 mGameProc.update(delta);
65 }
67 @Override
68 public void show() {
69 Gdx.input.setInputProcessor(mGameInputProcessor);
70 }
72 @Override
73 public void resize(int width, int height) {
75 }
77 @Override
78 public void pause() {
80 }
82 @Override
83 public void resume() {
85 }
87 @Override
88 public void hide() {
90 }
92 @Override
93 public void dispose() {
94 if (mGameProc != null) {
95 mGameProc.dispose();
96 }
97 }
99 }