mirror of
https://github.com/flame-engine/flame.git
synced 2025-10-31 00:48:47 +08:00
* Refactor joystick * Fix directional tests * Joystick example * Any PositionComponent can be used as knob and background * Add MarginButtonComponent * Fix JoystickExample * Update joystick docs * Fix joystick direction tests * Fix effect tests * Fix analyze issue * Update docs * Update docs * Move joystick to input export * Update packages/flame/lib/src/geometry/shape.dart Co-authored-by: Luan Nico <luanpotter27@gmail.com> * Add test and description for screenAngle * Update examples/lib/stories/controls/joystick_player.dart Co-authored-by: Erick <erickzanardoo@gmail.com> * Update doc/input.md Co-authored-by: Erick <erickzanardoo@gmail.com> * controls -> input in examples to align with export file * controls -> input * Add simple joystick example * Fix imports * velocity -> relativeDelta Co-authored-by: Luan Nico <luanpotter27@gmail.com> Co-authored-by: Erick <erickzanardoo@gmail.com>
49 lines
975 B
Dart
49 lines
975 B
Dart
import 'package:flame/game.dart';
|
|
import 'package:flame/input.dart';
|
|
import 'package:flame/timer.dart';
|
|
import 'package:flutter/material.dart';
|
|
|
|
class TimerGame extends Game with TapDetector {
|
|
final TextPaint textConfig = TextPaint(
|
|
config: const TextPaintConfig(
|
|
color: Color(0xFFFFFFFF),
|
|
),
|
|
);
|
|
late Timer countdown;
|
|
late Timer interval;
|
|
|
|
int elapsedSecs = 0;
|
|
|
|
@override
|
|
Future<void> onLoad() async {
|
|
countdown = Timer(2);
|
|
interval = Timer(
|
|
1,
|
|
callback: () => elapsedSecs += 1,
|
|
repeat: true,
|
|
);
|
|
interval.start();
|
|
}
|
|
|
|
@override
|
|
void onTapDown(_) {
|
|
countdown.start();
|
|
}
|
|
|
|
@override
|
|
void update(double dt) {
|
|
countdown.update(dt);
|
|
interval.update(dt);
|
|
}
|
|
|
|
@override
|
|
void render(Canvas canvas) {
|
|
textConfig.render(
|
|
canvas,
|
|
'Countdown: ${countdown.current}',
|
|
Vector2(10, 100),
|
|
);
|
|
textConfig.render(canvas, 'Elapsed time: $elapsedSecs', Vector2(10, 150));
|
|
}
|
|
}
|