Gamemenu intergration. pause function working again.
This commit is contained in:
@@ -49,11 +49,11 @@ public class CanvasView extends View
|
||||
|
||||
// Game Start. First Load
|
||||
((GamePlay)Gameplay).SetStartLevel(startLevel);
|
||||
((GamePlay)Gameplay).SetGameState(GamePlay.GS_LOAD);
|
||||
((GamePlay)Gameplay).SetGameState(GamePlay.GS_LOAD, true);
|
||||
|
||||
// Start Game.
|
||||
if (((GamePlay)Gameplay).GetGameState() == GameStateInterface.GS_READY)
|
||||
((GamePlay)Gameplay).SetGameState(GameStateInterface.GS_START);
|
||||
((GamePlay)Gameplay).SetGameState(GameStateInterface.GS_START, true);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -77,11 +77,11 @@ public class CanvasView extends View
|
||||
gameStateChanged(gameState);
|
||||
}
|
||||
|
||||
public void OnGameStateChanged(int gameState, boolean isPostBack)
|
||||
/*public void OnGameStateChanged(int gameState, boolean isPostBack)
|
||||
{
|
||||
if (isPostBack == false)
|
||||
gameStateChanged(gameState);
|
||||
}
|
||||
}*/
|
||||
|
||||
private void gameStateChanged(int gameState)
|
||||
{
|
||||
@@ -94,10 +94,16 @@ public class CanvasView extends View
|
||||
}
|
||||
case GameStateInterface.GS_PAUSED:
|
||||
{
|
||||
//Gamemenu.SetGameState(Foreground.GetGameState(), true);
|
||||
Gamemenu.SetGameState(Foreground.GetGameState(), true);
|
||||
Foreground = Gamemenu;
|
||||
break;
|
||||
}
|
||||
case GameStateInterface.GS_RESUME:
|
||||
{
|
||||
Gameplay.SetGameState(Foreground.GetGameState(), true);
|
||||
Foreground = Gameplay;
|
||||
break;
|
||||
}
|
||||
case GameStateInterface.GS_GAMEOVER:
|
||||
{
|
||||
Foreground = Gamemenu;
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
package mangavalk.tetris;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.graphics.Canvas;
|
||||
|
||||
public class GameMenu extends GameStateInterface
|
||||
@@ -13,28 +12,37 @@ public class GameMenu extends GameStateInterface
|
||||
|
||||
// Methods.
|
||||
@Override
|
||||
public void DrawFrame(Canvas canvas) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void SendMove(float x, float y, boolean pointerUp) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void SetGameState(int gameState)
|
||||
public void DrawFrame(Canvas canvas)
|
||||
{
|
||||
GameState = gameState;
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
switch(GameState)
|
||||
{
|
||||
|
||||
case GS_PAUSED:
|
||||
{
|
||||
ShowPauseMenu();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
canvasView.OnGameStateChanged(GameState);
|
||||
//canvasView.postInvalidate();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void SendMove(float x, float y, boolean pointerUp)
|
||||
{
|
||||
// TODO Auto-generated method stub
|
||||
switch(GameState)
|
||||
{
|
||||
case GS_PAUSED:
|
||||
{
|
||||
if (!pointerUp)
|
||||
{
|
||||
SetGameState(GS_RESUME, false);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -44,10 +52,15 @@ public class GameMenu extends GameStateInterface
|
||||
|
||||
switch(GameState)
|
||||
{
|
||||
|
||||
case GS_PAUSED:
|
||||
{
|
||||
canvasView.postInvalidate();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
canvasView.OnGameStateChanged(GameState, isPostBack);
|
||||
if (!isPostBack)
|
||||
canvasView.OnGameStateChanged(GameState);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -56,16 +69,11 @@ public class GameMenu extends GameStateInterface
|
||||
|
||||
}
|
||||
|
||||
// Set
|
||||
@Override
|
||||
public void SetActivity(Activity activity) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void SetCanvas(CanvasView _CanvasView) {
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
public int GetGameState()
|
||||
{
|
||||
return GameState;
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -74,13 +82,11 @@ public class GameMenu extends GameStateInterface
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public int GetGameState() {
|
||||
// TODO Auto-generated method stub
|
||||
return 0;
|
||||
}
|
||||
|
||||
// Internal.
|
||||
CanvasView canvasView;
|
||||
Activity activity = null;
|
||||
private void ShowPauseMenu()
|
||||
{
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -33,7 +33,7 @@ public class GamePlay extends GameStateInterface
|
||||
{
|
||||
mp.pause();
|
||||
|
||||
SetGameState(GS_PAUSED);
|
||||
SetGameState(GS_PAUSED, false);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -52,7 +52,7 @@ public class GamePlay extends GameStateInterface
|
||||
else
|
||||
{
|
||||
mp.start();
|
||||
SetGameState(GS_PLAYING);
|
||||
SetGameState(GS_PLAYING, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -69,28 +69,6 @@ public class GamePlay extends GameStateInterface
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void SetGameState(int gameState)
|
||||
{
|
||||
GameState = gameState;
|
||||
|
||||
switch(GameState)
|
||||
{
|
||||
case GS_LOAD:
|
||||
{
|
||||
Load();
|
||||
break;
|
||||
}
|
||||
case GS_START:
|
||||
{
|
||||
StartGame();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
canvasView.OnGameStateChanged(GameState);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void SetGameState(int gameState, boolean isPostBack)
|
||||
{
|
||||
@@ -108,9 +86,15 @@ public class GamePlay extends GameStateInterface
|
||||
StartGame();
|
||||
break;
|
||||
}
|
||||
case GS_RESUME:
|
||||
{
|
||||
Resume();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
canvasView.OnGameStateChanged(GameState, isPostBack);
|
||||
if (!isPostBack)
|
||||
canvasView.OnGameStateChanged(GameState);
|
||||
}
|
||||
|
||||
// Set
|
||||
@@ -144,10 +128,6 @@ public class GamePlay extends GameStateInterface
|
||||
return GameState;
|
||||
}
|
||||
|
||||
// Internal.
|
||||
CanvasView canvasView;
|
||||
Activity activity = null;
|
||||
|
||||
// Variabelen
|
||||
Resources r;
|
||||
|
||||
@@ -480,7 +460,7 @@ public class GamePlay extends GameStateInterface
|
||||
mp.setLooping(true);
|
||||
mp.start();
|
||||
|
||||
SetGameState(GS_PLAYING);
|
||||
SetGameState(GS_PLAYING, false);
|
||||
|
||||
handler.removeCallbacksAndMessages(null);
|
||||
handler.postDelayed(runnable, 100);
|
||||
@@ -488,7 +468,7 @@ public class GamePlay extends GameStateInterface
|
||||
|
||||
private void Load()
|
||||
{
|
||||
SetGameState(GS_LOADING);
|
||||
SetGameState(GS_LOADING, false);
|
||||
|
||||
// Set Display Info.
|
||||
Display display = activity.getWindowManager().getDefaultDisplay();
|
||||
@@ -515,7 +495,7 @@ public class GamePlay extends GameStateInterface
|
||||
// Audio
|
||||
mp = MediaPlayer.create(activity, R.raw.tetris_a);
|
||||
|
||||
SetGameState(GS_READY);
|
||||
SetGameState(GS_READY, false);
|
||||
}
|
||||
|
||||
private void LoadSprites()
|
||||
@@ -1360,8 +1340,7 @@ public class GamePlay extends GameStateInterface
|
||||
onPause();
|
||||
else
|
||||
{
|
||||
mp.start();
|
||||
SetGameState(GS_PLAYING);
|
||||
SetGameState(GS_RESUME, false);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1378,6 +1357,12 @@ public class GamePlay extends GameStateInterface
|
||||
}
|
||||
}
|
||||
|
||||
private void Resume()
|
||||
{
|
||||
mp.start();
|
||||
SetGameState(GS_PLAYING, false);
|
||||
}
|
||||
|
||||
private void InputsGamePlaying(float x, float y, boolean Released)
|
||||
{
|
||||
int moveX = (int)((x / Width) * 90);
|
||||
@@ -1460,7 +1445,7 @@ public class GamePlay extends GameStateInterface
|
||||
//spawn new block
|
||||
if (!SpawnBlock())
|
||||
{
|
||||
SetGameState(GS_GAMEOVER);
|
||||
SetGameState(GS_GAMEOVER, false);
|
||||
|
||||
mp.stop();
|
||||
canvasView.postInvalidate();
|
||||
|
||||
@@ -9,29 +9,40 @@ public abstract class GameStateInterface
|
||||
|
||||
// GameState Parameters
|
||||
final static int GS_STOPPED = 0;
|
||||
final static int GS_LOADING = 1;
|
||||
final static int GS_PLAYING = 2;
|
||||
final static int GS_GAMEOVER = 3;
|
||||
final static int GS_PAUSED = 4;
|
||||
final static int GS_START = 5;
|
||||
final static int GS_LOAD = 6;
|
||||
final static int GS_READY = 7;
|
||||
final static int GS_LOADING = 1;
|
||||
final static int GS_PLAYING = 2;
|
||||
final static int GS_GAMEOVER = 3;
|
||||
final static int GS_PAUSED = 4;
|
||||
final static int GS_START = 5;
|
||||
final static int GS_LOAD = 6;
|
||||
final static int GS_READY = 7;
|
||||
final static int GS_RESUME = 8;
|
||||
|
||||
// Variabelen.
|
||||
CanvasView canvasView;
|
||||
Activity activity = null;
|
||||
|
||||
// Methods.
|
||||
public abstract void DrawFrame(Canvas canvas);
|
||||
|
||||
public abstract void SendMove(float x,float y, boolean pointerUp);
|
||||
|
||||
public abstract void SetGameState(int gameState);
|
||||
//public abstract void SetGameState(int gameState);
|
||||
|
||||
public abstract void SetGameState(int gameState, boolean isPostBack);
|
||||
|
||||
public abstract void onPause();
|
||||
|
||||
// SetParameters.
|
||||
public abstract void SetActivity(Activity activity);
|
||||
public void SetCanvas(CanvasView _CanvasView)
|
||||
{
|
||||
canvasView = _CanvasView;
|
||||
}
|
||||
|
||||
public abstract void SetCanvas(CanvasView _CanvasView);
|
||||
public void SetActivity(Activity _Activity)
|
||||
{
|
||||
activity = _Activity;
|
||||
}
|
||||
|
||||
public abstract void SetPayedVersion(boolean payedVersion);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user