DEADSOFTWARE

Update version script
[cavedroid.git] / core / src / main / java / ru / deadsoftware / cavedroid / game / GameScreen.java
1 package ru.deadsoftware.cavedroid.game;
3 import com.badlogic.gdx.Screen;
4 import org.jetbrains.annotations.Nullable;
5 import ru.deadsoftware.cavedroid.MainConfig;
7 import javax.inject.Inject;
8 import javax.inject.Singleton;
10 @Singleton
11 public class GameScreen implements Screen {
13 private final MainConfig mMainConfig;
15 @Nullable
16 private GameProc mGameProc;
17 @Nullable
18 private GameItemsHolder mGameItemsHolder;
20 @Inject
21 public GameScreen(MainConfig mainConfig) {
22 mMainConfig = mainConfig;
23 }
25 public void newGame(int gameMode) {
26 if (mGameProc != null) {
27 mGameProc.dispose();
28 }
30 GameModule.loaded = true;
32 GameComponent gameComponent = DaggerGameComponent.builder()
33 .mainComponent(mMainConfig.getMainComponent()).build();
35 mGameProc = gameComponent.getGameProc();
37 mGameProc.setPlayerGameMode(gameMode);
38 }
40 public void loadGame() {
41 if (mGameProc != null) {
42 mGameProc.dispose();
43 }
45 GameModule.loaded = false;
47 GameComponent gameComponent = DaggerGameComponent.builder()
48 .mainComponent(mMainConfig.getMainComponent()).build();
50 mGameProc = gameComponent.getGameProc();
51 }
53 @Override
54 public void render(float delta) {
55 mGameProc.update(delta);
56 }
58 @Override
59 public void show() {
60 // Gdx.input.setInputProcessor(mGameInputProcessor);
61 mGameProc.show();
62 }
64 @Override
65 public void resize(int width, int height) {
67 }
69 @Override
70 public void pause() {
72 }
74 @Override
75 public void resume() {
77 }
79 @Override
80 public void hide() {
82 }
84 @Override
85 public void dispose() {
86 if (mGameProc != null) {
87 mGameProc.dispose();
88 }
89 }
91 }