X-Git-Url: https://git.zerfleddert.de/cgi-bin/gitweb.cgi/FreeShisen/blobdiff_plain/d0e04237b00df7c11616f359200255a8b47e79d7..952b2e4dbd6df39b40e72e1be918812a5b2fb34a:/src/de/cwde/shisensho/ShisenShoView.java diff --git a/src/de/cwde/shisensho/ShisenShoView.java b/src/de/cwde/shisensho/ShisenShoView.java index cb1a57c..06162c1 100644 --- a/src/de/cwde/shisensho/ShisenShoView.java +++ b/src/de/cwde/shisensho/ShisenShoView.java @@ -5,14 +5,13 @@ import java.util.Locale; import java.util.Timer; import java.util.TimerTask; -import de.cwde.shisensho.R; - import android.app.Activity; import android.content.Context; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Canvas; import android.graphics.Color; +import android.graphics.Matrix; import android.graphics.Paint; import android.graphics.Paint.Align; import android.graphics.Paint.Cap; @@ -64,6 +63,11 @@ class ShisenShoView extends SurfaceView implements SurfaceHolder.Callback { surfaceHolder.addCallback(this); } + public ShisenShoView(Context ctx) { + super((Context)ctx); + // silence lint? + } + private void paint(StatePaint pstate) { this.pstate=pstate; repaint(); @@ -82,13 +86,28 @@ class ShisenShoView extends SurfaceView implements SurfaceHolder.Callback { // The tile set has 4 rows x 9 columns tilesetRows = 4; tilesetCols = 9; - tileWidth = tileset.getWidth()/tilesetCols; - tileHeight = tileset.getHeight()/tilesetRows; + int loadedtileWidth = tileset.getWidth()/tilesetCols; + int loadedtileHeight = tileset.getHeight()/tilesetRows; tile = new Bitmap[tilesetRows*tilesetCols]; + + // align to screen: + // "large" is 16x6, and we want to have a nice border, so we use 17x7 and + // choose the lowest scale so everything fits + float scalex = ((float) screenWidth/17) / loadedtileWidth; + float scaley = ((float) screenHeight/7) / loadedtileHeight; + if (scaley < scalex) { + scalex = scaley; + } else { + scaley = scalex; + } + Matrix matrix = new Matrix(); + matrix.setScale(scalex, scaley); + int k=0; for (int i=0; i=0 && - i=0 && j=0 && j=0 && i=0 && j=0 && j