From cd80d8f4c85c402fe1011ba49007195c6e81b80e Mon Sep 17 00:00:00 2001 From: SlyVTT Date: Thu, 1 Jun 2023 13:00:45 +0200 Subject: [PATCH] added gate locker [WIP] - train development --- Pinball.g3a | Bin 248492 -> 249772 bytes README.md | 2 +- src/main.cpp | 41 ++++++++++++++++++++++++++++------------- src/pinball_entities.h | 11 ++++++++++- src/tables.h | 13 +++++++++++++ 5 files changed, 52 insertions(+), 15 deletions(-) diff --git a/Pinball.g3a b/Pinball.g3a index 2a66ad47cfad4b2fb201766d64ab3f988c3fa98b..f43a62b0cefe595c9faf4559f6f928c6587ac7d3 100644 GIT binary patch delta 22975 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 MebMcR~ULvatjKNoRquXHOK6RX~C1kVFV3 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

P`-&NrShn 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 = color; this->points = points; } - + ~Obstacle() {} Obstacle() {} libnum::num32 radius, pushVel; @@ -70,7 +70,16 @@ public: this->points = points; } + void Set( Target t ) + { + this->radius = t.radius; + this->pos = t.pos.Clone(); + this->color = t.color; + this->points = t.points; + } + Target() {} + ~Target() {} libnum::num32 radius; Vector2D pos; diff --git a/src/tables.h b/src/tables.h index 2a40c07..9a818fd 100644 --- a/src/tables.h +++ b/src/tables.h @@ -395,6 +395,19 @@ void Setup_Table_4(void) { MyPinball.borders.push_back( Vector2D(libnum::num32(0.26), libnum::num32(0.02))); MyPinball.borders.push_back( Vector2D(libnum::num32(0.74), libnum::num32(0.02))); + MyPinball.has_locker = true; + MyPinball.locker.clear(); + MyPinball.locker.push_back( Vector2D(libnum::num32(0.90), libnum::num32(1.46))); + MyPinball.locker.push_back( Vector2D(libnum::num32(1.11), libnum::num32(1.20))); + MyPinball.locker.push_back( Vector2D(libnum::num32(1.11), libnum::num32(1.10))); + MyPinball.locker.push_back( Vector2D(libnum::num32(1.04), libnum::num32(1.10))); + MyPinball.locker.push_back( Vector2D(libnum::num32(0.98), libnum::num32(1.10))); + MyPinball.locker.push_back( Vector2D(libnum::num32(0.98), libnum::num32(1.20))); + MyPinball.locker.push_back( Vector2D(libnum::num32(0.96), libnum::num32(1.34))); + MyPinball.locker_is_enabled = false; +// Target MyTarget( 0.06, Vector2D(libnum::num32(0.90), libnum::num32(1.40)), RGB565_APPLEGREEN, 0); +// MyPinball.Locker_enabler.Set( MyTarget ); + MyPinball.balls.clear(); libnum::num32 ball_radius = libnum::num32(0.03); libnum::num32 ball_mass = libnum::num32(PI) * ball_radius * ball_radius;