diff --git a/gen/mangavalk/tetris/R.java b/gen/mangavalk/tetris/R.java index 075f6de..1f6df9b 100644 --- a/gen/mangavalk/tetris/R.java +++ b/gen/mangavalk/tetris/R.java @@ -244,10 +244,11 @@ containing a value of this type. public static final int sprite_i4r=0x7f020033; public static final int sprite_l1=0x7f020034; public static final int sprite_l2=0x7f020035; - public static final int sprite_s=0x7f020036; - public static final int sprite_score=0x7f020037; - public static final int sprite_t=0x7f020038; - public static final int sprite_z=0x7f020039; + public static final int sprite_pause=0x7f020036; + public static final int sprite_s=0x7f020037; + public static final int sprite_score=0x7f020038; + public static final int sprite_t=0x7f020039; + public static final int sprite_z=0x7f02003a; } public static final class id { public static final int action_settings=0x7f050005; diff --git a/res/drawable-hdpi/sprite_gameover.bmp b/res/drawable-hdpi/sprite_gameover.bmp new file mode 100644 index 0000000..d57253a Binary files /dev/null and b/res/drawable-hdpi/sprite_gameover.bmp differ diff --git a/res/drawable-hdpi/sprite_gameover.jpg b/res/drawable-hdpi/sprite_gameover.jpg deleted file mode 100644 index fac91db..0000000 Binary files a/res/drawable-hdpi/sprite_gameover.jpg and /dev/null differ diff --git a/res/drawable-hdpi/sprite_pause.bmp b/res/drawable-hdpi/sprite_pause.bmp new file mode 100644 index 0000000..c89f16a Binary files /dev/null and b/res/drawable-hdpi/sprite_pause.bmp differ diff --git a/res/drawable-hdpi/sprite_score.bmp b/res/drawable-hdpi/sprite_score.bmp new file mode 100644 index 0000000..fef4824 Binary files /dev/null and b/res/drawable-hdpi/sprite_score.bmp differ diff --git a/res/drawable-hdpi/sprite_score.jpg b/res/drawable-hdpi/sprite_score.jpg deleted file mode 100644 index f118d83..0000000 Binary files a/res/drawable-hdpi/sprite_score.jpg and /dev/null differ diff --git a/src/mangavalk/tetris/GamePlay.java b/src/mangavalk/tetris/GamePlay.java index 3108ccd..160f272 100644 --- a/src/mangavalk/tetris/GamePlay.java +++ b/src/mangavalk/tetris/GamePlay.java @@ -31,8 +31,13 @@ public class GamePlay extends GameStateInterface public void onPause() { mp.pause(); + if (GameState != GS_GAMEOVER) + SetGameState(GS_PAUSED, false); + else + { - SetGameState(GS_PAUSED, false); + } + canvasView.postInvalidate(); } @Override @@ -368,6 +373,7 @@ public class GamePlay extends GameStateInterface bitmapi1r, bitmapi2r, bitmapi3r, bitmapi4r, bitmapblockline, bitmapscore, bitmapcontroller, bitmapgameover; Bitmap Font0, Font1, Font2, Font3, Font4, Font5, Font6, Font7, Font8, Font9; + Bitmap bitmappause; // Audio. MediaPlayer mp; @@ -600,6 +606,13 @@ public class GamePlay extends GameStateInterface bitmapgameover = Bitmap.createScaledBitmap(bitmapgameover, (int)GetRealPixelSize(DIP_W, dpWidth, (GameSpaceRight - GameSpaceLeft)), (int)GetRealPixelSize(DIP_H, dpHeight, (GameSpaceBottom - GameSpaceTop)), false); + + bitmappause = BitmapFactory.decodeResource(r, + R.drawable.sprite_pause); + + bitmappause = Bitmap.createScaledBitmap(bitmappause, + (int)GetRealPixelSize(DIP_W, dpWidth, (GameSpaceRight - GameSpaceLeft)), + (int)GetRealPixelSize(DIP_H, dpHeight, (GameSpaceBottom - GameSpaceTop)), false); } private void LoadFont() @@ -688,114 +701,117 @@ public class GamePlay extends GameStateInterface if (PayedVersion) { + // Scores. DrawLines(canvas, lines); - DrawLevel(canvas, startLevel + level); + DrawLevel(canvas, level); DrawScore(canvas, score); // Next Coming Tetrimino. - ShowNextComingTetrimino(canvas); } - for (int x=0; x<10; x++) + if(GameState == GS_PLAYING) { - for (int y=0; y<18; y++) + for (int x=0; x<10; x++) { - switch (drawArray[y][x] + (blockArray[y][x] >= 0 ? blockArray[y][x] : 0)) + for (int y=0; y<18; y++) { - case 0: - break; - case 1: + switch (drawArray[y][x] + (blockArray[y][x] >= 0 ? blockArray[y][x] : 0)) { - canvas.drawBitmap(bitmapb, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), - (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); - break; - } - case 2: - { - canvas.drawBitmap(bitmapt, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), - (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); - break; - } - case 3: - { - canvas.drawBitmap(bitmapz, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), - (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); - break; - } - case 5: - { - canvas.drawBitmap(bitmaps, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), - (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); - break; - } - case 6: - { - canvas.drawBitmap(bitmapl2, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), - (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); - break; - } - case 7: - { - canvas.drawBitmap(bitmapl1, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), - (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); - break; - } - case 8: - { - canvas.drawBitmap(bitmapi1, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), - (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); - break; - } - case 9: - { - canvas.drawBitmap(bitmapi2, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), - (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); - break; - } - case 10: - { - canvas.drawBitmap(bitmapi3, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), - (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); - break; - } - case 11: - { - canvas.drawBitmap(bitmapi4, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), - (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); - break; - } - case 12: // Rotated - { - canvas.drawBitmap(bitmapi1r, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), - (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); - break; - } - case 13: - { - canvas.drawBitmap(bitmapi2r, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), - (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); - break; - } - case 14: - { - canvas.drawBitmap(bitmapi3r, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), - (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); - break; - } - case 15: - { - canvas.drawBitmap(bitmapi4r, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), - (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); - break; - } - default: - { - - Rect(canvas, map(y, 0, 18, GameSpaceTop, GameSpaceBottom), map(y+1, 0, 18, GameSpaceTop, GameSpaceBottom), - map(x, 0, 10, GameSpaceLeft, GameSpaceRight), map(x+1, 0, 10, GameSpaceLeft, GameSpaceRight), - Color.RED); - break; + case 0: + break; + case 1: + { + canvas.drawBitmap(bitmapb, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), + (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); + break; + } + case 2: + { + canvas.drawBitmap(bitmapt, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), + (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); + break; + } + case 3: + { + canvas.drawBitmap(bitmapz, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), + (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); + break; + } + case 5: + { + canvas.drawBitmap(bitmaps, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), + (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); + break; + } + case 6: + { + canvas.drawBitmap(bitmapl2, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), + (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); + break; + } + case 7: + { + canvas.drawBitmap(bitmapl1, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), + (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); + break; + } + case 8: + { + canvas.drawBitmap(bitmapi1, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), + (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); + break; + } + case 9: + { + canvas.drawBitmap(bitmapi2, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), + (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); + break; + } + case 10: + { + canvas.drawBitmap(bitmapi3, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), + (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); + break; + } + case 11: + { + canvas.drawBitmap(bitmapi4, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), + (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); + break; + } + case 12: // Rotated + { + canvas.drawBitmap(bitmapi1r, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), + (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); + break; + } + case 13: + { + canvas.drawBitmap(bitmapi2r, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), + (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); + break; + } + case 14: + { + canvas.drawBitmap(bitmapi3r, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), + (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); + break; + } + case 15: + { + canvas.drawBitmap(bitmapi4r, (int)GetRealPixelSize(DIP_W, dpWidth, map(x, 0, 10, GameSpaceLeft, GameSpaceRight)), + (int)GetRealPixelSize(DIP_H, dpHeight, map(y, 0, 18, GameSpaceTop, GameSpaceBottom)), null); + break; + } + default: + { + // In case of error. + Rect(canvas, map(y, 0, 18, GameSpaceTop, GameSpaceBottom), map(y+1, 0, 18, GameSpaceTop, GameSpaceBottom), + map(x, 0, 10, GameSpaceLeft, GameSpaceRight), map(x+1, 0, 10, GameSpaceLeft, GameSpaceRight), + Color.RED); + break; + } } } } @@ -806,6 +822,12 @@ public class GamePlay extends GameStateInterface canvas.drawBitmap(bitmapgameover, (int)GetRealPixelSize(DIP_W, dpWidth, GameSpaceLeft), (int)GetRealPixelSize(DIP_H, dpHeight, GameSpaceTop), null); } + + if (GameState == GS_PAUSED) + { + canvas.drawBitmap(bitmappause, (int)GetRealPixelSize(DIP_W, dpWidth, GameSpaceLeft), + (int)GetRealPixelSize(DIP_H, dpHeight, GameSpaceTop), null); + } } private void ShowNextComingTetrimino(Canvas canvas) diff --git a/src/mangavalk/tetris/MainActivity.java b/src/mangavalk/tetris/MainActivity.java index b5569f2..1013ca5 100644 --- a/src/mangavalk/tetris/MainActivity.java +++ b/src/mangavalk/tetris/MainActivity.java @@ -27,6 +27,8 @@ public class MainActivity extends Activity private Sgesture mGesture; private SgestureHand mHand; + private boolean SamsungDevice = false; + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -36,15 +38,23 @@ public class MainActivity extends Activity try { mGesture.initialize(this); + SamsungDevice = true; } catch (IllegalArgumentException e) { //Error Handling + Log.d("MangaValk", "mark1"); + SamsungDevice = false; } catch (SsdkUnsupportedException e2) { //Error Handling + Log.d("MangaValk", "mark2"); + SamsungDevice = false; } - if(mGesture.isFeatureEnabled(Sgesture.TYPE_HAND_PRIMITIVE)){ - mHand = new SgestureHand(Looper.getMainLooper(), mGesture); - mHand.start(Sgesture.TYPE_HAND_PRIMITIVE, mChangeListener); + if (SamsungDevice) + { + if(mGesture.isFeatureEnabled(Sgesture.TYPE_HAND_PRIMITIVE)){ + mHand = new SgestureHand(Looper.getMainLooper(), mGesture); + mHand.start(Sgesture.TYPE_HAND_PRIMITIVE, mChangeListener); + } } @@ -102,6 +112,7 @@ public class MainActivity extends Activity } }; + @Override public void onPause() { super.onPause(); diff --git a/tetris tetrimino/capture.bmp b/tetris tetrimino/capture.bmp new file mode 100644 index 0000000..08c4d28 Binary files /dev/null and b/tetris tetrimino/capture.bmp differ diff --git a/tetris tetrimino/picture-22.png b/tetris tetrimino/picture-22.png new file mode 100644 index 0000000..19f3b44 Binary files /dev/null and b/tetris tetrimino/picture-22.png differ diff --git a/tetris tetrimino/sprite_pause.bmp b/tetris tetrimino/sprite_pause.bmp new file mode 100644 index 0000000..c89f16a Binary files /dev/null and b/tetris tetrimino/sprite_pause.bmp differ