mnemo_cards/funny_letters/lib/runner/bonuses/health_bonus.dart

51 lines
1.2 KiB
Dart
Raw Normal View History

2025-11-10 23:55:41 +00:00
import 'dart:async';
import 'dart:ui';
import 'package:flame/collisions.dart';
import 'package:funny_letters/runner/bonuses/bonus.dart';
import 'package:funny_letters/runner/player.dart';
import 'package:flame/components.dart';
import 'package:funny_letters/gen/assets.gen.dart';
import '../../main.dart';
import 'letter_bonus.dart';
class HealthBonus extends PositionComponent with CollisionCallbacks, Bonus, HasGameRef {
HealthBonus(Vector2 size) {
this.size = size;
}
@override
FutureOr<void> onLoad() async {
final sprite = await gameRef.loadSprite(Assets.images.match3Heart.path);
addAll(
[
RoundedComponent(
size: size,
color: const Color(0xffE7513D),
cornerRadius: size.x / 6,
shadow: true,
),
SpriteComponent(
sprite: sprite,
anchor: Anchor.center,
position: size * 0.5,
size: size,
),
RectangleHitbox(
size: this.size * 0.9,
position: size / 2,
anchor: Anchor.center,
),
],
);
}
@override
Future<void> activate(Player player) async {
super.activate(player);
player.heal();
}
}