refactor: added server project

This commit is contained in:
2025-06-06 23:54:03 +03:00
parent b835fb1582
commit 2294c06bf9
9 changed files with 142 additions and 66 deletions

View File

@@ -22,7 +22,7 @@ public class PaddleBehaviour(Keys Up, Keys Down, float High, float Low, float Sp
private bool isUpPressed = false;
private bool isDownPressed = false;
private IButtonInputs<Keys> inputs = null!;
private IButtonInputs<Keys>? inputs = null;
private INetworkCommunicatorClient? networkClient = null!;
private INetworkCommunicatorServer? networkServer = null;
private IRigidBody2D rigidBody = null!;
@@ -44,25 +44,25 @@ public class PaddleBehaviour(Keys Up, Keys Down, float High, float Low, float Sp
public void FirstActiveFrame()
{
physicsEngine2D = Universe.FindRequiredBehaviour<IPhysicsEngine2D>();
inputs = Universe.FindRequiredBehaviour<IButtonInputs<Keys>>();
inputs = Universe.FindBehaviour<IButtonInputs<Keys>>();
networkClient = Universe.FindBehaviour<INetworkCommunicatorClient>();
networkServer = Universe.FindBehaviour<INetworkCommunicatorServer>();
rigidBody = BehaviourController.GetRequiredBehaviour<IRigidBody2D>();
inputs.RegisterOnPress(Up, OnUpPressed);
inputs.RegisterOnRelease(Up, OnUpReleased);
inputs?.RegisterOnPress(Up, OnUpPressed);
inputs?.RegisterOnRelease(Up, OnUpReleased);
inputs.RegisterOnPress(Down, OnDownPressed);
inputs.RegisterOnRelease(Down, OnDownReleased);
inputs?.RegisterOnPress(Down, OnDownPressed);
inputs?.RegisterOnRelease(Down, OnDownReleased);
}
protected override void OnFinalize()
{
inputs.UnregisterOnPress(Up, OnUpPressed);
inputs.UnregisterOnRelease(Up, OnUpReleased);
inputs?.UnregisterOnPress(Up, OnUpPressed);
inputs?.UnregisterOnRelease(Up, OnUpReleased);
inputs.UnregisterOnPress(Down, OnDownPressed);
inputs.UnregisterOnRelease(Down, OnDownReleased);
inputs?.UnregisterOnPress(Down, OnDownPressed);
inputs?.UnregisterOnRelease(Down, OnDownReleased);
}
private void OnUpPressed(IButtonInputs<Keys> sender, IButtonInputs<Keys>.ButtonCallbackArguments args) { isUpPressed = true; networkClient?.SendToServer(new PaddleKeyStatePacket(this)); }

View File

@@ -32,8 +32,8 @@ public class PongManagerBehaviour : Behaviour, INetworkEntity, IFirstFrameUpdate
public void FirstActiveFrame()
{
IButtonInputs<Keys> buttonInputs = Universe.FindRequired<IButtonInputs<Keys>>();
buttonInputs.RegisterOnRelease(Keys.Space, (_, _1) => networkClient?.SendToServer(new RequestStartPacket()));
IButtonInputs<Keys>? buttonInputs = Universe.FindBehaviour<IButtonInputs<Keys>>();
buttonInputs?.RegisterOnRelease(Keys.Space, (_, _1) => networkClient?.SendToServer(new RequestStartPacket()));
ball = Universe.FindRequiredBehaviour<BallBehaviour>();
networkClient = Universe.FindBehaviour<INetworkCommunicatorClient>();