diff --git a/bin/Tetris.apk b/bin/Tetris.apk index 907527b..812e818 100644 Binary files a/bin/Tetris.apk and b/bin/Tetris.apk differ diff --git a/bin/classes.dex b/bin/classes.dex index 496623f..71e05dd 100644 Binary files a/bin/classes.dex and b/bin/classes.dex differ diff --git a/bin/classes/mangavalk/tetris/CanvasView$1.class b/bin/classes/mangavalk/tetris/CanvasView$1.class index 70636bf..7a227b7 100644 Binary files a/bin/classes/mangavalk/tetris/CanvasView$1.class and b/bin/classes/mangavalk/tetris/CanvasView$1.class differ diff --git a/bin/classes/mangavalk/tetris/CanvasView$2.class b/bin/classes/mangavalk/tetris/CanvasView$2.class index 763454b..fc492dc 100644 Binary files a/bin/classes/mangavalk/tetris/CanvasView$2.class and b/bin/classes/mangavalk/tetris/CanvasView$2.class differ diff --git a/bin/classes/mangavalk/tetris/CanvasView.class b/bin/classes/mangavalk/tetris/CanvasView.class index 8e9b0ba..f7caa1d 100644 Binary files a/bin/classes/mangavalk/tetris/CanvasView.class and b/bin/classes/mangavalk/tetris/CanvasView.class differ diff --git a/src/mangavalk/tetris/CanvasView.java b/src/mangavalk/tetris/CanvasView.java index 05473c0..451b399 100644 --- a/src/mangavalk/tetris/CanvasView.java +++ b/src/mangavalk/tetris/CanvasView.java @@ -272,10 +272,6 @@ public class CanvasView extends View int NewBlock = 0; int NewBlockPossition = 0; - - boolean goingDown = false; - boolean NextWillLock = false; - Bitmap bitmapl1, bitmapl2, bitmapt, bitmapb, bitmaps, bitmapz, bitmapi1, bitmapi2, bitmapi3, bitmapi4, bitmapi1r, bitmapi2r, bitmapi3r, bitmapi4r, bitmapblockline, bitmapscore, bitmapcontroller, bitmapgameover; @@ -284,14 +280,10 @@ public class CanvasView extends View // Score. public int startLevel = 0; int level = 0; - int lines = 0; int score = 0; // Game State. - boolean GamePlaying = false; - boolean GameOver = false; - final int GS_STOPPED = 0; final int GS_LOADING = 1; final int GS_PLAYING = 2; @@ -355,28 +347,54 @@ public class CanvasView extends View Width = outMetrics.widthPixels; // Load Bitmap's. - LoadSprites(); LoadFont(); // Initlialize. - NewBlock = (int)(Math.random() * (7)); + // Audio + mp = MediaPlayer.create(activity, R.raw.tetris_a); + + // Start Game. + + StartGame(); + } + + private void StartGame() + { + // Clear. + for ( int i=0; i= 28 && moveX <= 55 && moveY >= 143 && moveY <= 155) // Start { @@ -1249,19 +1266,20 @@ public class CanvasView extends View else { mp.start(); - GamePlaying = true; GameState = GS_PLAYING; } } } } - if (!goingDown) + if (GameState == GS_PLAYING) { - if (GameState == GS_PLAYING) - { - InputsGamePlaying(x, y, Released); - } + InputsGamePlaying(x, y, Released); + } + + if (GameState == GS_GAMEOVER) + { + StartGame(); } } @@ -1332,43 +1350,30 @@ public class CanvasView extends View { if (GameState == GS_PLAYING) { - if (!GameOver) + /// Can the Block go down? + if (CanBlockGoDown()) { - goingDown = true; + MoveBlockDown(); + this.postInvalidate(); + } + else + { + ParseBlockArrayToDrawArray(); - /// Can the Block go down? - if (CanBlockGoDown()) + CheckForCompletedRows(); + + //spawn new block + if (!SpawnBlock()) { - MoveBlockDown(); + GameState = GS_GAMEOVER; + + mp.stop(); this.postInvalidate(); } else { - NextWillLock = false; - - ParseBlockArrayToDrawArray(); - - CheckForCompletedRows(); - - //spawn new block - if (!SpawnBlock()) - { - // GameOver - GameOver = true; - GamePlaying = false; - - GameState = GS_GAMEOVER ; - - mp.stop(); - this.postInvalidate(); - } - else - { - this.postInvalidate(); - } + this.postInvalidate(); } - - goingDown = false; } } } @@ -1776,8 +1781,7 @@ public class CanvasView extends View } ArrayList Tetrimino; - - private boolean SpawnBlock() + private void CheckTetriminoSpawnArray() { // Pseudo random if (Tetrimino == null || Tetrimino.size() <= 0) @@ -1789,6 +1793,12 @@ public class CanvasView extends View Tetrimino.add(newTetrimino); }while (Tetrimino.size() < 7); } + } + + + private boolean SpawnBlock() + { + CheckTetriminoSpawnArray(); CurrentBlock = NewBlock; CurrentBlockPossition = NewBlockPossition;