fix: launch ramp render issue

pull/174/head
Allison Ryan 4 years ago
parent 98f25242b6
commit 806020389d

@ -18,6 +18,7 @@ class ControlledBall extends Ball with Controls<BallController> {
required PinballTheme theme, required PinballTheme theme,
}) : super(baseColor: theme.characterTheme.ballColor) { }) : super(baseColor: theme.characterTheme.ballColor) {
controller = BallController(this); controller = BallController(this);
priority = LaunchRamp.ballPriorityInsideRamp;
} }
/// {@template bonus_ball} /// {@template bonus_ball}

@ -168,7 +168,7 @@ class DebugPinballGame extends PinballGame with TapDetector {
anchor: Anchor.center, anchor: Anchor.center,
) )
..position = Vector2(0, -7.8) ..position = Vector2(0, -7.8)
..priority = -2; ..priority = -4;
await add(spriteComponent); await add(spriteComponent);
} }

@ -13,7 +13,7 @@ class Boundaries extends Forge2DBlueprint {
final bottomBoundary = _BottomBoundary(); final bottomBoundary = _BottomBoundary();
final outerBoundary = _OuterBoundary(); final outerBoundary = _OuterBoundary();
addAll([bottomBoundary, outerBoundary]); addAll([outerBoundary, bottomBoundary]);
} }
} }
@ -23,7 +23,7 @@ class Boundaries extends Forge2DBlueprint {
/// {@endtemplate bottom_boundary} /// {@endtemplate bottom_boundary}
class _BottomBoundary extends BodyComponent with InitialPosition { class _BottomBoundary extends BodyComponent with InitialPosition {
/// {@macro bottom_boundary} /// {@macro bottom_boundary}
_BottomBoundary() : super(priority: 2); _BottomBoundary() : super(priority: 1);
List<FixtureDef> _createFixtureDefs() { List<FixtureDef> _createFixtureDefs() {
final fixturesDefs = <FixtureDef>[]; final fixturesDefs = <FixtureDef>[];
@ -88,7 +88,7 @@ class _BottomBoundarySpriteComponent extends SpriteComponent with HasGameRef {
/// {@endtemplate outer_boundary} /// {@endtemplate outer_boundary}
class _OuterBoundary extends BodyComponent with InitialPosition { class _OuterBoundary extends BodyComponent with InitialPosition {
/// {@macro outer_boundary} /// {@macro outer_boundary}
_OuterBoundary() : super(priority: -1); _OuterBoundary() : super(priority: LaunchRamp.ballPriorityInsideRamp - 1);
List<FixtureDef> _createFixtureDefs() { List<FixtureDef> _createFixtureDefs() {
final fixturesDefs = <FixtureDef>[]; final fixturesDefs = <FixtureDef>[];

@ -124,7 +124,7 @@ class _DinoTopWallSpriteComponent extends SpriteComponent with HasGameRef {
/// {@endtemplate} /// {@endtemplate}
class _DinoBottomWall extends BodyComponent with InitialPosition { class _DinoBottomWall extends BodyComponent with InitialPosition {
///{@macro dino_top_wall} ///{@macro dino_top_wall}
_DinoBottomWall() : super(priority: 1); _DinoBottomWall();
List<FixtureDef> _createFixtureDefs() { List<FixtureDef> _createFixtureDefs() {
final fixturesDef = <FixtureDef>[]; final fixturesDef = <FixtureDef>[];

@ -11,6 +11,9 @@ import 'package:pinball_components/pinball_components.dart';
/// [_LaunchRampForegroundRailing]. /// [_LaunchRampForegroundRailing].
/// {@endtemplate} /// {@endtemplate}
class LaunchRamp extends Forge2DBlueprint { class LaunchRamp extends Forge2DBlueprint {
/// Base priority for [Ball] while inside [LaunchRamp].
static const ballPriorityInsideRamp = -2;
@override @override
void build(_) { void build(_) {
addAllContactCallback([ addAllContactCallback([
@ -40,7 +43,7 @@ class LaunchRamp extends Forge2DBlueprint {
/// {@endtemplate} /// {@endtemplate}
class _LaunchRampBase extends BodyComponent with InitialPosition, Layered { class _LaunchRampBase extends BodyComponent with InitialPosition, Layered {
/// {@macro launch_ramp_base} /// {@macro launch_ramp_base}
_LaunchRampBase() : super(priority: -1) { _LaunchRampBase() : super(priority: LaunchRamp.ballPriorityInsideRamp - 1) {
layer = Layer.launcher; layer = Layer.launcher;
} }
@ -143,7 +146,8 @@ class _LaunchRampBaseSpriteComponent extends SpriteComponent with HasGameRef {
class _LaunchRampForegroundRailing extends BodyComponent class _LaunchRampForegroundRailing extends BodyComponent
with InitialPosition, Layered { with InitialPosition, Layered {
/// {@macro launch_ramp_foreground_railing} /// {@macro launch_ramp_foreground_railing}
_LaunchRampForegroundRailing() : super(priority: 1) { _LaunchRampForegroundRailing()
: super(priority: LaunchRamp.ballPriorityInsideRamp + 1) {
layer = Layer.launcher; layer = Layer.launcher;
} }
@ -227,7 +231,8 @@ class _LaunchRampExit extends RampOpening {
super( super(
insideLayer: Layer.launcher, insideLayer: Layer.launcher,
orientation: RampOrientation.down, orientation: RampOrientation.down,
insidePriority: 3, insidePriority: LaunchRamp.ballPriorityInsideRamp,
outsidePriority: 0,
); );
final double _rotation; final double _rotation;

Loading…
Cancel
Save