diff --git a/Engine/Client/Implementations/NetworkedDataReceiver.cs b/Engine/Client/Implementations/NetworkedDataReceiver.cs index 323c272..eabca4b 100644 --- a/Engine/Client/Implementations/NetworkedDataReceiver.cs +++ b/Engine/Client/Implementations/NetworkedDataReceiver.cs @@ -7,7 +7,7 @@ using Lockstep.Network.Utils; namespace Lockstep.Client.Implementations -{ +{ public class NetworkedDataReceiver : IDataReceiver { private readonly INetwork _network; diff --git a/Engine/Client/Simulation.cs b/Engine/Client/Simulation.cs index 29b78fa..a4b56bc 100644 --- a/Engine/Client/Simulation.cs +++ b/Engine/Client/Simulation.cs @@ -5,10 +5,6 @@ namespace Lockstep.Client { - /// - /// This simulation listens for received data from the client and reacts accordingly. 'Executed' commands are first sent to the server. - /// The final execution is done when the corresponding frame-packet arrives - this adds minimum 1 RTT delay to commands. - /// public class Simulation { public event EventHandler Started; diff --git a/Engine/Core/Core.csproj b/Engine/Core/Core.csproj index bd29235..6efb347 100644 --- a/Engine/Core/Core.csproj +++ b/Engine/Core/Core.csproj @@ -128,6 +128,7 @@ + diff --git a/Engine/Core/Features/InputFeature.cs b/Engine/Core/Features/InputFeature.cs index 13e6e87..a1527ba 100644 --- a/Engine/Core/Features/InputFeature.cs +++ b/Engine/Core/Features/InputFeature.cs @@ -11,7 +11,9 @@ public InputFeature(Contexts contexts, ServiceContainer serviceContainer) //TODO: Add InputValidationSystem by matching input with playerId Add(new EmitInput(contexts)); - Add(new OnSpawnInputDoLoadEntityIntoGame(contexts, serviceContainer.Get())); + Add(new OnSpawnInputDoLoadEntityIntoGame(contexts, serviceContainer.Get())); + + Add(new CleanupInput(contexts)); } } } diff --git a/Engine/Core/Systems/Input/CleanupInput.cs b/Engine/Core/Systems/Input/CleanupInput.cs new file mode 100644 index 0000000..8d36c9b --- /dev/null +++ b/Engine/Core/Systems/Input/CleanupInput.cs @@ -0,0 +1,19 @@ +using Entitas; + +namespace Lockstep.Core.Systems.Input +{ + public class CleanupInput : ICleanupSystem + { + private readonly InputContext _inputContext; + + public CleanupInput(Contexts contexts) + { + _inputContext = contexts.input; + } + + public void Cleanup() + { + _inputContext.DestroyAllEntities(); + } + } +} diff --git a/Engine/Server/Room.cs b/Engine/Server/Room.cs index b89dfa3..39164b0 100644 --- a/Engine/Server/Room.cs +++ b/Engine/Server/Room.cs @@ -9,7 +9,7 @@ namespace Server { public class Room { - private const int TargetFps = 20; + private const int TargetFps = 50; private byte _nextPlayerId; private readonly int _size; diff --git a/Engine/Test/InputTests.cs b/Engine/Test/InputTests.cs index 5207c4a..6dee638 100644 --- a/Engine/Test/InputTests.cs +++ b/Engine/Test/InputTests.cs @@ -39,7 +39,7 @@ public void TestGameEntityHasUniqueId() [Fact] public void TestCommandIsExecuted() { - var command = new Mock(); + var command = new Mock(); new Simulation(new LockstepSystems(new Contexts()), new LocalDataReceiver()).Execute(command.Object); diff --git a/Unity/Assets/Integration/Lockstep.Client.dll b/Unity/Assets/Integration/Lockstep.Client.dll index 0c5f07f..296ce08 100644 Binary files a/Unity/Assets/Integration/Lockstep.Client.dll and b/Unity/Assets/Integration/Lockstep.Client.dll differ diff --git a/Unity/Assets/Integration/Lockstep.Client.pdb b/Unity/Assets/Integration/Lockstep.Client.pdb index 9d2fa56..9fc8a5d 100644 Binary files a/Unity/Assets/Integration/Lockstep.Client.pdb and b/Unity/Assets/Integration/Lockstep.Client.pdb differ diff --git a/Unity/Assets/Integration/Lockstep.Core.dll b/Unity/Assets/Integration/Lockstep.Core.dll index 589d51b..19e2fdf 100644 Binary files a/Unity/Assets/Integration/Lockstep.Core.dll and b/Unity/Assets/Integration/Lockstep.Core.dll differ diff --git a/Unity/Assets/Integration/Lockstep.Core.dll.mdb b/Unity/Assets/Integration/Lockstep.Core.dll.mdb index 0037984..2db2c55 100644 Binary files a/Unity/Assets/Integration/Lockstep.Core.dll.mdb and b/Unity/Assets/Integration/Lockstep.Core.dll.mdb differ diff --git a/Unity/Assets/Integration/Lockstep.Core.pdb b/Unity/Assets/Integration/Lockstep.Core.pdb index 6b12dc6..4580f64 100644 Binary files a/Unity/Assets/Integration/Lockstep.Core.pdb and b/Unity/Assets/Integration/Lockstep.Core.pdb differ diff --git a/Unity/Assets/Scenes/SampleScene.unity b/Unity/Assets/Scenes/SampleScene.unity index d18e728..b6b7126 100644 --- a/Unity/Assets/Scenes/SampleScene.unity +++ b/Unity/Assets/Scenes/SampleScene.unity @@ -145,7 +145,7 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: 28ef8c68bade09b41aca258d42a632f2, type: 3} m_Name: m_EditorClassIdentifier: - lastTab: 2 + lastTab: 0 movementSettingsFoldout: 0 zoomingSettingsFoldout: 0 rotationSettingsFoldout: 0 @@ -155,7 +155,7 @@ MonoBehaviour: inputSettingsFoldout: 0 useFixedUpdate: 0 keyboardMovementSpeed: 30 - screenEdgeMovementSpeed: 3 + screenEdgeMovementSpeed: 9 followingSpeed: 5 rotationSped: 3 panningSpeed: 10 @@ -186,7 +186,7 @@ MonoBehaviour: zoomOutKey: 113 useScrollwheelZooming: 1 zoomingAxis: Mouse ScrollWheel - useKeyboardRotation: 1 + useKeyboardRotation: 0 rotateRightKey: 120 rotateLeftKey: 122 useMouseRotation: 0 @@ -557,7 +557,8 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: EntityDatabase: {fileID: 11400000, guid: a0d4789ca6cc5ab42a1264102206ac3f, type: 2} - IP: 127.0.0.1 + ServerIp: 127.0.0.1 + ServerPort: 9050 --- !u!114 &1524441392 MonoBehaviour: m_ObjectHideFlags: 0 diff --git a/Unity/Assets/Scripts/Camera/Source.txt b/Unity/Assets/Scripts/Camera/Source.txt new file mode 100644 index 0000000..9b8ff54 --- /dev/null +++ b/Unity/Assets/Scripts/Camera/Source.txt @@ -0,0 +1 @@ +https://github.com/densylkin/RTS_Camera \ No newline at end of file diff --git a/Unity/Assets/Scripts/Camera/Source.txt.meta b/Unity/Assets/Scripts/Camera/Source.txt.meta new file mode 100644 index 0000000..9608b4c --- /dev/null +++ b/Unity/Assets/Scripts/Camera/Source.txt.meta @@ -0,0 +1,7 @@ +fileFormatVersion: 2 +guid: 60d006fdcc1f36d46932bbe52d25c141 +TextScriptImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: