refactor: removed noise from class names
This commit is contained in:
parent
cd66eeeeef
commit
9bf6cabe23
2
Engine
2
Engine
@ -1 +1 @@
|
||||
Subproject commit bc1c76d746d01281ecaa3c6937e1990fd1dcdcfc
|
||||
Subproject commit c8bb991865c8efc99786a9a10767f08ce7b8709c
|
@ -43,7 +43,7 @@ Pong.PongUniverse.ApplyPongClient(universe, clientConfiguration.ServerAddress, c
|
||||
Pong.PongUniverse.ApplyPongUniverse(universe);
|
||||
|
||||
universe.InstantiateUniverseObject().SetUniverseObject("Desktop HO")
|
||||
.BehaviourController.AddBehaviour<KeyboardInputsBehaviour>();
|
||||
.BehaviourController.AddBehaviour<KeyboardInputs>();
|
||||
|
||||
using MonoGameWindow monoGameWindow = new(universe);
|
||||
|
||||
|
@ -5,9 +5,9 @@ using Syntriax.Engine.Systems.Tween;
|
||||
|
||||
namespace Pong.Behaviours;
|
||||
|
||||
public class BallBehaviour : Behaviour2D, IFirstFrameUpdate, IPhysicsUpdate, INetworkEntity,
|
||||
IPacketListenerClient<BallBehaviour.BallUpdatePacket>,
|
||||
IPacketListenerClient<BallBehaviour.BallResetPacket>
|
||||
public class Ball : Behaviour2D, IFirstFrameUpdate, IPhysicsUpdate, INetworkEntity,
|
||||
IPacketListenerClient<Ball.BallUpdatePacket>,
|
||||
IPacketListenerClient<Ball.BallResetPacket>
|
||||
{
|
||||
public float Speed { get; set; } = 500f;
|
||||
public float SpeedUpMultiplier { get; set; } = .025f;
|
||||
@ -62,8 +62,8 @@ public class BallBehaviour : Behaviour2D, IFirstFrameUpdate, IPhysicsUpdate, INe
|
||||
networkServer?.SendToAll(new BallUpdatePacket(this));
|
||||
}
|
||||
|
||||
public BallBehaviour() { }
|
||||
public BallBehaviour(float speed) => Speed = speed;
|
||||
public Ball() { }
|
||||
public Ball(float speed) => Speed = speed;
|
||||
|
||||
void IPacketListenerClient<BallResetPacket>.OnClientPacketArrived(IConnection sender, BallResetPacket packet) => ResetBall();
|
||||
void IPacketListenerClient<BallUpdatePacket>.OnClientPacketArrived(IConnection sender, BallUpdatePacket packet)
|
||||
@ -85,7 +85,7 @@ public class BallBehaviour : Behaviour2D, IFirstFrameUpdate, IPhysicsUpdate, INe
|
||||
public Vector2D Velocity { get; set; } = Vector2D.Zero;
|
||||
|
||||
public BallUpdatePacket() { }
|
||||
public BallUpdatePacket(BallBehaviour ballBehaviour)
|
||||
public BallUpdatePacket(Ball ballBehaviour)
|
||||
{
|
||||
Position = ballBehaviour.Transform.Position;
|
||||
Velocity = ballBehaviour.RigidBody.Velocity;
|
@ -8,14 +8,14 @@ namespace Pong.Behaviours;
|
||||
|
||||
public class CameraController : Behaviour, IFirstFrameUpdate, IUpdate
|
||||
{
|
||||
private MonoGameCamera2DBehaviour cameraBehaviour = null!;
|
||||
private MonoGameCamera2D cameraBehaviour = null!;
|
||||
private IButtonInputs<Keys> buttonInputs = null!;
|
||||
|
||||
private float defaultZoomLevel = 1f;
|
||||
|
||||
public void FirstActiveFrame()
|
||||
{
|
||||
cameraBehaviour = BehaviourController.GetRequiredBehaviour<MonoGameCamera2DBehaviour>();
|
||||
cameraBehaviour = BehaviourController.GetRequiredBehaviour<MonoGameCamera2D>();
|
||||
buttonInputs = Universe.FindRequiredBehaviour<IButtonInputs<Keys>>();
|
||||
|
||||
buttonInputs.RegisterOnPress(Keys.F, SwitchToFullScreen);
|
||||
|
@ -3,7 +3,7 @@ using Syntriax.Engine.Integration.MonoGame;
|
||||
|
||||
namespace Pong.Behaviours;
|
||||
|
||||
public class CircleBehaviour : Syntriax.Engine.Physics2D.Collider2DCircleBehaviour, IDrawableTriangle
|
||||
public class DrawableColliderCircle : Syntriax.Engine.Physics2D.Collider2DCircle, IDrawableTriangle
|
||||
{
|
||||
private const float CIRCLE_SEGMENT_COUNT = 32f;
|
||||
|
||||
@ -24,6 +24,6 @@ public class CircleBehaviour : Syntriax.Engine.Physics2D.Collider2DCircleBehavio
|
||||
}
|
||||
}
|
||||
|
||||
public CircleBehaviour(Circle circle) : base(circle) { }
|
||||
public CircleBehaviour(Circle circle, ColorRGBA color) : base(circle) { Color = color; }
|
||||
public DrawableColliderCircle(Circle circle) : base(circle) { }
|
||||
public DrawableColliderCircle(Circle circle, ColorRGBA color) : base(circle) { Color = color; }
|
||||
}
|
@ -5,7 +5,7 @@ using Syntriax.Engine.Integration.MonoGame;
|
||||
|
||||
namespace Pong.Behaviours;
|
||||
|
||||
public class ShapeBehaviour : Syntriax.Engine.Physics2D.Collider2DShapeBehaviour, IDrawableTriangle
|
||||
public class DrawableColliderShape : Syntriax.Engine.Physics2D.Collider2DShape, IDrawableTriangle
|
||||
{
|
||||
private readonly IList<Triangle> triangles = [];
|
||||
|
||||
@ -21,6 +21,6 @@ public class ShapeBehaviour : Syntriax.Engine.Physics2D.Collider2DShapeBehaviour
|
||||
triangleBatch.Draw(triangle, Color);
|
||||
}
|
||||
|
||||
public ShapeBehaviour(Shape2D shape) : base(shape) { }
|
||||
public ShapeBehaviour(Shape2D shape, ColorRGBA color) : base(shape) { Color = color; }
|
||||
public DrawableColliderShape(Shape2D shape) : base(shape) { }
|
||||
public DrawableColliderShape(Shape2D shape, ColorRGBA color) : base(shape) { Color = color; }
|
||||
}
|
@ -6,7 +6,7 @@ using Syntriax.Engine.Integration.MonoGame;
|
||||
|
||||
namespace Pong.Behaviours;
|
||||
|
||||
public class TextBehaviour : Behaviour2D, IDrawableSprite
|
||||
public class Label : Behaviour2D, IDrawableSprite
|
||||
{
|
||||
public SpriteFont? Font { get; set; } = null;
|
||||
public int Size { get; set; } = 16;
|
||||
@ -20,6 +20,6 @@ public class TextBehaviour : Behaviour2D, IDrawableSprite
|
||||
spriteBatch.DrawString(Font, Text, Transform.Position, Color.White, Transform.Rotation, Vector2D.One * .5f, Transform.Scale.Magnitude, SpriteEffects.None, 0f);
|
||||
}
|
||||
|
||||
public TextBehaviour() { }
|
||||
public TextBehaviour(SpriteFont font) => Font = font;
|
||||
public Label() { }
|
||||
public Label(SpriteFont font) => Font = font;
|
||||
}
|
@ -1,45 +0,0 @@
|
||||
using Syntriax.Engine.Core;
|
||||
using Syntriax.Engine.Physics2D;
|
||||
|
||||
namespace Pong.Behaviours;
|
||||
|
||||
public class MovementBallBehaviour : Behaviour2D, IFirstFrameUpdate, IUpdate
|
||||
{
|
||||
public Vector2D StartDirection { get; private set; } = Vector2D.Zero;
|
||||
public float Speed { get; set; } = 500f;
|
||||
public float SpeedUpMultiplier { get; set; } = .0125f;
|
||||
|
||||
private IRigidBody2D rigidBody = null!;
|
||||
|
||||
public void FirstActiveFrame()
|
||||
{
|
||||
rigidBody = BehaviourController.GetRequiredBehaviour<IRigidBody2D>();
|
||||
|
||||
rigidBody.Velocity = StartDirection * Speed;
|
||||
BehaviourController.GetRequiredBehaviour<ICollider2D>().OnCollisionDetected.AddListener(OnCollisionDetected);
|
||||
}
|
||||
|
||||
public void Update()
|
||||
{
|
||||
if (rigidBody.Velocity.MagnitudeSquared <= 0.01f)
|
||||
return;
|
||||
|
||||
Vector2D speedUp = rigidBody.Velocity.Normalized * Universe.Time.DeltaTime;
|
||||
rigidBody.Velocity += speedUp * SpeedUpMultiplier;
|
||||
}
|
||||
|
||||
private void OnCollisionDetected(ICollider2D collider2D, CollisionDetectionInformation information)
|
||||
{
|
||||
if (Syntriax.Engine.Core.Math.Abs(information.Normal.Dot(Vector2D.Right)) > .25)
|
||||
rigidBody.Velocity = information.Detector.Transform.Position.FromTo(information.Detected.Transform.Position).Normalized * rigidBody.Velocity.Magnitude;
|
||||
else
|
||||
rigidBody.Velocity = rigidBody.Velocity.Reflect(information.Normal);
|
||||
}
|
||||
|
||||
public MovementBallBehaviour() { }
|
||||
public MovementBallBehaviour(Vector2D startDirection, float speed)
|
||||
{
|
||||
StartDirection = Vector2D.Normalize(startDirection);
|
||||
Speed = speed;
|
||||
}
|
||||
}
|
@ -10,9 +10,9 @@ using Syntriax.Engine.Systems.Tween;
|
||||
|
||||
namespace Pong.Behaviours;
|
||||
|
||||
public class PaddleBehaviour(Keys Up, Keys Down, float High, float Low, float Speed) : Behaviour2D,
|
||||
public class Paddle(Keys Up, Keys Down, float High, float Low, float Speed) : Behaviour2D,
|
||||
IFirstFrameUpdate, IPhysicsIteration, IPostPhysicsUpdate,
|
||||
IPacketListenerServer<PaddleBehaviour.PaddleKeyStatePacket>, IPacketListenerClient<PaddleBehaviour.PaddleKeyStatePacket>
|
||||
IPacketListenerServer<Paddle.PaddleKeyStatePacket>, IPacketListenerClient<Paddle.PaddleKeyStatePacket>
|
||||
{
|
||||
private Keys Up { get; } = Up;
|
||||
private Keys Down { get; } = Down;
|
||||
@ -105,7 +105,7 @@ public class PaddleBehaviour(Keys Up, Keys Down, float High, float Low, float Sp
|
||||
public bool IsUpPressed { get; set; } = default!;
|
||||
public bool IsDownPressed { get; set; } = default!;
|
||||
|
||||
public PaddleKeyStatePacket Set(PaddleBehaviour paddleBehaviour)
|
||||
public PaddleKeyStatePacket Set(Paddle paddleBehaviour)
|
||||
{
|
||||
EntityId = paddleBehaviour.Id;
|
||||
Position = paddleBehaviour.Transform.Position;
|
||||
@ -116,6 +116,6 @@ public class PaddleBehaviour(Keys Up, Keys Down, float High, float Low, float Sp
|
||||
}
|
||||
|
||||
public PaddleKeyStatePacket() { }
|
||||
public PaddleKeyStatePacket(PaddleBehaviour paddleBehaviour) => Set(paddleBehaviour);
|
||||
public PaddleKeyStatePacket(Paddle paddleBehaviour) => Set(paddleBehaviour);
|
||||
}
|
||||
}
|
@ -9,16 +9,16 @@ using Syntriax.Engine.Systems.Input;
|
||||
|
||||
namespace Pong.Behaviours;
|
||||
|
||||
public class PongManagerBehaviour : Behaviour, INetworkEntity, IFirstFrameUpdate,
|
||||
IPacketListenerServer<PongManagerBehaviour.RequestStartPacket>,
|
||||
IPacketListenerClient<PongManagerBehaviour.ScorePacket>
|
||||
public class PongManager : Behaviour, INetworkEntity, IFirstFrameUpdate,
|
||||
IPacketListenerServer<PongManager.RequestStartPacket>,
|
||||
IPacketListenerClient<PongManager.ScorePacket>
|
||||
{
|
||||
public Action<PongManagerBehaviour>? OnReset { get; set; } = null;
|
||||
public Action<PongManagerBehaviour>? OnFinished { get; set; } = null;
|
||||
public Action<PongManagerBehaviour>? OnScoreUpdated { get; set; } = null;
|
||||
public Action<PongManager>? OnReset { get; set; } = null;
|
||||
public Action<PongManager>? OnFinished { get; set; } = null;
|
||||
public Action<PongManager>? OnScoreUpdated { get; set; } = null;
|
||||
|
||||
private Random random = new();
|
||||
private BallBehaviour ball = null!;
|
||||
private Ball ball = null!;
|
||||
|
||||
private INetworkCommunicatorClient? networkClient = null!;
|
||||
private INetworkCommunicatorServer? networkServer = null;
|
||||
@ -30,15 +30,15 @@ public class PongManagerBehaviour : Behaviour, INetworkEntity, IFirstFrameUpdate
|
||||
|
||||
public int WinScore { get; } = 5;
|
||||
|
||||
public PongManagerBehaviour() => WinScore = 5;
|
||||
public PongManagerBehaviour(int winScore) => WinScore = winScore;
|
||||
public PongManager() => WinScore = 5;
|
||||
public PongManager(int winScore) => WinScore = winScore;
|
||||
|
||||
public void FirstActiveFrame()
|
||||
{
|
||||
IButtonInputs<Keys>? buttonInputs = Universe.FindBehaviour<IButtonInputs<Keys>>();
|
||||
buttonInputs?.RegisterOnRelease(Keys.Space, (_, _1) => networkClient?.SendToServer(new RequestStartPacket()));
|
||||
|
||||
ball = Universe.FindRequiredBehaviour<BallBehaviour>();
|
||||
ball = Universe.FindRequiredBehaviour<Ball>();
|
||||
networkClient = Universe.FindBehaviour<INetworkCommunicatorClient>();
|
||||
networkServer = Universe.FindBehaviour<INetworkCommunicatorServer>();
|
||||
logger = Universe.FindBehaviour<ILogger>();
|
||||
@ -125,7 +125,7 @@ public class PongManagerBehaviour : Behaviour, INetworkEntity, IFirstFrameUpdate
|
||||
public int Right { get; set; }
|
||||
|
||||
public ScorePacket() { }
|
||||
public ScorePacket(PongManagerBehaviour pongManagerBehaviour)
|
||||
public ScorePacket(PongManager pongManagerBehaviour)
|
||||
{
|
||||
Left = pongManagerBehaviour.ScoreLeft;
|
||||
Right = pongManagerBehaviour.ScoreRight;
|
@ -5,18 +5,18 @@ using Syntriax.Engine.Integration.MonoGame;
|
||||
|
||||
namespace Pong.Behaviours;
|
||||
|
||||
public class TextScoreBehaviour(bool IsLeft) : TextBehaviour, IFirstFrameUpdate
|
||||
public class ScoreLabel(bool IsLeft) : Label, IFirstFrameUpdate
|
||||
{
|
||||
public readonly bool IsLeft = IsLeft;
|
||||
|
||||
private PongManagerBehaviour pongManager = null!;
|
||||
private PongManager pongManager = null!;
|
||||
|
||||
public void FirstActiveFrame()
|
||||
{
|
||||
MonoGameWindow monoGameWindow = Universe.FindRequiredBehaviour<MonoGameWindowContainer>().Window;
|
||||
Font = monoGameWindow.Content.Load<SpriteFont>("UbuntuMono");
|
||||
|
||||
pongManager = Universe.FindRequiredBehaviour<PongManagerBehaviour>();
|
||||
pongManager = Universe.FindRequiredBehaviour<PongManager>();
|
||||
|
||||
pongManager.OnScoreUpdated += UpdateScores;
|
||||
pongManager.OnReset += UpdateScores;
|
||||
@ -24,7 +24,7 @@ public class TextScoreBehaviour(bool IsLeft) : TextBehaviour, IFirstFrameUpdate
|
||||
UpdateScores(pongManager);
|
||||
}
|
||||
|
||||
private void UpdateScores(PongManagerBehaviour pongManager)
|
||||
private void UpdateScores(PongManager pongManager)
|
||||
{
|
||||
if (IsLeft)
|
||||
Text = pongManager.ScoreLeft.ToString();
|
@ -5,7 +5,7 @@ using Syntriax.Engine.Physics2D;
|
||||
|
||||
namespace Pong.Behaviours;
|
||||
|
||||
public class WallScoreBehaviour(Action OnCollision) : Behaviour2D, IFirstFrameUpdate
|
||||
public class ScoreWall(Action OnCollision) : Behaviour2D, IFirstFrameUpdate
|
||||
{
|
||||
private Action OnCollision { get; } = OnCollision;
|
||||
|
@ -30,17 +30,17 @@ public static class PongUniverse
|
||||
universe.InstantiateUniverseObject().SetUniverseObject("Camera")
|
||||
.BehaviourController.AddBehaviour<Transform2D>()
|
||||
.BehaviourController.AddBehaviour<CameraController>()
|
||||
.BehaviourController.AddBehaviour<MonoGameCamera2DBehaviour>();
|
||||
.BehaviourController.AddBehaviour<MonoGameCamera2D>();
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
universe.InstantiateUniverseObject().SetUniverseObject("Score Left")
|
||||
.BehaviourController.AddBehaviour<Transform2D>().SetTransform(position: new Vector2D(-250f, 250f), scale: Vector2D.One * .25f)
|
||||
.BehaviourController.AddBehaviour<TextScoreBehaviour>(true);
|
||||
.BehaviourController.AddBehaviour<ScoreLabel>(true);
|
||||
|
||||
universe.InstantiateUniverseObject().SetUniverseObject("Score Right")
|
||||
.BehaviourController.AddBehaviour<Transform2D>().SetTransform(position: new Vector2D(250f, 250f), scale: Vector2D.One * .25f)
|
||||
.BehaviourController.AddBehaviour<TextScoreBehaviour>(false);
|
||||
.BehaviourController.AddBehaviour<ScoreLabel>(false);
|
||||
|
||||
return universe;
|
||||
}
|
||||
@ -63,33 +63,33 @@ public static class PongUniverse
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
PongManagerBehaviour pongManager = universe.InstantiateUniverseObject().SetUniverseObject("Pong Game Manager")
|
||||
.BehaviourController.AddBehaviour<PongManagerBehaviour>(5);
|
||||
PongManager pongManager = universe.InstantiateUniverseObject().SetUniverseObject("Pong Game Manager")
|
||||
.BehaviourController.AddBehaviour<PongManager>(5);
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
universe.InstantiateUniverseObject().SetUniverseObject("Ball")
|
||||
.BehaviourController.AddBehaviour<Transform2D>().SetTransform(position: new Vector2D(0, 0f), scale: new Vector2D(10f, 10f))
|
||||
.BehaviourController.AddBehaviour<CircleBehaviour>(new Circle(Vector2D.Zero, 1f))
|
||||
.BehaviourController.AddBehaviour<BallBehaviour>()
|
||||
.BehaviourController.AddBehaviour<DrawableColliderCircle>(new Circle(Vector2D.Zero, 1f))
|
||||
.BehaviourController.AddBehaviour<Ball>()
|
||||
.BehaviourController.AddBehaviour<RigidBody2D>();
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
IUniverseObject leftPaddle = UniverseObjectFactory.Instantiate().SetUniverseObject("Left Paddle");
|
||||
leftPaddle.BehaviourController.AddBehaviour<Transform2D>().SetTransform(position: new Vector2D(-468f, 0f), scale: new Vector2D(15f, 60f))
|
||||
.BehaviourController.AddBehaviour<ShapeBehaviour>(Shape2D.Square)
|
||||
.BehaviourController.AddBehaviour<DrawableColliderShape>(Shape2D.Square)
|
||||
.BehaviourController.AddBehaviour<RigidBody2D>().IsStatic = true;
|
||||
PaddleBehaviour leftPaddleBehaviour = BehaviourFactory.Instantiate<PaddleBehaviour>(Keys.W, Keys.S, 228f, -228f, 400f);
|
||||
Paddle leftPaddleBehaviour = BehaviourFactory.Instantiate<Paddle>(Keys.W, Keys.S, 228f, -228f, 400f);
|
||||
leftPaddleBehaviour.Id = "lp";
|
||||
leftPaddle.BehaviourController.AddBehaviour(leftPaddleBehaviour);
|
||||
universe.Register(leftPaddle);
|
||||
|
||||
IUniverseObject rightPaddle = UniverseObjectFactory.Instantiate().SetUniverseObject("Right Paddle");
|
||||
rightPaddle.BehaviourController.AddBehaviour<Transform2D>().SetTransform(position: new Vector2D(468f, 0f), scale: new Vector2D(15f, 60f))
|
||||
.BehaviourController.AddBehaviour<ShapeBehaviour>(Shape2D.Square)
|
||||
.BehaviourController.AddBehaviour<DrawableColliderShape>(Shape2D.Square)
|
||||
.BehaviourController.AddBehaviour<RigidBody2D>().IsStatic = true;
|
||||
PaddleBehaviour rightPaddleBehaviour = BehaviourFactory.Instantiate<PaddleBehaviour>(Keys.Up, Keys.Down, 228f, -228f, 400f);
|
||||
Paddle rightPaddleBehaviour = BehaviourFactory.Instantiate<Paddle>(Keys.Up, Keys.Down, 228f, -228f, 400f);
|
||||
rightPaddleBehaviour.Id = "rp";
|
||||
rightPaddle.BehaviourController.AddBehaviour(rightPaddleBehaviour);
|
||||
universe.Register(rightPaddle);
|
||||
@ -98,24 +98,24 @@ public static class PongUniverse
|
||||
|
||||
universe.InstantiateUniverseObject().SetUniverseObject("Wall Top")
|
||||
.BehaviourController.AddBehaviour<Transform2D>().SetTransform(position: new Vector2D(0f, 308f), scale: new Vector2D(552f, 20f))
|
||||
.BehaviourController.AddBehaviour<ShapeBehaviour>(Shape2D.Square)
|
||||
.BehaviourController.AddBehaviour<DrawableColliderShape>(Shape2D.Square)
|
||||
.BehaviourController.AddBehaviour<RigidBody2D>().IsStatic = true;
|
||||
|
||||
universe.InstantiateUniverseObject().SetUniverseObject("Wall Bottom")
|
||||
.BehaviourController.AddBehaviour<Transform2D>().SetTransform(position: new Vector2D(0f, -308f), scale: new Vector2D(552f, 20f))
|
||||
.BehaviourController.AddBehaviour<ShapeBehaviour>(Shape2D.Square)
|
||||
.BehaviourController.AddBehaviour<DrawableColliderShape>(Shape2D.Square)
|
||||
.BehaviourController.AddBehaviour<RigidBody2D>().IsStatic = true;
|
||||
|
||||
universe.InstantiateUniverseObject().SetUniverseObject("Wall Right")
|
||||
.BehaviourController.AddBehaviour<Transform2D>().SetTransform(position: new Vector2D(532f, 0f), scale: new Vector2D(20f, 328f))
|
||||
.BehaviourController.AddBehaviour<WallScoreBehaviour>((Action)pongManager.ScoreToLeft)
|
||||
.BehaviourController.AddBehaviour<ShapeBehaviour>(Shape2D.Square)
|
||||
.BehaviourController.AddBehaviour<ScoreWall>((Action)pongManager.ScoreToLeft)
|
||||
.BehaviourController.AddBehaviour<DrawableColliderShape>(Shape2D.Square)
|
||||
.BehaviourController.AddBehaviour<RigidBody2D>().IsStatic = true;
|
||||
|
||||
universe.InstantiateUniverseObject().SetUniverseObject("Wall Left")
|
||||
.BehaviourController.AddBehaviour<Transform2D>().SetTransform(position: new Vector2D(-532f, 0f), scale: new Vector2D(20f, 328f))
|
||||
.BehaviourController.AddBehaviour<WallScoreBehaviour>((Action)pongManager.ScoreToRight)
|
||||
.BehaviourController.AddBehaviour<ShapeBehaviour>(Shape2D.Square)
|
||||
.BehaviourController.AddBehaviour<ScoreWall>((Action)pongManager.ScoreToRight)
|
||||
.BehaviourController.AddBehaviour<DrawableColliderShape>(Shape2D.Square)
|
||||
.BehaviourController.AddBehaviour<RigidBody2D>().IsStatic = true;
|
||||
|
||||
return universe;
|
||||
|
Loading…
x
Reference in New Issue
Block a user