From d41246b6f6a7fc4377f8b3f21bab6472b67e828d Mon Sep 17 00:00:00 2001 From: Syntriax Date: Sat, 28 Jun 2025 23:01:16 +0300 Subject: [PATCH] feat: pong reset scores on game start --- Shared/Behaviours/PongManagerBehaviour.cs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/Shared/Behaviours/PongManagerBehaviour.cs b/Shared/Behaviours/PongManagerBehaviour.cs index 4a827ea..3ce65ac 100644 --- a/Shared/Behaviours/PongManagerBehaviour.cs +++ b/Shared/Behaviours/PongManagerBehaviour.cs @@ -64,8 +64,7 @@ public class PongManagerBehaviour : Behaviour, INetworkEntity, IFirstFrameUpdate { ScoreLeft = ScoreRight = 0; - ball.ResetBall(); - ball.LaunchBall(GetBallLaunchDirection()); + PostScoreUpdate(); OnReset?.Invoke(this); } @@ -84,6 +83,7 @@ public class PongManagerBehaviour : Behaviour, INetworkEntity, IFirstFrameUpdate if (ScoreLeft > halfwayScore || ScoreRight > halfwayScore) { OnFinished?.Invoke(this); + logger?.Log(this, $"Game finished"); return; } @@ -109,10 +109,13 @@ public class PongManagerBehaviour : Behaviour, INetworkEntity, IFirstFrameUpdate void IPacketListenerServer.OnServerPacketArrived(IConnection sender, RequestStartPacket packet) { + logger?.Log(this, $"{sender} requested start"); if (ball.RigidBody.Velocity.MagnitudeSquared > 0.01f) return; + Reset(); ball.LaunchBall(GetBallLaunchDirection()); + logger?.Log(this, $"Game started"); } private class RequestStartPacket : INetworkPacket;