Fixed player rotation
|
@ -8,7 +8,7 @@
|
||||||
</tileset>
|
</tileset>
|
||||||
<layer name="PLATFORM" width="50" height="8">
|
<layer name="PLATFORM" width="50" height="8">
|
||||||
<data encoding="base64" compression="zlib">
|
<data encoding="base64" compression="zlib">
|
||||||
eJxjYBgFo2AUDARgIoAHC2AmgKkB0P2Oyy5GApge4YnL7pEIALMwAF8=
|
eJxjYBgFxAImJDyUABMDfrczY8HEAHL1kQIoDXNCbqK2mxmRMK3SC7XDnREHHowAl1tp4V58dlGK6e0uWgEAX2sAgg==
|
||||||
</data>
|
</data>
|
||||||
</layer>
|
</layer>
|
||||||
<objectgroup name="PLAYER">
|
<objectgroup name="PLAYER">
|
||||||
|
|
BIN
core/assets/textures/level10Intro.png
Normal file
After Width: | Height: | Size: 72 KiB |
BIN
core/assets/textures/level3Intro.png
Normal file
After Width: | Height: | Size: 66 KiB |
BIN
core/assets/textures/level4Intro.png
Normal file
After Width: | Height: | Size: 72 KiB |
BIN
core/assets/textures/level5Intro.png
Normal file
After Width: | Height: | Size: 66 KiB |
BIN
core/assets/textures/level6Intro.png
Normal file
After Width: | Height: | Size: 72 KiB |
BIN
core/assets/textures/level7Intro.png
Normal file
After Width: | Height: | Size: 66 KiB |
BIN
core/assets/textures/level8Intro.png
Normal file
After Width: | Height: | Size: 72 KiB |
BIN
core/assets/textures/level9Intro.png
Normal file
After Width: | Height: | Size: 66 KiB |
|
@ -1,7 +1,9 @@
|
||||||
package com.game.actor;
|
package com.game.actor;
|
||||||
|
|
||||||
import com.badlogic.gdx.graphics.Texture;
|
import com.badlogic.gdx.graphics.Texture;
|
||||||
|
import com.badlogic.gdx.graphics.g2d.Sprite;
|
||||||
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
|
import com.badlogic.gdx.graphics.g2d.SpriteBatch;
|
||||||
|
import com.badlogic.gdx.math.MathUtils;
|
||||||
import com.badlogic.gdx.math.Vector2;
|
import com.badlogic.gdx.math.Vector2;
|
||||||
import com.badlogic.gdx.physics.box2d.*;
|
import com.badlogic.gdx.physics.box2d.*;
|
||||||
import com.game.App;
|
import com.game.App;
|
||||||
|
@ -17,7 +19,7 @@ public class Player extends Base {
|
||||||
|
|
||||||
Vector2 curVel;
|
Vector2 curVel;
|
||||||
|
|
||||||
private Texture texture;
|
private Sprite sprite;
|
||||||
|
|
||||||
private Action curAction;
|
private Action curAction;
|
||||||
public enum Action
|
public enum Action
|
||||||
|
@ -38,7 +40,7 @@ public class Player extends Base {
|
||||||
);
|
);
|
||||||
Box2dUtils.makeCircle(body, size.x, "PLAYER", false, Vars.BIT_PLAYER, (short)(Vars.BIT_RED | Vars.BIT_MISC));
|
Box2dUtils.makeCircle(body, size.x, "PLAYER", false, Vars.BIT_PLAYER, (short)(Vars.BIT_RED | Vars.BIT_MISC));
|
||||||
|
|
||||||
texture = App.assets.get("textures/player_red.png");
|
sprite = new Sprite(App.assets.get("textures/player_red.png", Texture.class));
|
||||||
}
|
}
|
||||||
|
|
||||||
public void update(float dt)
|
public void update(float dt)
|
||||||
|
@ -53,15 +55,14 @@ public class Player extends Base {
|
||||||
curVel.x = Vars.SCROLLSPEED.x * dt;
|
curVel.x = Vars.SCROLLSPEED.x * dt;
|
||||||
body.setLinearVelocity(curVel);
|
body.setLinearVelocity(curVel);
|
||||||
pos = body.getPosition();
|
pos = body.getPosition();
|
||||||
|
|
||||||
|
sprite.setPosition((pos.x * PPM) - size.x / 2, (pos.y * PPM) - size.y / 2);
|
||||||
|
sprite.setRotation(body.getAngle() * MathUtils.radiansToDegrees);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void render(SpriteBatch sb)
|
public void render(SpriteBatch sb)
|
||||||
{
|
{
|
||||||
sb.draw(texture,
|
sprite.draw(sb);
|
||||||
(pos.x * PPM) - size.x / 2,
|
|
||||||
(pos.y * PPM) - size.y / 2,
|
|
||||||
size.x,
|
|
||||||
size.y);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void jump()
|
public void jump()
|
||||||
|
@ -90,26 +91,30 @@ public class Player extends Base {
|
||||||
case RED:
|
case RED:
|
||||||
bits &= ~Vars.BIT_GREEN;
|
bits &= ~Vars.BIT_GREEN;
|
||||||
bits &= ~Vars.BIT_BLUE;
|
bits &= ~Vars.BIT_BLUE;
|
||||||
|
bits &= ~Vars.BIT_YELLOW;
|
||||||
bits |= Vars.BIT_RED;
|
bits |= Vars.BIT_RED;
|
||||||
texture = App.assets.get("textures/player_red.png", Texture.class);
|
sprite.setTexture(App.assets.get("textures/player_red.png", Texture.class));
|
||||||
break;
|
break;
|
||||||
case GREEN:
|
case GREEN:
|
||||||
bits &= ~Vars.BIT_RED;
|
bits &= ~Vars.BIT_RED;
|
||||||
bits &= ~Vars.BIT_BLUE;
|
bits &= ~Vars.BIT_BLUE;
|
||||||
|
bits &= ~Vars.BIT_YELLOW;
|
||||||
bits |= Vars.BIT_GREEN;
|
bits |= Vars.BIT_GREEN;
|
||||||
texture = App.assets.get("textures/player_green.png", Texture.class);
|
sprite.setTexture(App.assets.get("textures/player_green.png", Texture.class));
|
||||||
break;
|
break;
|
||||||
case BLUE:
|
case BLUE:
|
||||||
bits &= ~Vars.BIT_RED;
|
bits &= ~Vars.BIT_RED;
|
||||||
bits &= ~Vars.BIT_GREEN;
|
bits &= ~Vars.BIT_GREEN;
|
||||||
|
bits &= ~Vars.BIT_YELLOW;
|
||||||
bits |= Vars.BIT_BLUE;
|
bits |= Vars.BIT_BLUE;
|
||||||
texture = App.assets.get("textures/player_blue.png", Texture.class);
|
sprite.setTexture(App.assets.get("textures/player_blue.png", Texture.class));
|
||||||
break;
|
break;
|
||||||
case YELLOW:
|
case YELLOW:
|
||||||
bits &= ~Vars.BIT_RED;
|
bits &= ~Vars.BIT_RED;
|
||||||
bits &= ~Vars.BIT_GREEN;
|
bits &= ~Vars.BIT_GREEN;
|
||||||
bits |= Vars.BIT_BLUE;
|
bits &= ~Vars.BIT_BLUE;
|
||||||
texture = App.assets.get("textures/player_yellow.png", Texture.class);
|
bits |= Vars.BIT_YELLOW;
|
||||||
|
sprite.setTexture(App.assets.get("textures/player_yellow.png", Texture.class));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -25,6 +25,7 @@ public class Vars {
|
||||||
public static final short BIT_RED = 2;
|
public static final short BIT_RED = 2;
|
||||||
public static final short BIT_GREEN = 4;
|
public static final short BIT_GREEN = 4;
|
||||||
public static final short BIT_BLUE = 8;
|
public static final short BIT_BLUE = 8;
|
||||||
public static final short BIT_PLAYER = 16;
|
public static final short BIT_YELLOW = 16;
|
||||||
public static final short BIT_MISC = 32;
|
public static final short BIT_PLAYER = 32;
|
||||||
|
public static final short BIT_MISC = 64;
|
||||||
}
|
}
|
||||||
|
|
|
@ -52,6 +52,7 @@ public class Loading extends AbstractScreen {
|
||||||
@Override
|
@Override
|
||||||
public void update(float dt) {
|
public void update(float dt) {
|
||||||
percent = Interpolation.linear.apply(percent, app.assets.getProgress(), 0.3f);
|
percent = Interpolation.linear.apply(percent, app.assets.getProgress(), 0.3f);
|
||||||
|
System.out.println("Loading... " + app.assets.getProgress() * 100 + "%");
|
||||||
|
|
||||||
loadingRect.width = 0 + 853.3333f * percent;
|
loadingRect.width = 0 + 853.3333f * percent;
|
||||||
|
|
||||||
|
@ -91,11 +92,12 @@ public class Loading extends AbstractScreen {
|
||||||
|
|
||||||
private void assetsToLoad()
|
private void assetsToLoad()
|
||||||
{
|
{
|
||||||
|
// Fonts
|
||||||
loadFont("fonts/badaboom.TTF", 25, Color.BLACK);
|
loadFont("fonts/badaboom.TTF", 25, Color.BLACK);
|
||||||
loadFont("fonts/badaboom.TTF", 30, Color.BLACK);
|
loadFont("fonts/badaboom.TTF", 30, Color.BLACK);
|
||||||
loadFont("fonts/badaboom.TTF", 45, Color.BLACK);
|
loadFont("fonts/badaboom.TTF", 45, Color.BLACK);
|
||||||
|
|
||||||
|
// Textures
|
||||||
app.assets.load("textures/badlogic.jpg", Texture.class);
|
app.assets.load("textures/badlogic.jpg", Texture.class);
|
||||||
app.assets.load("textures/menuBackground.jpg", Texture.class);
|
app.assets.load("textures/menuBackground.jpg", Texture.class);
|
||||||
app.assets.load("textures/leaderboardBackground.jpg", Texture.class);
|
app.assets.load("textures/leaderboardBackground.jpg", Texture.class);
|
||||||
|
@ -103,21 +105,27 @@ public class Loading extends AbstractScreen {
|
||||||
app.assets.load("textures/pauseBackground.png", Texture.class);
|
app.assets.load("textures/pauseBackground.png", Texture.class);
|
||||||
app.assets.load("textures/failureBackground.png", Texture.class);
|
app.assets.load("textures/failureBackground.png", Texture.class);
|
||||||
app.assets.load("textures/successBackground.png", Texture.class);
|
app.assets.load("textures/successBackground.png", Texture.class);
|
||||||
app.assets.load("textures/level1Intro.png", Texture.class);
|
|
||||||
app.assets.load("textures/level2Intro.png", Texture.class);
|
|
||||||
app.assets.load("textures/pauseGlow.png", Texture.class);
|
app.assets.load("textures/pauseGlow.png", Texture.class);
|
||||||
app.assets.load("textures/position0.png", Texture.class);
|
app.assets.load("textures/position0.png", Texture.class);
|
||||||
app.assets.load("textures/position1.png", Texture.class);
|
app.assets.load("textures/position1.png", Texture.class);
|
||||||
app.assets.load("textures/position2.png", Texture.class);
|
app.assets.load("textures/position2.png", Texture.class);
|
||||||
|
for(int i = 1; i <= 10; i++)
|
||||||
|
{
|
||||||
|
app.assets.load("textures/level" + i + "Intro.png", Texture.class);
|
||||||
|
}
|
||||||
app.assets.load("textures/player_green.png", Texture.class);
|
app.assets.load("textures/player_green.png", Texture.class);
|
||||||
app.assets.load("textures/player_blue.png", Texture.class);
|
app.assets.load("textures/player_blue.png", Texture.class);
|
||||||
app.assets.load("textures/player_yellow.png", Texture.class);
|
app.assets.load("textures/player_yellow.png", Texture.class);
|
||||||
|
|
||||||
|
// Spritesheets
|
||||||
|
app.assets.load("spritesheets/platformSet.png", Texture.class);
|
||||||
|
|
||||||
|
// Music
|
||||||
|
app.assets.load("music/TheComplex.mp3", Music.class);
|
||||||
|
|
||||||
|
// Sound
|
||||||
app.assets.load("sounds/jumping.mp3", Sound.class);
|
app.assets.load("sounds/jumping.mp3", Sound.class);
|
||||||
app.assets.load("sounds/colourchange.mp3", Sound.class);
|
app.assets.load("sounds/colourchange.mp3", Sound.class);
|
||||||
|
|
||||||
app.assets.load("music/TheComplex.mp3", Music.class);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void loadFont(String fontFileName, int size, Color borderColour)
|
private void loadFont(String fontFileName, int size, Color borderColour)
|
||||||
|
|
|
@ -6,6 +6,7 @@ import com.badlogic.gdx.audio.Sound;
|
||||||
import com.badlogic.gdx.graphics.OrthographicCamera;
|
import com.badlogic.gdx.graphics.OrthographicCamera;
|
||||||
import com.badlogic.gdx.graphics.Texture;
|
import com.badlogic.gdx.graphics.Texture;
|
||||||
import com.badlogic.gdx.graphics.g2d.BitmapFont;
|
import com.badlogic.gdx.graphics.g2d.BitmapFont;
|
||||||
|
import com.badlogic.gdx.graphics.glutils.ShapeRenderer;
|
||||||
import com.badlogic.gdx.maps.MapLayer;
|
import com.badlogic.gdx.maps.MapLayer;
|
||||||
import com.badlogic.gdx.maps.MapProperties;
|
import com.badlogic.gdx.maps.MapProperties;
|
||||||
import com.badlogic.gdx.maps.objects.PolylineMapObject;
|
import com.badlogic.gdx.maps.objects.PolylineMapObject;
|
||||||
|
@ -14,7 +15,9 @@ import com.badlogic.gdx.maps.tiled.TiledMap;
|
||||||
import com.badlogic.gdx.maps.tiled.TiledMapTileLayer;
|
import com.badlogic.gdx.maps.tiled.TiledMapTileLayer;
|
||||||
import com.badlogic.gdx.maps.tiled.TmxMapLoader;
|
import com.badlogic.gdx.maps.tiled.TmxMapLoader;
|
||||||
import com.badlogic.gdx.maps.tiled.renderers.OrthogonalTiledMapRenderer;
|
import com.badlogic.gdx.maps.tiled.renderers.OrthogonalTiledMapRenderer;
|
||||||
|
import com.badlogic.gdx.math.Interpolation;
|
||||||
import com.badlogic.gdx.math.Polyline;
|
import com.badlogic.gdx.math.Polyline;
|
||||||
|
import com.badlogic.gdx.math.Rectangle;
|
||||||
import com.badlogic.gdx.math.Vector2;
|
import com.badlogic.gdx.math.Vector2;
|
||||||
import com.badlogic.gdx.physics.box2d.*;
|
import com.badlogic.gdx.physics.box2d.*;
|
||||||
import com.badlogic.gdx.scenes.scene2d.ui.Image;
|
import com.badlogic.gdx.scenes.scene2d.ui.Image;
|
||||||
|
@ -64,27 +67,27 @@ public class Play extends AbstractScreen {
|
||||||
private ArrayList<Platform> platforms = new ArrayList<Platform>();
|
private ArrayList<Platform> platforms = new ArrayList<Platform>();
|
||||||
|
|
||||||
// Intro window
|
// Intro window
|
||||||
private boolean hasPlayedOnce = false;
|
|
||||||
private boolean isIntro;
|
private boolean isIntro;
|
||||||
private Window introWindow;
|
private Window introWindow;
|
||||||
private Image introBackground;
|
private Image introBackground;
|
||||||
private TextButton butProceed;
|
|
||||||
|
|
||||||
// Pause window
|
// Pause window
|
||||||
private boolean isPaused;
|
private boolean isPaused;
|
||||||
private Window pauseWindow;
|
private Window pauseWindow;
|
||||||
private Image pauseBackground;
|
private Image pauseBackground;
|
||||||
private Image pauseGlow;
|
private Image pauseGlow;
|
||||||
private TextButton butContinue, butReset, butExit;
|
|
||||||
private Vector2 buttonSize;
|
private Vector2 buttonSize;
|
||||||
|
|
||||||
// Endgame window
|
// Endgame window
|
||||||
private boolean isEnd;
|
private boolean isEnd;
|
||||||
private boolean isSuccess;
|
private boolean isSuccess;
|
||||||
private Window endgameWindow;
|
private Window endgameWindow;
|
||||||
private TextButton butNext;
|
|
||||||
private Image failureBackground, successBackground;
|
private Image failureBackground, successBackground;
|
||||||
|
|
||||||
|
// Progress bar
|
||||||
|
private float percent;
|
||||||
|
private Rectangle progressRect;
|
||||||
|
|
||||||
private int levelNumber;
|
private int levelNumber;
|
||||||
|
|
||||||
private Sound jumpSound = Gdx.audio.newSound(Gdx.files.internal("sounds/jumping.mp3"));
|
private Sound jumpSound = Gdx.audio.newSound(Gdx.files.internal("sounds/jumping.mp3"));
|
||||||
|
@ -122,6 +125,8 @@ public class Play extends AbstractScreen {
|
||||||
skin.add("default-font", app.assets.get("badaboom60.ttf", BitmapFont.class));
|
skin.add("default-font", app.assets.get("badaboom60.ttf", BitmapFont.class));
|
||||||
skin.load(Gdx.files.internal("spritesheets/uiskin.json"));
|
skin.load(Gdx.files.internal("spritesheets/uiskin.json"));
|
||||||
|
|
||||||
|
progressRect = new Rectangle(stage.getWidth() - 550, (stage.getHeight() - 50), 0, 25);
|
||||||
|
|
||||||
initLevel();
|
initLevel();
|
||||||
initIntroWindow();
|
initIntroWindow();
|
||||||
initPauseWindow();
|
initPauseWindow();
|
||||||
|
@ -141,6 +146,11 @@ public class Play extends AbstractScreen {
|
||||||
Vector2 start = new Vector2(cam.viewportWidth / 2, cam.viewportHeight / 2);
|
Vector2 start = new Vector2(cam.viewportWidth / 2, cam.viewportHeight / 2);
|
||||||
CameraUtils.setBoundary(cam, start, new Vector2(mapWidth * tileSize.x - start.x * 2, mapHeight * tileSize.y - start.y * 2));
|
CameraUtils.setBoundary(cam, start, new Vector2(mapWidth * tileSize.x - start.x * 2, mapHeight * tileSize.y - start.y * 2));
|
||||||
|
|
||||||
|
percent = Interpolation.linear.apply(percent, 500, 0.3f );
|
||||||
|
System.out.println(mapWidth - player.getPos().x);
|
||||||
|
progressRect.width = 0 + 500 * percent;
|
||||||
|
if (progressRect.width >= 499) { progressRect.width = 500; }
|
||||||
|
|
||||||
player.update(dt);
|
player.update(dt);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -153,9 +163,8 @@ public class Play extends AbstractScreen {
|
||||||
if(endgameWindow.isVisible() != isEnd)
|
if(endgameWindow.isVisible() != isEnd)
|
||||||
{
|
{
|
||||||
initEndgameWindow(isSuccess);
|
initEndgameWindow(isSuccess);
|
||||||
|
|
||||||
endgameWindow.setVisible(isEnd);
|
|
||||||
endgameWindow.setVisible(isEnd);
|
endgameWindow.setVisible(isEnd);
|
||||||
|
pauseGlow.setVisible(isEnd);
|
||||||
}
|
}
|
||||||
|
|
||||||
stage.act(dt);
|
stage.act(dt);
|
||||||
|
@ -178,6 +187,20 @@ public class Play extends AbstractScreen {
|
||||||
|
|
||||||
tmr.setView(cam);
|
tmr.setView(cam);
|
||||||
tmr.render();
|
tmr.render();
|
||||||
|
|
||||||
|
// HUD related
|
||||||
|
app.sb.setProjectionMatrix(hudCam.combined);
|
||||||
|
|
||||||
|
app.sr.begin(ShapeRenderer.ShapeType.Filled);
|
||||||
|
app.sr.setColor(1, 0, 0, 1);
|
||||||
|
app.sr.rect(progressRect.x, progressRect.y, progressRect.width, progressRect.height); // Red loading bar
|
||||||
|
app.sr.set(ShapeRenderer.ShapeType.Line);
|
||||||
|
app.sr.rect(progressRect.x, progressRect.y, 500f, progressRect.height); // Outline
|
||||||
|
app.sr.end();
|
||||||
|
|
||||||
|
app.sb.begin();
|
||||||
|
app.sb.draw(app.assets.get("spritesheets/platformSet.png", Texture.class), 100, 100);
|
||||||
|
app.sb.end();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
@ -318,7 +341,7 @@ public class Play extends AbstractScreen {
|
||||||
introWindow.setPosition(280, 50);
|
introWindow.setPosition(280, 50);
|
||||||
introWindow.setVisible(true);
|
introWindow.setVisible(true);
|
||||||
|
|
||||||
butProceed = new TextButton("PROCEED", skin, "default");
|
TextButton butProceed = new TextButton("PROCEED", skin, "default");
|
||||||
butProceed.setPosition((introWindow.getWidth() / 4) * 3, buttonSize.y + 360);
|
butProceed.setPosition((introWindow.getWidth() / 4) * 3, buttonSize.y + 360);
|
||||||
butProceed.setSize(buttonSize.x, buttonSize.y);
|
butProceed.setSize(buttonSize.x, buttonSize.y);
|
||||||
butProceed.addListener(new ClickListener() {
|
butProceed.addListener(new ClickListener() {
|
||||||
|
@ -332,11 +355,7 @@ public class Play extends AbstractScreen {
|
||||||
|
|
||||||
introWindow.addActor(butProceed);
|
introWindow.addActor(butProceed);
|
||||||
|
|
||||||
|
stage.addActor(introWindow);
|
||||||
if(!hasPlayedOnce){
|
|
||||||
stage.addActor(introWindow);
|
|
||||||
hasPlayedOnce = true;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void initPauseWindow()
|
private void initPauseWindow()
|
||||||
|
@ -349,7 +368,7 @@ public class Play extends AbstractScreen {
|
||||||
pauseWindow.setPosition(280, 50);
|
pauseWindow.setPosition(280, 50);
|
||||||
pauseWindow.setVisible(false);
|
pauseWindow.setVisible(false);
|
||||||
|
|
||||||
butContinue = new TextButton("Continue", skin, "default");
|
TextButton butContinue = new TextButton("Continue", skin, "default");
|
||||||
butContinue.setPosition((pauseWindow.getWidth() / 2) - buttonSize.x / 2, buttonSize.y + 240);
|
butContinue.setPosition((pauseWindow.getWidth() / 2) - buttonSize.x / 2, buttonSize.y + 240);
|
||||||
butContinue.setSize(buttonSize.x, buttonSize.y);
|
butContinue.setSize(buttonSize.x, buttonSize.y);
|
||||||
butContinue.addListener(new ClickListener() {
|
butContinue.addListener(new ClickListener() {
|
||||||
|
@ -359,7 +378,7 @@ public class Play extends AbstractScreen {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
butReset = new TextButton("Reset", skin, "default");
|
TextButton butReset = new TextButton("Reset", skin, "default");
|
||||||
butReset.setPosition((pauseWindow.getWidth() / 2) - buttonSize.x / 2, buttonSize.y + 140);
|
butReset.setPosition((pauseWindow.getWidth() / 2) - buttonSize.x / 2, buttonSize.y + 140);
|
||||||
butReset.setSize(buttonSize.x, buttonSize.y);
|
butReset.setSize(buttonSize.x, buttonSize.y);
|
||||||
butReset.addListener(new ClickListener() {
|
butReset.addListener(new ClickListener() {
|
||||||
|
@ -369,7 +388,7 @@ public class Play extends AbstractScreen {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
butExit = new TextButton("Exit", skin, "default");
|
TextButton butExit = new TextButton("Exit", skin, "default");
|
||||||
butExit.setPosition((pauseWindow.getWidth() / 2) - buttonSize.x / 2, buttonSize.y + 40);
|
butExit.setPosition((pauseWindow.getWidth() / 2) - buttonSize.x / 2, buttonSize.y + 40);
|
||||||
butExit.setSize(buttonSize.x, buttonSize.y);
|
butExit.setSize(buttonSize.x, buttonSize.y);
|
||||||
butExit.addListener(new ClickListener() {
|
butExit.addListener(new ClickListener() {
|
||||||
|
@ -397,7 +416,7 @@ public class Play extends AbstractScreen {
|
||||||
successBackground = new Image(app.assets.get("textures/successBackground.png", Texture.class));
|
successBackground = new Image(app.assets.get("textures/successBackground.png", Texture.class));
|
||||||
endgameWindow.setBackground(successBackground.getDrawable());
|
endgameWindow.setBackground(successBackground.getDrawable());
|
||||||
|
|
||||||
butNext = new TextButton("Next", skin, "default");
|
TextButton butNext = new TextButton("Next", skin, "default");
|
||||||
butNext.setPosition((pauseWindow.getWidth() / 2) - buttonSize.x / 2, buttonSize.y + 240);
|
butNext.setPosition((pauseWindow.getWidth() / 2) - buttonSize.x / 2, buttonSize.y + 240);
|
||||||
butNext.setSize(buttonSize.x, buttonSize.y);
|
butNext.setSize(buttonSize.x, buttonSize.y);
|
||||||
butNext.addListener(new ClickListener() {
|
butNext.addListener(new ClickListener() {
|
||||||
|
@ -417,10 +436,29 @@ public class Play extends AbstractScreen {
|
||||||
endgameWindow.setPosition(280, 50);
|
endgameWindow.setPosition(280, 50);
|
||||||
endgameWindow.setVisible(false);
|
endgameWindow.setVisible(false);
|
||||||
|
|
||||||
|
TextButton butReset = new TextButton("Reset", skin, "default");
|
||||||
|
butReset.setPosition((pauseWindow.getWidth() / 2) - buttonSize.x / 2, buttonSize.y + 140);
|
||||||
|
butReset.setSize(buttonSize.x, buttonSize.y);
|
||||||
|
butReset.addListener(new ClickListener() {
|
||||||
|
@Override
|
||||||
|
public void clicked (com.badlogic.gdx.scenes.scene2d.InputEvent event, float x, float y) {
|
||||||
|
app.sm.setPlayScreen(levelNumber);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
TextButton butExit = new TextButton("Exit", skin, "default");
|
||||||
|
butExit.setPosition((pauseWindow.getWidth() / 2) - buttonSize.x / 2, buttonSize.y + 40);
|
||||||
|
butExit.setSize(buttonSize.x, buttonSize.y);
|
||||||
|
butExit.addListener(new ClickListener() {
|
||||||
|
@Override
|
||||||
|
public void clicked(com.badlogic.gdx.scenes.scene2d.InputEvent event, float x, float y) {
|
||||||
|
app.sm.setScreen(ScreenManager.Screen.MENU);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
endgameWindow.addActor(butReset);
|
endgameWindow.addActor(butReset);
|
||||||
endgameWindow.addActor(butExit);
|
endgameWindow.addActor(butExit);
|
||||||
|
|
||||||
stage.addActor(pauseGlow);
|
|
||||||
stage.addActor(endgameWindow);
|
stage.addActor(endgameWindow);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -452,7 +490,6 @@ public class Play extends AbstractScreen {
|
||||||
{
|
{
|
||||||
isEnd = true;
|
isEnd = true;
|
||||||
isSuccess = true;
|
isSuccess = true;
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|