fix: server platform build issues
This commit is contained in:
2
.vscode/launch.json
vendored
2
.vscode/launch.json
vendored
@@ -38,7 +38,7 @@
|
|||||||
"type": "coreclr",
|
"type": "coreclr",
|
||||||
"request": "launch",
|
"request": "launch",
|
||||||
"preLaunchTask": "build-server",
|
"preLaunchTask": "build-server",
|
||||||
"program": "${workspaceFolder}/Platforms/Server/bin/Debug/net9.0/Server.dll",
|
"program": "${workspaceFolder}/Platforms/Server/bin/Debug/net9.0/MyUniverse.dll",
|
||||||
"args": [],
|
"args": [],
|
||||||
"env": {
|
"env": {
|
||||||
"PORT": "8888",
|
"PORT": "8888",
|
||||||
|
|||||||
@@ -50,6 +50,7 @@ namespace MyUniverse.Platforms.Android
|
|||||||
universe.OnPreUpdate.AddOneTimeListener((_, _) => client.Connect("localhost", 8888));
|
universe.OnPreUpdate.AddOneTimeListener((_, _) => client.Connect("localhost", 8888));
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
Shared.UniverseSource.ApplyClient(universe);
|
||||||
Shared.UniverseSource.ApplyUniverse(universe);
|
Shared.UniverseSource.ApplyUniverse(universe);
|
||||||
|
|
||||||
_game = new MonoGameWindow(universe);
|
_game = new MonoGameWindow(universe);
|
||||||
|
|||||||
@@ -38,6 +38,7 @@ client.BehaviourController.AddBehaviour<NetworkManager>();
|
|||||||
universe.OnPreUpdate.AddOneTimeListener((_, _) => client.Connect("localhost", 8888));
|
universe.OnPreUpdate.AddOneTimeListener((_, _) => client.Connect("localhost", 8888));
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
MyUniverse.Shared.UniverseSource.ApplyClient(universe);
|
||||||
MyUniverse.Shared.UniverseSource.ApplyUniverse(universe);
|
MyUniverse.Shared.UniverseSource.ApplyUniverse(universe);
|
||||||
|
|
||||||
monoGameWindow.Graphics.GraphicsProfile = GraphicsProfile.HiDef;
|
monoGameWindow.Graphics.GraphicsProfile = GraphicsProfile.HiDef;
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ using Microsoft.Extensions.DependencyInjection;
|
|||||||
using Engine.Core;
|
using Engine.Core;
|
||||||
using Engine.Systems.Network;
|
using Engine.Systems.Network;
|
||||||
|
|
||||||
namespace Server;
|
namespace MyUniverse.Platforms.Server;
|
||||||
|
|
||||||
public class Endpoints : Behaviour, IFirstFrameUpdate, ILastFrameUpdate
|
public class Endpoints : Behaviour, IFirstFrameUpdate, ILastFrameUpdate
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -5,6 +5,8 @@ using Engine.Core;
|
|||||||
using Engine.Core.Debug;
|
using Engine.Core.Debug;
|
||||||
using Engine.Systems.Network;
|
using Engine.Systems.Network;
|
||||||
|
|
||||||
|
using MyUniverse.Platforms.Server;
|
||||||
|
|
||||||
Universe universe = new();
|
Universe universe = new();
|
||||||
|
|
||||||
RotatingFileLogger fileLogger = new("Logs", "MyGame", DateTime.UtcNow.ToString("yyyy-MM-dd_HH-mm-ss-ffffff"));
|
RotatingFileLogger fileLogger = new("Logs", "MyGame", DateTime.UtcNow.ToString("yyyy-MM-dd_HH-mm-ss-ffffff"));
|
||||||
@@ -14,9 +16,13 @@ universe.InstantiateUniverseObject().SetUniverseObject("Logger")
|
|||||||
.BehaviourController.AddBehaviour<LoggerContainer>();
|
.BehaviourController.AddBehaviour<LoggerContainer>();
|
||||||
|
|
||||||
LiteNetLibServer server = universe.InstantiateUniverseObject().SetUniverseObject("Server").BehaviourController.AddBehaviour<LiteNetLibServer>();
|
LiteNetLibServer server = universe.InstantiateUniverseObject().SetUniverseObject("Server").BehaviourController.AddBehaviour<LiteNetLibServer>();
|
||||||
|
|
||||||
|
server.BehaviourController.AddBehaviour<Endpoints>();
|
||||||
server.BehaviourController.AddBehaviour<NetworkManager>();
|
server.BehaviourController.AddBehaviour<NetworkManager>();
|
||||||
|
|
||||||
universe.OnPreUpdate.AddOneTimeListener((_, _) => server.Start(8888, 2));
|
universe.OnPreUpdate.AddOneTimeListener((_, _) => server.Start(8888, 2));
|
||||||
|
|
||||||
|
MyUniverse.Shared.UniverseSource.ApplyCore(universe);
|
||||||
MyUniverse.Shared.UniverseSource.ApplyUniverse(universe);
|
MyUniverse.Shared.UniverseSource.ApplyUniverse(universe);
|
||||||
|
|
||||||
DateTime lastRun = DateTime.UtcNow;
|
DateTime lastRun = DateTime.UtcNow;
|
||||||
|
|||||||
@@ -8,14 +8,14 @@ namespace MyUniverse.Shared.Behaviours;
|
|||||||
public class RotatorToggler : Behaviour2D, IFirstFrameUpdate, ILastFrameUpdate
|
public class RotatorToggler : Behaviour2D, IFirstFrameUpdate, ILastFrameUpdate
|
||||||
{
|
{
|
||||||
private IRotator rotator = null!;
|
private IRotator rotator = null!;
|
||||||
private IGameInputs inputs = null!;
|
private IGameInputs? inputs = null;
|
||||||
|
|
||||||
public void FirstActiveFrame()
|
public void FirstActiveFrame()
|
||||||
{
|
{
|
||||||
rotator = BehaviourController.GetRequiredBehaviour<IRotator>();
|
rotator = BehaviourController.GetRequiredBehaviour<IRotator>();
|
||||||
inputs = Universe.FindRequiredBehaviour<IGameInputs>();
|
inputs = Universe.FindBehaviour<IGameInputs>();
|
||||||
|
|
||||||
inputs.RegisterOnPress(IGameInputs.Button.Interact, ToggleRotator);
|
inputs?.RegisterOnPress(IGameInputs.Button.Interact, ToggleRotator);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ToggleRotator(IButtonInputs<IGameInputs.Button> sender, IButtonInputs<IGameInputs.Button>.ButtonCallbackArguments args)
|
private void ToggleRotator(IButtonInputs<IGameInputs.Button> sender, IButtonInputs<IGameInputs.Button>.ButtonCallbackArguments args)
|
||||||
@@ -25,6 +25,7 @@ public class RotatorToggler : Behaviour2D, IFirstFrameUpdate, ILastFrameUpdate
|
|||||||
|
|
||||||
public void LastActiveFrame()
|
public void LastActiveFrame()
|
||||||
{
|
{
|
||||||
inputs.UnregisterOnPress(IGameInputs.Button.Interact, ToggleRotator);
|
inputs?.UnregisterOnPress(IGameInputs.Button.Interact, ToggleRotator);
|
||||||
|
inputs = null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -12,12 +12,21 @@ public static class UniverseSource
|
|||||||
public static void ApplyCore(IUniverse universe)
|
public static void ApplyCore(IUniverse universe)
|
||||||
{
|
{
|
||||||
IUniverseObject coreManagersUO = universe.InstantiateUniverseObject().SetUniverseObject("Core Managers");
|
IUniverseObject coreManagersUO = universe.InstantiateUniverseObject().SetUniverseObject("Core Managers");
|
||||||
|
|
||||||
coreManagersUO.AddChild(universe.InstantiateUniverseObject().SetUniverseObject("Entrance Manager").BehaviourController.AddBehaviour<UniverseEntranceManager>().UniverseObject);
|
coreManagersUO.AddChild(universe.InstantiateUniverseObject().SetUniverseObject("Entrance Manager").BehaviourController.AddBehaviour<UniverseEntranceManager>().UniverseObject);
|
||||||
coreManagersUO.AddChild(universe.InstantiateUniverseObject().SetUniverseObject("Update Manager").BehaviourController.AddBehaviour<UpdateManager>().UniverseObject);
|
coreManagersUO.AddChild(universe.InstantiateUniverseObject().SetUniverseObject("Update Manager").BehaviourController.AddBehaviour<UpdateManager>().UniverseObject);
|
||||||
coreManagersUO.AddChild(universe.InstantiateUniverseObject().SetUniverseObject("Coroutine Manager").BehaviourController.AddBehaviour<CoroutineManager>().UniverseObject);
|
coreManagersUO.AddChild(universe.InstantiateUniverseObject().SetUniverseObject("Coroutine Manager").BehaviourController.AddBehaviour<CoroutineManager>().UniverseObject);
|
||||||
coreManagersUO.AddChild(universe.InstantiateUniverseObject().SetUniverseObject("Tween Manager").BehaviourController.AddBehaviour<TweenManager>().UniverseObject);
|
coreManagersUO.AddChild(universe.InstantiateUniverseObject().SetUniverseObject("Tween Manager").BehaviourController.AddBehaviour<TweenManager>().UniverseObject);
|
||||||
coreManagersUO.AddChild(universe.InstantiateUniverseObject().SetUniverseObject("Sprite Batcher").BehaviourController.AddBehaviour<SpriteBatcher>().UniverseObject);
|
}
|
||||||
coreManagersUO.AddChild(universe.InstantiateUniverseObject().SetUniverseObject("Triangle Batcher").BehaviourController.AddBehaviour<TriangleBatcher>().UniverseObject);
|
|
||||||
|
public static void ApplyClient(IUniverse universe)
|
||||||
|
{
|
||||||
|
ApplyCore(universe);
|
||||||
|
|
||||||
|
IUniverseObject clientManagersUO = universe.InstantiateUniverseObject().SetUniverseObject("Core Managers");
|
||||||
|
clientManagersUO.AddChild(universe.InstantiateUniverseObject().SetUniverseObject("Sprite Batcher").BehaviourController.AddBehaviour<SpriteBatcher>().UniverseObject);
|
||||||
|
clientManagersUO.AddChild(universe.InstantiateUniverseObject().SetUniverseObject("Triangle Batcher").BehaviourController.AddBehaviour<TriangleBatcher>().UniverseObject);
|
||||||
|
|
||||||
|
|
||||||
MonoGameCamera2D camera = universe.InstantiateUniverseObject().SetUniverseObject("Camera")
|
MonoGameCamera2D camera = universe.InstantiateUniverseObject().SetUniverseObject("Camera")
|
||||||
.BehaviourController.AddBehaviour<Transform2D>()
|
.BehaviourController.AddBehaviour<Transform2D>()
|
||||||
@@ -28,8 +37,6 @@ public static class UniverseSource
|
|||||||
|
|
||||||
public static void ApplyUniverse(IUniverse universe)
|
public static void ApplyUniverse(IUniverse universe)
|
||||||
{
|
{
|
||||||
ApplyCore(universe);
|
|
||||||
|
|
||||||
IUniverseObject exampleObject = universe.InstantiateUniverseObject().SetUniverseObject("Example Object");
|
IUniverseObject exampleObject = universe.InstantiateUniverseObject().SetUniverseObject("Example Object");
|
||||||
ExampleBehaviour exampleBehaviour = exampleObject.BehaviourController.AddBehaviour<ExampleBehaviour>();
|
ExampleBehaviour exampleBehaviour = exampleObject.BehaviourController.AddBehaviour<ExampleBehaviour>();
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user