Repository: JiepengTan/LockstepECS
Branch: master
Commit: 691125fe3777
Files: 373
Total size: 2.1 MB
Directory structure:
gitextract_hj2hkjxy/
├── Client.Unity/
│ ├── .gitignore
│ ├── Assets/
│ │ ├── LockstepECS/
│ │ │ ├── Example/
│ │ │ │ ├── Demo_Cube.unity
│ │ │ │ └── Demo_Cube.unity.meta
│ │ │ ├── Example.meta
│ │ │ ├── Plugins/
│ │ │ │ ├── ICSharpCode.SharpZipLib.dll.meta
│ │ │ │ ├── LockstepEngine/
│ │ │ │ │ ├── Common.Model.dll.meta
│ │ │ │ │ ├── Common.UnsafeECS.dll.meta
│ │ │ │ │ ├── Common.View.dll.meta
│ │ │ │ │ ├── Editor/
│ │ │ │ │ │ ├── Common.Editor.dll.meta
│ │ │ │ │ │ └── Engine.Editor.dll.meta
│ │ │ │ │ ├── Editor.meta
│ │ │ │ │ ├── Engine.LockstepEngine.dll.meta
│ │ │ │ │ └── Engine.View.dll.meta
│ │ │ │ └── LockstepEngine.meta
│ │ │ ├── Plugins.meta
│ │ │ ├── ReadMe.txt
│ │ │ ├── ReadMe.txt.meta
│ │ │ ├── Resources/
│ │ │ │ ├── Config/
│ │ │ │ │ ├── GameConfig.json
│ │ │ │ │ ├── GameConfig.json.meta
│ │ │ │ │ ├── UnityGameConfig.asset
│ │ │ │ │ ├── UnityGameConfig.asset.meta
│ │ │ │ │ ├── UnityGameViewConfig.asset
│ │ │ │ │ └── UnityGameViewConfig.asset.meta
│ │ │ │ ├── Config.meta
│ │ │ │ ├── GlobalConfig.xml
│ │ │ │ ├── GlobalConfig.xml.meta
│ │ │ │ ├── Prefabs/
│ │ │ │ │ ├── Player_Cube.prefab
│ │ │ │ │ └── Player_Cube.prefab.meta
│ │ │ │ ├── Prefabs.meta
│ │ │ │ ├── UnityEntityPrefabSetting.prefab
│ │ │ │ └── UnityEntityPrefabSetting.prefab.meta
│ │ │ ├── Resources.meta
│ │ │ ├── Scripts/
│ │ │ │ ├── CameraMono.cs
│ │ │ │ ├── CameraMono.cs.meta
│ │ │ │ ├── Editor/
│ │ │ │ │ ├── EditorCollisionSystem.cs
│ │ │ │ │ ├── EditorCollisionSystem.cs.meta
│ │ │ │ │ ├── EditorMainScript.cs
│ │ │ │ │ ├── EditorMainScript.cs.meta
│ │ │ │ │ ├── EditorMonoProxyReferenceHolder.cs
│ │ │ │ │ └── EditorMonoProxyReferenceHolder.cs.meta
│ │ │ │ ├── Editor.meta
│ │ │ │ ├── ResScripts/
│ │ │ │ │ ├── MonoProxy/
│ │ │ │ │ │ ├── MonoProxyCollisionSystemDebuger.cs
│ │ │ │ │ │ ├── MonoProxyCollisionSystemDebuger.cs.meta
│ │ │ │ │ │ ├── MonoProxyHotfixScript.cs
│ │ │ │ │ │ ├── MonoProxyHotfixScript.cs.meta
│ │ │ │ │ │ ├── MonoProxyMainScript.cs
│ │ │ │ │ │ ├── MonoProxyMainScript.cs.meta
│ │ │ │ │ │ ├── MonoProxyMoverView.cs
│ │ │ │ │ │ ├── MonoProxyMoverView.cs.meta
│ │ │ │ │ │ ├── MonoProxyReferenceHolder.cs
│ │ │ │ │ │ ├── MonoProxyReferenceHolder.cs.meta
│ │ │ │ │ │ ├── MonoProxySpriteEffect.cs
│ │ │ │ │ │ └── MonoProxySpriteEffect.cs.meta
│ │ │ │ │ ├── MonoProxy.meta
│ │ │ │ │ ├── UnityGameConfig.cs
│ │ │ │ │ ├── UnityGameConfig.cs.meta
│ │ │ │ │ ├── UnityGameViewConfig.cs
│ │ │ │ │ └── UnityGameViewConfig.cs.meta
│ │ │ │ └── ResScripts.meta
│ │ │ ├── Scripts.meta
│ │ │ ├── __DllSourceFiles/
│ │ │ │ ├── Game.Model/
│ │ │ │ │ ├── Game.Model.asmdef
│ │ │ │ │ ├── Game.Model.asmdef.meta
│ │ │ │ │ ├── Src/
│ │ │ │ │ │ ├── Config/
│ │ │ │ │ │ │ ├── AudioConfig.cs
│ │ │ │ │ │ │ ├── AudioConfig.cs.meta
│ │ │ │ │ │ │ ├── GameConfig.cs
│ │ │ │ │ │ │ └── GameConfig.cs.meta
│ │ │ │ │ │ ├── Config.meta
│ │ │ │ │ │ ├── Interfaces/
│ │ │ │ │ │ │ ├── IGameAudioService.cs
│ │ │ │ │ │ │ ├── IGameAudioService.cs.meta
│ │ │ │ │ │ │ ├── IGameEffectService.cs
│ │ │ │ │ │ │ ├── IGameEffectService.cs.meta
│ │ │ │ │ │ │ ├── IGameResourceService.cs
│ │ │ │ │ │ │ ├── IGameResourceService.cs.meta
│ │ │ │ │ │ │ ├── IGameUnitService.cs
│ │ │ │ │ │ │ ├── IGameUnitService.cs.meta
│ │ │ │ │ │ │ ├── Status/
│ │ │ │ │ │ │ │ ├── IGameConfigService.cs
│ │ │ │ │ │ │ │ ├── IGameConfigService.cs.meta
│ │ │ │ │ │ │ │ ├── IGameConstStateService.cs
│ │ │ │ │ │ │ │ ├── IGameConstStateService.cs.meta
│ │ │ │ │ │ │ │ ├── IGameStateService.cs
│ │ │ │ │ │ │ │ └── IGameStateService.cs.meta
│ │ │ │ │ │ │ └── Status.meta
│ │ │ │ │ │ ├── Interfaces.meta
│ │ │ │ │ │ ├── Misc/
│ │ │ │ │ │ │ ├── ConfigData.cs
│ │ │ │ │ │ │ ├── ConfigData.cs.meta
│ │ │ │ │ │ │ ├── PlayerInput.cs
│ │ │ │ │ │ │ └── PlayerInput.cs.meta
│ │ │ │ │ │ ├── Misc.meta
│ │ │ │ │ │ ├── Services/
│ │ │ │ │ │ │ ├── ExtensionGameUnityService.cs
│ │ │ │ │ │ │ ├── ExtensionGameUnityService.cs.meta
│ │ │ │ │ │ │ ├── GameInputService.cs
│ │ │ │ │ │ │ ├── GameInputService.cs.meta
│ │ │ │ │ │ │ ├── GameResourceService.cs
│ │ │ │ │ │ │ ├── GameResourceService.cs.meta
│ │ │ │ │ │ │ ├── State/
│ │ │ │ │ │ │ │ ├── GameConfigService.cs
│ │ │ │ │ │ │ │ ├── GameConfigService.cs.meta
│ │ │ │ │ │ │ │ ├── GameStateService.cs
│ │ │ │ │ │ │ │ └── GameStateService.cs.meta
│ │ │ │ │ │ │ └── State.meta
│ │ │ │ │ │ ├── Services.meta
│ │ │ │ │ │ ├── Systems/
│ │ │ │ │ │ │ ├── Context_TempField.cs
│ │ │ │ │ │ │ ├── Context_TempField.cs.meta
│ │ │ │ │ │ │ ├── GameLogicSystems.cs
│ │ │ │ │ │ │ ├── GameLogicSystems.cs.meta
│ │ │ │ │ │ │ ├── Init/
│ │ │ │ │ │ │ │ ├── InitSystem.cs
│ │ │ │ │ │ │ │ └── InitSystem.cs.meta
│ │ │ │ │ │ │ ├── Init.meta
│ │ │ │ │ │ │ ├── Input/
│ │ │ │ │ │ │ │ ├── InputSystem.cs
│ │ │ │ │ │ │ │ └── InputSystem.cs.meta
│ │ │ │ │ │ │ ├── Input.meta
│ │ │ │ │ │ │ ├── Logic/
│ │ │ │ │ │ │ │ ├── PlayerMoveSystem.cs
│ │ │ │ │ │ │ │ └── PlayerMoveSystem.cs.meta
│ │ │ │ │ │ │ └── Logic.meta
│ │ │ │ │ │ ├── Systems.meta
│ │ │ │ │ │ ├── UnsafeECSFramework/
│ │ │ │ │ │ │ ├── Core/
│ │ │ │ │ │ │ │ ├── Context.cs
│ │ │ │ │ │ │ │ ├── Context.cs.meta
│ │ │ │ │ │ │ │ ├── UnsafeWorld.cs
│ │ │ │ │ │ │ │ ├── UnsafeWorld.cs.meta
│ │ │ │ │ │ │ │ ├── WorldSystems.cs
│ │ │ │ │ │ │ │ └── WorldSystems.cs.meta
│ │ │ │ │ │ │ ├── Core.meta
│ │ │ │ │ │ │ ├── EntityExt.cs
│ │ │ │ │ │ │ ├── EntityExt.cs.meta
│ │ │ │ │ │ │ ├── Interfaces/
│ │ │ │ │ │ │ │ ├── IEntityService.cs
│ │ │ │ │ │ │ │ └── IEntityService.cs.meta
│ │ │ │ │ │ │ ├── Interfaces.meta
│ │ │ │ │ │ │ ├── Services/
│ │ │ │ │ │ │ │ ├── MapService.cs
│ │ │ │ │ │ │ │ ├── MapService.cs.meta
│ │ │ │ │ │ │ │ ├── PureEntityService.cs
│ │ │ │ │ │ │ │ ├── PureEntityService.cs.meta
│ │ │ │ │ │ │ │ ├── UnsafeEcsFactoryService.cs
│ │ │ │ │ │ │ │ └── UnsafeEcsFactoryService.cs.meta
│ │ │ │ │ │ │ ├── Services.meta
│ │ │ │ │ │ │ ├── Systems/
│ │ │ │ │ │ │ │ ├── GameBaseSystem.cs
│ │ │ │ │ │ │ │ ├── GameBaseSystem.cs.meta
│ │ │ │ │ │ │ │ ├── GameExecuteSystem.cs
│ │ │ │ │ │ │ │ └── GameExecuteSystem.cs.meta
│ │ │ │ │ │ │ └── Systems.meta
│ │ │ │ │ │ ├── UnsafeECSFramework.meta
│ │ │ │ │ │ ├── __ExcelParser/
│ │ │ │ │ │ │ ├── Table_ConfigBullet.cs
│ │ │ │ │ │ │ └── Table_ConfigBullet.cs.meta
│ │ │ │ │ │ ├── __ExcelParser.meta
│ │ │ │ │ │ ├── __UnsafeECS/
│ │ │ │ │ │ │ ├── Generated/
│ │ │ │ │ │ │ │ ├── CodeGen_Component.cs
│ │ │ │ │ │ │ │ ├── CodeGen_Component.cs.meta
│ │ │ │ │ │ │ │ ├── CodeGen_Context.cs
│ │ │ │ │ │ │ │ ├── CodeGen_Context.cs.meta
│ │ │ │ │ │ │ │ ├── CodeGen_Context_Interfaces.cs
│ │ │ │ │ │ │ │ ├── CodeGen_Context_Interfaces.cs.meta
│ │ │ │ │ │ │ │ ├── CodeGen_Entity.cs
│ │ │ │ │ │ │ │ ├── CodeGen_Entity.cs.meta
│ │ │ │ │ │ │ │ ├── CodeGen_EntityFuncs.cs
│ │ │ │ │ │ │ │ ├── CodeGen_EntityFuncs.cs.meta
│ │ │ │ │ │ │ │ ├── CodeGen_EntityView.cs
│ │ │ │ │ │ │ │ ├── CodeGen_EntityView.cs.meta
│ │ │ │ │ │ │ │ ├── CodeGen_Enum.cs
│ │ │ │ │ │ │ │ ├── CodeGen_Enum.cs.meta
│ │ │ │ │ │ │ │ ├── CodeGen_Event.cs
│ │ │ │ │ │ │ │ ├── CodeGen_Event.cs.meta
│ │ │ │ │ │ │ │ ├── CodeGen_Filter.cs
│ │ │ │ │ │ │ │ ├── CodeGen_Filter.cs.meta
│ │ │ │ │ │ │ │ ├── CodeGen_Iterator.cs
│ │ │ │ │ │ │ │ ├── CodeGen_Iterator.cs.meta
│ │ │ │ │ │ │ │ ├── CodeGen_Schedule.cs
│ │ │ │ │ │ │ │ ├── CodeGen_Schedule.cs.meta
│ │ │ │ │ │ │ │ ├── CodeGen_Service_Entity.cs
│ │ │ │ │ │ │ │ ├── CodeGen_Service_Entity.cs.meta
│ │ │ │ │ │ │ │ ├── CodeGen_Service_State.cs
│ │ │ │ │ │ │ │ ├── CodeGen_Service_State.cs.meta
│ │ │ │ │ │ │ │ ├── CodeGen_Service_SystemExt.cs
│ │ │ │ │ │ │ │ ├── CodeGen_Service_SystemExt.cs.meta
│ │ │ │ │ │ │ │ ├── CodeGen_System.cs
│ │ │ │ │ │ │ │ ├── CodeGen_System.cs.meta
│ │ │ │ │ │ │ │ ├── CodeGen_UpdateViewStateSystem.cs
│ │ │ │ │ │ │ │ ├── CodeGen_UpdateViewStateSystem.cs.meta
│ │ │ │ │ │ │ │ ├── CodeGen__Default.cs
│ │ │ │ │ │ │ │ ├── CodeGen__Default.cs.meta
│ │ │ │ │ │ │ │ ├── CodeGen__Entities.cs
│ │ │ │ │ │ │ │ ├── CodeGen__Entities.cs.meta
│ │ │ │ │ │ │ │ ├── CodeGen__Entities_Interfaces.cs
│ │ │ │ │ │ │ │ └── CodeGen__Entities_Interfaces.cs.meta
│ │ │ │ │ │ │ └── Generated.meta
│ │ │ │ │ │ └── __UnsafeECS.meta
│ │ │ │ │ └── Src.meta
│ │ │ │ ├── Game.Model.meta
│ │ │ │ ├── Game.View/
│ │ │ │ │ ├── Game.View.asmdef
│ │ │ │ │ ├── Game.View.asmdef.meta
│ │ │ │ │ ├── Src/
│ │ │ │ │ │ ├── EntityViews/
│ │ │ │ │ │ │ ├── EntityViewBoidObstacle.cs
│ │ │ │ │ │ │ └── EntityViewBoidObstacle.cs.meta
│ │ │ │ │ │ ├── EntityViews.meta
│ │ │ │ │ │ ├── Framework/
│ │ │ │ │ │ │ ├── BaseEntityView.cs
│ │ │ │ │ │ │ ├── BaseEntityView.cs.meta
│ │ │ │ │ │ │ ├── EntityPrefabInfo.cs
│ │ │ │ │ │ │ ├── EntityPrefabInfo.cs.meta
│ │ │ │ │ │ │ ├── GameStateMono.cs
│ │ │ │ │ │ │ ├── GameStateMono.cs.meta
│ │ │ │ │ │ │ ├── InputMono.cs
│ │ │ │ │ │ │ ├── InputMono.cs.meta
│ │ │ │ │ │ │ ├── PingMono.cs
│ │ │ │ │ │ │ ├── PingMono.cs.meta
│ │ │ │ │ │ │ ├── UnityServiceContainer.cs
│ │ │ │ │ │ │ └── UnityServiceContainer.cs.meta
│ │ │ │ │ │ ├── Framework.meta
│ │ │ │ │ │ ├── GameViewConfig.cs
│ │ │ │ │ │ ├── GameViewConfig.cs.meta
│ │ │ │ │ │ ├── MainScript.cs
│ │ │ │ │ │ ├── MainScript.cs.meta
│ │ │ │ │ │ ├── RenderInfo.cs
│ │ │ │ │ │ ├── RenderInfo.cs.meta
│ │ │ │ │ │ ├── Services/
│ │ │ │ │ │ │ ├── UnityEntityService.cs
│ │ │ │ │ │ │ ├── UnityEntityService.cs.meta
│ │ │ │ │ │ │ ├── UnityGameAudioService.cs
│ │ │ │ │ │ │ ├── UnityGameAudioService.cs.meta
│ │ │ │ │ │ │ ├── UnityGameEffectService.cs
│ │ │ │ │ │ │ ├── UnityGameEffectService.cs.meta
│ │ │ │ │ │ │ ├── UnityGameService.cs
│ │ │ │ │ │ │ ├── UnityGameService.cs.meta
│ │ │ │ │ │ │ ├── UnityMap2DService.cs
│ │ │ │ │ │ │ ├── UnityMap2DService.cs.meta
│ │ │ │ │ │ │ ├── UnityMapService.cs
│ │ │ │ │ │ │ └── UnityMapService.cs.meta
│ │ │ │ │ │ ├── Services.meta
│ │ │ │ │ │ ├── TagProxy/
│ │ │ │ │ │ │ ├── UnityPlayerCubeTagProxy.cs
│ │ │ │ │ │ │ └── UnityPlayerCubeTagProxy.cs.meta
│ │ │ │ │ │ ├── TagProxy.meta
│ │ │ │ │ │ ├── UnityEntityPrefabSetting.cs
│ │ │ │ │ │ ├── UnityEntityPrefabSetting.cs.meta
│ │ │ │ │ │ ├── __UnsafeECS/
│ │ │ │ │ │ │ ├── Generated/
│ │ │ │ │ │ │ │ ├── CodeGen_BaseUnityEntityService.cs
│ │ │ │ │ │ │ │ ├── CodeGen_BaseUnityEntityService.cs.meta
│ │ │ │ │ │ │ │ ├── CodeGen_EntityView.cs
│ │ │ │ │ │ │ │ └── CodeGen_EntityView.cs.meta
│ │ │ │ │ │ │ └── Generated.meta
│ │ │ │ │ │ └── __UnsafeECS.meta
│ │ │ │ │ └── Src.meta
│ │ │ │ ├── Game.View.meta
│ │ │ │ ├── Tools.UnsafeECS.ECDefine.Game/
│ │ │ │ │ ├── Src/
│ │ │ │ │ │ ├── BuildIn/
│ │ │ │ │ │ │ ├── BuildIn_Components.cs
│ │ │ │ │ │ │ ├── BuildIn_Components.cs.meta
│ │ │ │ │ │ │ ├── BuildIn_Interfaces.cs
│ │ │ │ │ │ │ ├── BuildIn_Interfaces.cs.meta
│ │ │ │ │ │ │ ├── BuildIn_Services.cs
│ │ │ │ │ │ │ └── BuildIn_Services.cs.meta
│ │ │ │ │ │ ├── BuildIn.meta
│ │ │ │ │ │ ├── Unsafe/
│ │ │ │ │ │ │ ├── Collision.cs
│ │ │ │ │ │ │ ├── Collision.cs.meta
│ │ │ │ │ │ │ ├── Component.cs
│ │ │ │ │ │ │ ├── Component.cs.meta
│ │ │ │ │ │ │ ├── Entity.cs
│ │ │ │ │ │ │ ├── Entity.cs.meta
│ │ │ │ │ │ │ ├── Enum.cs
│ │ │ │ │ │ │ ├── Enum.cs.meta
│ │ │ │ │ │ │ ├── Event.cs
│ │ │ │ │ │ │ ├── Event.cs.meta
│ │ │ │ │ │ │ ├── Service.cs
│ │ │ │ │ │ │ ├── Service.cs.meta
│ │ │ │ │ │ │ ├── Status.cs
│ │ │ │ │ │ │ ├── Status.cs.meta
│ │ │ │ │ │ │ ├── System.cs
│ │ │ │ │ │ │ └── System.cs.meta
│ │ │ │ │ │ └── Unsafe.meta
│ │ │ │ │ ├── Src.meta
│ │ │ │ │ ├── Tools.UnsafeECS.ECDefine.Game.asmdef
│ │ │ │ │ └── Tools.UnsafeECS.ECDefine.Game.asmdef.meta
│ │ │ │ └── Tools.UnsafeECS.ECDefine.Game.meta
│ │ │ └── __DllSourceFiles.meta
│ │ ├── LockstepECS.meta
│ │ ├── Plugins/
│ │ │ ├── Editor/
│ │ │ │ └── JetBrains.meta
│ │ │ └── Editor.meta
│ │ └── Plugins.meta
│ ├── DataAndTools/
│ │ ├── .gitignore
│ │ ├── Config/
│ │ │ ├── CopySourceFiles/
│ │ │ │ ├── Csproj2Unity.json
│ │ │ │ ├── Unity2Csproj.json
│ │ │ │ └── Unity2ECSDefine.json
│ │ │ ├── ExcelParser/
│ │ │ │ ├── CSTemplate.txt
│ │ │ │ ├── Config.json
│ │ │ │ └── Output/
│ │ │ │ ├── CodeCS/
│ │ │ │ │ ├── Table_Assets.cs
│ │ │ │ │ └── Table_ConfigBullet.cs
│ │ │ │ └── Csv/
│ │ │ │ ├── Assets.csv
│ │ │ │ └── ConfigBullet.csv
│ │ │ └── UnsafeECSGenerator/
│ │ │ ├── MacroDefine.json
│ │ │ ├── Model/
│ │ │ │ └── EncTemplateFile.tfbytes
│ │ │ ├── ModelConfig.json
│ │ │ ├── View/
│ │ │ │ └── EncTemplateFile.tfbytes
│ │ │ └── ViewConfig.json
│ │ ├── Data/
│ │ │ ├── Client/
│ │ │ │ ├── AssetPath.json
│ │ │ │ ├── ExcelBytes/
│ │ │ │ │ ├── Assets.bytes
│ │ │ │ │ └── ConfigBullet.bytes
│ │ │ │ ├── GameConfig.bytes
│ │ │ │ ├── GameConfig.json
│ │ │ │ ├── Maps/
│ │ │ │ │ ├── 1.bytes
│ │ │ │ │ └── 2.bytes
│ │ │ │ └── TileIDMap.txt
│ │ │ ├── Designer/
│ │ │ │ └── Excels/
│ │ │ │ ├── Assets.xlsx
│ │ │ │ └── EntityConfig/
│ │ │ │ └── ConfigBullet.xls
│ │ │ └── Server/
│ │ │ └── Config.json
│ │ ├── Game.sln
│ │ ├── Src/
│ │ │ ├── Server.SimpleServer/
│ │ │ │ ├── Server.SimpleServer.csproj
│ │ │ │ └── Src/
│ │ │ │ ├── Server/
│ │ │ │ │ ├── Game.cs
│ │ │ │ │ ├── HashCodeMatcher.cs
│ │ │ │ │ ├── MessagePacker.cs
│ │ │ │ │ ├── Player.cs
│ │ │ │ │ └── Server.cs
│ │ │ │ └── ServerLauncher.cs
│ │ │ ├── Tools.UnsafeECS.ECDefine.Game/
│ │ │ │ ├── Src/
│ │ │ │ │ ├── BuildIn/
│ │ │ │ │ │ ├── BuildIn_Components.cs
│ │ │ │ │ │ ├── BuildIn_Interfaces.cs
│ │ │ │ │ │ └── BuildIn_Services.cs
│ │ │ │ │ └── Unsafe/
│ │ │ │ │ ├── Collision.cs
│ │ │ │ │ ├── Component.cs
│ │ │ │ │ ├── Entity.cs
│ │ │ │ │ ├── Enum.cs
│ │ │ │ │ ├── Event.cs
│ │ │ │ │ ├── Service.cs
│ │ │ │ │ ├── Status.cs
│ │ │ │ │ └── System.cs
│ │ │ │ └── Tools.UnsafeECS.ECDefine.Game.csproj
│ │ │ └── Tools.UnsafeECS.ECSOutput/
│ │ │ ├── .gitignore
│ │ │ ├── Src/
│ │ │ │ ├── Frame.cs
│ │ │ │ ├── Generated/
│ │ │ │ │ ├── Model/
│ │ │ │ │ │ ├── CodeGen_Component.cs
│ │ │ │ │ │ ├── CodeGen_Context.cs
│ │ │ │ │ │ ├── CodeGen_Context_Interfaces.cs
│ │ │ │ │ │ ├── CodeGen_Entity.cs
│ │ │ │ │ │ ├── CodeGen_EntityFuncs.cs
│ │ │ │ │ │ ├── CodeGen_EntityView.cs
│ │ │ │ │ │ ├── CodeGen_Enum.cs
│ │ │ │ │ │ ├── CodeGen_Event.cs
│ │ │ │ │ │ ├── CodeGen_Filter.cs
│ │ │ │ │ │ ├── CodeGen_Iterator.cs
│ │ │ │ │ │ ├── CodeGen_Schedule.cs
│ │ │ │ │ │ ├── CodeGen_Service_Entity.cs
│ │ │ │ │ │ ├── CodeGen_Service_State.cs
│ │ │ │ │ │ ├── CodeGen_Service_SystemExt.cs
│ │ │ │ │ │ ├── CodeGen_System.cs
│ │ │ │ │ │ ├── CodeGen_UpdateViewStateSystem.cs
│ │ │ │ │ │ ├── CodeGen__Default.cs
│ │ │ │ │ │ ├── CodeGen__Entities.cs
│ │ │ │ │ │ └── CodeGen__Entities_Interfaces.cs
│ │ │ │ │ └── View/
│ │ │ │ │ ├── CodeGen_BaseUnityEntityService.cs
│ │ │ │ │ └── CodeGen_EntityView.cs
│ │ │ │ ├── NativeArray.cs
│ │ │ │ └── UnsafeUtility.cs
│ │ │ └── Tools.UnsafeECS.ECSOutput.csproj
│ │ ├── Tools/
│ │ │ ├── ExcelParser
│ │ │ ├── ExcelParser.sh
│ │ │ ├── UnsafeECSCodeGen
│ │ │ ├── UnsafeECSCodeGen.sh
│ │ │ ├── UpdateAndCodeGen
│ │ │ ├── UpdateAndCodeGen.sh
│ │ │ └── UpdateAndCodeGen_Win.sh
│ │ └── bin/
│ │ ├── EPPlus.XML
│ │ ├── Server.SimpleServer.deps.json
│ │ ├── Server.SimpleServer.runtimeconfig.dev.json
│ │ ├── Server.SimpleServer.runtimeconfig.json
│ │ └── Tools.UnsafeECS.ECDefine.Game.deps.json
│ ├── Packages/
│ │ └── manifest.json
│ ├── ProjectSettings/
│ │ ├── AudioManager.asset
│ │ ├── BurstAotSettings_StandaloneOSX.json
│ │ ├── ClusterInputManager.asset
│ │ ├── DynamicsManager.asset
│ │ ├── EditorBuildSettings.asset
│ │ ├── EditorSettings.asset
│ │ ├── GraphicsSettings.asset
│ │ ├── InputManager.asset
│ │ ├── NavMeshAreas.asset
│ │ ├── Physics2DSettings.asset
│ │ ├── PresetManager.asset
│ │ ├── ProjectSettings.asset
│ │ ├── ProjectVersion.txt
│ │ ├── QualitySettings.asset
│ │ ├── TagManager.asset
│ │ ├── TimeManager.asset
│ │ ├── UnityConnectSettings.asset
│ │ ├── VFXManager.asset
│ │ └── XRSettings.asset
│ └── packages.config
└── README.md
================================================
FILE CONTENTS
================================================
================================================
FILE: Client.Unity/.gitignore
================================================
[Ll]ibrary/
[Tt]emp/
[Oo]bj/
[Ll]og/
[Ll]ogs/
[Bb]uild/
[Bb]uilds/
CoreEditor/
__ECSOutput/
Assets/AssetStoreTools*
[Aa]ssets/StreamingAssets/
[Aa]ssets/TempRes
[Aa]ssets/LockstepECS/Plugins/Editor/JetBrains/
[Aa]ssets/Plugins/Editor/JetBrains/
[Aa]ssets/Plugins/Game/
[Aa]ssets/Plugins/Entitas/
[Aa]ssets/Plugins/LockstepEngine/
Packages/SharpZipLib.1.2.0/
.idea/
#不要重复提交相同的Dlls
# Visual Studio cache directory
.vs/
# Autogenerated VS/MD/Consulo solution and project files
ExportedObj/
.consulo/
*.unityproj
*.suo
*.tmp
*.sln
*.csproj
*.user
*.userprefs
*.pidb
*.booproj
*.svd
*.pdb
*.opendb
# Unity3D generated meta files
*.pidb.meta
*.pdb.meta
# Unity3D Generated File On Crash Reports
sysinfo.txt
# Builds
*.apk
*.unitypackage
================================================
FILE: Client.Unity/Assets/LockstepECS/Example/Demo_Cube.unity
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!29 &1
OcclusionCullingSettings:
m_ObjectHideFlags: 0
serializedVersion: 2
m_OcclusionBakeSettings:
smallestOccluder: 5
smallestHole: 0.25
backfaceThreshold: 100
m_SceneGUID: 00000000000000000000000000000000
m_OcclusionCullingData: {fileID: 0}
--- !u!104 &2
RenderSettings:
m_ObjectHideFlags: 0
serializedVersion: 9
m_Fog: 0
m_FogColor: {r: 0.0075692115, g: 0.36781123, b: 0.5147059, a: 1}
m_FogMode: 3
m_FogDensity: 0.01
m_LinearFogStart: -100
m_LinearFogEnd: 200
m_AmbientSkyColor: {r: 0.2, g: 0.2, b: 0.2, a: 0}
m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1}
m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1}
m_AmbientIntensity: 1.13
m_AmbientMode: 3
m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1}
m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0}
m_HaloStrength: 0.5
m_FlareStrength: 1
m_FlareFadeSpeed: 3
m_HaloTexture: {fileID: 0}
m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
m_DefaultReflectionMode: 0
m_DefaultReflectionResolution: 128
m_ReflectionBounces: 1
m_ReflectionIntensity: 1
m_CustomReflection: {fileID: 0}
m_Sun: {fileID: 0}
m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1}
m_UseRadianceAmbientProbe: 0
--- !u!157 &3
LightmapSettings:
m_ObjectHideFlags: 0
serializedVersion: 11
m_GIWorkflowMode: 1
m_GISettings:
serializedVersion: 2
m_BounceScale: 1
m_IndirectOutputScale: 1
m_AlbedoBoost: 1
m_EnvironmentLightingMode: 0
m_EnableBakedLightmaps: 0
m_EnableRealtimeLightmaps: 0
m_LightmapEditorSettings:
serializedVersion: 12
m_Resolution: 4
m_BakeResolution: 40
m_AtlasSize: 1024
m_AO: 0
m_AOMaxDistance: 1
m_CompAOExponent: 1
m_CompAOExponentDirect: 0
m_ExtractAmbientOcclusion: 0
m_Padding: 2
m_LightmapParameters: {fileID: 0}
m_LightmapsBakeMode: 1
m_TextureCompression: 1
m_FinalGather: 0
m_FinalGatherFiltering: 1
m_FinalGatherRayCount: 256
m_ReflectionCompression: 2
m_MixedBakeMode: 1
m_BakeBackend: 0
m_PVRSampling: 1
m_PVRDirectSampleCount: 32
m_PVRSampleCount: 500
m_PVRBounces: 2
m_PVREnvironmentSampleCount: 500
m_PVREnvironmentReferencePointCount: 2048
m_PVRFilteringMode: 2
m_PVRDenoiserTypeDirect: 0
m_PVRDenoiserTypeIndirect: 0
m_PVRDenoiserTypeAO: 0
m_PVRFilterTypeDirect: 0
m_PVRFilterTypeIndirect: 0
m_PVRFilterTypeAO: 0
m_PVREnvironmentMIS: 0
m_PVRCulling: 1
m_PVRFilteringGaussRadiusDirect: 1
m_PVRFilteringGaussRadiusIndirect: 5
m_PVRFilteringGaussRadiusAO: 2
m_PVRFilteringAtrousPositionSigmaDirect: 0.5
m_PVRFilteringAtrousPositionSigmaIndirect: 2
m_PVRFilteringAtrousPositionSigmaAO: 1
m_ExportTrainingData: 0
m_TrainingDataDestination: TrainingData
m_LightingDataAsset: {fileID: 112000002, guid: 8e54c65f1171b48709ac5186c785e2ca,
type: 2}
m_UseShadowmask: 0
--- !u!196 &4
NavMeshSettings:
serializedVersion: 2
m_ObjectHideFlags: 0
m_BuildSettings:
serializedVersion: 2
agentTypeID: 0
agentRadius: 0.5
agentHeight: 2
agentSlope: 45
agentClimb: 0.4
ledgeDropHeight: 0
maxJumpAcrossDistance: 0
minRegionArea: 2
manualCellSize: 0
cellSize: 0.16666667
manualTileSize: 0
tileSize: 256
accuratePlacement: 0
debug:
m_Flags: 0
m_NavMeshData: {fileID: 0}
--- !u!1 &538265088
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 538265094}
- component: {fileID: 538265093}
- component: {fileID: 538265091}
- component: {fileID: 538265095}
- component: {fileID: 538265089}
- component: {fileID: 538265090}
- component: {fileID: 538265092}
- component: {fileID: 538265096}
m_Layer: 0
m_Name: Main Camera
m_TagString: MainCamera
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &538265089
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 538265088}
m_Enabled: 0
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 76b5ec6153a1d55438228df10fe66844, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!114 &538265090
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 538265088}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 685ac13f0dc84aa4b82782408bf60afc, type: 3}
m_Name:
m_EditorClassIdentifier:
targetTrans: {fileID: 0}
scaleOffset: {x: 0, y: 0.65, z: -1.4}
offset: {x: 0, y: 8, z: -20}
fogStartDist: 20
fogDistScale: 1.5
lerpSpd: 1
xRote: 11
--- !u!124 &538265091
Behaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 538265088}
m_Enabled: 1
--- !u!114 &538265092
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 538265088}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 639761d88e754f3bb8789af61e70bd67, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!20 &538265093
Camera:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 538265088}
m_Enabled: 1
serializedVersion: 2
m_ClearFlags: 2
m_BackGroundColor: {r: 0.0075692115, g: 0.36781123, b: 0.5147059, a: 1}
m_projectionMatrixMode: 1
m_GateFitMode: 2
m_FOVAxisMode: 0
m_SensorSize: {x: 36, y: 24}
m_LensShift: {x: 0, y: 0}
m_FocalLength: 50
m_NormalizedViewPortRect:
serializedVersion: 2
x: 0
y: 0
width: 1
height: 1
near clip plane: 0.3
far clip plane: 1000
field of view: 60
orthographic: 0
orthographic size: 5
m_Depth: -1
m_CullingMask:
serializedVersion: 2
m_Bits: 4294967295
m_RenderingPath: -1
m_TargetTexture: {fileID: 0}
m_TargetDisplay: 0
m_TargetEye: 3
m_HDR: 1
m_AllowMSAA: 0
m_AllowDynamicResolution: 0
m_ForceIntoRT: 0
m_OcclusionCulling: 0
m_StereoConvergence: 10
m_StereoSeparation: 0.022
--- !u!4 &538265094
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 538265088}
m_LocalRotation: {x: -0.1024078, y: 0.12113292, z: -0.012565037, w: -0.9872596}
m_LocalPosition: {x: 5.7485814, y: 25.740002, z: 11.715817}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 1
m_LocalEulerAnglesHint: {x: 11.844001, y: 0, z: 0}
--- !u!114 &538265095
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 538265088}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ff26db721962cdf4a8edcdfa9a767d2a, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!81 &538265096
AudioListener:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 538265088}
m_Enabled: 1
--- !u!1 &734503356
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 734503358}
- component: {fileID: 734503357}
m_Layer: 0
m_Name: Main
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!114 &734503357
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 734503356}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 20396a1f508a4aa08f8989d265b39377, type: 3}
m_Name:
m_EditorClassIdentifier:
launcher:
RecordPath:
MaxRunTick: 2147483647
GameStartInfo:
LocalId: 0
UserCount: 0
MapId: 0
RoomId: 0
Seed: 0
UserInfos: []
UdpEnd:
Ip:
Port: 0
TcpEnd:
Ip:
Port: 0
SimulationSpeed: 0
FramesInfo:
startTick: 0
frames: []
JumpToTick: 10
IsClientMode: 0
IsVideoMode: 0
IsRunVideo: 0
Ip: 127.0.0.1
port: 10083
--- !u!4 &734503358
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 734503356}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 3
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &968947296
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 968947298}
- component: {fileID: 968947297}
- component: {fileID: 968947299}
m_Layer: 0
m_Name: Directional Light
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!108 &968947297
Light:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 968947296}
m_Enabled: 1
serializedVersion: 9
m_Type: 1
m_Color: {r: 0.66176474, g: 0.9720081, b: 1, a: 1}
m_Intensity: 1.5
m_Range: 10
m_SpotAngle: 30
m_InnerSpotAngle: 21.802082
m_CookieSize: 150
m_Shadows:
m_Type: 2
m_Resolution: -1
m_CustomResolution: -1
m_Strength: 1
m_Bias: 0.05
m_NormalBias: 0.4
m_NearPlane: 0.2
m_CullingMatrixOverride:
e00: 1
e01: 0
e02: 0
e03: 0
e10: 0
e11: 1
e12: 0
e13: 0
e20: 0
e21: 0
e22: 1
e23: 0
e30: 0
e31: 0
e32: 0
e33: 1
m_UseCullingMatrixOverride: 0
m_Cookie: {fileID: 2800000, guid: a7b3873d91f47df45a85c9e45e487e07, type: 3}
m_DrawHalo: 0
m_Flare: {fileID: 0}
m_RenderMode: 0
m_CullingMask:
serializedVersion: 2
m_Bits: 4294967295
m_RenderingLayerMask: 1
m_Lightmapping: 4
m_LightShadowCasterMode: 0
m_AreaSize: {x: 1, y: 1}
m_BounceIntensity: 1
m_ColorTemperature: 6570
m_UseColorTemperature: 0
m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0}
m_UseBoundingSphereOverride: 0
m_ShadowRadius: 0
m_ShadowAngle: 0
--- !u!4 &968947298
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 968947296}
m_LocalRotation: {x: 0.46650353, y: -0.72907215, z: 0.4999257, w: 0.030043896}
m_LocalPosition: {x: 0, y: 3, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 130.8, y: -40.3, z: 95.7}
--- !u!114 &968947299
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 968947296}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 37efa2ce1c028e445aa8c0e0b67ea716, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1 &1381353857
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1381353861}
- component: {fileID: 1381353860}
- component: {fileID: 1381353859}
- component: {fileID: 1381353858}
m_Layer: 0
m_Name: Plane
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!64 &1381353858
MeshCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1381353857}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_Enabled: 1
serializedVersion: 3
m_Convex: 0
m_CookingOptions: 14
m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &1381353859
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1381353857}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 10303, guid: 0000000000000000f000000000000000, type: 0}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
--- !u!33 &1381353860
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1381353857}
m_Mesh: {fileID: 10209, guid: 0000000000000000e000000000000000, type: 0}
--- !u!4 &1381353861
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1381353857}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 10, y: 10, z: 10}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 4
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1001 &1155774473123634489
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 0}
m_Modifications:
- target: {fileID: 1155774472076782537, guid: 0e5eb294788a943bca181ef6fae5f543,
type: 3}
propertyPath: m_Name
value: UnityEntityPrefabSetting
objectReference: {fileID: 0}
- target: {fileID: 1155774472076782538, guid: 0e5eb294788a943bca181ef6fae5f543,
type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1155774472076782538, guid: 0e5eb294788a943bca181ef6fae5f543,
type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1155774472076782538, guid: 0e5eb294788a943bca181ef6fae5f543,
type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1155774472076782538, guid: 0e5eb294788a943bca181ef6fae5f543,
type: 3}
propertyPath: m_LocalRotation.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1155774472076782538, guid: 0e5eb294788a943bca181ef6fae5f543,
type: 3}
propertyPath: m_LocalRotation.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1155774472076782538, guid: 0e5eb294788a943bca181ef6fae5f543,
type: 3}
propertyPath: m_LocalRotation.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1155774472076782538, guid: 0e5eb294788a943bca181ef6fae5f543,
type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 1155774472076782538, guid: 0e5eb294788a943bca181ef6fae5f543,
type: 3}
propertyPath: m_RootOrder
value: 2
objectReference: {fileID: 0}
- target: {fileID: 1155774472076782538, guid: 0e5eb294788a943bca181ef6fae5f543,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1155774472076782538, guid: 0e5eb294788a943bca181ef6fae5f543,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 1155774472076782538, guid: 0e5eb294788a943bca181ef6fae5f543,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 0e5eb294788a943bca181ef6fae5f543, type: 3}
================================================
FILE: Client.Unity/Assets/LockstepECS/Example/Demo_Cube.unity.meta
================================================
fileFormatVersion: 2
guid: bc7caccdfb6d94b4facecc7a62765c9a
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Example.meta
================================================
fileFormatVersion: 2
guid: f565ec0fa0a0e4069b47ab787e20e5af
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Plugins/ICSharpCode.SharpZipLib.dll.meta
================================================
fileFormatVersion: 2
guid: 75fb6ca3238804c21b0cc0d5e50d0bf1
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
defineConstraints: []
isPreloaded: 0
isOverridable: 0
isExplicitlyReferenced: 0
validateReferences: 1
platformData:
- first:
Any:
second:
enabled: 1
settings: {}
- first:
Editor: Editor
second:
enabled: 0
settings:
DefaultValueInitialized: true
- first:
Windows Store Apps: WindowsStoreApps
second:
enabled: 0
settings:
CPU: AnyCPU
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Common.Model.dll.meta
================================================
fileFormatVersion: 2
guid: aeb9e7e0917ba456caccc847ff1a4896
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
defineConstraints: []
isPreloaded: 0
isOverridable: 0
isExplicitlyReferenced: 0
validateReferences: 1
platformData:
- first:
Any:
second:
enabled: 1
settings: {}
- first:
Editor: Editor
second:
enabled: 0
settings:
DefaultValueInitialized: true
- first:
Windows Store Apps: WindowsStoreApps
second:
enabled: 0
settings:
CPU: AnyCPU
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Common.UnsafeECS.dll.meta
================================================
fileFormatVersion: 2
guid: ce78813a159d14cd980bd2a1487e17c1
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
defineConstraints: []
isPreloaded: 0
isOverridable: 0
isExplicitlyReferenced: 0
validateReferences: 1
platformData:
- first:
Any:
second:
enabled: 1
settings: {}
- first:
Editor: Editor
second:
enabled: 0
settings:
DefaultValueInitialized: true
- first:
Windows Store Apps: WindowsStoreApps
second:
enabled: 0
settings:
CPU: AnyCPU
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Common.View.dll.meta
================================================
fileFormatVersion: 2
guid: 4df84736490574df6ad566a178c2aaf9
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
defineConstraints: []
isPreloaded: 0
isOverridable: 0
isExplicitlyReferenced: 0
validateReferences: 1
platformData:
- first:
Any:
second:
enabled: 1
settings: {}
- first:
Editor: Editor
second:
enabled: 0
settings:
DefaultValueInitialized: true
- first:
Windows Store Apps: WindowsStoreApps
second:
enabled: 0
settings:
CPU: AnyCPU
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Editor/Common.Editor.dll.meta
================================================
fileFormatVersion: 2
guid: 937eb1d1ec9e64892aab8d030d621cd9
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
defineConstraints: []
isPreloaded: 0
isOverridable: 0
isExplicitlyReferenced: 0
validateReferences: 1
platformData:
- first:
Any:
second:
enabled: 0
settings: {}
- first:
Editor: Editor
second:
enabled: 1
settings:
DefaultValueInitialized: true
- first:
Windows Store Apps: WindowsStoreApps
second:
enabled: 0
settings:
CPU: AnyCPU
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Editor/Engine.Editor.dll.meta
================================================
fileFormatVersion: 2
guid: b6f6791a2443d4630a9ea067fab46324
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
defineConstraints: []
isPreloaded: 0
isOverridable: 0
isExplicitlyReferenced: 0
validateReferences: 1
platformData:
- first:
Any:
second:
enabled: 0
settings: {}
- first:
Editor: Editor
second:
enabled: 1
settings:
DefaultValueInitialized: true
- first:
Windows Store Apps: WindowsStoreApps
second:
enabled: 0
settings:
CPU: AnyCPU
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Editor.meta
================================================
fileFormatVersion: 2
guid: 5414f93ea4eef4eca8b770ccbafefae6
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Engine.LockstepEngine.dll.meta
================================================
fileFormatVersion: 2
guid: fed6b65838a874d149f6cdd669f3ff0e
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
defineConstraints: []
isPreloaded: 0
isOverridable: 0
isExplicitlyReferenced: 0
validateReferences: 1
platformData:
- first:
Any:
second:
enabled: 1
settings: {}
- first:
Editor: Editor
second:
enabled: 0
settings:
DefaultValueInitialized: true
- first:
Windows Store Apps: WindowsStoreApps
second:
enabled: 0
settings:
CPU: AnyCPU
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine/Engine.View.dll.meta
================================================
fileFormatVersion: 2
guid: a422430f97c6941eeadf60fb256db677
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
defineConstraints: []
isPreloaded: 0
isOverridable: 0
isExplicitlyReferenced: 0
validateReferences: 1
platformData:
- first:
Any:
second:
enabled: 1
settings: {}
- first:
Editor: Editor
second:
enabled: 0
settings:
DefaultValueInitialized: true
- first:
Windows Store Apps: WindowsStoreApps
second:
enabled: 0
settings:
CPU: AnyCPU
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Plugins/LockstepEngine.meta
================================================
fileFormatVersion: 2
guid: e1a40fa0a2817429f9f3c547312a3d5a
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Plugins.meta
================================================
fileFormatVersion: 2
guid: b23f629fe9d924290896035bc87cf208
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/ReadMe.txt
================================================
-------------------------------------------------------------
QUICK START
-------------------------------------------------------------
1. ClientMode :Open Scene LockstepECS/Example/Demo_Cube and Run it;
2. NetworkingMode :
UnCompress the DataAndTools.zip In dir Application.dataPath/../
-------------------------------------------------------------
USER SUPPORT
-------------------------------------------------------------
If you have any problem with LockstepECS,
you can send me a email
2314215231@qq.com
-------------------------------------------------------------
Thanks for using LockstepECS!
https://github.com/JiepengTan/LockstepECS_Document
-------------------------------------------------------------
================================================
FILE: Client.Unity/Assets/LockstepECS/ReadMe.txt.meta
================================================
fileFormatVersion: 2
guid: c8fd16990486543009e0cbcd5d8b2f12
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Resources/Config/GameConfig.json
================================================
{"RelPath":"","RecorderFilePath":"","DumpStrPath":"","MaxPlayerCount":2,"CollisionConfig":{"scrollPos":{"x":{"_val":0},"y":{"_val":0},"_x":0,"_y":0},"isShow":false,"collisionMatrix":[false,false,false,false,false,false,false,false,false],"pos":{"x":{"_val":0},"y":{"_val":0},"z":{"_val":0},"_x":0,"_y":0,"_z":0},"worldSize":{"_val":60000000},"minNodeSize":{"_val":1000000},"loosenessval":{"_val":1250000},"ColliderDataRelFilePath":"","percent":{"_val":100000},"count":100,"showTreeId":0},"ClientModeInfo":{"LocalId":0,"UserCount":1,"MapId":0,"RoomId":0,"Seed":0,"UserInfos":[{"Username":"TestClient","UserId":0,"Datas":[],"_Username":"TestClient","_UserId":0,"_Datas":[]}],"UdpEnd":{"Ip":"","Port":0},"TcpEnd":{"Ip":"","Port":0},"SimulationSpeed":0},"PlayerInfos":[{"Position":{"x":{"_val":0},"y":{"_val":0},"z":{"_val":0},"_x":0,"_y":0,"_z":0},"Forward":{"x":{"_val":0},"y":{"_val":0},"z":{"_val":1000000},"_x":0,"_y":0,"_z":1000000},"Scale":{"_val":1000000},"Deg":{"_val":0},"AssetId":1,"MoveData":{"MoveSpd":{"_val":3000000},"AcceleratedSpd":{"_val":5000000},"CurSpd":{"_val":3000000},"AngularSpd":{"_val":80000000},"DeltaDeg":{"_val":0}}}]}
================================================
FILE: Client.Unity/Assets/LockstepECS/Resources/Config/GameConfig.json.meta
================================================
fileFormatVersion: 2
guid: 19bbfb5fe5d294d049f33a129701b910
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Resources/Config/UnityGameConfig.asset
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 980ac168cef7441b18a297aac85d123e, type: 3}
m_Name: UnityGameConfig
m_EditorClassIdentifier:
pureConfig:
RelPath:
RecorderFilePath:
DumpStrPath:
MaxPlayerCount: 2
CollisionConfig:
scrollPos:
_x: 0
_y: 0
isShow: 0
collisionMatrix: 000000000000000000
pos:
_x: 0
_y: 0
_z: 0
worldSize:
_val: 60000000
minNodeSize:
_val: 1000000
loosenessval:
_val: 1250000
ColliderDataRelFilePath:
percent:
_val: 100000
count: 100
showTreeId: 0
ClientModeInfo:
LocalId: 0
UserCount: 1
MapId: 0
RoomId: 0
Seed: 0
UserInfos:
- _Username: TestClient
_UserId: 0
_Datas: []
UdpEnd:
Ip:
Port: 0
TcpEnd:
Ip:
Port: 0
SimulationSpeed: 0
PlayerInfos:
- Position:
_x: 0
_y: 0
_z: 0
Forward:
_x: 0
_y: 0
_z: 1000000
Scale:
_val: 1000000
Deg:
_val: 0
AssetId: 1
MoveData:
MoveSpd:
_val: 3000000
AcceleratedSpd:
_val: 5000000
CurSpd:
_val: 3000000
AngularSpd:
_val: 80000000
DeltaDeg:
_val: 0
================================================
FILE: Client.Unity/Assets/LockstepECS/Resources/Config/UnityGameConfig.asset.meta
================================================
fileFormatVersion: 2
guid: ce2bc0ff4e4604213968d2ad1cb16909
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Resources/Config/UnityGameViewConfig.asset
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 0}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ce625fca54ee7448e83d49e11ee55e7a, type: 3}
m_Name: UnityGameViewConfig
m_EditorClassIdentifier:
RenderInfos: []
skillEffectPrefab: {fileID: 5560203806037324126, guid: 06a930379e194436db1b5ce25e7704c2,
type: 3}
Pad: 0
================================================
FILE: Client.Unity/Assets/LockstepECS/Resources/Config/UnityGameViewConfig.asset.meta
================================================
fileFormatVersion: 2
guid: bfaf5b81c7e7c46219c5fcd82b154ee4
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Resources/Config.meta
================================================
fileFormatVersion: 2
guid: 93965c1c6844b452bbeaba38fe63dd71
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Resources/GlobalConfig.xml
================================================
../DataAndTools/Data/Client/
Data/
Data/
Data/
================================================
FILE: Client.Unity/Assets/LockstepECS/Resources/GlobalConfig.xml.meta
================================================
fileFormatVersion: 2
guid: 827a7a2e547064eba9b016aea018dc5e
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Resources/Prefabs/Player_Cube.prefab
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &4114152384307457898
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4114152384307457908}
- component: {fileID: 4114152384307457911}
- component: {fileID: 4114152384307457910}
- component: {fileID: 4114152384307457897}
- component: {fileID: 5066820000662899833}
m_Layer: 0
m_Name: Player_Cube
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4114152384307457908
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4114152384307457898}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 3, y: 3, z: 3}
m_Children:
- {fileID: 4114152385469006545}
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &4114152384307457911
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4114152384307457898}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 5bf10cdea1344482e91a4f2b58506b77, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!114 &4114152384307457910
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4114152384307457898}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6851b6711fc654d54b6566c5eae03737, type: 3}
m_Name:
m_EditorClassIdentifier:
m_SerializedData:
Value:
c0:
x: 0.97033787
y: 0
z: 0.24175282
w: 0
c1:
x: 0
y: 1
z: 0
w: 0
c2:
x: -0.24175282
y: 0
z: 0.97033787
w: 0
c3:
x: -5.7
y: 19.2
z: 57.5
w: 1
--- !u!114 &4114152384307457897
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4114152384307457898}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 9b0fd4427893a4a16ba0c267dfd00217, type: 3}
m_Name:
m_EditorClassIdentifier:
m_SerializedData:
mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0}
material: {fileID: 10302, guid: 0000000000000000f000000000000000, type: 0}
subMesh: 0
layer: 0
castShadows: 0
receiveShadows: 0
--- !u!114 &5066820000662899833
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4114152384307457898}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 912146af21af4c4c8295eff49d104616, type: 3}
m_Name:
m_EditorClassIdentifier:
--- !u!1 &4114152385469006544
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 5560203806037324126, guid: 06a930379e194436db1b5ce25e7704c2,
type: 3}
m_PrefabInstance: {fileID: 8372658093453341582}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4114152385469006545}
- component: {fileID: 4114152385469006556}
- component: {fileID: 4114152385469006559}
- component: {fileID: 4114152385469006558}
m_Layer: 0
m_Name: SkillEffect
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 0
--- !u!4 &4114152385469006545
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 5560203806037324127, guid: 06a930379e194436db1b5ce25e7704c2,
type: 3}
m_PrefabInstance: {fileID: 8372658093453341582}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4114152385469006544}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 4, y: 4, z: 4}
m_Children: []
m_Father: {fileID: 4114152384307457908}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &4114152385469006556
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 5560203806037324114, guid: 06a930379e194436db1b5ce25e7704c2,
type: 3}
m_PrefabInstance: {fileID: 8372658093453341582}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4114152385469006544}
m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0}
--- !u!23 &4114152385469006559
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 5560203806037324113, guid: 06a930379e194436db1b5ce25e7704c2,
type: 3}
m_PrefabInstance: {fileID: 8372658093453341582}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4114152385469006544}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: d793abe5b37224bd3b8c5d89221e6504, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
--- !u!135 &4114152385469006558
SphereCollider:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 5560203806037324112, guid: 06a930379e194436db1b5ce25e7704c2,
type: 3}
m_PrefabInstance: {fileID: 8372658093453341582}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4114152385469006544}
m_Material: {fileID: 0}
m_IsTrigger: 0
m_Enabled: 1
serializedVersion: 2
m_Radius: 0.5
m_Center: {x: 0, y: 0, z: 0}
--- !u!1001 &8372658093453341582
PrefabInstance:
m_ObjectHideFlags: 0
serializedVersion: 2
m_Modification:
m_TransformParent: {fileID: 4114152384307457908}
m_Modifications:
- target: {fileID: 5560203806037324126, guid: 06a930379e194436db1b5ce25e7704c2,
type: 3}
propertyPath: m_Name
value: SkillEffect
objectReference: {fileID: 0}
- target: {fileID: 5560203806037324127, guid: 06a930379e194436db1b5ce25e7704c2,
type: 3}
propertyPath: m_LocalPosition.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5560203806037324127, guid: 06a930379e194436db1b5ce25e7704c2,
type: 3}
propertyPath: m_LocalPosition.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5560203806037324127, guid: 06a930379e194436db1b5ce25e7704c2,
type: 3}
propertyPath: m_LocalPosition.z
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5560203806037324127, guid: 06a930379e194436db1b5ce25e7704c2,
type: 3}
propertyPath: m_LocalRotation.x
value: -0
objectReference: {fileID: 0}
- target: {fileID: 5560203806037324127, guid: 06a930379e194436db1b5ce25e7704c2,
type: 3}
propertyPath: m_LocalRotation.y
value: -0
objectReference: {fileID: 0}
- target: {fileID: 5560203806037324127, guid: 06a930379e194436db1b5ce25e7704c2,
type: 3}
propertyPath: m_LocalRotation.z
value: -0
objectReference: {fileID: 0}
- target: {fileID: 5560203806037324127, guid: 06a930379e194436db1b5ce25e7704c2,
type: 3}
propertyPath: m_LocalRotation.w
value: 1
objectReference: {fileID: 0}
- target: {fileID: 5560203806037324127, guid: 06a930379e194436db1b5ce25e7704c2,
type: 3}
propertyPath: m_RootOrder
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5560203806037324127, guid: 06a930379e194436db1b5ce25e7704c2,
type: 3}
propertyPath: m_LocalEulerAnglesHint.x
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5560203806037324127, guid: 06a930379e194436db1b5ce25e7704c2,
type: 3}
propertyPath: m_LocalEulerAnglesHint.y
value: 0
objectReference: {fileID: 0}
- target: {fileID: 5560203806037324127, guid: 06a930379e194436db1b5ce25e7704c2,
type: 3}
propertyPath: m_LocalEulerAnglesHint.z
value: 0
objectReference: {fileID: 0}
m_RemovedComponents: []
m_SourcePrefab: {fileID: 100100000, guid: 06a930379e194436db1b5ce25e7704c2, type: 3}
================================================
FILE: Client.Unity/Assets/LockstepECS/Resources/Prefabs/Player_Cube.prefab.meta
================================================
fileFormatVersion: 2
guid: a1d6b8716cd344cfb97d76f4f986fbe5
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Resources/Prefabs.meta
================================================
fileFormatVersion: 2
guid: 12151946b916d4cb8a3ce13db8f93808
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Resources/UnityEntityPrefabSetting.prefab
================================================
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &1155774472076782537
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1155774472076782538}
- component: {fileID: 1155774472076782539}
- component: {fileID: 1155774472076782536}
m_Layer: 0
m_Name: UnityEntityPrefabSetting
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &1155774472076782538
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1155774472076782537}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_Children: []
m_Father: {fileID: 0}
m_RootOrder: 0
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &1155774472076782539
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1155774472076782537}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: c43ed71b1fb3426ebca8a7c262bf8459, type: 3}
m_Name:
m_EditorClassIdentifier:
prefabInfos:
- Prefab: {fileID: 4114152384307457898, guid: a1d6b8716cd344cfb97d76f4f986fbe5,
type: 3}
AssetId: 1
--- !u!114 &1155774472076782536
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1155774472076782537}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: ea7d7495833204790ba1d3a8755397f8, type: 3}
m_Name:
m_EditorClassIdentifier:
ConversionMode: 0
================================================
FILE: Client.Unity/Assets/LockstepECS/Resources/UnityEntityPrefabSetting.prefab.meta
================================================
fileFormatVersion: 2
guid: 0e5eb294788a943bca181ef6fae5f543
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Resources.meta
================================================
fileFormatVersion: 2
guid: 45240c615bd4f4d1faf891e4d3747c6b
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/CameraMono.cs
================================================
using Lockstep.UnsafeECS.Game;
using Unity.Mathematics;
using UnityEngine;
namespace Lockstep.Game{
public class CameraMono : MonoBehaviour {
public Transform targetTrans;
public Vector3 scaleOffset;
public Vector3 offset;
public float fogStartDist = 20;
public float fogDistScale = 1.5f;
public float lerpSpd = 1;
public float xRote = 11;
private void Update(){
if (!Context.Instance.HasInit) {
return;
}
if (targetTrans == null) {
var id =GlobalStateService.Instance.LocalActorId;
var view = EntityViewPlayerCube.GetView(id);
targetTrans = view?.transform;
}
if(targetTrans == null) return;
var offsetScale = targetTrans.localScale.x;
var pos = targetTrans.TransformPoint(offset + offsetScale * scaleOffset);
transform.position = pos;
transform.rotation =transform.rotation;
if (targetTrans != null) {
if (transform.parent != targetTrans) {
transform.SetParent(targetTrans,true);
}
}
}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/CameraMono.cs.meta
================================================
fileFormatVersion: 2
guid: 685ac13f0dc84aa4b82782408bf60afc
timeCreated: 1572702738
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/Editor/EditorCollisionSystem.cs
================================================
using System.Collections;
using System.Collections.Generic;
using System.IO;
using Lockstep.Collision2D;
using Lockstep.Game;
using Lockstep.Util;
using UnityEditor;
using UnityEngine;
using UnityEditorInternal;
internal class LayerMatrixGUI { }
[CustomEditor(typeof(UnityGameConfig))]
public class EditorCollisionSystem : Editor {
private CollisionConfig _colliderConfig;
public override void OnInspectorGUI(){
base.OnInspectorGUI();
_colliderConfig = (target as UnityGameConfig).pureConfig.CollisionConfig;
var pos = new Vector2(_colliderConfig.scrollPos.x,_colliderConfig.scrollPos.y);
DoGUI("LayerCollisionMatrix",
ref _colliderConfig.isShow,
ref pos,
_colliderConfig.GetColliderPair,
_colliderConfig.SetColliderPair);
if (GUILayout.Button("ToJson")) {
UnityGameConfig.SaveToJson((target as UnityGameConfig).pureConfig);
AssetDatabase.SaveAssets();
AssetDatabase.Refresh();
}
}
public delegate bool GetValueFunc(int layerA, int layerB);
public delegate void SetValueFunc(int layerA, int layerB, bool val);
public string LayerToName(int idx){
if (idx < 0 || idx >= _colliderConfig.ColliderLayerNames.Length)
return "";
return _colliderConfig.ColliderLayerNames[idx];
}
public void DoGUI(string title, ref bool show, ref Vector2 scrollPos, GetValueFunc getValue, SetValueFunc setValue){
const int kMaxLayers = 32;
const int checkboxSize = 16;
int labelSize = 100;
const int indent = 30;
int numLayers = 0;
for (int i = 0; i < kMaxLayers; i++)
if (LayerToName(i) != "")
numLayers++;
// find the longest label
for (int i = 0; i < kMaxLayers; i++) {
var textDimensions = GUI.skin.label.CalcSize(new GUIContent(LayerToName(i)));
if (labelSize < textDimensions.x)
labelSize = (int) textDimensions.x;
}
GUILayout.BeginHorizontal();
GUILayout.Space(0);
show = EditorGUILayout.Foldout(show, title, true);
GUILayout.EndHorizontal();
if (show) {
scrollPos = GUILayout.BeginScrollView(scrollPos, GUILayout.MinHeight(labelSize + 20),
GUILayout.MaxHeight(labelSize + (numLayers + 1) * checkboxSize));
int y = 0;
int lx = 0;
Rect rr = GUILayoutUtility.GetRect(indent + checkboxSize * numLayers + labelSize, checkboxSize);
for (int i = 0; i < kMaxLayers; i++) {
if (LayerToName(i) != "") {
GUI.Label(new Rect(labelSize + indent + rr.x + lx * checkboxSize, rr.y, checkboxSize, checkboxSize),
(numLayers - i-1).ToString(), "RightLabel");
lx++;
}
}
GUI.matrix = Matrix4x4.identity;
y = 0;
for (int i = 0; i < kMaxLayers; i++) {
if (LayerToName(i) != "") {
int x = 0;
Rect r = GUILayoutUtility.GetRect(indent + checkboxSize * numLayers + labelSize, checkboxSize);
GUI.Label(new Rect(r.x + indent, r.y, labelSize, checkboxSize), i + " " + LayerToName(i),
"RightLabel");
for (int j = kMaxLayers-1; j >=0; j--) {
if (LayerToName(j) != "") {
if (x < numLayers - y) {
GUIContent tooltip = new GUIContent("", LayerToName(i) + "/" + LayerToName(j));
bool val = getValue(i, j);
bool toggle =
GUI.Toggle(
new Rect(labelSize + indent + r.x + x * checkboxSize, r.y, checkboxSize,
checkboxSize), val, tooltip);
if (toggle != val)
setValue(i, j, toggle);
}
x++;
}
}
y++;
}
}
GUILayout.EndScrollView();
}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/Editor/EditorCollisionSystem.cs.meta
================================================
fileFormatVersion: 2
guid: c1ef1cfe6a07842a3b365b21d33d41aa
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/Editor/EditorMainScript.cs
================================================
using Lockstep.Math;
using Lockstep.Game;
using UnityEditor;
using UnityEngine;
[CustomEditor(typeof(MonoProxyMainScript))]
public class EditorMainScript : Editor {
private MonoProxyMainScript owner;
public int rollbackTickCount = 60;
public override void OnInspectorGUI(){
base.OnInspectorGUI();
owner = target as MonoProxyMainScript;
if (!owner.HasInit ) return;
var world = ((owner.GetService()) as SimulatorService)?.World;
EditorGUILayout.LabelField("CurTick " + world.Tick);
rollbackTickCount = EditorGUILayout.IntField("RollbackTickCount", rollbackTickCount);
if (GUILayout.Button("Rollback")) {
((owner.GetService()) as SimulatorService).__debugRockbackToTick =
world.Tick - rollbackTickCount;
}
if (GUILayout.Button("Resume")) {
owner.GetService().IsPause = false;
}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/Editor/EditorMainScript.cs.meta
================================================
fileFormatVersion: 2
guid: 8cc8eb4d82544fe2a0acc5c49b71e472
timeCreated: 1567495507
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/Editor/EditorMonoProxyReferenceHolder.cs
================================================
using Lockstep.Game.UI;
using UnityEditor;
[CustomEditor(typeof(MonoProxyReferenceHolder))]
public class EditorMonoProxyReferenceHolder : EditorReferenceHolder {
}
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/Editor/EditorMonoProxyReferenceHolder.cs.meta
================================================
fileFormatVersion: 2
guid: 5cd70ef1394940c8b3cc0049fec829bc
timeCreated: 1571561764
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/Editor.meta
================================================
fileFormatVersion: 2
guid: c265c14d8483e46f99205be4041c8f99
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy/MonoProxyCollisionSystemDebuger.cs
================================================
using System;
using System.IO;
using UnityEditor;
[Serializable]
public class MonoProxyCollisionSystemDebuger : CollisionSystemDebuger { }
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy/MonoProxyCollisionSystemDebuger.cs.meta
================================================
fileFormatVersion: 2
guid: 665986f82c124dba9eef8d0a920e5174
timeCreated: 1569135627
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy/MonoProxyHotfixScript.cs
================================================
public class MonoProxyHotfixScript : HotfixScript { }
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy/MonoProxyHotfixScript.cs.meta
================================================
fileFormatVersion: 2
guid: 6ec0ec773cb9430883861fe7a89897c5
timeCreated: 1571560348
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy/MonoProxyMainScript.cs
================================================
using Lockstep.Game;
public class MonoProxyMainScript : MainScript {
protected override void Awake(){
base.Awake();
}
}
[System.Serializable]
public partial class MonoProxyGameViewConfig : GameViewConfig {
}
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy/MonoProxyMainScript.cs.meta
================================================
fileFormatVersion: 2
guid: 20396a1f508a4aa08f8989d265b39377
timeCreated: 1571560329
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy/MonoProxyMoverView.cs
================================================
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy/MonoProxyMoverView.cs.meta
================================================
fileFormatVersion: 2
guid: 33f43fa21b78f4789b27739cbfac261d
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy/MonoProxyReferenceHolder.cs
================================================
using Lockstep.Game.UI;
using UnityEngine.UI;
namespace Lockstep.Game.UI {
public class MonoProxyReferenceHolder : ReferenceHolder {
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy/MonoProxyReferenceHolder.cs.meta
================================================
fileFormatVersion: 2
guid: 8379e6936f36244498b3e59f1b4d6ea3
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy/MonoProxySpriteEffect.cs
================================================
using System;
using System.Collections;
using Debug = Lockstep.Logging.Debug;
public class MonoProxySpriteEffect : SpriteEffect {
}
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy/MonoProxySpriteEffect.cs.meta
================================================
fileFormatVersion: 2
guid: e5ef59c3577e14419a43960bee456a57
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/ResScripts/MonoProxy.meta
================================================
fileFormatVersion: 2
guid: ea3cbc176e6d48f0a430ae897586b7f4
timeCreated: 1571560452
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/ResScripts/UnityGameConfig.cs
================================================
using System.Collections.Generic;
using System.IO;
using Lockstep.UnsafeECS.Game;
using Lockstep.Util;
using UnityEngine;
namespace Lockstep.Game {
[CreateAssetMenu(menuName = "GameConfig")]
[System.Serializable]
public partial class UnityGameConfig : UnityEngine.ScriptableObject {
public GameConfig pureConfig = new GameConfig();
public static void SaveToJson(GameConfig config){
var json = JsonUtil.ToJson(config);
File.WriteAllText(Application.dataPath + "/LockstepECS/Resources/Config/GameConfig.json", json);
}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/ResScripts/UnityGameConfig.cs.meta
================================================
fileFormatVersion: 2
guid: 980ac168cef7441b18a297aac85d123e
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/ResScripts/UnityGameViewConfig.cs
================================================
using UnityEngine;
namespace Lockstep.Game {
[CreateAssetMenu(menuName = "UnityGameViewConfig")]
[System.Serializable]
public partial class UnityGameViewConfig : GameViewConfig {
public int Pad;
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/ResScripts/UnityGameViewConfig.cs.meta
================================================
fileFormatVersion: 2
guid: ce625fca54ee7448e83d49e11ee55e7a
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts/ResScripts.meta
================================================
fileFormatVersion: 2
guid: b3bdafd5f992b433a8c8ea0c0f71047b
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/Scripts.meta
================================================
fileFormatVersion: 2
guid: fd9c214f640fae348958e74eaea6f543
folderAsset: yes
timeCreated: 1431009955
licenseType: Store
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Game.Model.asmdef
================================================
{
"name": "Game.Model",
"references": [
"Engine.LockstepEngine",
"Common.Model",
"Common.UnsafeECS",
"Unity.Entities",
"Unity.Entities.Hybrid",
"Unity.Mathematics",
"Unity.Transforms",
"Unity.Jobs",
"Unity.Collections",
"Unity.Burst"
],
"allowUnsafeCode": true,
"overrideReferences": false,
"precompiledReferences": [],
"autoReferenced": true,
"defineConstraints": [],
"versionDefines": []
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Game.Model.asmdef.meta
================================================
fileFormatVersion: 2
guid: 47cab237e53a445eeb896da74a1d751e
AssemblyDefinitionImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Config/AudioConfig.cs
================================================
using System;
using UnityEngine;
using Debug = UnityEngine.Debug;
namespace Lockstep.Game {
public partial class AudioConfig {
public ushort BgMusic;
public ushort StartMusic;// = AudioIdStart;
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Config/AudioConfig.cs.meta
================================================
fileFormatVersion: 2
guid: a0a6f890f335b4a13a02113003930f66
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Config/GameConfig.cs
================================================
using System;
using NetMsg.Common;
namespace Lockstep.Game {
[Serializable]
public partial class GameConfig { }
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Config/GameConfig.cs.meta
================================================
fileFormatVersion: 2
guid: 2d2dc248816344d90aff3f9bb8b1f5aa
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Config.meta
================================================
fileFormatVersion: 2
guid: 867eef219fb324db891e6a2c8a79f0cb
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/IGameAudioService.cs
================================================
namespace Lockstep.Game {
public interface IGameAudioService :IService {
void PlayMusicBG();
void PlayMusicStart();
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/IGameAudioService.cs.meta
================================================
fileFormatVersion: 2
guid: 8ee2494672d7e479fb7d0865d290a8e2
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/IGameEffectService.cs
================================================
using Lockstep.Math;
namespace Lockstep.Game {
public interface IGameEffectService : IService {
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/IGameEffectService.cs.meta
================================================
fileFormatVersion: 2
guid: 2aa997325a9a942aea93acc5d2c51267
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/IGameResourceService.cs
================================================
using Lockstep.Game;
namespace Lockstep.Game {
public interface IGameResourceService : IService {
object LoadPrefab(int id);
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/IGameResourceService.cs.meta
================================================
fileFormatVersion: 2
guid: 90ab25e2aea9d48b1a88bc3b1cfbd22f
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/IGameUnitService.cs
================================================
using System;
using Lockstep.Math;
namespace Lockstep.Game {
public interface IGameUnitService : IService {
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/IGameUnitService.cs.meta
================================================
fileFormatVersion: 2
guid: 84e70e4c155ab4a6dbea7bbe911f1dee
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/Status/IGameConfigService.cs
================================================
using System.Collections.Generic;
using Lockstep.ECS;
using Lockstep.Math;
using Lockstep.Serialization;
using NetMsg.Common;
namespace Lockstep.Game {
public partial interface IGameConfigService : IService {
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/Status/IGameConfigService.cs.meta
================================================
fileFormatVersion: 2
guid: 594c45de2d9a54631868238ee8ec997e
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/Status/IGameConstStateService.cs
================================================
using System.Collections.Generic;
using Lockstep.Math;
using Lockstep.Serialization;
using NetMsg.Common;
namespace Lockstep.Game {
public partial interface IGameConstStateService : IService {
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/Status/IGameConstStateService.cs.meta
================================================
fileFormatVersion: 2
guid: 107e6d1af89b148dfa0b2d8dc50ea62c
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/Status/IGameStateService.cs
================================================
using Lockstep.Math;
using Lockstep.Serialization;
namespace Lockstep.Game {
public partial interface IGameStateService : IService {}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/Status/IGameStateService.cs.meta
================================================
fileFormatVersion: 2
guid: 87b1b3bd429814f218de343c7d0a3936
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces/Status.meta
================================================
fileFormatVersion: 2
guid: 13415eb337f444b8aa419b7e1472e6d5
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Interfaces.meta
================================================
fileFormatVersion: 2
guid: c9a005a0436754e2395aa5ec19d5df0e
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Misc/ConfigData.cs
================================================
using System.Collections.Generic;
using System.Runtime.InteropServices;
using Lockstep.Math;
namespace Lockstep.UnsafeECS.Game {
[System.Serializable]
[StructLayout(LayoutKind.Sequential)]
public struct ConfigPlayerInfo {
public LVector3 Position;
public LVector3 Forward;
public LFloat Scale;
public LFloat Deg;
public int AssetId;
public MoveData MoveData;
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Misc/ConfigData.cs.meta
================================================
fileFormatVersion: 2
guid: 67fdb4a1941d42edb29553441410897c
timeCreated: 1572931270
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Misc/PlayerInput.cs
================================================
using Lockstep.Math;
using Lockstep.Serialization;
namespace Lockstep.Game {
public partial class PlayerInput : BaseFormater,IBaseComponent {
public static PlayerInput Empty = new PlayerInput();
public ushort Deg;
public ushort SkillId;
public override bool Equals(object obj){
if (ReferenceEquals(this,obj)) return true;
var other = obj as PlayerInput;
return Equals(other);
}
public override void Serialize(Serializer writer){
writer.Write(Deg);
writer.Write(SkillId);
}
public void Reset(){
Deg = 0;
SkillId = 0;
}
public override void Deserialize(Deserializer reader){
Deg = reader.ReadUInt16();
SkillId = reader.ReadUInt16();
}
public bool Equals(PlayerInput other){
if (other == null) return false;
if (Deg != other.Deg) return false;
if (SkillId != other.SkillId) return false;
return true;
}
public PlayerInput Clone(){
var tThis = this;
return new PlayerInput() {
SkillId = tThis.SkillId,
Deg = tThis.Deg,
};
}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Misc/PlayerInput.cs.meta
================================================
fileFormatVersion: 2
guid: 58aad08f6e1c342638904826700a3b05
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Misc.meta
================================================
fileFormatVersion: 2
guid: 36a2c81ba9d94e87bfb63d753996d739
timeCreated: 1573608272
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Services/ExtensionGameUnityService.cs
================================================
namespace Lockstep.Game {
public partial class GameService :BaseGameService{
protected IGameStateService _gameStateService;
protected IGameConfigService _gameConfigService;
protected IGameResourceService _gameResourceService;
protected override void OnInitReference(IServiceContainer serviceContainer, IManagerContainer mgrContainer){
_gameStateService = serviceContainer.GetService();
_gameConfigService = serviceContainer.GetService();
_gameResourceService = serviceContainer.GetService();
}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Services/ExtensionGameUnityService.cs.meta
================================================
fileFormatVersion: 2
guid: 957eee382cec44eb897d2e079bd71a31
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Services/GameInputService.cs
================================================
using System.Collections.Generic;
using Lockstep.Game;
using Lockstep.Logging;
using Lockstep.Math;
using Lockstep.Serialization;
using Lockstep.Util;
using NetMsg.Common;
namespace Lockstep.Game {
public class GameInputService : IInputService {
public static PlayerInput CurGameInput = new PlayerInput();
public void Execute(InputCmd cmd, object entity){
var input = new Deserializer(cmd.content).Parse();
var playerInput = entity as PlayerInput;
playerInput.SkillId = input.SkillId;
playerInput.Deg = input.Deg;
//Debug.Log("InputUV " + input.inputUV);
}
public List GetInputCmds(){
#if !UNITY_EDITOR
CurGameInput.Deg = ((ushort)(short)1);
#endif
return new List() {
new InputCmd() {
content = CurGameInput.ToBytes()
}
};
}
public List GetDebugInputCmds(){
return new List() {
new InputCmd() {
content = new PlayerInput() {
Deg = (ushort)LRandom.Range(0,4),
SkillId = (ushort)LRandom.Range(0,3)
}.ToBytes()
}
};
}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Services/GameInputService.cs.meta
================================================
fileFormatVersion: 2
guid: 616c9f6f07b2d4bf6ac283d51b12fb81
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Services/GameResourceService.cs
================================================
using System;
using System.Collections.Generic;
using System.Reflection;
using Lockstep.Game;
using UnityEngine;
namespace Lockstep.Game {
public class GameResourceService : GameService, IGameResourceService {
public string pathPrefix = "Prefabs/";
private Dictionary _id2Prefab = new Dictionary();
public object LoadPrefab(int id){
return _LoadPrefab(id);
}
GameObject _LoadPrefab(int id){
if (_id2Prefab.TryGetValue(id, out var val)) {
return val;
}
return null;
}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Services/GameResourceService.cs.meta
================================================
fileFormatVersion: 2
guid: 0febdd1a761674d0786effa3a0e226e6
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Services/State/GameConfigService.cs
================================================
using System;
using System.Collections.Generic;
using System.IO;
using Lockstep.ECS;
using Lockstep.Math;
using Lockstep.Serialization;
using Lockstep.Util;
using NetMsg.Common;
using UnityEngine;
using Lockstep.Game;
namespace Lockstep.Game {
[System.Serializable]
public partial class GameConfigService : BaseService {
[NonSerialized] private GameConfig _curState;
public LFloat DeltaTime => new LFloat(null,NetworkDefine.UPDATE_DELTATIME);
public override void DoAwake(IServiceContainer services){
var text = UnityEngine.Resources.Load("Config/GameConfig").text;
_curState = JsonUtil.ToObject(text);
_globalStateService.GameStartInfo = _curState.ClientModeInfo;
}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Services/State/GameConfigService.cs.meta
================================================
fileFormatVersion: 2
guid: b7c34acda392241b4aee7a55b89203bc
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Services/State/GameStateService.cs
================================================
using Lockstep.Game;
using Lockstep.Math;
namespace Lockstep.Game {
public partial class GameStateService : BaseService {
public override void DoStart(){
base.DoStart();
IsGameOver = false;
}
public void OnEvent_LevelLoadDone(object param){
var level = (int) param;
IsGameOver = false;
_globalStateService.CurLevel = level;
}
public void OnEvent_SimulationStart(object param){
IsPlaying = true;
}
private void GameFalied(){
IsGameOver = true;
ShowMessage("Game Over!!");
}
private void GameWin(){
IsGameOver = true;
}
void ShowMessage(string msg){ }
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Services/State/GameStateService.cs.meta
================================================
fileFormatVersion: 2
guid: 17ca5aa79abb14d76a60c4db89a2c336
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Services/State.meta
================================================
fileFormatVersion: 2
guid: 6a54c3dad2bf4df3904673f62d7ffc24
timeCreated: 1572946968
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Services.meta
================================================
fileFormatVersion: 2
guid: 4fb7a191ae1f24509ba8a7ac33e863a9
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/Context_TempField.cs
================================================
using System.Collections.Generic;
using System.Runtime.InteropServices;
using Lockstep.Game;
using Lockstep.Logging;
using Lockstep.Math;
using NetMsg.Common;
using Unity.Collections;
namespace Lockstep.UnsafeECS.Game {
public unsafe partial class TempFields {
public void OnDestroy(){
Clean();
}
public void FramePrepare(){}
public void FrameClearUp(){
Clean();
}
private void Clean(){}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/Context_TempField.cs.meta
================================================
fileFormatVersion: 2
guid: fe74b24d43f94f55bc16be375e7ccd5e
timeCreated: 1572759386
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/GameLogicSystems.cs
================================================
using Lockstep.Game;
using Lockstep.UnsafeECS;
namespace Lockstep.UnsafeECS.Game {
public class GameLogicSystems : Systems {
public GameLogicSystems(Context contexts, IServiceContainer services){
//Init
{
Add(new InitSystem().Init(contexts, services));
}
//Input
{
Add(new InputSystem().Init(contexts, services));
}
//Update
{
//
Add(new PlayerMoveSystem().Init(contexts, services));
}
//Clean
{
//Add(new DestroySystem().Init(contexts, services));
}
}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/GameLogicSystems.cs.meta
================================================
fileFormatVersion: 2
guid: f5f17b4476e844461a59f082b7734bd1
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/Init/InitSystem.cs
================================================
using System.Collections.Generic;
using Lockstep.Math;
using UnityEngine;
using Debug = Lockstep.Logging.Debug;
namespace Lockstep.UnsafeECS.Game {
public unsafe class InitSystem : GameBaseSystem, IInitializeSystem {
public void Initialize(IContext context){
_context.HasInit = true;
var config = _gameConfigService;
int playerId = 0;
var count = _globalStateService.ActorCount;
for (int i = 0; i < count; i++) {
var obstacleInfo = config.PlayerInfos[i % config.PlayerInfos.Count];
var entity = _context.PostCmdCreatePlayerCube();
entity->Transform.Position = obstacleInfo.Position;
entity->Transform.Forward = obstacleInfo.Forward;
entity->Transform.Scale = obstacleInfo.Scale;
entity->Move = obstacleInfo.MoveData;
entity->Prefab.AssetId = obstacleInfo.AssetId;
entity->Player.LocalId = playerId++; //
Debug.Log("Create ObstacleInfos " + entity->Player.LocalId);
}
}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/Init/InitSystem.cs.meta
================================================
fileFormatVersion: 2
guid: 90415483585a47529c0e2a1a9a211216
timeCreated: 1572759358
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/Init.meta
================================================
fileFormatVersion: 2
guid: f0ccdcf2347b4605a62b3d7226239474
timeCreated: 1572927762
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/Input/InputSystem.cs
================================================
using Lockstep.Collision2D;
using Lockstep.Game;
using Lockstep.Math;
using Lockstep.Serialization;
namespace Lockstep.UnsafeECS.Game {
public unsafe partial class InputSystem : GameExecuteSystem {
public void Execute(
ref PlayerData playerData,
ref MoveData moveData,
ref Transform3D transform3D
){
if (_tempFields.InputCmds.TryGetValue(playerData.LocalId, out var cmd)) {
var input = new Deserializer(cmd.content).Parse();
moveData.DeltaDeg = (int)(short)input.Deg;
}
else {
moveData.DeltaDeg = 0;
}
}
private LFloat _deltaTime;
protected override bool BeforeSchedule(){
_deltaTime = _globalStateService.DeltaTime;
return true;
}
protected override void AfterSchedule(bool isSucc){
_tempFields.InputCmds.Clear();
}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/Input/InputSystem.cs.meta
================================================
fileFormatVersion: 2
guid: 407022b328a04fa0818dcd775d5fe5b3
timeCreated: 1572854152
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/Input.meta
================================================
fileFormatVersion: 2
guid: 9335206a54db4f5b92adfdbd0e1e1b0f
timeCreated: 1572927708
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/Logic/PlayerMoveSystem.cs
================================================
using Lockstep.Math;
using UnityEngine;
using Debug = Lockstep.Logging.Debug;
namespace Lockstep.UnsafeECS.Game {
public unsafe partial class PlayerMoveSystem : GameExecuteSystem {
private LFloat _deltaTime;
protected override bool BeforeSchedule(){
//assign jobData info
_deltaTime = _globalStateService.DeltaTime;
return true;
}
public void Execute(ref Transform3D transform3D,
ref MoveData moveData){
var deg = transform3D.Deg + (moveData.DeltaDeg * _deltaTime) * moveData.AngularSpd;
LFloat s, c;
var ccwDeg = (-deg + 90);
LMath.SinCos(out s, out c, LMath.Deg2Rad * ccwDeg);
var ford = new LVector3(c, 0, s);
transform3D.Forward = ford;
var scale = 1 + transform3D.Scale * new LFloat(null, 200);
transform3D.Position += transform3D.Forward *
(_deltaTime * ((moveData.MoveSpd) * scale));
}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/Logic/PlayerMoveSystem.cs.meta
================================================
fileFormatVersion: 2
guid: db8d0ce5d78445159c0abf98c88bc44d
timeCreated: 1573263154
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems/Logic.meta
================================================
fileFormatVersion: 2
guid: 9cfe62bada0f4dc18f01977978c5d542
timeCreated: 1572927701
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/Systems.meta
================================================
fileFormatVersion: 2
guid: 87ee0124887484db8b19b81861729e41
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Core/Context.cs
================================================
using System.Collections.Generic;
using Lockstep.Game;
using Lockstep.Logging;
using Lockstep.Math;
using Lockstep.Serialization;
using Lockstep.UnsafeECS;
using NetMsg.Common;
namespace Lockstep.UnsafeECS.Game {
public unsafe partial class Context {
public PlayerCube PlayerInfo =>
_entities._PlayerCubeAry._EntityAry[GetService().LocalActorId];
public PlayerCube GetPlayerInfo(int localActorId){
return _entities._PlayerCubeAry._EntityAry[localActorId];
}
protected override void OnAwake(){ }
protected override void OnDestroy(){
Debug.LogError("Destoryed !");
}
protected override void OnProcessInputQueue(byte actorId, InputCmd cmd){
TempFields.InputCmds[actorId] = cmd;
}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Core/Context.cs.meta
================================================
fileFormatVersion: 2
guid: d28ba2d9c18243c0a6adba8cd517b5ca
timeCreated: 1572344751
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Core/UnsafeWorld.cs
================================================
using Lockstep.Game;
using Lockstep.Logging;
using Lockstep.Math;
using Lockstep.Util;
using NetMsg.Common;
using Lockstep.UnsafeECS;
namespace Lockstep.UnsafeECS.Game {
public partial class UnsafeWorld : World {
private Context _context;
private Systems _systems;
public UnsafeWorld(IServiceContainer services, object contextsObj, object logicFeatureObj){
var contexts = contextsObj as Context;
var logicFeature = logicFeatureObj as Systems;
_context = contexts;
_context._entityService = services.GetService();
_timeMachineService = services.GetService();
_systems = new WorldSystems(_context, services, logicFeature);
_context.DoAwake(_systems,services);
Debug.Log("UnsafeWorld Constructer");
//temp code
}
protected override void DoSimulateAwake(IServiceContainer serviceContainer, IManagerContainer mgrContainer){
InitReference(serviceContainer, mgrContainer);
DoAwake(serviceContainer);
DoStart();
}
protected override void DoSimulateStart(){
Debug.Log("DoSimulateStart");
Profiler.BeginSample("UnsafeECS DoInitialize");
_context.DoInitialize();
Profiler.EndSample();
}
protected override void DoStep(bool isNeedGenSnap){
Profiler.BeginSample("UnsafeECS Update");
_context.DoUpdate();
Profiler.EndSample();
}
protected override void DoBackup(int tick){
Profiler.BeginSample("_context.Backup");
_context.Backup(tick);
Profiler.EndSample();
//Profiler.BeginSample("_context.DoCleanUselessSnapshot");
//DoCleanUselessSnapshot(tick -1);
//Profiler.EndSample();
}
protected override void DoRollbackTo(int tick, int missFrameTick, bool isNeedClear = true){
_context.RollbackTo(tick,missFrameTick,isNeedClear);
}
protected override void DoCleanUselessSnapshot(int checkedTick){
_context.CleanUselessSnapshot(checkedTick);
}
protected override void DoProcessInputQueue(byte actorId, InputCmd cmd){
_context.ProcessInputQueue(actorId,cmd);
}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Core/UnsafeWorld.cs.meta
================================================
fileFormatVersion: 2
guid: e27ee9cf6187d48e8b4a756e0de81ff7
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Core/WorldSystems.cs
================================================
using Lockstep.Game;
using Lockstep.UnsafeECS;
namespace Lockstep.UnsafeECS.Game {
public partial class WorldSystems : Systems {
public WorldSystems(Context contexts, IServiceContainer services, Systems logicFeature){
if (logicFeature != null) {
Add(logicFeature);
}
}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Core/WorldSystems.cs.meta
================================================
fileFormatVersion: 2
guid: b24d61ffc130c4ae89cdfb3d24e8251d
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Core.meta
================================================
fileFormatVersion: 2
guid: b655b8874c774e5cb02faf468659506f
timeCreated: 1572348098
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/EntityExt.cs
================================================
namespace Lockstep.InternalUnsafeECS {
}
namespace Lockstep.UnsafeECS {
public static class EntityExt {
public static Game.EEntityType EnumType(this EntityRef _this){
return (Game.EEntityType) _this._type;
}
public static Game.EEntityType EnumType(this Entity _this){
return (Game.EEntityType) _this._ref._type;
}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/EntityExt.cs.meta
================================================
fileFormatVersion: 2
guid: 3278a540f24d496c9655861731328744
timeCreated: 1572344697
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Interfaces/IEntityService.cs
================================================
using Lockstep.UnsafeECS;
namespace Lockstep.UnsafeECS.Game {
public unsafe partial interface IEntityService : Lockstep.Game.IService {
void OnEntityCreated(Context context, Entity* entity);
void OnEntityDestroy(Context context, Entity* pEntity);
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Interfaces/IEntityService.cs.meta
================================================
fileFormatVersion: 2
guid: 58b0d16c424042babfeb01636c408fb8
timeCreated: 1572344328
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Interfaces.meta
================================================
fileFormatVersion: 2
guid: 9efd4f4b9cc34e94ba2d4be9726fce5e
timeCreated: 1572349050
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Services/MapService.cs
================================================
namespace Lockstep.Game {
public interface IMapService : IService { }
[System.Serializable]
public partial class MapService : BaseService, IMapService { }
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Services/MapService.cs.meta
================================================
fileFormatVersion: 2
guid: 72e8d6a0de714c758471d99c8c54cbc6
timeCreated: 1573305047
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Services/PureEntityService.cs
================================================
using Lockstep.UnsafeECS;
namespace Lockstep.UnsafeECS.Game {
public unsafe partial class PureEntityService : IEntityService {
public virtual void OnEntityCreated(Context context, Entity* entity){ }
public virtual void OnEntityDestroy(Context context, Entity* pEntity){ }
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Services/PureEntityService.cs.meta
================================================
fileFormatVersion: 2
guid: 62e796caef324d9d8b9aed38d9f987d3
timeCreated: 1572344337
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Services/UnsafeEcsFactoryService.cs
================================================
using Lockstep.Game;
using Lockstep.UnsafeECS.Game;
using Lockstep.UnsafeECS;
namespace Lockstep.UnsafeECS.Game {
public class UnsafeEcsFactoryService : IECSFactoryService {
private static Context _lastInstance;
public object CreateSystems(object contexts, IServiceContainer services){
return new GameLogicSystems(contexts as Context,services) ;
}
public object CreateContexts(){
var ctx = _lastInstance == null ? Context.Instance : new Context();
_lastInstance = ctx;
return ctx;
}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Services/UnsafeEcsFactoryService.cs.meta
================================================
fileFormatVersion: 2
guid: 67e4f9cb8b1fa49d8ac7f749869780eb
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Services.meta
================================================
fileFormatVersion: 2
guid: 718021978a7c4f30981bbc1ac141f24e
timeCreated: 1572347709
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Systems/GameBaseSystem.cs
================================================
using Lockstep.UnsafeECS;
namespace Lockstep.UnsafeECS.Game {
public abstract unsafe partial class GameBaseSystem : BaseSystem {
protected TempFields _tempFields => _context.TempFields;
}
public abstract unsafe partial class GameJobSystem : BaseJobSystem {
protected TempFields _tempFields => _context.TempFields;
}
public abstract partial class GameExecuteSystem :BaseExecuteSystem{
protected TempFields _tempFields => _context.TempFields;
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Systems/GameBaseSystem.cs.meta
================================================
fileFormatVersion: 2
guid: c8100f270f7e47128491fe7781e9d1c5
timeCreated: 1572347662
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Systems/GameExecuteSystem.cs
================================================
using Lockstep.UnsafeECS;
namespace Lockstep.UnsafeECS.Game {
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Systems/GameExecuteSystem.cs.meta
================================================
fileFormatVersion: 2
guid: b82a7fdf47594a14a413a5dc9ea28130
timeCreated: 1572347654
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework/Systems.meta
================================================
fileFormatVersion: 2
guid: 4db01495254e469d83706f1ccd4ee686
timeCreated: 1572347646
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/UnsafeECSFramework.meta
================================================
fileFormatVersion: 2
guid: 07ef950861037403a8fead4950003ba0
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__ExcelParser/Table_ConfigBullet.cs
================================================
//------------------------------------------------------------------------------
//
// This code was generated by Tools.ExcelParser, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null.
// https://github.com/JiepengTan/LockstepEngine
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
//
//------------------------------------------------------------------------------
using System;
using System.Collections.Generic;
using Lockstep.Serialization;
using Lockstep.Math;
namespace Lockstep.Game{
public partial class Table_ConfigBullet : TableData
{
const string tableName = "ConfigBullet";
public override string Name() { return tableName; }
/// id
public UInt16 asset;
///
public Boolean bullet_canDestoryIron;
///
public Boolean bullet_canDestoryGrass;
///
public String unit_name;
///
public Int32 unit_health;
///
public Int32 unit_damage;
///
public LFloat move_moveSpd;
///
public LFloat move_maxMoveSpd;
protected override void DoParseData(Deserializer reader){
asset = reader.ReadUInt16();
bullet_canDestoryIron = reader.ReadBoolean();
bullet_canDestoryGrass = reader.ReadBoolean();
unit_name = reader.ReadString();
unit_health = reader.ReadInt32();
unit_damage = reader.ReadInt32();
move_moveSpd = reader.ReadLFloat();
move_maxMoveSpd = reader.ReadLFloat();
}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__ExcelParser/Table_ConfigBullet.cs.meta
================================================
fileFormatVersion: 2
guid: 2c1d225d77da74a47a4930f434fb013d
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__ExcelParser.meta
================================================
fileFormatVersion: 2
guid: e298cc47cc1d846558a2bf431328d7d2
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Component.cs
================================================
//------------------------------------------------------------------------------
//
// This code was generated by Tools.MacroExpansion, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null.
// https://github.com/JiepengTan/LockstepEngine
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
//
//------------------------------------------------------------------------------
//Power by ME //src: https://github.com/JiepengTan/ME
//#define DONT_USE_GENERATE_CODE
using System.Linq;
using Lockstep.Serialization;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
using System;
using Lockstep.InternalUnsafeECS;
using System.Collections;
using Lockstep.Math;
using System.Collections.Generic;
using Lockstep.Logging;
using Lockstep.Util;
namespace Lockstep.UnsafeECS.Game {
[StructLayoutAttribute(LayoutKind.Sequential)]
[System.Serializable]
public unsafe partial struct PlayerCubeTag {
public int Pad;
public override Int32 GetHashCode() {
unchecked {
var hash = 7;
hash = hash * 37 +Pad.GetHashCode();
return hash;
}
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
[System.Serializable]
public unsafe partial struct AssetData {
public int AssetId;
public override Int32 GetHashCode() {
unchecked {
var hash = 7;
hash = hash * 37 +AssetId.GetHashCode();
return hash;
}
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
[System.Serializable]
public unsafe partial struct PlayerData {
public int Score;
public int LocalId;
public override Int32 GetHashCode() {
unchecked {
var hash = 7;
hash = hash * 37 +Score.GetHashCode();
hash = hash * 37 +LocalId.GetHashCode();
return hash;
}
}
}
[StructLayoutAttribute(LayoutKind.Sequential)]
[System.Serializable]
public unsafe partial struct MoveData {
public LFloat MoveSpd;
public LFloat AcceleratedSpd;
public LFloat CurSpd;
public LFloat AngularSpd;
public LFloat DeltaDeg;
public override Int32 GetHashCode() {
unchecked {
var hash = 7;
hash = hash * 37 +MoveSpd.GetHashCode();
hash = hash * 37 +AcceleratedSpd.GetHashCode();
hash = hash * 37 +CurSpd.GetHashCode();
hash = hash * 37 +AngularSpd.GetHashCode();
hash = hash * 37 +DeltaDeg.GetHashCode();
return hash;
}
}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Component.cs.meta
================================================
fileFormatVersion: 2
guid: a4c427e061c8a46a89ab346d4c018854
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Context.cs
================================================
//------------------------------------------------------------------------------
//
// This code was generated by Tools.MacroExpansion, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null.
// https://github.com/JiepengTan/LockstepEngine
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
//
//------------------------------------------------------------------------------
//Power by ME //src: https://github.com/JiepengTan/ME
//#define DONT_USE_GENERATE_CODE
using System.Linq;
using Lockstep.Serialization;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
using System;
using Lockstep.InternalUnsafeECS;
using System.Collections;
using Lockstep.Math;
using System.Collections.Generic;
using Lockstep.Logging;
using Lockstep.Util;
namespace Lockstep.UnsafeECS.Game {
using Lockstep.Game;
using NetMsg.Common;
public unsafe partial class TempFields {
private Context _context;
public Dictionary InputCmds = new Dictionary();
public TempFields(Context context){
this._context = context;
}
}
public unsafe partial class Context : BaseContext {
private static Context _instance;
public static Context Instance {
get => _instance ?? (_instance = new Context());
set => _instance = value;
}
public bool HasInit = false;
public TempFields TempFields{ get;private set;}
public _EntityManager _entities = new _EntityManager();
public IEntityService _entityService;
private IServiceContainer _services;
public T GetService() where T : Lockstep.Game.IService{
if (_services == null) return default(T);
return _services.GetService();
}
#region Rollback Implement
private ClassBackupHelper<_EntityManager> _entitiesBackuper = new ClassBackupHelper<_EntityManager>();
protected override void _DoBackup(int tick){
_entitiesBackuper.Backup(tick, _entities.Clone());
}
protected override void _DoRollbackTo(int tick, int missFrameTick, bool isNeedClear){
var clone = _entitiesBackuper.RollbackTo(tick, missFrameTick, isNeedClear);
clone.CopyTo(_entities);
}
protected override void _DoCleanUselessSnapshot(int checkedTick){
_entitiesBackuper.CleanUselessSnapshot(checkedTick,(es)=>es.Free());
}
#endregion
#region Lifecycle
private FuncOnEntityCreated funcOnCreateEntityPlayerCube;
private FuncOnEntityCreated funcResetEntityPlayerCube;
protected override void _DoAwake(IServiceContainer services){
RegisterSystemFunctions();
TempFields = new TempFields(this);
OnInit(this,services);
_entities.Alloc();
_services = services;
// reduce gc
funcOnCreateEntityPlayerCube = OnEntityCreatedPlayerCube;
funcResetEntityPlayerCube = ResetEntityPlayerCube;
}
protected override void _DoDestroy(){
TempFields.OnDestroy();
OnDestroy();
_entities.Free();
}
protected override void _BeforeSchedule(){
TempFields.FramePrepare();
}
protected override void _AfterSchedule(){
TempFields.FrameClearUp();
}
protected override void _DoDestroyEntity(EntityRef entityRef){
DestroyEntityInternal(GetEntity(entityRef));
}
public Entity* GetEntity(EntityRef entityRef){
switch (entityRef._type) {
case EntityIds.PlayerCube: return (Entity*) GetPlayerCube(entityRef);
}
return null;
}
private void DestroyEntityInternal(Entity* entity){
if (entity == null) {
return;
}
if (entity->_active == false) {
return;
}
switch (entity->_ref._type) {
case EntityIds.PlayerCube:
DestroyPlayerCubeInternal((PlayerCube*) entity);
break;
}
}
private unsafe void PostUpdateCreatePlayerCube(){
_entities._PlayerCubeAry.PostUpdateCreate(funcOnCreateEntityPlayerCube,funcResetEntityPlayerCube);
}
#endregion
#region Entity PlayerCube
private void OnEntityCreatedPlayerCube(PlayerCube* dstPtr){
_EntityCreated(&dstPtr->_entity);
_entityService.OnEntityCreated(this, (Entity*) dstPtr);
_entityService.OnPlayerCubeCreated(this, dstPtr);
}
private void ResetEntityPlayerCube(PlayerCube* dstPtr){
*dstPtr = _DefaultDefine.PlayerCube;
}
public Boolean PlayerCubeExists(EntityRef entityRef){
return GetPlayerCube(entityRef) != null;
}
public PlayerCube* PostCmdCreatePlayerCube(){
return _entities.CreateTempPlayerCube(this);
}
private void DestroyPlayerCubeInternal(PlayerCube* ptr){
_entities._PlayerCubeAry.ReleaseEntity((Entity*)ptr);
_entityService.OnPlayerCubeDestroy(this, ptr);
_entityService.OnEntityDestroy(this, &ptr->_entity);
var copy = ptr->_entity;
*ptr = _DefaultDefine.PlayerCube;
ptr->_entity = copy;
_EntityDestroy(&ptr->_entity);
}
public void DestroyPlayerCube(PlayerCube* ptr){
if (ptr == null) {
return;
}
if (ptr->_entity._active == false) {
return;
}
_destroy.Enqueue(ptr->EntityRef);
}
public void DestroyPlayerCube(EntityRef entityRef){
_destroy.Enqueue(entityRef);
}
#endregion
#region GetEntity
private PlayerCubeIterator GetAllPlayerCube(){
return new PlayerCubeIterator(_entities.GetPlayerCube(0),_entities.MaxPlayerCubeIndex + 1);
}
private EntityFilter[] GetAllEntities(){
var all = new EntityFilter[_entities.CurTotalEntityCount];
var count = 0;
{
var ptr = _entities.GetPlayerCube(0);
var len = _entities._PlayerCubeAry.Length;
for (var i = 0; i < len; ++i, ++ptr) {
all[count++].Entity = &ptr->_entity;
}
}
return all;
}
#endregion
#region GetBuildInComponet
public unsafe Buffer GetAllAnimator()
{
Buffer buffer = Buffer.Alloc(_entities.CurTotalEntityCount);
return buffer;
}
public unsafe Buffer GetAllCollisionAgent()
{
Buffer buffer = Buffer.Alloc(_entities.CurTotalEntityCount);
return buffer;
}
public unsafe Buffer GetAllNavMeshAgent()
{
Buffer buffer = Buffer.Alloc(_entities.CurTotalEntityCount);
return buffer;
}
public unsafe Buffer GetAllPrefab()
{
Buffer buffer = Buffer.Alloc(_entities.CurTotalEntityCount);
PlayerCube* PlayerCubePtr = this._entities.GetPlayerCube(0);
var idxPlayerCube = 2;
while (idxPlayerCube >= 0)
{
if (PlayerCubePtr->_entity._active)
{
buffer.Items[buffer.Count].Entity = &PlayerCubePtr->_entity;
buffer.Items[buffer.Count].Prefab = &PlayerCubePtr->Prefab;
++buffer.Count;
}
--idxPlayerCube;
++PlayerCubePtr;
}
return buffer;
}
public unsafe Buffer GetAllTransform2D()
{
Buffer buffer = Buffer.Alloc(_entities.CurTotalEntityCount);
return buffer;
}
public unsafe Buffer GetAllTransform3D()
{
Buffer buffer = Buffer.Alloc(_entities.CurTotalEntityCount);
return buffer;
}
#endregion
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Context.cs.meta
================================================
fileFormatVersion: 2
guid: 03b703a8fabe64c379259de61504ac98
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Context_Interfaces.cs
================================================
//------------------------------------------------------------------------------
//
// This code was generated by Tools.MacroExpansion, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null.
// https://github.com/JiepengTan/LockstepEngine
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
//
//------------------------------------------------------------------------------
//Power by ME //src: https://github.com/JiepengTan/ME
//#define DONT_USE_GENERATE_CODE
using System.Linq;
using Lockstep.Serialization;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
using System;
using Lockstep.InternalUnsafeECS;
using System.Collections;
using Lockstep.Math;
using System.Collections.Generic;
using Lockstep.Logging;
using Lockstep.Util;
namespace Lockstep.UnsafeECS.Game {
using Lockstep.Game;
public unsafe partial class Context : BaseContext {
public int CurTotalEntityCount => _entities.CurTotalEntityCount;
public int CurPlayerCubeCount => _entities.CurPlayerCubeCount;
public int MaxPlayerCubeIndex => _entities.MaxPlayerCubeIndex;
[MethodImpl(MethodImplOptions.AggressiveInlining)] public unsafe PlayerCube* GetPlayerCube(int index) { return _entities.GetPlayerCube(index); }
[MethodImpl(MethodImplOptions.AggressiveInlining)] public unsafe PlayerCube* GetPlayerCube(EntityRef entityRef) { return _entities.GetPlayerCube(entityRef); }
#region GetComponetFilter
public void GetAllPlayerCube_Transform(EAllocatorType allocatorType, out NativeArray entityAry,
out NativeArray compArray, FuncEntityFilter filterFunc){
_FilterEntity(allocatorType,_entities._PlayerCubeAry._EntityAry,out entityAry,out compArray,filterFunc,
(elst,clst,p)=>{ if (p->IsActive && filterFunc(p)) { elst.Add(p->EntityRef);clst.Add(p->Transform); } });
}
public void GetAllPlayerCube_Prefab(EAllocatorType allocatorType, out NativeArray entityAry,
out NativeArray compArray, FuncEntityFilter filterFunc){
_FilterEntity(allocatorType,_entities._PlayerCubeAry._EntityAry,out entityAry,out compArray,filterFunc,
(elst,clst,p)=>{ if (p->IsActive && filterFunc(p)) { elst.Add(p->EntityRef);clst.Add(p->Prefab); } });
}
public void GetAllPlayerCube_Move(EAllocatorType allocatorType, out NativeArray entityAry,
out NativeArray compArray, FuncEntityFilter filterFunc){
_FilterEntity(allocatorType,_entities._PlayerCubeAry._EntityAry,out entityAry,out compArray,filterFunc,
(elst,clst,p)=>{ if (p->IsActive && filterFunc(p)) { elst.Add(p->EntityRef);clst.Add(p->Move); } });
}
public void GetAllPlayerCube_Player(EAllocatorType allocatorType, out NativeArray entityAry,
out NativeArray compArray, FuncEntityFilter filterFunc){
_FilterEntity(allocatorType,_entities._PlayerCubeAry._EntityAry,out entityAry,out compArray,filterFunc,
(elst,clst,p)=>{ if (p->IsActive && filterFunc(p)) { elst.Add(p->EntityRef);clst.Add(p->Player); } });
}
public void GetAllPlayerCube_Tag(EAllocatorType allocatorType, out NativeArray entityAry,
out NativeArray compArray, FuncEntityFilter filterFunc){
_FilterEntity(allocatorType,_entities._PlayerCubeAry._EntityAry,out entityAry,out compArray,filterFunc,
(elst,clst,p)=>{ if (p->IsActive && filterFunc(p)) { elst.Add(p->EntityRef);clst.Add(p->Tag); } });
}
public NativeArray GetAllAnimator(EAllocatorType allocatorType,E_EntityOfAnimator entity){ var val = _entities.GetAllAnimator(entity);_RegisterAry(allocatorType,ref val); return val;}
public NativeArray GetAllAnimator(EAllocatorType allocatorType,E_EntityOfAnimator entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllAnimator(entity,filterFunc,out length); _RegisterAry(allocatorType,ref val);; return val;}
public NativeArray GetAllCollisionAgent(EAllocatorType allocatorType,E_EntityOfCollisionAgent entity){ var val = _entities.GetAllCollisionAgent(entity);_RegisterAry(allocatorType,ref val); return val;}
public NativeArray GetAllCollisionAgent(EAllocatorType allocatorType,E_EntityOfCollisionAgent entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllCollisionAgent(entity,filterFunc,out length); _RegisterAry(allocatorType,ref val);; return val;}
public NativeArray GetAllNavMeshAgent(EAllocatorType allocatorType,E_EntityOfNavMeshAgent entity){ var val = _entities.GetAllNavMeshAgent(entity);_RegisterAry(allocatorType,ref val); return val;}
public NativeArray GetAllNavMeshAgent(EAllocatorType allocatorType,E_EntityOfNavMeshAgent entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllNavMeshAgent(entity,filterFunc,out length); _RegisterAry(allocatorType,ref val);; return val;}
public NativeArray GetAllPrefab(EAllocatorType allocatorType,E_EntityOfPrefab entity){ var val = _entities.GetAllPrefab(entity);_RegisterAry(allocatorType,ref val); return val;}
public NativeArray GetAllPrefab(EAllocatorType allocatorType,E_EntityOfPrefab entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllPrefab(entity,filterFunc,out length); _RegisterAry(allocatorType,ref val);; return val;}
public NativeArray GetAllTransform2D(EAllocatorType allocatorType,E_EntityOfTransform2D entity){ var val = _entities.GetAllTransform2D(entity);_RegisterAry(allocatorType,ref val); return val;}
public NativeArray GetAllTransform2D(EAllocatorType allocatorType,E_EntityOfTransform2D entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllTransform2D(entity,filterFunc,out length); _RegisterAry(allocatorType,ref val);; return val;}
public NativeArray GetAllTransform3D(EAllocatorType allocatorType,E_EntityOfTransform3D entity){ var val = _entities.GetAllTransform3D(entity);_RegisterAry(allocatorType,ref val); return val;}
public NativeArray GetAllTransform3D(EAllocatorType allocatorType,E_EntityOfTransform3D entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllTransform3D(entity,filterFunc,out length); _RegisterAry(allocatorType,ref val);; return val;}
public NativeArray GetAllPlayerCubeTag(EAllocatorType allocatorType,E_EntityOfPlayerCubeTag entity){ var val = _entities.GetAllPlayerCubeTag(entity);_RegisterAry(allocatorType,ref val); return val;}
public NativeArray GetAllPlayerCubeTag(EAllocatorType allocatorType,E_EntityOfPlayerCubeTag entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllPlayerCubeTag(entity,filterFunc,out length); _RegisterAry(allocatorType,ref val);; return val;}
public NativeArray GetAllAssetData(EAllocatorType allocatorType,E_EntityOfAssetData entity){ var val = _entities.GetAllAssetData(entity);_RegisterAry(allocatorType,ref val); return val;}
public NativeArray GetAllAssetData(EAllocatorType allocatorType,E_EntityOfAssetData entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllAssetData(entity,filterFunc,out length); _RegisterAry(allocatorType,ref val);; return val;}
public NativeArray GetAllPlayerData(EAllocatorType allocatorType,E_EntityOfPlayerData entity){ var val = _entities.GetAllPlayerData(entity);_RegisterAry(allocatorType,ref val); return val;}
public NativeArray GetAllPlayerData(EAllocatorType allocatorType,E_EntityOfPlayerData entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllPlayerData(entity,filterFunc,out length); _RegisterAry(allocatorType,ref val);; return val;}
public NativeArray GetAllMoveData(EAllocatorType allocatorType,E_EntityOfMoveData entity){ var val = _entities.GetAllMoveData(entity);_RegisterAry(allocatorType,ref val); return val;}
public NativeArray GetAllMoveData(EAllocatorType allocatorType,E_EntityOfMoveData entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllMoveData(entity,filterFunc,out length); _RegisterAry(allocatorType,ref val);; return val;}
public NativeArray GetAllAnimator_Pad(EAllocatorType allocatorType,E_EntityOfAnimator entity){var val = _entities.GetAllAnimator_Pad(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllAnimator_Pad(EAllocatorType allocatorType,E_EntityOfAnimator entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllAnimator_Pad(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllCollisionAgent_Collider(EAllocatorType allocatorType,E_EntityOfCollisionAgent entity){var val = _entities.GetAllCollisionAgent_Collider(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllCollisionAgent_Collider(EAllocatorType allocatorType,E_EntityOfCollisionAgent entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllCollisionAgent_Collider(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllCollisionAgent_IsTrigger(EAllocatorType allocatorType,E_EntityOfCollisionAgent entity){var val = _entities.GetAllCollisionAgent_IsTrigger(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllCollisionAgent_IsTrigger(EAllocatorType allocatorType,E_EntityOfCollisionAgent entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllCollisionAgent_IsTrigger(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllCollisionAgent_Layer(EAllocatorType allocatorType,E_EntityOfCollisionAgent entity){var val = _entities.GetAllCollisionAgent_Layer(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllCollisionAgent_Layer(EAllocatorType allocatorType,E_EntityOfCollisionAgent entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllCollisionAgent_Layer(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllCollisionAgent_IsEnable(EAllocatorType allocatorType,E_EntityOfCollisionAgent entity){var val = _entities.GetAllCollisionAgent_IsEnable(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllCollisionAgent_IsEnable(EAllocatorType allocatorType,E_EntityOfCollisionAgent entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllCollisionAgent_IsEnable(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllCollisionAgent_IsSleep(EAllocatorType allocatorType,E_EntityOfCollisionAgent entity){var val = _entities.GetAllCollisionAgent_IsSleep(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllCollisionAgent_IsSleep(EAllocatorType allocatorType,E_EntityOfCollisionAgent entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllCollisionAgent_IsSleep(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllCollisionAgent_Mass(EAllocatorType allocatorType,E_EntityOfCollisionAgent entity){var val = _entities.GetAllCollisionAgent_Mass(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllCollisionAgent_Mass(EAllocatorType allocatorType,E_EntityOfCollisionAgent entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllCollisionAgent_Mass(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllCollisionAgent_AngularSpeed(EAllocatorType allocatorType,E_EntityOfCollisionAgent entity){var val = _entities.GetAllCollisionAgent_AngularSpeed(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllCollisionAgent_AngularSpeed(EAllocatorType allocatorType,E_EntityOfCollisionAgent entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllCollisionAgent_AngularSpeed(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllCollisionAgent_Speed(EAllocatorType allocatorType,E_EntityOfCollisionAgent entity){var val = _entities.GetAllCollisionAgent_Speed(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllCollisionAgent_Speed(EAllocatorType allocatorType,E_EntityOfCollisionAgent entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllCollisionAgent_Speed(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllNavMeshAgent_Pad(EAllocatorType allocatorType,E_EntityOfNavMeshAgent entity){var val = _entities.GetAllNavMeshAgent_Pad(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllNavMeshAgent_Pad(EAllocatorType allocatorType,E_EntityOfNavMeshAgent entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllNavMeshAgent_Pad(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllPrefab_AssetId(EAllocatorType allocatorType,E_EntityOfPrefab entity){var val = _entities.GetAllPrefab_AssetId(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllPrefab_AssetId(EAllocatorType allocatorType,E_EntityOfPrefab entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllPrefab_AssetId(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllTransform2D_Position(EAllocatorType allocatorType,E_EntityOfTransform2D entity){var val = _entities.GetAllTransform2D_Position(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllTransform2D_Position(EAllocatorType allocatorType,E_EntityOfTransform2D entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllTransform2D_Position(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllTransform2D_Deg(EAllocatorType allocatorType,E_EntityOfTransform2D entity){var val = _entities.GetAllTransform2D_Deg(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllTransform2D_Deg(EAllocatorType allocatorType,E_EntityOfTransform2D entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllTransform2D_Deg(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllTransform2D_Scale(EAllocatorType allocatorType,E_EntityOfTransform2D entity){var val = _entities.GetAllTransform2D_Scale(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllTransform2D_Scale(EAllocatorType allocatorType,E_EntityOfTransform2D entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllTransform2D_Scale(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllTransform3D_Position(EAllocatorType allocatorType,E_EntityOfTransform3D entity){var val = _entities.GetAllTransform3D_Position(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllTransform3D_Position(EAllocatorType allocatorType,E_EntityOfTransform3D entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllTransform3D_Position(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllTransform3D_Forward(EAllocatorType allocatorType,E_EntityOfTransform3D entity){var val = _entities.GetAllTransform3D_Forward(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllTransform3D_Forward(EAllocatorType allocatorType,E_EntityOfTransform3D entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllTransform3D_Forward(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllTransform3D_Scale(EAllocatorType allocatorType,E_EntityOfTransform3D entity){var val = _entities.GetAllTransform3D_Scale(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllTransform3D_Scale(EAllocatorType allocatorType,E_EntityOfTransform3D entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllTransform3D_Scale(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllPlayerCubeTag_Pad(EAllocatorType allocatorType,E_EntityOfPlayerCubeTag entity){var val = _entities.GetAllPlayerCubeTag_Pad(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllPlayerCubeTag_Pad(EAllocatorType allocatorType,E_EntityOfPlayerCubeTag entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllPlayerCubeTag_Pad(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllAssetData_AssetId(EAllocatorType allocatorType,E_EntityOfAssetData entity){var val = _entities.GetAllAssetData_AssetId(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllAssetData_AssetId(EAllocatorType allocatorType,E_EntityOfAssetData entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllAssetData_AssetId(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllPlayerData_Score(EAllocatorType allocatorType,E_EntityOfPlayerData entity){var val = _entities.GetAllPlayerData_Score(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllPlayerData_Score(EAllocatorType allocatorType,E_EntityOfPlayerData entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllPlayerData_Score(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllPlayerData_LocalId(EAllocatorType allocatorType,E_EntityOfPlayerData entity){var val = _entities.GetAllPlayerData_LocalId(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllPlayerData_LocalId(EAllocatorType allocatorType,E_EntityOfPlayerData entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllPlayerData_LocalId(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllMoveData_MoveSpd(EAllocatorType allocatorType,E_EntityOfMoveData entity){var val = _entities.GetAllMoveData_MoveSpd(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllMoveData_MoveSpd(EAllocatorType allocatorType,E_EntityOfMoveData entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllMoveData_MoveSpd(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllMoveData_AcceleratedSpd(EAllocatorType allocatorType,E_EntityOfMoveData entity){var val = _entities.GetAllMoveData_AcceleratedSpd(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllMoveData_AcceleratedSpd(EAllocatorType allocatorType,E_EntityOfMoveData entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllMoveData_AcceleratedSpd(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllMoveData_CurSpd(EAllocatorType allocatorType,E_EntityOfMoveData entity){var val = _entities.GetAllMoveData_CurSpd(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllMoveData_CurSpd(EAllocatorType allocatorType,E_EntityOfMoveData entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllMoveData_CurSpd(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllMoveData_AngularSpd(EAllocatorType allocatorType,E_EntityOfMoveData entity){var val = _entities.GetAllMoveData_AngularSpd(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllMoveData_AngularSpd(EAllocatorType allocatorType,E_EntityOfMoveData entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllMoveData_AngularSpd(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllMoveData_DeltaDeg(EAllocatorType allocatorType,E_EntityOfMoveData entity){var val = _entities.GetAllMoveData_DeltaDeg(entity);_RegisterAry(allocatorType,ref val);; return val; }
public NativeArray GetAllMoveData_DeltaDeg(EAllocatorType allocatorType,E_EntityOfMoveData entity,FuncEntityFilter filterFunc,out int length){var val = _entities.GetAllMoveData_DeltaDeg(entity,filterFunc,out length);_RegisterAry(allocatorType,ref val);; return val; }
#endregion
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Context_Interfaces.cs.meta
================================================
fileFormatVersion: 2
guid: 2ebfc39997e234e3f8a3ff3844567b7d
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Entity.cs
================================================
//------------------------------------------------------------------------------
//
// This code was generated by Tools.MacroExpansion, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null.
// https://github.com/JiepengTan/LockstepEngine
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
//
//------------------------------------------------------------------------------
//Power by ME //src: https://github.com/JiepengTan/ME
//#define DONT_USE_GENERATE_CODE
using System.Linq;
using Lockstep.Serialization;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
using System;
using Lockstep.InternalUnsafeECS;
using System.Collections;
using Lockstep.Math;
using System.Collections.Generic;
using Lockstep.Logging;
using Lockstep.Util;
namespace Lockstep.UnsafeECS.Game {
[StructLayoutAttribute(LayoutKind.Sequential)]
[System.Serializable]
public unsafe partial struct PlayerCube :IEntity {
public const Int32 INIT_COUNT = 2;
internal Entity _entity;
// Fields
public Transform3D Transform;
public Prefab Prefab;
public MoveData Move;
public PlayerData Player;
public PlayerCubeTag Tag;
// BuildIn properties
public EntityRef EntityRef =>_entity._ref;
public int EntityIndex =>_entity._ref._index;
public EEntityType EntityType => (EEntityType)(_entity._ref._type);
public bool IsActive =>_entity._active;
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Entity.cs.meta
================================================
fileFormatVersion: 2
guid: efced1d38fb2c4932bd871ecfb03539b
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_EntityFuncs.cs
================================================
//------------------------------------------------------------------------------
//
// This code was generated by Tools.MacroExpansion, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null.
// https://github.com/JiepengTan/LockstepEngine
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
//
//------------------------------------------------------------------------------
//Power by ME //src: https://github.com/JiepengTan/ME
//#define DONT_USE_GENERATE_CODE
using System.Linq;
using Lockstep.Serialization;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
using System;
using Lockstep.InternalUnsafeECS;
using System.Collections;
using Lockstep.Math;
using System.Collections.Generic;
using Lockstep.Logging;
using Lockstep.Util;
namespace Lockstep.UnsafeECS.Game {
public unsafe partial struct PlayerCube :IEntity {
public bool HasComponent(EComponentType compType){
return EntityUtil._PlayerCubeComponentSet[(int)compType];
}
}
public static unsafe partial class EntityUtil {
public static Animator* GetAnimator(Entity* ptr){
if(!HasComponent(ptr,EComponentType.Animator)){
return null;
}
switch (ptr->_ref._type) {
}
return null;
}
public static CollisionAgent* GetCollisionAgent(Entity* ptr){
if(!HasComponent(ptr,EComponentType.CollisionAgent)){
return null;
}
switch (ptr->_ref._type) {
}
return null;
}
public static NavMeshAgent* GetNavMeshAgent(Entity* ptr){
if(!HasComponent(ptr,EComponentType.NavMeshAgent)){
return null;
}
switch (ptr->_ref._type) {
}
return null;
}
public static Prefab* GetPrefab(Entity* ptr){
if(!HasComponent(ptr,EComponentType.Prefab)){
return null;
}
switch (ptr->_ref._type) {
case EntityIds.PlayerCube: return &(((PlayerCube* )(ptr))->Prefab);
}
return null;
}
public static Transform2D* GetTransform2D(Entity* ptr){
if(!HasComponent(ptr,EComponentType.Transform2D)){
return null;
}
switch (ptr->_ref._type) {
}
return null;
}
public static Transform3D* GetTransform3D(Entity* ptr){
if(!HasComponent(ptr,EComponentType.Transform3D)){
return null;
}
switch (ptr->_ref._type) {
case EntityIds.PlayerCube: return &(((PlayerCube* )(ptr))->Transform);
}
return null;
}
public static PlayerCubeTag* GetPlayerCubeTag(Entity* ptr){
if(!HasComponent(ptr,EComponentType.PlayerCubeTag)){
return null;
}
switch (ptr->_ref._type) {
case EntityIds.PlayerCube: return &(((PlayerCube* )(ptr))->Tag);
}
return null;
}
public static AssetData* GetAssetData(Entity* ptr){
if(!HasComponent(ptr,EComponentType.AssetData)){
return null;
}
switch (ptr->_ref._type) {
}
return null;
}
public static PlayerData* GetPlayerData(Entity* ptr){
if(!HasComponent(ptr,EComponentType.PlayerData)){
return null;
}
switch (ptr->_ref._type) {
case EntityIds.PlayerCube: return &(((PlayerCube* )(ptr))->Player);
}
return null;
}
public static MoveData* GetMoveData(Entity* ptr){
if(!HasComponent(ptr,EComponentType.MoveData)){
return null;
}
switch (ptr->_ref._type) {
case EntityIds.PlayerCube: return &(((PlayerCube* )(ptr))->Move);
}
return null;
}
public static bool HasComponent(Entity* ptr, EComponentType compType){
var set = _allComponentSet[ptr->_ref._type];
if(set != null){
return set[(int)compType];
}
return false;
}
public static bool[] _PlayerCubeComponentSet = new bool[]{
false,//None
false,//Animator
false,//CollisionAgent
false,//NavMeshAgent
true,//Prefab
false,//Transform2D
true,//Transform3D
true,//PlayerCubeTag
false,//AssetData
true,//PlayerData
true,//MoveData
false
};
private static bool[][] _allComponentSet = new bool[][]{
null,
EntityUtil._PlayerCubeComponentSet,
null,
};
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_EntityFuncs.cs.meta
================================================
fileFormatVersion: 2
guid: 9ee75c816ffbe4a72ba6cc7ceba10d7d
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_EntityView.cs
================================================
//------------------------------------------------------------------------------
//
// This code was generated by Tools.MacroExpansion, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null.
// https://github.com/JiepengTan/LockstepEngine
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
//
//------------------------------------------------------------------------------
//Power by ME //src: https://github.com/JiepengTan/ME
//#define DONT_USE_GENERATE_CODE
using System.Linq;
using Lockstep.Serialization;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
using System;
using Lockstep.InternalUnsafeECS;
using System.Collections;
using Lockstep.Math;
using System.Collections.Generic;
using Lockstep.Logging;
using Lockstep.Util;
namespace Lockstep.UnsafeECS.Game {
public static unsafe partial class EntityUtil {
public static PlayerCube* CastToPlayerCube(Entity* entity){
if (entity != null && entity->_ref._type == EntityIds.PlayerCube) {
return (PlayerCube*) entity;
}
return null;
}
public static object ToBoxedStruct(Entity* entity){
if (entity == null) {
return null;
}
switch (entity->_ref._type) {
case EntityIds.PlayerCube: return (object) (*((PlayerCube*) entity));
}
return null;
}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_EntityView.cs.meta
================================================
fileFormatVersion: 2
guid: ab27cb2821e3448c2a6f997932ed3060
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Enum.cs
================================================
//------------------------------------------------------------------------------
//
// This code was generated by Tools.MacroExpansion, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null.
// https://github.com/JiepengTan/LockstepEngine
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
//
//------------------------------------------------------------------------------
//Power by ME //src: https://github.com/JiepengTan/ME
//#define DONT_USE_GENERATE_CODE
using System.Linq;
using Lockstep.Serialization;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
using System;
using Lockstep.InternalUnsafeECS;
using System.Collections;
using Lockstep.Math;
using System.Collections.Generic;
using Lockstep.Logging;
using Lockstep.Util;
namespace Lockstep.UnsafeECS.Game {
public enum EEntityType : int {
None,
PlayerCube,
EnumCount,
}
public static class EntityIds {
public const int PlayerCube = (int)(EEntityType.PlayerCube);
public const int TotalEntityTypeCount = ((int)(EEntityType.EnumCount) -1);
}
public enum EComponentType : int {
None,
Animator,
CollisionAgent,
NavMeshAgent,
Prefab,
Transform2D,
Transform3D,
PlayerCubeTag,
AssetData,
PlayerData,
MoveData,
EnumCount
}
public class CompoenntIds {
public const int Animator = (int)(EComponentType.Animator);
public const int CollisionAgent = (int)(EComponentType.CollisionAgent);
public const int NavMeshAgent = (int)(EComponentType.NavMeshAgent);
public const int Prefab = (int)(EComponentType.Prefab);
public const int Transform2D = (int)(EComponentType.Transform2D);
public const int Transform3D = (int)(EComponentType.Transform3D);
public const int PlayerCubeTag = (int)(EComponentType.PlayerCubeTag);
public const int AssetData = (int)(EComponentType.AssetData);
public const int PlayerData = (int)(EComponentType.PlayerData);
public const int MoveData = (int)(EComponentType.MoveData);
public const int TotalComponentTypeCount = ((int)(EComponentType.EnumCount) -1);
}
public enum E_EntityOfAnimator{
}
public enum E_EntityOfCollisionAgent{
}
public enum E_EntityOfNavMeshAgent{
}
public enum E_EntityOfPrefab{
PlayerCube,
}
public enum E_EntityOfTransform2D{
}
public enum E_EntityOfTransform3D{
PlayerCube,
}
public enum E_EntityOfPlayerCubeTag{
PlayerCube,
}
public enum E_EntityOfAssetData{
}
public enum E_EntityOfPlayerData{
PlayerCube,
}
public enum E_EntityOfMoveData{
PlayerCube,
}
public enum E_FieldOfAnimator{
Pad,
}
public enum E_FieldOfCollisionAgent{
Collider,
IsTrigger,
Layer,
IsEnable,
IsSleep,
Mass,
AngularSpeed,
Speed,
}
public enum E_FieldOfNavMeshAgent{
Pad,
}
public enum E_FieldOfPrefab{
AssetId,
}
public enum E_FieldOfTransform2D{
Position,
Deg,
Scale,
}
public enum E_FieldOfTransform3D{
Position,
Forward,
Scale,
}
public enum E_FieldOfPlayerCubeTag{
Pad,
}
public enum E_FieldOfAssetData{
AssetId,
}
public enum E_FieldOfPlayerData{
Score,
LocalId,
}
public enum E_FieldOfMoveData{
MoveSpd,
AcceleratedSpd,
CurSpd,
AngularSpd,
DeltaDeg,
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Enum.cs.meta
================================================
fileFormatVersion: 2
guid: 9dfcd2170bf6e423b8a7fadb70d68d9c
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Event.cs
================================================
//------------------------------------------------------------------------------
//
// This code was generated by Tools.MacroExpansion, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null.
// https://github.com/JiepengTan/LockstepEngine
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
//
//------------------------------------------------------------------------------
//Power by ME //src: https://github.com/JiepengTan/ME
//#define DONT_USE_GENERATE_CODE
using System.Linq;
using Lockstep.Serialization;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
using System;
using Lockstep.InternalUnsafeECS;
using System.Collections;
using Lockstep.Math;
using System.Collections.Generic;
using Lockstep.Logging;
using Lockstep.Util;
namespace Lockstep.Game {
using Lockstep.UnsafeECS;
using Lockstep.UnsafeECS.Game;
public unsafe partial interface IGameEventService : IService{
}
public unsafe partial class PureGameEventService : IGameEventService{
}
}
namespace Lockstep.UnsafeECS.Game {
using Lockstep.Game;
public unsafe partial class GameBaseSystem {
}
public unsafe partial class GameExecuteSystem {
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Event.cs.meta
================================================
fileFormatVersion: 2
guid: e670d3760641e49d48fcc141c5ae16d0
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Filter.cs
================================================
//------------------------------------------------------------------------------
//
// This code was generated by Tools.MacroExpansion, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null.
// https://github.com/JiepengTan/LockstepEngine
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
//
//------------------------------------------------------------------------------
//Power by ME //src: https://github.com/JiepengTan/ME
//#define DONT_USE_GENERATE_CODE
using System.Linq;
using Lockstep.Serialization;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
using System;
using Lockstep.InternalUnsafeECS;
using System.Collections;
using Lockstep.Math;
using System.Collections.Generic;
using Lockstep.Logging;
using Lockstep.Util;
namespace Lockstep.UnsafeECS.Game {
[StructLayoutAttribute(LayoutKind.Sequential, Pack = Define.PackSize)]
public unsafe partial struct AnimatorFilter {
public Entity* Entity;
public Animator* Animator;
}
[StructLayoutAttribute(LayoutKind.Sequential, Pack = Define.PackSize)]
public unsafe partial struct CollisionAgentFilter {
public Entity* Entity;
public CollisionAgent* CollisionAgent;
}
[StructLayoutAttribute(LayoutKind.Sequential, Pack = Define.PackSize)]
public unsafe partial struct NavMeshAgentFilter {
public Entity* Entity;
public NavMeshAgent* NavMeshAgent;
}
[StructLayoutAttribute(LayoutKind.Sequential, Pack = Define.PackSize)]
public unsafe partial struct PrefabFilter {
public Entity* Entity;
public Prefab* Prefab;
}
[StructLayoutAttribute(LayoutKind.Sequential, Pack = Define.PackSize)]
public unsafe partial struct Transform2DFilter {
public Entity* Entity;
public Transform2D* Transform2D;
}
[StructLayoutAttribute(LayoutKind.Sequential, Pack = Define.PackSize)]
public unsafe partial struct Transform3DFilter {
public Entity* Entity;
public Transform3D* Transform3D;
}
[StructLayoutAttribute(LayoutKind.Sequential, Pack = Define.PackSize)]
public unsafe partial struct PlayerCubeTagFilter {
public Entity* Entity;
public PlayerCubeTag* PlayerCubeTag;
}
[StructLayoutAttribute(LayoutKind.Sequential, Pack = Define.PackSize)]
public unsafe partial struct AssetDataFilter {
public Entity* Entity;
public AssetData* AssetData;
}
[StructLayoutAttribute(LayoutKind.Sequential, Pack = Define.PackSize)]
public unsafe partial struct PlayerDataFilter {
public Entity* Entity;
public PlayerData* PlayerData;
}
[StructLayoutAttribute(LayoutKind.Sequential, Pack = Define.PackSize)]
public unsafe partial struct MoveDataFilter {
public Entity* Entity;
public MoveData* MoveData;
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Filter.cs.meta
================================================
fileFormatVersion: 2
guid: 62af9078863df4f1990383bfb420c02d
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Iterator.cs
================================================
//------------------------------------------------------------------------------
//
// This code was generated by Tools.MacroExpansion, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null.
// https://github.com/JiepengTan/LockstepEngine
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
//
//------------------------------------------------------------------------------
//Power by ME //src: https://github.com/JiepengTan/ME
//#define DONT_USE_GENERATE_CODE
using System.Linq;
using Lockstep.Serialization;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
using System;
using Lockstep.InternalUnsafeECS;
using System.Collections;
using Lockstep.Math;
using System.Collections.Generic;
using Lockstep.Logging;
using Lockstep.Util;
namespace Lockstep.UnsafeECS.Game {
#if true
public static unsafe class PointerExt {
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static PlayerCube* ToPlayerCubePtr(this long val){
#if DEBUG
if ((val == 0L || ((PlayerCube*) val)->EntityType != EEntityType.PlayerCube)) {
throw new Exception("ToPlayerCubePtr error: diff type " + val);
}
#endif
return (PlayerCube*) val;
}
}
[StructLayoutAttribute(LayoutKind.Sequential, Pack = Define.PackSize)]
public unsafe partial struct PlayerCubeIterator : IEnumerator, IEnumerable {
private Int32 _index;
private PlayerCube* _ptr;
private long _current;
private int _count;
public long Current => _current;
object IEnumerator.Current {
get { return (object) Current; }
}
IEnumerator IEnumerable.GetEnumerator(){
return this;
}
public IEnumerator GetEnumerator(){
return this;
}
public PlayerCubeIterator(PlayerCube* ptr,int count){
_ptr = ptr;
_index = -1;
_current = 0;
_count = count;
}
public Boolean MoveNext(){
while (++_index < _count) {
if (_ptr[_index]._entity._active) {
_current = (long) (&_ptr[_index]);
return true;
}
}
_current = 0;
return false;
}
public void Reset(){
_index = -1;
_current = 0;
}
public void Dispose(){ }
}
#endif
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Iterator.cs.meta
================================================
fileFormatVersion: 2
guid: 64a4c0a47e26f4de0af2e2d90a36ebd7
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Schedule.cs
================================================
//------------------------------------------------------------------------------
//
// This code was generated by Tools.MacroExpansion, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null.
// https://github.com/JiepengTan/LockstepEngine
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
//
//------------------------------------------------------------------------------
//Power by ME //src: https://github.com/JiepengTan/ME
//#define DONT_USE_GENERATE_CODE
using System.Linq;
using Lockstep.Serialization;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
using System;
using Lockstep.InternalUnsafeECS;
using System.Collections;
using Lockstep.Math;
using System.Collections.Generic;
using Lockstep.Logging;
using Lockstep.Util;
namespace Lockstep.UnsafeECS.Game {
public unsafe partial class Context {
private void RegisterSystemFunctions(){
_RegisterExecuteSystemFunc();
_RegisterPostScheduleSystemFunc();
}
public void _RegisterExecuteSystemFunc(){
_RegisterScheduleSystemFunc(typeof(Lockstep.UnsafeECS.Game.InputSystem),ScheduleInputSystem);
_RegisterScheduleSystemFunc(typeof(Lockstep.UnsafeECS.Game.PlayerMoveSystem),SchedulePlayerMoveSystem);
}
public void _RegisterPostScheduleSystemFunc(){
_RegisterPostScheduleSystemFunc(EntityIds.PlayerCube,PostUpdateCreatePlayerCube);
}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Schedule.cs.meta
================================================
fileFormatVersion: 2
guid: 3b323cda406a64ebd880748e913a997e
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Service_Entity.cs
================================================
//------------------------------------------------------------------------------
//
// This code was generated by Tools.MacroExpansion, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null.
// https://github.com/JiepengTan/LockstepEngine
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
//
//------------------------------------------------------------------------------
//Power by ME //src: https://github.com/JiepengTan/ME
//#define DONT_USE_GENERATE_CODE
using System.Linq;
using Lockstep.Serialization;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
using System;
using Lockstep.InternalUnsafeECS;
using System.Collections;
using Lockstep.Math;
using System.Collections.Generic;
using Lockstep.Logging;
using Lockstep.Util;
namespace Lockstep.UnsafeECS.Game {
public unsafe partial interface IEntityService {
void OnPlayerCubeCreated(Context context, PlayerCube* entity);
void OnPlayerCubeDestroy(Context context, PlayerCube* entity);
}
public unsafe partial class PureEntityService :IEntityService {
public void OnPlayerCubeCreated(Context context, PlayerCube* entity){}
public void OnPlayerCubeDestroy(Context context, PlayerCube* entity){}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Service_Entity.cs.meta
================================================
fileFormatVersion: 2
guid: 55be325ed73984ed782c1c70539e65c3
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Service_State.cs
================================================
//------------------------------------------------------------------------------
//
// This code was generated by Tools.MacroExpansion, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null.
// https://github.com/JiepengTan/LockstepEngine
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
//
//------------------------------------------------------------------------------
//Power by ME //src: https://github.com/JiepengTan/ME
//#define DONT_USE_GENERATE_CODE
using System.Linq;
using Lockstep.Serialization;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
using System;
using Lockstep.InternalUnsafeECS;
using System.Collections;
using Lockstep.Math;
using System.Collections.Generic;
using Lockstep.Logging;
using Lockstep.Util;
namespace Lockstep.Game {
using NetMsg.Common;
using Lockstep.UnsafeECS;
using Lockstep.UnsafeECS.Game;
public partial interface IGameStateService : IService {
bool IsPlaying{get; set; }
bool IsGameOver{get; set; }
byte LocalEntityId{get; set; }
int CurScore{get; set; }
}
public partial class GameStateService {
public static GameStateService Instance { get; private set; }
public GameStateService(){Instance = this;}
}
public partial interface IGameConfigService : IService {
string RelPath{get; set; }
string RecorderFilePath{get; set; }
string DumpStrPath{get; set; }
int MaxPlayerCount{get; set; }
CollisionConfig CollisionConfig{get; set; }
Msg_G2C_GameStartInfo ClientModeInfo{get; set; }
List PlayerInfos{get; set; }
}
public partial class GameConfigService {
public static GameConfigService Instance { get; private set; }
public GameConfigService(){Instance = this;}
}
public partial class GameStateService :IGameStateService {
private StructBackupHelper<_State> _globalBackuper = new StructBackupHelper<_State>();
private _State _curState;
public override void Backup(int tick){
_globalBackuper.Value = _curState;
_globalBackuper.Backup(tick);
}
public override void RollbackTo(int tick){
_globalBackuper.RollbackTo(tick, 0, false);
_curState = _globalBackuper.Value;
}
public override void Clean(int checkedTick){
_globalBackuper.CleanUselessSnapshot(checkedTick);
}
public struct _State {
public bool IsPlaying;
public bool IsGameOver;
public byte LocalEntityId;
public int CurScore;
}
public bool IsPlaying {get => _curState.IsPlaying;set => _curState.IsPlaying = value;}
public bool IsGameOver {get => _curState.IsGameOver;set => _curState.IsGameOver = value;}
public byte LocalEntityId {get => _curState.LocalEntityId;set => _curState.LocalEntityId = value;}
public int CurScore {get => _curState.CurScore;set => _curState.CurScore = value;}
}
public partial class GameConfigService :IGameConfigService {
public string RelPath {get => _curState.RelPath;set => _curState.RelPath = value;}
public string RecorderFilePath {get => _curState.RecorderFilePath;set => _curState.RecorderFilePath = value;}
public string DumpStrPath {get => _curState.DumpStrPath;set => _curState.DumpStrPath = value;}
public int MaxPlayerCount {get => _curState.MaxPlayerCount;set => _curState.MaxPlayerCount = value;}
public CollisionConfig CollisionConfig {get => _curState.CollisionConfig;set => _curState.CollisionConfig = value;}
public Msg_G2C_GameStartInfo ClientModeInfo {get => _curState.ClientModeInfo;set => _curState.ClientModeInfo = value;}
public List PlayerInfos {get => _curState.PlayerInfos;set => _curState.PlayerInfos = value;}
}
public partial class GameConfig {
public string RelPath;
public string RecorderFilePath;
public string DumpStrPath;
public int MaxPlayerCount;
public CollisionConfig CollisionConfig;
public Msg_G2C_GameStartInfo ClientModeInfo;
public List PlayerInfos;
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Service_State.cs.meta
================================================
fileFormatVersion: 2
guid: 672ac8e21c7bf4652b2d0613a00ab224
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Service_SystemExt.cs
================================================
//------------------------------------------------------------------------------
//
// This code was generated by Tools.MacroExpansion, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null.
// https://github.com/JiepengTan/LockstepEngine
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
//
//------------------------------------------------------------------------------
//Power by ME //src: https://github.com/JiepengTan/ME
//#define DONT_USE_GENERATE_CODE
using System.Linq;
using Lockstep.Serialization;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
using System;
using Lockstep.InternalUnsafeECS;
using System.Collections;
using Lockstep.Math;
using System.Collections.Generic;
using Lockstep.Logging;
using Lockstep.Util;
namespace Lockstep.UnsafeECS.Game {
using Lockstep.Game;
public partial class Context {
protected Context _context;
protected IRandomService _randomService;
protected ITimeMachineService _timeMachineService;
protected IGlobalStateService _globalStateService;
protected IViewService _viewService;
protected IAudioService _audioService;
protected IInputService _inputService;
protected IMap2DService _map2DService;
protected IResService _resService;
protected IEffectService _effectService;
protected IEventRegisterService _eventRegisterService;
protected IIdService _idService;
protected IDebugService _debugService;
protected IGameStateService _gameStateService;
protected IGameConfigService _gameConfigService;
protected IGameEventService _gameEventService;
protected override void OnInit(BaseContext context, IServiceContainer services){
_context = (Context) context;
//BuildInServices
_randomService = services.GetService();
_timeMachineService = services.GetService();
_globalStateService = services.GetService();
_viewService = services.GetService();
_audioService = services.GetService();
_inputService = services.GetService();
_map2DService = services.GetService();
_resService = services.GetService();
_effectService = services.GetService();
_eventRegisterService = services.GetService();
_idService = services.GetService();
_debugService = services.GetService();
//GameServices
_gameStateService = services.GetService();
_gameConfigService = services.GetService();
_gameEventService = services.GetService();
}
}
public partial class GameBaseSystem {
protected Context _context;
protected IRandomService _randomService;
protected ITimeMachineService _timeMachineService;
protected IGlobalStateService _globalStateService;
protected IViewService _viewService;
protected IAudioService _audioService;
protected IInputService _inputService;
protected IMap2DService _map2DService;
protected IResService _resService;
protected IEffectService _effectService;
protected IEventRegisterService _eventRegisterService;
protected IIdService _idService;
protected IDebugService _debugService;
protected IGameStateService _gameStateService;
protected IGameConfigService _gameConfigService;
protected IGameEventService _gameEventService;
protected override void OnInit(BaseContext context, IServiceContainer services){
_context = (Context) context;
//BuildInServices
_randomService = services.GetService();
_timeMachineService = services.GetService();
_globalStateService = services.GetService();
_viewService = services.GetService();
_audioService = services.GetService();
_inputService = services.GetService();
_map2DService = services.GetService();
_resService = services.GetService();
_effectService = services.GetService();
_eventRegisterService = services.GetService();
_idService = services.GetService();
_debugService = services.GetService();
//GameServices
_gameStateService = services.GetService();
_gameConfigService = services.GetService();
_gameEventService = services.GetService();
}
}
public partial class GameJobSystem {
protected Context _context;
protected IRandomService _randomService;
protected ITimeMachineService _timeMachineService;
protected IGlobalStateService _globalStateService;
protected IViewService _viewService;
protected IAudioService _audioService;
protected IInputService _inputService;
protected IMap2DService _map2DService;
protected IResService _resService;
protected IEffectService _effectService;
protected IEventRegisterService _eventRegisterService;
protected IIdService _idService;
protected IDebugService _debugService;
protected IGameStateService _gameStateService;
protected IGameConfigService _gameConfigService;
protected IGameEventService _gameEventService;
protected override void OnInit(BaseContext context, IServiceContainer services){
_context = (Context) context;
//BuildInServices
_randomService = services.GetService();
_timeMachineService = services.GetService();
_globalStateService = services.GetService();
_viewService = services.GetService();
_audioService = services.GetService();
_inputService = services.GetService();
_map2DService = services.GetService();
_resService = services.GetService();
_effectService = services.GetService();
_eventRegisterService = services.GetService();
_idService = services.GetService();
_debugService = services.GetService();
//GameServices
_gameStateService = services.GetService();
_gameConfigService = services.GetService();
_gameEventService = services.GetService();
}
}
public partial class GameExecuteSystem {
protected Context _context;
protected IRandomService _randomService;
protected ITimeMachineService _timeMachineService;
protected IGlobalStateService _globalStateService;
protected IViewService _viewService;
protected IAudioService _audioService;
protected IInputService _inputService;
protected IMap2DService _map2DService;
protected IResService _resService;
protected IEffectService _effectService;
protected IEventRegisterService _eventRegisterService;
protected IIdService _idService;
protected IDebugService _debugService;
protected IGameStateService _gameStateService;
protected IGameConfigService _gameConfigService;
protected IGameEventService _gameEventService;
protected override void OnInit(BaseContext context, IServiceContainer services){
_context = (Context) context;
//BuildInServices
_randomService = services.GetService();
_timeMachineService = services.GetService();
_globalStateService = services.GetService();
_viewService = services.GetService();
_audioService = services.GetService();
_inputService = services.GetService();
_map2DService = services.GetService();
_resService = services.GetService();
_effectService = services.GetService();
_eventRegisterService = services.GetService();
_idService = services.GetService();
_debugService = services.GetService();
//GameServices
_gameStateService = services.GetService();
_gameConfigService = services.GetService();
_gameEventService = services.GetService();
}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_Service_SystemExt.cs.meta
================================================
fileFormatVersion: 2
guid: 8696a9bda1ff749f8b3492993cb5e780
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_System.cs
================================================
//------------------------------------------------------------------------------
//
// This code was generated by Tools.MacroExpansion, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null.
// https://github.com/JiepengTan/LockstepEngine
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
//
//------------------------------------------------------------------------------
//Power by ME //src: https://github.com/JiepengTan/ME
//#define DONT_USE_GENERATE_CODE
using System.Linq;
using Lockstep.Serialization;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
using System;
using Lockstep.InternalUnsafeECS;
using System.Collections;
using Lockstep.Math;
using System.Collections.Generic;
using Lockstep.Logging;
using Lockstep.Util;
namespace Lockstep.UnsafeECS.Game {
public unsafe partial class Context {
private static void ScheduleInputSystem(BaseContext context, ISystem sys){
var system = (Lockstep.UnsafeECS.Game.InputSystem) sys;
var entities = ((Context)context)._entities;
{
var ptr = entities._PlayerCubeAry.GetEntity(0);
var len = entities._PlayerCubeAry.Length;
for (int i = 0,idx = 0; i < len; i++, ++ptr ) {
if (ptr->_entity._active) {
system.Execute(ref ptr->Player, ref ptr->Move, ref ptr->Transform);
idx++;
}
}
}
}
private static void SchedulePlayerMoveSystem(BaseContext context, ISystem sys){
var system = (Lockstep.UnsafeECS.Game.PlayerMoveSystem) sys;
var entities = ((Context)context)._entities;
{
var ptr = entities._PlayerCubeAry.GetEntity(0);
var len = entities._PlayerCubeAry.Length;
for (int i = 0,idx = 0; i < len; i++, ++ptr ) {
if (ptr->_entity._active) {
system.Execute(ref ptr->Transform, ref ptr->Move);
idx++;
}
}
}
}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_System.cs.meta
================================================
fileFormatVersion: 2
guid: 16c58b893729945929e7ac7e9a912cca
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_UpdateViewStateSystem.cs
================================================
//------------------------------------------------------------------------------
//
// This code was generated by Tools.MacroExpansion, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null.
// https://github.com/JiepengTan/LockstepEngine
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
//
//------------------------------------------------------------------------------
//Power by ME //src: https://github.com/JiepengTan/ME
//#define DONT_USE_GENERATE_CODE
using System.Linq;
using Lockstep.Serialization;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
using System;
using Lockstep.InternalUnsafeECS;
using System.Collections;
using Lockstep.Math;
using System.Collections.Generic;
using Lockstep.Logging;
using Lockstep.Util;
using Lockstep.Math;
using Unity.Burst;
using Unity.Collections;
using Unity.Entities;
using Unity.Jobs;
using Unity.Mathematics;
using Unity.Transforms;
namespace Lockstep.UnsafeECS.Game {
public struct UnityPlayerCubeTag : IComponentData { }
[UpdateInGroup(typeof(SimulationSystemGroup))]
[UpdateBefore(typeof(TransformSystemGroup))]
public unsafe class UpdateViewStateSystem : JobComponentSystem {
private void CopyState(ref NativeEntityArray ary,ref NativeArray entityAry )where T : unmanaged, IEntity{
if (ary.Length != 0) {
if (entityAry.Length == ary._EntityAry.Length) {
NativeArray.Copy(ary._EntityAry, entityAry);
}
else {
if (entityAry.Length != 0) {
entityAry.Dispose();
}
entityAry = new NativeArray(ary._EntityAry, Allocator.Persistent);
}
}
else {
if (entityAry.Length != 0) {
entityAry.Dispose();
}
}
}
public static bool isInited = false;
private EntityQuery _PlayerCubeQuery;
public NativeArray _allPlayerCubes;
[BurstCompile]
unsafe struct _UpdatePlayerCube : IJobForEachWithEntity {
[ReadOnly] public NativeArray allPlayerCubes;
public void Execute(Unity.Entities.Entity entity, int index,
ref Unity.Transforms.LocalToWorld localToWorld, ref EntityRef entityRef){
var ptr = allPlayerCubes.GetPointer(entityRef._index);
if (ptr->EntityRef == entityRef) {
localToWorld = new Unity.Transforms.LocalToWorld {
Value = float4x4.TRS(
ptr->Transform.Position.ToVector3(),
quaternion.LookRotationSafe(ptr->Transform.Forward.ToVector3(),
Unity.Mathematics.math.up()),
new Unity.Mathematics.float3(ptr->Transform.Scale)
)
};
}
}
}
private void _SchedulePlayerCube(ref JobHandle inputDeps)
{
var ary = Context.Instance._entities._PlayerCubeAry;
CopyState(ref ary,ref _allPlayerCubes);
if (ary.Length != 0) {
var steerJob = new _UpdatePlayerCube {
allPlayerCubes = _allPlayerCubes,
};
inputDeps = steerJob.Schedule(_PlayerCubeQuery, inputDeps);
}
}
protected override JobHandle OnUpdate(JobHandle inputDeps){
if (Context.Instance.HasInit) {
_SchedulePlayerCube(ref inputDeps);
}
return inputDeps;
}
protected override void OnCreate(){
_PlayerCubeQuery = GetEntityQuery(new EntityQueryDesc {
All = new[] {
ComponentType.ReadOnly(),
ComponentType.ReadWrite(),
ComponentType.ReadWrite()
},
});
}
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen_UpdateViewStateSystem.cs.meta
================================================
fileFormatVersion: 2
guid: 2f17bb89728c04ce89a85e54fc2b73f3
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen__Default.cs
================================================
//------------------------------------------------------------------------------
//
// This code was generated by Tools.MacroExpansion, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null.
// https://github.com/JiepengTan/LockstepEngine
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
//
//------------------------------------------------------------------------------
//Power by ME //src: https://github.com/JiepengTan/ME
//#define DONT_USE_GENERATE_CODE
using System.Linq;
using Lockstep.Serialization;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
using System;
using Lockstep.InternalUnsafeECS;
using System.Collections;
using Lockstep.Math;
using System.Collections.Generic;
using Lockstep.Logging;
using Lockstep.Util;
namespace Lockstep.UnsafeECS.Game {
public unsafe partial struct _DefaultDefine {
//enum
public static EEntityType EEntityType;
//IRef
//IEntity
public static PlayerCube PlayerCube;
//IAsset
//IComponent
public static Animator Animator;
public static CollisionAgent CollisionAgent;
public static NavMeshAgent NavMeshAgent;
public static Prefab Prefab;
public static Transform2D Transform2D;
public static Transform3D Transform3D;
public static PlayerCubeTag PlayerCubeTag;
public static AssetData AssetData;
public static PlayerData PlayerData;
public static MoveData MoveData;
}
}
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen__Default.cs.meta
================================================
fileFormatVersion: 2
guid: d63a7c94d35814e87ae08d8cd528fe85
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
================================================
FILE: Client.Unity/Assets/LockstepECS/__DllSourceFiles/Game.Model/Src/__UnsafeECS/Generated/CodeGen__Entities.cs
================================================
//------------------------------------------------------------------------------
//
// This code was generated by Tools.MacroExpansion, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null.
// https://github.com/JiepengTan/LockstepEngine
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
//
//------------------------------------------------------------------------------
//Power by ME //src: https://github.com/JiepengTan/ME
//#define DONT_USE_GENERATE_CODE
using System.Linq;
using Lockstep.Serialization;
using System.Runtime.InteropServices;
using System.Runtime.CompilerServices;
using System;
using Lockstep.InternalUnsafeECS;
using System.Collections;
using Lockstep.Math;
using System.Collections.Generic;
using Lockstep.Logging;
using Lockstep.Util;
namespace Lockstep.UnsafeECS.Game {
[StructLayout(LayoutKind.Sequential, Pack = Define.PackSize)]
public unsafe partial class _EntityManager :InternalBaseEntityManager{
#region Size Offset of Entity Field
private NativeArray _GetAllPlayerCube_Transform3D(int compFieldOffset,FuncEntityFilter filterFunc,out int length) where T: unmanaged{return _GetAllEntityField(_PlayerCubeAry,_GetOffsetOfPlayerCube_Transform() + compFieldOffset,filterFunc,out length);}
private NativeArray _GetAllPlayerCube_Transform3D(int compFieldOffset) where T: unmanaged{return _GetAllEntityField(_PlayerCubeAry,_GetOffsetOfPlayerCube_Transform()+ compFieldOffset);}
private NativeArray _GetAllPlayerCube_Transform(){return _GetAllEntityField(_PlayerCubeAry,_GetOffsetOfPlayerCube_Transform());}
private int _GetOffsetOfPlayerCube_Transform(){ var tempObj = new PlayerCube(); PlayerCube* ptr = &tempObj;var filedPtr = &(ptr->Transform); return (int)((long) filedPtr - (long) ptr); }
private NativeArray _GetAllPlayerCube_Prefab