Commit 430c08f3 authored by Viktor Lidholt's avatar Viktor Lidholt

Adds display of last score to demo game

parent f99fd192
...@@ -9,4 +9,6 @@ import 'package:sky/widgets/widget.dart'; ...@@ -9,4 +9,6 @@ import 'package:sky/widgets/widget.dart';
import 'package:sky/widgets/navigator.dart'; import 'package:sky/widgets/navigator.dart';
import 'package:vector_math/vector_math_64.dart'; import 'package:vector_math/vector_math_64.dart';
import '../main.dart';
part 'game_demo_world.dart'; part 'game_demo_world.dart';
...@@ -348,6 +348,7 @@ class GameDemoWorld extends NodeWithSize { ...@@ -348,6 +348,7 @@ class GameDemoWorld extends NodeWithSize {
// Set game over // Set game over
_isGameOver = true; _isGameOver = true;
lastScore = _hud.score;
// Remove the ship // Remove the ship
_ship.visible = false; _ship.visible = false;
......
...@@ -5,6 +5,7 @@ ...@@ -5,6 +5,7 @@
import 'package:sky/mojo/asset_bundle.dart'; import 'package:sky/mojo/asset_bundle.dart';
import 'package:sky/theme/colors.dart' as colors; import 'package:sky/theme/colors.dart' as colors;
import 'package:sky/rendering/object.dart'; import 'package:sky/rendering/object.dart';
import 'package:sky/painting/text_style.dart';
import 'package:sky/widgets/basic.dart'; import 'package:sky/widgets/basic.dart';
import 'package:sky/widgets/button_base.dart'; import 'package:sky/widgets/button_base.dart';
import 'package:sky/widgets/navigator.dart'; import 'package:sky/widgets/navigator.dart';
...@@ -93,7 +94,8 @@ class GameDemoApp extends App { ...@@ -93,7 +94,8 @@ class GameDemoApp extends App {
return new Stack([ return new Stack([
new SpriteWidget(new MainScreenBackground()), new SpriteWidget(new MainScreenBackground()),
new Center( new Center(
child: new TextureButton( child: new Flex([
new TextureButton(
onPressed: () { onPressed: () {
_game = new GameDemoWorld( _game = new GameDemoWorld(
_app, _app,
...@@ -108,12 +110,21 @@ class GameDemoApp extends App { ...@@ -108,12 +110,21 @@ class GameDemoApp extends App {
textureDown: _spriteSheetUI["btn_play_down.png"], textureDown: _spriteSheetUI["btn_play_down.png"],
width: 128.0, width: 128.0,
height: 128.0 height: 128.0
),
new Text(
"Last Score: $lastScore",
style: new TextStyle(fontSize:20.0)
) )
],
direction: FlexDirection.vertical,
justifyContent: FlexJustifyContent.center)
) )
]); ]);
} }
} }
int lastScore = 0;
class TextureButton extends ButtonBase { class TextureButton extends ButtonBase {
TextureButton({ TextureButton({
Key key, Key key,
...@@ -156,6 +167,7 @@ class TextureButton extends ButtonBase { ...@@ -156,6 +167,7 @@ class TextureButton extends ButtonBase {
if (texture == null) if (texture == null)
return; return;
canvas.save();
if (highlight && textureDown != null) { if (highlight && textureDown != null) {
// Draw down state // Draw down state
canvas.scale(size.width / textureDown.size.width, size.height / textureDown.size.height); canvas.scale(size.width / textureDown.size.width, size.height / textureDown.size.height);
...@@ -165,6 +177,7 @@ class TextureButton extends ButtonBase { ...@@ -165,6 +177,7 @@ class TextureButton extends ButtonBase {
canvas.scale(size.width / texture.size.width, size.height / texture.size.height); canvas.scale(size.width / texture.size.width, size.height / texture.size.height);
texture.drawTexture(canvas, Point.origin, new Paint()); texture.drawTexture(canvas, Point.origin, new Paint());
} }
canvas.restore();
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment