Skip to content

Commit

Permalink
Add crippled survival
Browse files Browse the repository at this point in the history
  • Loading branch information
fredboy committed Apr 19, 2024
1 parent 9f89992 commit b62c3a3
Show file tree
Hide file tree
Showing 7 changed files with 25 additions and 9 deletions.
3 changes: 1 addition & 2 deletions android/assets/json/menu_new_game_buttons.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,7 @@
"label": "Creative"
},
"survival": {
"label": "Survival",
"type": 0
"label": "Survival"
},
"back": {
"label": "Back"
Expand Down
4 changes: 2 additions & 2 deletions core/src/ru/deadsoftware/cavedroid/CaveGame.java
Original file line number Diff line number Diff line change
Expand Up @@ -54,9 +54,9 @@ private void initConfig() {
mMainConfig.setAssetsPackPath(mAssetsPackPath);
}

public void newGame() {
public void newGame(int gameMode) {
GameScreen gameScreen = mMainComponent.getGameScreen();
gameScreen.newGame();
gameScreen.newGame(gameMode);
setScreen(gameScreen);
}

Expand Down
11 changes: 10 additions & 1 deletion core/src/ru/deadsoftware/cavedroid/game/GameProc.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package ru.deadsoftware.cavedroid.game;

import com.badlogic.gdx.utils.Disposable;
import ru.deadsoftware.cavedroid.game.mobs.MobsController;
import ru.deadsoftware.cavedroid.game.world.GameWorld;

import javax.inject.Inject;
Expand All @@ -14,16 +15,24 @@ public class GameProc implements Disposable {
private final GamePhysics mGamePhysics;
private final GameInput mGameInput;
private final GameRenderer mGameRenderer;
private final MobsController mMobsController;

@Inject
public GameProc(GameWorld gameWorld,
GamePhysics gamePhysics,
GameInput gameInput,
GameRenderer gameRenderer) {
GameRenderer gameRenderer,
MobsController mobsController
) {
mGameWorld = gameWorld;
mGamePhysics = gamePhysics;
mGameInput = gameInput;
mGameRenderer = gameRenderer;
mMobsController = mobsController;
}

public void setPlayerGameMode(int gameMode) {
mMobsController.getPlayer().gameMode = gameMode;
}

public void update(float delta) {
Expand Down
7 changes: 7 additions & 0 deletions core/src/ru/deadsoftware/cavedroid/game/GameRenderer.java
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,8 @@
@GameScope
public class GameRenderer extends Renderer {

private static final String TAG = "GameRenderer";

private final MainConfig mMainConfig;
private final GameInput mGameInput;
private final GameWorld mGameWorld;
Expand Down Expand Up @@ -67,6 +69,11 @@ private void drawWreck(int bl) {
if (mGameInput.getBlockDamage() > 0) {
int index = 10 * mGameInput.getBlockDamage() / GameItems.getBlock(bl).getHp();
String key = "break_" + index;

if (index > 10 || index < 0) {
return;
}

spriter.draw(textureRegions.get(key), mGameInput.getCurX() * 16 - getCamX(),
mGameInput.getCurY() * 16 - getCamY());
}
Expand Down
4 changes: 3 additions & 1 deletion core/src/ru/deadsoftware/cavedroid/game/GameScreen.java
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ public GameScreen(MainConfig mainConfig) {
mMainConfig = mainConfig;
}

public void newGame() {
public void newGame(int gameMode) {
if (mGameProc != null) {
mGameProc.dispose();
}
Expand All @@ -34,6 +34,8 @@ public void newGame() {
mGameProc = gameComponent.getGameProc();
mGameInputProcessor = gameComponent.getGameInputProcessor();

mGameProc.setPlayerGameMode(gameMode);

Gdx.input.setInputProcessor(gameComponent.getGameInputProcessor());
}

Expand Down
3 changes: 1 addition & 2 deletions core/src/ru/deadsoftware/cavedroid/game/mobs/Player.java
Original file line number Diff line number Diff line change
Expand Up @@ -26,13 +26,12 @@ public class Player extends Mob {

public final int[] inventory;
public int slot;
public final int gameMode;
public int gameMode;
public boolean swim;
public float headRotation = 0f;

public Player() {
super(0, 0, 4, 30, randomDir(), Type.MOB, MAX_HEALTH);
this.gameMode = 1;
inventory = new int[9];
swim = false;
}
Expand Down
2 changes: 1 addition & 1 deletion core/src/ru/deadsoftware/cavedroid/menu/MenuProc.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ public class MenuProc extends Renderer {

public class Input {
private void startNewGame(int gameMode) {
mMainConfig.getCaveGame().newGame();
mMainConfig.getCaveGame().newGame(gameMode);
}

public void newGameClicked() {
Expand Down

0 comments on commit b62c3a3

Please sign in to comment.