35 lines
814 B
Dart
35 lines
814 B
Dart
|
|
import 'package:flame/components.dart';
|
||
|
|
import 'package:flame/events.dart';
|
||
|
|
import 'package:flame/input.dart';
|
||
|
|
import 'package:funny_letters/gen/assets.gen.dart';
|
||
|
|
|
||
|
|
import '../../funny_letters.dart';
|
||
|
|
|
||
|
|
class BackButtonComponent extends PositionComponent with TapCallbacks, HasGameRef {
|
||
|
|
final void Function() onPressed;
|
||
|
|
|
||
|
|
BackButtonComponent({
|
||
|
|
required this.onPressed,
|
||
|
|
Vector2? position,
|
||
|
|
Vector2? size,
|
||
|
|
}) : super(position: position, size: size);
|
||
|
|
|
||
|
|
@override
|
||
|
|
Future<void> onLoad() async {
|
||
|
|
await super.onLoad();
|
||
|
|
final sprite = await gameRef.loadSprite(Assets.images.icons.back.path);
|
||
|
|
add(
|
||
|
|
SpriteComponent(
|
||
|
|
sprite: sprite,
|
||
|
|
size: size ?? Vector2(29, 29),
|
||
|
|
),
|
||
|
|
);
|
||
|
|
}
|
||
|
|
|
||
|
|
@override
|
||
|
|
bool onTapDown(TapDownEvent info) {
|
||
|
|
onPressed();
|
||
|
|
return true;
|
||
|
|
}
|
||
|
|
}
|