mirror of https://github.com/flutter/pinball.git
parent
253feb5c23
commit
a563d6a20d
@ -0,0 +1,63 @@
|
|||||||
|
import 'dart:math';
|
||||||
|
|
||||||
|
import 'package:flame/input.dart';
|
||||||
|
import 'package:pinball_components/pinball_components.dart';
|
||||||
|
import 'package:sandbox/common/common.dart';
|
||||||
|
|
||||||
|
class ScoreGame extends AssetsGame with TapDetector {
|
||||||
|
ScoreGame()
|
||||||
|
: super(
|
||||||
|
imagesFileNames: [
|
||||||
|
Assets.images.score.points1m.keyName,
|
||||||
|
Assets.images.score.points1m2.keyName,
|
||||||
|
Assets.images.score.points2m.keyName,
|
||||||
|
Assets.images.score.points3m.keyName,
|
||||||
|
Assets.images.score.points4m.keyName,
|
||||||
|
Assets.images.score.points5k.keyName,
|
||||||
|
Assets.images.score.points5m.keyName,
|
||||||
|
Assets.images.score.points6m.keyName,
|
||||||
|
Assets.images.score.points10k.keyName,
|
||||||
|
Assets.images.score.points15k.keyName,
|
||||||
|
Assets.images.score.points20k.keyName,
|
||||||
|
Assets.images.score.points25k.keyName,
|
||||||
|
Assets.images.score.points30k.keyName,
|
||||||
|
Assets.images.score.points40k.keyName,
|
||||||
|
Assets.images.score.points50k.keyName,
|
||||||
|
Assets.images.score.points60k.keyName,
|
||||||
|
Assets.images.score.points80k.keyName,
|
||||||
|
Assets.images.score.points100k.keyName,
|
||||||
|
Assets.images.score.points120k.keyName,
|
||||||
|
Assets.images.score.points200k.keyName,
|
||||||
|
Assets.images.score.points400k.keyName,
|
||||||
|
Assets.images.score.points600k.keyName,
|
||||||
|
Assets.images.score.points800k.keyName,
|
||||||
|
],
|
||||||
|
);
|
||||||
|
|
||||||
|
static const description = '''
|
||||||
|
Simple game to show how score component works,
|
||||||
|
|
||||||
|
- Tap anywhere on the screen to spawn an image on the given location.
|
||||||
|
''';
|
||||||
|
|
||||||
|
final random = Random();
|
||||||
|
|
||||||
|
@override
|
||||||
|
Future<void> onLoad() async {
|
||||||
|
await super.onLoad();
|
||||||
|
camera.followVector2(Vector2.zero());
|
||||||
|
}
|
||||||
|
|
||||||
|
@override
|
||||||
|
void onTapUp(TapUpInfo info) {
|
||||||
|
final index = random.nextInt(Score.values.length);
|
||||||
|
final score = Score.values[index];
|
||||||
|
|
||||||
|
add(
|
||||||
|
ScoreComponent(
|
||||||
|
score: score,
|
||||||
|
position: info.eventPosition.game..multiply(Vector2(1, -1)),
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,11 @@
|
|||||||
|
import 'package:dashbook/dashbook.dart';
|
||||||
|
import 'package:sandbox/common/common.dart';
|
||||||
|
import 'package:sandbox/stories/score/score_game.dart';
|
||||||
|
|
||||||
|
void addScoreStories(Dashbook dashbook) {
|
||||||
|
dashbook.storiesOf('Score').addGame(
|
||||||
|
title: 'Basic',
|
||||||
|
description: ScoreGame.description,
|
||||||
|
gameBuilder: (_) => ScoreGame(),
|
||||||
|
);
|
||||||
|
}
|
@ -1,34 +0,0 @@
|
|||||||
import 'dart:math';
|
|
||||||
|
|
||||||
import 'package:flame/input.dart';
|
|
||||||
import 'package:flutter/material.dart';
|
|
||||||
import 'package:pinball_components/pinball_components.dart';
|
|
||||||
import 'package:sandbox/common/common.dart';
|
|
||||||
|
|
||||||
class ScoreTextGame extends AssetsGame with TapDetector {
|
|
||||||
static const description = '''
|
|
||||||
Simple game to show how score text works,
|
|
||||||
|
|
||||||
- Tap anywhere on the screen to spawn an text on the given location.
|
|
||||||
''';
|
|
||||||
|
|
||||||
final random = Random();
|
|
||||||
|
|
||||||
@override
|
|
||||||
Future<void> onLoad() async {
|
|
||||||
camera.followVector2(Vector2.zero());
|
|
||||||
}
|
|
||||||
|
|
||||||
@override
|
|
||||||
void onTapUp(TapUpInfo info) {
|
|
||||||
final index = random.nextInt(Score.values.length);
|
|
||||||
final score = Score.values[index];
|
|
||||||
|
|
||||||
add(
|
|
||||||
ScoreText(
|
|
||||||
score: score,
|
|
||||||
position: info.eventPosition.game..multiply(Vector2(1, -1)),
|
|
||||||
),
|
|
||||||
);
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,11 +0,0 @@
|
|||||||
import 'package:dashbook/dashbook.dart';
|
|
||||||
import 'package:sandbox/common/common.dart';
|
|
||||||
import 'package:sandbox/stories/score_text/score_text_game.dart';
|
|
||||||
|
|
||||||
void addScoreTextStories(Dashbook dashbook) {
|
|
||||||
dashbook.storiesOf('ScoreText').addGame(
|
|
||||||
title: 'Basic',
|
|
||||||
description: ScoreTextGame.description,
|
|
||||||
gameBuilder: (_) => ScoreTextGame(),
|
|
||||||
);
|
|
||||||
}
|
|
Loading…
Reference in new issue