Skip to content

Commit

Permalink
Make saveFailedReplay a SpriteMenuItem
Browse files Browse the repository at this point in the history
  • Loading branch information
kairusds committed Jan 4, 2022
1 parent b1477b2 commit e0f3e3c
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 9 deletions.
Binary file added assets/gfx/pause-save-replay.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
35 changes: 26 additions & 9 deletions src/ru/nsu/ccfit/zuev/osu/menu/PauseMenu.java
Original file line number Diff line number Diff line change
Expand Up @@ -20,25 +20,26 @@
import ru.nsu.ccfit.zuev.osu.GlobalManager;
import ru.nsu.ccfit.zuev.osu.ResourceManager;
import ru.nsu.ccfit.zuev.osu.Utils;
import ru.nsu.ccfit.zuev.osu.helper.StringTable;
import ru.nsu.ccfit.zuev.osu.ToastLogger;
import ru.nsu.ccfit.zuev.osu.game.GameScene;
import ru.nsu.ccfit.zuev.osuplus.R;

public class PauseMenu implements IOnMenuItemClickListener {
static final int ITEM_CONTINUE = 0;
static final int ITEM_RETRY = 1;
static final int ITEM_BACK = 2;
static final int ITEM_SAVE_REPLAY = 0;
static final int ITEM_CONTINUE = 1;
static final int ITEM_RETRY = 2;
static final int ITEM_BACK = 3;
private final MenuScene scene;
private final GameScene game;
private final boolean fail;
private boolean savedFailedReplay;
private boolean replaySaved;

public PauseMenu(final Engine engine, final GameScene game,
final boolean fail) {
this.game = game;
this.fail = fail;
savedFailedReplay = false;
final ChangeableText saveFailedReplay = new ChangeableText(Utils.toRes(4), Utils.toRes(2),
replaySaved = false;
/* final ChangeableText saveFailedReplay = new ChangeableText(Utils.toRes(4), Utils.toRes(2),
ResourceManager.getInstance().getFont("font"), StringTable.get(R.string.str_save_failed_replay));
class PauseMenuScene extends MenuScene implements IOnSceneTouchListener{
PauseMenuScene(final Camera pCamera){
Expand All @@ -56,9 +57,12 @@ public boolean onSceneTouchEvent(final Scene pScene, final TouchEvent pSceneTouc
}
return true;
}
}
} */
scene = new PauseMenuScene(engine.getCamera());

final ChangeableText saveFailedReplay = new SpriteMenuItem(ITEM_CONTINUE,
ResourceManager.getInstance().getTexture("pause-save-replay"));
scene.addMenuItem(saveFailedReplay);
final SpriteMenuItem itemContinue = new SpriteMenuItem(ITEM_CONTINUE,
ResourceManager.getInstance().getTexture("pause-continue"));
scene.addMenuItem(itemContinue);
Expand All @@ -68,7 +72,7 @@ public boolean onSceneTouchEvent(final Scene pScene, final TouchEvent pSceneTouc
final SpriteMenuItem itemBack = new SpriteMenuItem(ITEM_BACK,
ResourceManager.getInstance().getTexture("pause-back"));
scene.addMenuItem(itemBack);
scene.attachChild(saveFailedReplay);
// scene.attachChild(saveFailedReplay);
scene.setBackgroundEnabled(false);
TextureRegion tex;
if (fail) {
Expand Down Expand Up @@ -110,6 +114,17 @@ public boolean onMenuItemClicked(final MenuScene pMenuScene,
}
BassSoundProvider playSnd;
switch (pMenuItem.getID()) {
case ITEM_SAVE_REPLAY:
if(fail && !replaySaved && !game.getReplaying()){
if (game.saveFailedReplay()){
ToastLogger.showTextId(R.string.message_save_replay_successful);
replaySaved = true;
}
}else {
return false;
}
return true;

case ITEM_CONTINUE:
if (fail) {
return false;
Expand All @@ -120,6 +135,7 @@ public boolean onMenuItemClicked(final MenuScene pMenuScene,
}
game.resume();
return true;

case ITEM_BACK:
GlobalManager.getInstance().getScoring().setReplayID(-1);
playSnd = ResourceManager.getInstance().getSound("menuback");
Expand All @@ -129,6 +145,7 @@ public boolean onMenuItemClicked(final MenuScene pMenuScene,
game.resume();
game.quit();
return true;

case ITEM_RETRY:
ResourceManager.getInstance().getSound("failsound").stop();
playSnd = ResourceManager.getInstance().getSound("menuhit");
Expand Down

0 comments on commit e0f3e3c

Please sign in to comment.