|
|
@ -15,12 +15,6 @@ class SpaceshipRamp extends Forge2DBlueprint {
|
|
|
|
/// {@macro spaceship_ramp}
|
|
|
|
/// {@macro spaceship_ramp}
|
|
|
|
SpaceshipRamp();
|
|
|
|
SpaceshipRamp();
|
|
|
|
|
|
|
|
|
|
|
|
/// Forwards the sprite to the next [SpaceshipRampArrowSpriteState].
|
|
|
|
|
|
|
|
///
|
|
|
|
|
|
|
|
/// If the current state is the last one it goes back to the initial state.
|
|
|
|
|
|
|
|
void progress() =>
|
|
|
|
|
|
|
|
firstChild<_SpaceshipRampArrowSpriteComponent>()?.progress();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@override
|
|
|
|
@override
|
|
|
|
void build(_) {
|
|
|
|
void build(_) {
|
|
|
|
addAllContactCallback([
|
|
|
|
addAllContactCallback([
|
|
|
@ -150,6 +144,7 @@ class _SpaceshipRampBackgroundRampSpriteComponent extends SpriteComponent
|
|
|
|
@override
|
|
|
|
@override
|
|
|
|
Future<void> onLoad() async {
|
|
|
|
Future<void> onLoad() async {
|
|
|
|
await super.onLoad();
|
|
|
|
await super.onLoad();
|
|
|
|
|
|
|
|
// TODO(ruimiguel): update asset correctly cut from the ramp opening.
|
|
|
|
final sprite = await gameRef.loadSprite(
|
|
|
|
final sprite = await gameRef.loadSprite(
|
|
|
|
Assets.images.spaceship.ramp.main.keyName,
|
|
|
|
Assets.images.spaceship.ramp.main.keyName,
|
|
|
|
);
|
|
|
|
);
|
|
|
@ -201,12 +196,6 @@ extension SpaceshipRampArrowSpriteStateX on SpaceshipRampArrowSpriteState {
|
|
|
|
return Assets.images.spaceship.ramp.arrow.fiveActive.keyName;
|
|
|
|
return Assets.images.spaceship.ramp.arrow.fiveActive.keyName;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/// Gives next sprite state
|
|
|
|
|
|
|
|
SpaceshipRampArrowSpriteState get next {
|
|
|
|
|
|
|
|
return SpaceshipRampArrowSpriteState
|
|
|
|
|
|
|
|
.values[(index + 1) % SpaceshipRampArrowSpriteState.values.length];
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
class _SpaceshipRampArrowSpriteComponent
|
|
|
|
class _SpaceshipRampArrowSpriteComponent
|
|
|
@ -215,8 +204,6 @@ class _SpaceshipRampArrowSpriteComponent
|
|
|
|
_SpaceshipRampArrowSpriteComponent()
|
|
|
|
_SpaceshipRampArrowSpriteComponent()
|
|
|
|
: super(priority: RenderPriority.spaceshipRampBackgroundRailing);
|
|
|
|
: super(priority: RenderPriority.spaceshipRampBackgroundRailing);
|
|
|
|
|
|
|
|
|
|
|
|
void progress() => current = current?.next;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@override
|
|
|
|
@override
|
|
|
|
Future<void> onLoad() async {
|
|
|
|
Future<void> onLoad() async {
|
|
|
|
await super.onLoad();
|
|
|
|
await super.onLoad();
|
|
|
@ -238,6 +225,7 @@ class _SpaceshipRampBoardOpeningSpriteComponent extends SpriteComponent
|
|
|
|
@override
|
|
|
|
@override
|
|
|
|
Future<void> onLoad() async {
|
|
|
|
Future<void> onLoad() async {
|
|
|
|
await super.onLoad();
|
|
|
|
await super.onLoad();
|
|
|
|
|
|
|
|
// TODO(ruimiguel): update asset correctly cut from the ramp background.
|
|
|
|
final sprite = await gameRef.loadSprite(
|
|
|
|
final sprite = await gameRef.loadSprite(
|
|
|
|
Assets.images.spaceship.ramp.boardOpening.keyName,
|
|
|
|
Assets.images.spaceship.ramp.boardOpening.keyName,
|
|
|
|
);
|
|
|
|
);
|
|
|
|