@nice2dev/game-engine 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +33 -0
- package/LICENSE +21 -0
- package/README.md +105 -0
- package/dist/cjs/accessibility/Accessibility.js +162 -0
- package/dist/cjs/accessibility/Accessibility.js.map +1 -0
- package/dist/cjs/ai/AI.js +321 -0
- package/dist/cjs/ai/AI.js.map +1 -0
- package/dist/cjs/animation/Animation.js +233 -0
- package/dist/cjs/animation/Animation.js.map +1 -0
- package/dist/cjs/audio/AudioAdvanced.js +262 -0
- package/dist/cjs/audio/AudioAdvanced.js.map +1 -0
- package/dist/cjs/audio/AudioManager.js +248 -0
- package/dist/cjs/audio/AudioManager.js.map +1 -0
- package/dist/cjs/core/EventBus.js +63 -0
- package/dist/cjs/core/EventBus.js.map +1 -0
- package/dist/cjs/core/GameClock.js +70 -0
- package/dist/cjs/core/GameClock.js.map +1 -0
- package/dist/cjs/core/GameConfig.js +86 -0
- package/dist/cjs/core/GameConfig.js.map +1 -0
- package/dist/cjs/core/GameLoop.js +93 -0
- package/dist/cjs/core/GameLoop.js.map +1 -0
- package/dist/cjs/core/ServiceLocator.js +73 -0
- package/dist/cjs/core/ServiceLocator.js.map +1 -0
- package/dist/cjs/core/Validation.js +119 -0
- package/dist/cjs/core/Validation.js.map +1 -0
- package/dist/cjs/core/math.js +116 -0
- package/dist/cjs/core/math.js.map +1 -0
- package/dist/cjs/devtools/DevTools.js +560 -0
- package/dist/cjs/devtools/DevTools.js.map +1 -0
- package/dist/cjs/devtools/DeveloperExperience.js +562 -0
- package/dist/cjs/devtools/DeveloperExperience.js.map +1 -0
- package/dist/cjs/docs/DocGenerator.js +357 -0
- package/dist/cjs/docs/DocGenerator.js.map +1 -0
- package/dist/cjs/ecs/World.js +280 -0
- package/dist/cjs/ecs/World.js.map +1 -0
- package/dist/cjs/editor/AdvancedEditor.js +149 -0
- package/dist/cjs/editor/AdvancedEditor.js.map +1 -0
- package/dist/cjs/editor/AssetManager.js +190 -0
- package/dist/cjs/editor/AssetManager.js.map +1 -0
- package/dist/cjs/editor/DebugTools.js +187 -0
- package/dist/cjs/editor/DebugTools.js.map +1 -0
- package/dist/cjs/editor/NiceGameEditor.js +361 -0
- package/dist/cjs/editor/NiceGameEditor.js.map +1 -0
- package/dist/cjs/editor/SceneEditor.js +223 -0
- package/dist/cjs/editor/SceneEditor.js.map +1 -0
- package/dist/cjs/engine/NiceGameEngine.js +172 -0
- package/dist/cjs/engine/NiceGameEngine.js.map +1 -0
- package/dist/cjs/enterprise/Enterprise.js +258 -0
- package/dist/cjs/enterprise/Enterprise.js.map +1 -0
- package/dist/cjs/i18n/I18n.js +634 -0
- package/dist/cjs/i18n/I18n.js.map +1 -0
- package/dist/cjs/i18n/useTranslation.js +100 -0
- package/dist/cjs/i18n/useTranslation.js.map +1 -0
- package/dist/cjs/index.js +526 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/input/GamepadNavigation.js +181 -0
- package/dist/cjs/input/GamepadNavigation.js.map +1 -0
- package/dist/cjs/input/InputManager.js +404 -0
- package/dist/cjs/input/InputManager.js.map +1 -0
- package/dist/cjs/input/useGamepads.js +86 -0
- package/dist/cjs/input/useGamepads.js.map +1 -0
- package/dist/cjs/kids/KidMode.js +670 -0
- package/dist/cjs/kids/KidMode.js.map +1 -0
- package/dist/cjs/kids/KidTools.js +533 -0
- package/dist/cjs/kids/KidTools.js.map +1 -0
- package/dist/cjs/monetization/Monetization.js +197 -0
- package/dist/cjs/monetization/Monetization.js.map +1 -0
- package/dist/cjs/multiplayer/LocalMultiplayer.js +288 -0
- package/dist/cjs/multiplayer/LocalMultiplayer.js.map +1 -0
- package/dist/cjs/multiplayer/MiniGameTypes.js +70 -0
- package/dist/cjs/multiplayer/MiniGameTypes.js.map +1 -0
- package/dist/cjs/network/MultiplayerTransport.js +109 -0
- package/dist/cjs/network/MultiplayerTransport.js.map +1 -0
- package/dist/cjs/network/Networking.js +569 -0
- package/dist/cjs/network/Networking.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/AbortController.js +32 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/AbortController.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/AccessTokenHttpClient.js +51 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/AccessTokenHttpClient.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/DefaultHttpClient.js +46 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/DefaultHttpClient.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/DefaultReconnectPolicy.js +18 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/DefaultReconnectPolicy.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/Errors.js +145 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/Errors.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/FetchHttpClient.js +161 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/FetchHttpClient.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/HandshakeProtocol.js +56 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/HandshakeProtocol.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/HeaderNames.js +11 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/HeaderNames.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/HttpClient.js +52 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/HttpClient.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/HttpConnection.js +576 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/HttpConnection.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/HubConnection.js +956 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/HubConnection.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/HubConnectionBuilder.js +149 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/HubConnectionBuilder.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/IHubProtocol.js +25 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/IHubProtocol.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/ILogger.js +27 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/ILogger.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/ITransport.js +26 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/ITransport.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/JsonHubProtocol.js +124 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/JsonHubProtocol.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/Loggers.js +17 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/Loggers.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/LongPollingTransport.js +188 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/LongPollingTransport.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/MessageBuffer.js +199 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/MessageBuffer.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/ServerSentEventsTransport.js +108 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/ServerSentEventsTransport.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/Subject.js +38 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/Subject.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/TextMessageFormat.js +24 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/TextMessageFormat.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/Utils.js +264 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/Utils.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/WebSocketTransport.js +160 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/WebSocketTransport.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/XhrHttpClient.js +88 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/XhrHttpClient.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/index.js +50 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/index.js.map +1 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/pkg-version.js +6 -0
- package/dist/cjs/node_modules/@microsoft/signalr/dist/esm/pkg-version.js.map +1 -0
- package/dist/cjs/pathfinding/Pathfinding.js +255 -0
- package/dist/cjs/pathfinding/Pathfinding.js.map +1 -0
- package/dist/cjs/performance/BenchmarkSuite.js +318 -0
- package/dist/cjs/performance/BenchmarkSuite.js.map +1 -0
- package/dist/cjs/performance/Performance.js +180 -0
- package/dist/cjs/performance/Performance.js.map +1 -0
- package/dist/cjs/performance/PerformanceAdvanced.js +628 -0
- package/dist/cjs/performance/PerformanceAdvanced.js.map +1 -0
- package/dist/cjs/physics/PhysicsAdvanced.js +432 -0
- package/dist/cjs/physics/PhysicsAdvanced.js.map +1 -0
- package/dist/cjs/physics/PhysicsEngine2D.js +445 -0
- package/dist/cjs/physics/PhysicsEngine2D.js.map +1 -0
- package/dist/cjs/plugins/PluginSDK.js +488 -0
- package/dist/cjs/plugins/PluginSDK.js.map +1 -0
- package/dist/cjs/plugins/PluginTestKit.js +368 -0
- package/dist/cjs/plugins/PluginTestKit.js.map +1 -0
- package/dist/cjs/procedural/Procedural.js +288 -0
- package/dist/cjs/procedural/Procedural.js.map +1 -0
- package/dist/cjs/procedural/WorldBuilding.js +246 -0
- package/dist/cjs/procedural/WorldBuilding.js.map +1 -0
- package/dist/cjs/release/MobileExport.js +149 -0
- package/dist/cjs/release/MobileExport.js.map +1 -0
- package/dist/cjs/release/Release.js +151 -0
- package/dist/cjs/release/Release.js.map +1 -0
- package/dist/cjs/rendering/Camera2D.js +129 -0
- package/dist/cjs/rendering/Camera2D.js.map +1 -0
- package/dist/cjs/rendering/Renderer2D.js +337 -0
- package/dist/cjs/rendering/Renderer2D.js.map +1 -0
- package/dist/cjs/runtime3d/Runtime3D.js +381 -0
- package/dist/cjs/runtime3d/Runtime3D.js.map +1 -0
- package/dist/cjs/runtime3d/SceneEditor3D.js +316 -0
- package/dist/cjs/runtime3d/SceneEditor3D.js.map +1 -0
- package/dist/cjs/scene/SceneManager.js +186 -0
- package/dist/cjs/scene/SceneManager.js.map +1 -0
- package/dist/cjs/scripting/NodeGraph.js +573 -0
- package/dist/cjs/scripting/NodeGraph.js.map +1 -0
- package/dist/cjs/social/Social.js +91 -0
- package/dist/cjs/social/Social.js.map +1 -0
- package/dist/cjs/templates/ActionTemplates.js +229 -0
- package/dist/cjs/templates/ActionTemplates.js.map +1 -0
- package/dist/cjs/templates/PartyTemplates.js +221 -0
- package/dist/cjs/templates/PartyTemplates.js.map +1 -0
- package/dist/cjs/templates/PuzzleTemplates.js +283 -0
- package/dist/cjs/templates/PuzzleTemplates.js.map +1 -0
- package/dist/cjs/templates/RPGTemplates.js +209 -0
- package/dist/cjs/templates/RPGTemplates.js.map +1 -0
- package/dist/cjs/templates/SportsTemplates.js +272 -0
- package/dist/cjs/templates/SportsTemplates.js.map +1 -0
- package/dist/cjs/templates/StrategyTemplates.js +173 -0
- package/dist/cjs/templates/StrategyTemplates.js.map +1 -0
- package/dist/cjs/templates/WaveDefense.js +470 -0
- package/dist/cjs/templates/WaveDefense.js.map +1 -0
- package/dist/cjs/tilemap/Tilemap.js +208 -0
- package/dist/cjs/tilemap/Tilemap.js.map +1 -0
- package/dist/cjs/tutorials/TutorialBranching.js +392 -0
- package/dist/cjs/tutorials/TutorialBranching.js.map +1 -0
- package/dist/cjs/tutorials/TutorialEngine.js +903 -0
- package/dist/cjs/tutorials/TutorialEngine.js.map +1 -0
- package/dist/cjs/tutorials/TutorialOverlay.js +602 -0
- package/dist/cjs/tutorials/TutorialOverlay.js.map +1 -0
- package/dist/cjs/tutorials/content/Tutorials_T05_T08.js +816 -0
- package/dist/cjs/tutorials/content/Tutorials_T05_T08.js.map +1 -0
- package/dist/cjs/tutorials/content/Tutorials_T09_T11.js +741 -0
- package/dist/cjs/tutorials/content/Tutorials_T09_T11.js.map +1 -0
- package/dist/cjs/tutorials/content/Tutorials_T12_T15.js +786 -0
- package/dist/cjs/tutorials/content/Tutorials_T12_T15.js.map +1 -0
- package/dist/cjs/ui/GameUI.js +312 -0
- package/dist/cjs/ui/GameUI.js.map +1 -0
- package/dist/cjs/xr/ARVR.js +197 -0
- package/dist/cjs/xr/ARVR.js.map +1 -0
- package/dist/esm/accessibility/Accessibility.js +153 -0
- package/dist/esm/accessibility/Accessibility.js.map +1 -0
- package/dist/esm/ai/AI.js +302 -0
- package/dist/esm/ai/AI.js.map +1 -0
- package/dist/esm/animation/Animation.js +227 -0
- package/dist/esm/animation/Animation.js.map +1 -0
- package/dist/esm/audio/AudioAdvanced.js +243 -0
- package/dist/esm/audio/AudioAdvanced.js.map +1 -0
- package/dist/esm/audio/AudioManager.js +246 -0
- package/dist/esm/audio/AudioManager.js.map +1 -0
- package/dist/esm/core/EventBus.js +61 -0
- package/dist/esm/core/EventBus.js.map +1 -0
- package/dist/esm/core/GameClock.js +68 -0
- package/dist/esm/core/GameClock.js.map +1 -0
- package/dist/esm/core/GameConfig.js +80 -0
- package/dist/esm/core/GameConfig.js.map +1 -0
- package/dist/esm/core/GameLoop.js +91 -0
- package/dist/esm/core/GameLoop.js.map +1 -0
- package/dist/esm/core/ServiceLocator.js +70 -0
- package/dist/esm/core/ServiceLocator.js.map +1 -0
- package/dist/esm/core/Validation.js +108 -0
- package/dist/esm/core/Validation.js.map +1 -0
- package/dist/esm/core/math.js +114 -0
- package/dist/esm/core/math.js.map +1 -0
- package/dist/esm/devtools/DevTools.js +555 -0
- package/dist/esm/devtools/DevTools.js.map +1 -0
- package/dist/esm/devtools/DeveloperExperience.js +547 -0
- package/dist/esm/devtools/DeveloperExperience.js.map +1 -0
- package/dist/esm/docs/DocGenerator.js +353 -0
- package/dist/esm/docs/DocGenerator.js.map +1 -0
- package/dist/esm/ecs/World.js +276 -0
- package/dist/esm/ecs/World.js.map +1 -0
- package/dist/esm/editor/AdvancedEditor.js +141 -0
- package/dist/esm/editor/AdvancedEditor.js.map +1 -0
- package/dist/esm/editor/AssetManager.js +188 -0
- package/dist/esm/editor/AssetManager.js.map +1 -0
- package/dist/esm/editor/DebugTools.js +179 -0
- package/dist/esm/editor/DebugTools.js.map +1 -0
- package/dist/esm/editor/NiceGameEditor.js +355 -0
- package/dist/esm/editor/NiceGameEditor.js.map +1 -0
- package/dist/esm/editor/SceneEditor.js +209 -0
- package/dist/esm/editor/SceneEditor.js.map +1 -0
- package/dist/esm/engine/NiceGameEngine.js +170 -0
- package/dist/esm/engine/NiceGameEngine.js.map +1 -0
- package/dist/esm/enterprise/Enterprise.js +246 -0
- package/dist/esm/enterprise/Enterprise.js.map +1 -0
- package/dist/esm/i18n/I18n.js +622 -0
- package/dist/esm/i18n/I18n.js.map +1 -0
- package/dist/esm/i18n/useTranslation.js +95 -0
- package/dist/esm/i18n/useTranslation.js.map +1 -0
- package/dist/esm/index.js +71 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/input/GamepadNavigation.js +178 -0
- package/dist/esm/input/GamepadNavigation.js.map +1 -0
- package/dist/esm/input/InputManager.js +399 -0
- package/dist/esm/input/InputManager.js.map +1 -0
- package/dist/esm/input/useGamepads.js +83 -0
- package/dist/esm/input/useGamepads.js.map +1 -0
- package/dist/esm/kids/KidMode.js +663 -0
- package/dist/esm/kids/KidMode.js.map +1 -0
- package/dist/esm/kids/KidTools.js +529 -0
- package/dist/esm/kids/KidTools.js.map +1 -0
- package/dist/esm/monetization/Monetization.js +186 -0
- package/dist/esm/monetization/Monetization.js.map +1 -0
- package/dist/esm/multiplayer/LocalMultiplayer.js +284 -0
- package/dist/esm/multiplayer/LocalMultiplayer.js.map +1 -0
- package/dist/esm/multiplayer/MiniGameTypes.js +60 -0
- package/dist/esm/multiplayer/MiniGameTypes.js.map +1 -0
- package/dist/esm/network/MultiplayerTransport.js +106 -0
- package/dist/esm/network/MultiplayerTransport.js.map +1 -0
- package/dist/esm/network/Networking.js +561 -0
- package/dist/esm/network/Networking.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/AbortController.js +30 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/AbortController.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/AccessTokenHttpClient.js +49 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/AccessTokenHttpClient.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/DefaultHttpClient.js +44 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/DefaultHttpClient.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/DefaultReconnectPolicy.js +16 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/DefaultReconnectPolicy.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/Errors.js +136 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/Errors.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/FetchHttpClient.js +159 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/FetchHttpClient.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/HandshakeProtocol.js +54 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/HandshakeProtocol.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/HeaderNames.js +9 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/HeaderNames.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/HttpClient.js +49 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/HttpClient.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/HttpConnection.js +573 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/HttpConnection.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/HubConnection.js +954 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/HubConnection.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/HubConnectionBuilder.js +147 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/HubConnectionBuilder.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/IHubProtocol.js +25 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/IHubProtocol.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/ILogger.js +27 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/ILogger.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/ITransport.js +26 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/ITransport.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/JsonHubProtocol.js +122 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/JsonHubProtocol.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/Loggers.js +15 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/Loggers.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/LongPollingTransport.js +186 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/LongPollingTransport.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/MessageBuffer.js +197 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/MessageBuffer.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/ServerSentEventsTransport.js +106 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/ServerSentEventsTransport.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/Subject.js +36 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/Subject.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/TextMessageFormat.js +22 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/TextMessageFormat.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/Utils.js +249 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/Utils.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/WebSocketTransport.js +158 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/WebSocketTransport.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/XhrHttpClient.js +86 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/XhrHttpClient.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/index.js +13 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/index.js.map +1 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/pkg-version.js +4 -0
- package/dist/esm/node_modules/@microsoft/signalr/dist/esm/pkg-version.js.map +1 -0
- package/dist/esm/pathfinding/Pathfinding.js +250 -0
- package/dist/esm/pathfinding/Pathfinding.js.map +1 -0
- package/dist/esm/performance/BenchmarkSuite.js +315 -0
- package/dist/esm/performance/BenchmarkSuite.js.map +1 -0
- package/dist/esm/performance/Performance.js +171 -0
- package/dist/esm/performance/Performance.js.map +1 -0
- package/dist/esm/performance/PerformanceAdvanced.js +620 -0
- package/dist/esm/performance/PerformanceAdvanced.js.map +1 -0
- package/dist/esm/physics/PhysicsAdvanced.js +417 -0
- package/dist/esm/physics/PhysicsAdvanced.js.map +1 -0
- package/dist/esm/physics/PhysicsEngine2D.js +442 -0
- package/dist/esm/physics/PhysicsEngine2D.js.map +1 -0
- package/dist/esm/plugins/PluginSDK.js +484 -0
- package/dist/esm/plugins/PluginSDK.js.map +1 -0
- package/dist/esm/plugins/PluginTestKit.js +359 -0
- package/dist/esm/plugins/PluginTestKit.js.map +1 -0
- package/dist/esm/procedural/Procedural.js +282 -0
- package/dist/esm/procedural/Procedural.js.map +1 -0
- package/dist/esm/procedural/WorldBuilding.js +225 -0
- package/dist/esm/procedural/WorldBuilding.js.map +1 -0
- package/dist/esm/release/MobileExport.js +142 -0
- package/dist/esm/release/MobileExport.js.map +1 -0
- package/dist/esm/release/Release.js +141 -0
- package/dist/esm/release/Release.js.map +1 -0
- package/dist/esm/rendering/Camera2D.js +127 -0
- package/dist/esm/rendering/Camera2D.js.map +1 -0
- package/dist/esm/rendering/Renderer2D.js +334 -0
- package/dist/esm/rendering/Renderer2D.js.map +1 -0
- package/dist/esm/runtime3d/Runtime3D.js +371 -0
- package/dist/esm/runtime3d/Runtime3D.js.map +1 -0
- package/dist/esm/runtime3d/SceneEditor3D.js +299 -0
- package/dist/esm/runtime3d/SceneEditor3D.js.map +1 -0
- package/dist/esm/scene/SceneManager.js +184 -0
- package/dist/esm/scene/SceneManager.js.map +1 -0
- package/dist/esm/scripting/NodeGraph.js +568 -0
- package/dist/esm/scripting/NodeGraph.js.map +1 -0
- package/dist/esm/social/Social.js +85 -0
- package/dist/esm/social/Social.js.map +1 -0
- package/dist/esm/templates/ActionTemplates.js +217 -0
- package/dist/esm/templates/ActionTemplates.js.map +1 -0
- package/dist/esm/templates/PartyTemplates.js +204 -0
- package/dist/esm/templates/PartyTemplates.js.map +1 -0
- package/dist/esm/templates/PuzzleTemplates.js +267 -0
- package/dist/esm/templates/PuzzleTemplates.js.map +1 -0
- package/dist/esm/templates/RPGTemplates.js +196 -0
- package/dist/esm/templates/RPGTemplates.js.map +1 -0
- package/dist/esm/templates/SportsTemplates.js +257 -0
- package/dist/esm/templates/SportsTemplates.js.map +1 -0
- package/dist/esm/templates/StrategyTemplates.js +157 -0
- package/dist/esm/templates/StrategyTemplates.js.map +1 -0
- package/dist/esm/templates/WaveDefense.js +467 -0
- package/dist/esm/templates/WaveDefense.js.map +1 -0
- package/dist/esm/tilemap/Tilemap.js +205 -0
- package/dist/esm/tilemap/Tilemap.js.map +1 -0
- package/dist/esm/tutorials/TutorialBranching.js +388 -0
- package/dist/esm/tutorials/TutorialBranching.js.map +1 -0
- package/dist/esm/tutorials/TutorialEngine.js +897 -0
- package/dist/esm/tutorials/TutorialEngine.js.map +1 -0
- package/dist/esm/tutorials/TutorialOverlay.js +600 -0
- package/dist/esm/tutorials/TutorialOverlay.js.map +1 -0
- package/dist/esm/tutorials/content/Tutorials_T05_T08.js +810 -0
- package/dist/esm/tutorials/content/Tutorials_T05_T08.js.map +1 -0
- package/dist/esm/tutorials/content/Tutorials_T09_T11.js +736 -0
- package/dist/esm/tutorials/content/Tutorials_T09_T11.js.map +1 -0
- package/dist/esm/tutorials/content/Tutorials_T12_T15.js +780 -0
- package/dist/esm/tutorials/content/Tutorials_T12_T15.js.map +1 -0
- package/dist/esm/ui/GameUI.js +310 -0
- package/dist/esm/ui/GameUI.js.map +1 -0
- package/dist/esm/xr/ARVR.js +182 -0
- package/dist/esm/xr/ARVR.js.map +1 -0
- package/dist/types/__tests__/setup.d.ts +1 -0
- package/dist/types/accessibility/Accessibility.d.ts +82 -0
- package/dist/types/accessibility/index.d.ts +1 -0
- package/dist/types/ai/AI.d.ts +140 -0
- package/dist/types/ai/index.d.ts +1 -0
- package/dist/types/animation/Animation.d.ts +90 -0
- package/dist/types/animation/index.d.ts +1 -0
- package/dist/types/audio/AudioAdvanced.d.ts +190 -0
- package/dist/types/audio/AudioManager.d.ts +55 -0
- package/dist/types/audio/index.d.ts +1 -0
- package/dist/types/community/Community.d.ts +112 -0
- package/dist/types/community/index.d.ts +1 -0
- package/dist/types/core/EventBus.d.ts +16 -0
- package/dist/types/core/GameClock.d.ts +29 -0
- package/dist/types/core/GameConfig.d.ts +20 -0
- package/dist/types/core/GameLoop.d.ts +32 -0
- package/dist/types/core/ServiceLocator.d.ts +36 -0
- package/dist/types/core/TypeSafety.d.ts +190 -0
- package/dist/types/core/Validation.d.ts +24 -0
- package/dist/types/core/index.d.ts +7 -0
- package/dist/types/core/math.d.ts +32 -0
- package/dist/types/core/types.d.ts +130 -0
- package/dist/types/devtools/AssetStore.d.ts +133 -0
- package/dist/types/devtools/DevTools.d.ts +217 -0
- package/dist/types/devtools/DeveloperExperience.d.ts +123 -0
- package/dist/types/devtools/index.d.ts +3 -0
- package/dist/types/docs/APIPlayground.d.ts +26 -0
- package/dist/types/docs/Cookbook.d.ts +18 -0
- package/dist/types/docs/DocGenerator.d.ts +83 -0
- package/dist/types/docs/Guides.d.ts +18 -0
- package/dist/types/docs/index.d.ts +4 -0
- package/dist/types/ecs/World.d.ts +219 -0
- package/dist/types/ecs/index.d.ts +1 -0
- package/dist/types/editor/AdvancedEditor.d.ts +267 -0
- package/dist/types/editor/AssetManager.d.ts +45 -0
- package/dist/types/editor/DebugTools.d.ts +74 -0
- package/dist/types/editor/NiceGameEditor.d.ts +115 -0
- package/dist/types/editor/SceneEditor.d.ts +37 -0
- package/dist/types/editor/index.d.ts +8 -0
- package/dist/types/engine/NiceGameEngine.d.ts +53 -0
- package/dist/types/engine/index.d.ts +2 -0
- package/dist/types/enterprise/Enterprise.d.ts +217 -0
- package/dist/types/enterprise/index.d.ts +1 -0
- package/dist/types/epic/index.d.ts +10 -0
- package/dist/types/i18n/I18n.d.ts +107 -0
- package/dist/types/i18n/index.d.ts +2 -0
- package/dist/types/i18n/useTranslation.d.ts +74 -0
- package/dist/types/index.d.ts +127 -0
- package/dist/types/input/GamepadNavigation.d.ts +34 -0
- package/dist/types/input/InputManager.d.ts +77 -0
- package/dist/types/input/index.d.ts +3 -0
- package/dist/types/input/useGamepads.d.ts +39 -0
- package/dist/types/kids/KidMode.d.ts +207 -0
- package/dist/types/kids/KidTools.d.ts +135 -0
- package/dist/types/kids/index.d.ts +2 -0
- package/dist/types/legendary/index.d.ts +57 -0
- package/dist/types/monetization/Monetization.d.ts +224 -0
- package/dist/types/monetization/index.d.ts +1 -0
- package/dist/types/multiplayer/LocalMultiplayer.d.ts +61 -0
- package/dist/types/multiplayer/MiniGameTypes.d.ts +70 -0
- package/dist/types/multiplayer/index.d.ts +3 -0
- package/dist/types/network/MultiplayerTransport.d.ts +71 -0
- package/dist/types/network/Networking.d.ts +199 -0
- package/dist/types/network/index.d.ts +2 -0
- package/dist/types/pathfinding/Pathfinding.d.ts +42 -0
- package/dist/types/pathfinding/index.d.ts +1 -0
- package/dist/types/performance/AssetCompression.d.ts +137 -0
- package/dist/types/performance/BenchmarkSuite.d.ts +99 -0
- package/dist/types/performance/Performance.d.ts +87 -0
- package/dist/types/performance/PerformanceAdvanced.d.ts +220 -0
- package/dist/types/performance/WASMModules.d.ts +65 -0
- package/dist/types/performance/WebGPUCompute.d.ts +164 -0
- package/dist/types/performance/index.d.ts +1 -0
- package/dist/types/physics/PhysicsAdvanced.d.ts +148 -0
- package/dist/types/physics/PhysicsEngine2D.d.ts +66 -0
- package/dist/types/physics/index.d.ts +1 -0
- package/dist/types/plugins/PluginSDK.d.ts +134 -0
- package/dist/types/plugins/PluginTestKit.d.ts +107 -0
- package/dist/types/plugins/index.d.ts +2 -0
- package/dist/types/procedural/Procedural.d.ts +90 -0
- package/dist/types/procedural/WorldBuilding.d.ts +200 -0
- package/dist/types/procedural/index.d.ts +2 -0
- package/dist/types/release/MobileExport.d.ts +218 -0
- package/dist/types/release/Release.d.ts +81 -0
- package/dist/types/release/index.d.ts +1 -0
- package/dist/types/rendering/Camera2D.d.ts +39 -0
- package/dist/types/rendering/Renderer2D.d.ts +41 -0
- package/dist/types/rendering/index.d.ts +2 -0
- package/dist/types/runtime3d/Runtime3D.d.ts +259 -0
- package/dist/types/runtime3d/SceneEditor3D.d.ts +186 -0
- package/dist/types/runtime3d/index.d.ts +2 -0
- package/dist/types/scene/SceneManager.d.ts +59 -0
- package/dist/types/scene/index.d.ts +2 -0
- package/dist/types/scripting/NodeGraph.d.ts +84 -0
- package/dist/types/scripting/index.d.ts +2 -0
- package/dist/types/social/Social.d.ts +245 -0
- package/dist/types/social/index.d.ts +1 -0
- package/dist/types/templates/ActionTemplates.d.ts +173 -0
- package/dist/types/templates/PartyTemplates.d.ts +195 -0
- package/dist/types/templates/PuzzleTemplates.d.ts +127 -0
- package/dist/types/templates/RPGTemplates.d.ts +210 -0
- package/dist/types/templates/SportsTemplates.d.ts +162 -0
- package/dist/types/templates/StrategyTemplates.d.ts +264 -0
- package/dist/types/templates/WaveDefense.d.ts +92 -0
- package/dist/types/templates/index.d.ts +2 -0
- package/dist/types/tilemap/Tilemap.d.ts +66 -0
- package/dist/types/tilemap/index.d.ts +1 -0
- package/dist/types/tutorials/TutorialBranching.d.ts +132 -0
- package/dist/types/tutorials/TutorialEditor.d.ts +43 -0
- package/dist/types/tutorials/TutorialEngine.d.ts +237 -0
- package/dist/types/tutorials/TutorialOverlay.d.ts +79 -0
- package/dist/types/tutorials/VoiceNarration.d.ts +75 -0
- package/dist/types/tutorials/content/Tutorials_T04.d.ts +3 -0
- package/dist/types/tutorials/content/Tutorials_T05_T08.d.ts +6 -0
- package/dist/types/tutorials/content/Tutorials_T09_T11.d.ts +5 -0
- package/dist/types/tutorials/content/Tutorials_T12_T15.d.ts +6 -0
- package/dist/types/tutorials/content/UITutorials.d.ts +14 -0
- package/dist/types/tutorials/content/index.d.ts +5 -0
- package/dist/types/tutorials/index.d.ts +6 -0
- package/dist/types/ui/GameUI.d.ts +97 -0
- package/dist/types/ui/index.d.ts +2 -0
- package/dist/types/xr/ARVR.d.ts +252 -0
- package/dist/types/xr/index.d.ts +1 -0
- package/package.json +88 -0
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
import type { EntityId } from '../core/types';
|
|
2
|
+
import type { Vec3, Quaternion, World3D, MeshPrimitive } from './Runtime3D';
|
|
3
|
+
export type Gizmo3DMode = 'translate' | 'rotate' | 'scale';
|
|
4
|
+
export type Gizmo3DAxis = 'x' | 'y' | 'z' | 'xy' | 'xz' | 'yz' | 'none';
|
|
5
|
+
export type Gizmo3DSpace = 'world' | 'local';
|
|
6
|
+
export interface Gizmo3DState {
|
|
7
|
+
mode: Gizmo3DMode;
|
|
8
|
+
activeAxis: Gizmo3DAxis;
|
|
9
|
+
space: Gizmo3DSpace;
|
|
10
|
+
dragging: boolean;
|
|
11
|
+
startPosition: Vec3;
|
|
12
|
+
startRotation: Quaternion;
|
|
13
|
+
startScale: Vec3;
|
|
14
|
+
}
|
|
15
|
+
export declare function createGizmo3DState(): Gizmo3DState;
|
|
16
|
+
export interface PlacementConfig {
|
|
17
|
+
snapEnabled: boolean;
|
|
18
|
+
gridSize: number;
|
|
19
|
+
surfaceSnap: boolean;
|
|
20
|
+
randomRotation: boolean;
|
|
21
|
+
}
|
|
22
|
+
export declare const DEFAULT_PLACEMENT_CONFIG: PlacementConfig;
|
|
23
|
+
export declare function snapToGrid3D(pos: Vec3, gridSize: number): Vec3;
|
|
24
|
+
export declare function placeObject(world: World3D, primitive: MeshPrimitive, position: Vec3, config: PlacementConfig): EntityId;
|
|
25
|
+
export interface TerrainConfig {
|
|
26
|
+
width: number;
|
|
27
|
+
depth: number;
|
|
28
|
+
resolution: number;
|
|
29
|
+
maxHeight: number;
|
|
30
|
+
}
|
|
31
|
+
export declare const DEFAULT_TERRAIN_CONFIG: TerrainConfig;
|
|
32
|
+
export declare class Terrain3D {
|
|
33
|
+
readonly config: TerrainConfig;
|
|
34
|
+
readonly heightmap: Float32Array;
|
|
35
|
+
constructor(config?: Partial<TerrainConfig>);
|
|
36
|
+
getHeight(gridX: number, gridZ: number): number;
|
|
37
|
+
setHeight(gridX: number, gridZ: number, h: number): void;
|
|
38
|
+
/** Get interpolated height at world coordinates. */
|
|
39
|
+
getHeightAtWorld(worldX: number, worldZ: number): number;
|
|
40
|
+
/** Raise/lower terrain around a point. */
|
|
41
|
+
brush(worldX: number, worldZ: number, radius: number, strength: number): void;
|
|
42
|
+
/** Flatten terrain around a point to a given height. */
|
|
43
|
+
flatten(worldX: number, worldZ: number, radius: number, targetHeight: number): void;
|
|
44
|
+
/** Export heightmap to a simple JSON-serialisable format. */
|
|
45
|
+
serialize(): {
|
|
46
|
+
config: TerrainConfig;
|
|
47
|
+
heights: number[];
|
|
48
|
+
};
|
|
49
|
+
static deserialize(data: {
|
|
50
|
+
config: TerrainConfig;
|
|
51
|
+
heights: number[];
|
|
52
|
+
}): Terrain3D;
|
|
53
|
+
}
|
|
54
|
+
export interface SkyboxConfig {
|
|
55
|
+
type: 'color' | 'cubemap' | 'hdri';
|
|
56
|
+
color?: {
|
|
57
|
+
r: number;
|
|
58
|
+
g: number;
|
|
59
|
+
b: number;
|
|
60
|
+
};
|
|
61
|
+
textureIds?: string[];
|
|
62
|
+
}
|
|
63
|
+
export declare const DEFAULT_SKYBOX: SkyboxConfig;
|
|
64
|
+
export interface ModelAsset {
|
|
65
|
+
id: string;
|
|
66
|
+
name: string;
|
|
67
|
+
format: 'gltf' | 'glb' | 'fbx' | 'obj';
|
|
68
|
+
meshCount: number;
|
|
69
|
+
materialCount: number;
|
|
70
|
+
animationCount: number;
|
|
71
|
+
boneCount: number;
|
|
72
|
+
}
|
|
73
|
+
export interface AnimationRetargetMap {
|
|
74
|
+
/** Maps source bone name → target bone name. */
|
|
75
|
+
boneMapping: Record<string, string>;
|
|
76
|
+
}
|
|
77
|
+
export interface IKChain {
|
|
78
|
+
name: string;
|
|
79
|
+
root: string;
|
|
80
|
+
tip: string;
|
|
81
|
+
poleTarget?: Vec3;
|
|
82
|
+
iterations: number;
|
|
83
|
+
tolerance: number;
|
|
84
|
+
}
|
|
85
|
+
export interface BlendTreeNode {
|
|
86
|
+
name: string;
|
|
87
|
+
animationId: string | null;
|
|
88
|
+
children: BlendTreeNode[];
|
|
89
|
+
blendParameter: string;
|
|
90
|
+
threshold: number;
|
|
91
|
+
}
|
|
92
|
+
export declare function createBlendTree(rootName: string): BlendTreeNode;
|
|
93
|
+
export declare function addBlendTreeChild(parent: BlendTreeNode, animationId: string, threshold: number, name?: string): BlendTreeNode;
|
|
94
|
+
/** Evaluate blend tree → returns pairs of [animId, weight]. */
|
|
95
|
+
export declare function evaluateBlendTree(node: BlendTreeNode, parameterValue: number): Array<{
|
|
96
|
+
animationId: string;
|
|
97
|
+
weight: number;
|
|
98
|
+
}>;
|
|
99
|
+
export interface ShaderUniform {
|
|
100
|
+
name: string;
|
|
101
|
+
type: 'float' | 'vec2' | 'vec3' | 'vec4' | 'mat4' | 'sampler2D';
|
|
102
|
+
value: number | number[] | string;
|
|
103
|
+
}
|
|
104
|
+
export interface ShaderDef {
|
|
105
|
+
id: string;
|
|
106
|
+
name: string;
|
|
107
|
+
vertexSource?: string;
|
|
108
|
+
fragmentSource?: string;
|
|
109
|
+
uniforms: ShaderUniform[];
|
|
110
|
+
}
|
|
111
|
+
export interface DecalDef {
|
|
112
|
+
textureId: string;
|
|
113
|
+
size: Vec3;
|
|
114
|
+
angle: number;
|
|
115
|
+
opacity: number;
|
|
116
|
+
}
|
|
117
|
+
/** Material library for managing PBR materials. */
|
|
118
|
+
export declare class MaterialLibrary {
|
|
119
|
+
private materials;
|
|
120
|
+
add(mat: import('./Runtime3D').Material3D): void;
|
|
121
|
+
get(id: string): import('./Runtime3D').Material3D | undefined;
|
|
122
|
+
remove(id: string): boolean;
|
|
123
|
+
all(): import('./Runtime3D').Material3D[];
|
|
124
|
+
/** Duplicate a material with a new id. */
|
|
125
|
+
clone(sourceId: string, newName?: string): import('./Runtime3D').Material3D | null;
|
|
126
|
+
/** Export all materials to JSON-serialisable array. */
|
|
127
|
+
serialize(): import('./Runtime3D').Material3D[];
|
|
128
|
+
load(materials: import('./Runtime3D').Material3D[]): void;
|
|
129
|
+
}
|
|
130
|
+
export interface FPSTemplateConfig {
|
|
131
|
+
moveSpeed: number;
|
|
132
|
+
lookSensitivity: number;
|
|
133
|
+
jumpForce: number;
|
|
134
|
+
gravity: number;
|
|
135
|
+
weaponSlots: number;
|
|
136
|
+
healthMax: number;
|
|
137
|
+
crosshairSize: number;
|
|
138
|
+
}
|
|
139
|
+
export declare const DEFAULT_FPS_CONFIG: FPSTemplateConfig;
|
|
140
|
+
export interface ThirdPersonTemplateConfig {
|
|
141
|
+
moveSpeed: number;
|
|
142
|
+
sprintMultiplier: number;
|
|
143
|
+
jumpForce: number;
|
|
144
|
+
gravity: number;
|
|
145
|
+
cameraDistance: number;
|
|
146
|
+
cameraPitchMin: number;
|
|
147
|
+
cameraPitchMax: number;
|
|
148
|
+
cameraSmoothing: number;
|
|
149
|
+
lockOnRadius: number;
|
|
150
|
+
}
|
|
151
|
+
export declare const DEFAULT_THIRD_PERSON_CONFIG: ThirdPersonTemplateConfig;
|
|
152
|
+
export interface RacingTemplate3DConfig {
|
|
153
|
+
maxSpeed: number;
|
|
154
|
+
acceleration: number;
|
|
155
|
+
braking: number;
|
|
156
|
+
turnSpeed: number;
|
|
157
|
+
driftFactor: number;
|
|
158
|
+
gravity: number;
|
|
159
|
+
cameraFollowDistance: number;
|
|
160
|
+
cameraHeight: number;
|
|
161
|
+
}
|
|
162
|
+
export declare const DEFAULT_RACING_3D_CONFIG: RacingTemplate3DConfig;
|
|
163
|
+
export interface FlightSimConfig {
|
|
164
|
+
maxThrust: number;
|
|
165
|
+
liftCoefficient: number;
|
|
166
|
+
dragCoefficient: number;
|
|
167
|
+
rollSpeed: number;
|
|
168
|
+
pitchSpeed: number;
|
|
169
|
+
yawSpeed: number;
|
|
170
|
+
gravity: number;
|
|
171
|
+
stallAngle: number;
|
|
172
|
+
}
|
|
173
|
+
export declare const DEFAULT_FLIGHT_SIM_CONFIG: FlightSimConfig;
|
|
174
|
+
export interface HorrorTemplateConfig {
|
|
175
|
+
walkSpeed: number;
|
|
176
|
+
sprintSpeed: number;
|
|
177
|
+
staminaMax: number;
|
|
178
|
+
staminaDrain: number;
|
|
179
|
+
staminaRegen: number;
|
|
180
|
+
flashlightRange: number;
|
|
181
|
+
flashlightAngle: number;
|
|
182
|
+
sanityMax: number;
|
|
183
|
+
sanityDecayRate: number;
|
|
184
|
+
ambientLightIntensity: number;
|
|
185
|
+
}
|
|
186
|
+
export declare const DEFAULT_HORROR_CONFIG: HorrorTemplateConfig;
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import type { EntityId, SceneData } from '../core/types';
|
|
2
|
+
import { EventBus } from '../core/EventBus';
|
|
3
|
+
import { World, type ComponentMap } from '../ecs/World';
|
|
4
|
+
export type TransitionType = 'none' | 'fade' | 'slide-left' | 'slide-right' | 'slide-up' | 'slide-down';
|
|
5
|
+
export interface SceneTransition {
|
|
6
|
+
type: TransitionType;
|
|
7
|
+
duration: number;
|
|
8
|
+
}
|
|
9
|
+
export interface SceneConfig {
|
|
10
|
+
id: string;
|
|
11
|
+
name: string;
|
|
12
|
+
/** Factory that populates the world. */
|
|
13
|
+
setup: (world: World) => void | Promise<void>;
|
|
14
|
+
settings?: Record<string, unknown>;
|
|
15
|
+
}
|
|
16
|
+
export interface PrefabDef {
|
|
17
|
+
name: string;
|
|
18
|
+
tags: string[];
|
|
19
|
+
components: {
|
|
20
|
+
type: keyof ComponentMap;
|
|
21
|
+
overrides?: Record<string, unknown>;
|
|
22
|
+
}[];
|
|
23
|
+
children?: PrefabDef[];
|
|
24
|
+
}
|
|
25
|
+
export declare class SceneManager {
|
|
26
|
+
readonly events: EventBus;
|
|
27
|
+
private scenes;
|
|
28
|
+
private prefabs;
|
|
29
|
+
private _currentId;
|
|
30
|
+
private _loading;
|
|
31
|
+
private _transition;
|
|
32
|
+
get currentSceneId(): string | null;
|
|
33
|
+
get isLoading(): boolean;
|
|
34
|
+
get transition(): {
|
|
35
|
+
progress: number;
|
|
36
|
+
phase: 'out' | 'in';
|
|
37
|
+
} | null;
|
|
38
|
+
register(config: SceneConfig): void;
|
|
39
|
+
unregister(id: string): void;
|
|
40
|
+
has(id: string): boolean;
|
|
41
|
+
get registeredScenes(): string[];
|
|
42
|
+
loadScene(id: string, world: World, transition?: SceneTransition): Promise<void>;
|
|
43
|
+
/** Reload current scene. */
|
|
44
|
+
reloadScene(world: World): Promise<void>;
|
|
45
|
+
updateTransition(dt: number): void;
|
|
46
|
+
registerPrefab(name: string, prefab: PrefabDef): void;
|
|
47
|
+
/** Instantiate a prefab into the world. Returns the root entity ID. */
|
|
48
|
+
instantiate(world: World, prefabName: string, overrides?: {
|
|
49
|
+
position?: {
|
|
50
|
+
x: number;
|
|
51
|
+
y: number;
|
|
52
|
+
};
|
|
53
|
+
name?: string;
|
|
54
|
+
}): EntityId;
|
|
55
|
+
private instantiatePrefab;
|
|
56
|
+
serializeScene(world: World, id: string, name: string): SceneData;
|
|
57
|
+
/** Deserialize a scene into a world. */
|
|
58
|
+
deserializeScene(world: World, data: SceneData): void;
|
|
59
|
+
}
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
import type { EntityId, Vec2 } from '../core/types';
|
|
2
|
+
import { EventBus } from '../core/EventBus';
|
|
3
|
+
export type PortDataType = 'flow' | 'boolean' | 'number' | 'string' | 'vec2' | 'color' | 'entity' | 'any';
|
|
4
|
+
export type PortDirection = 'input' | 'output';
|
|
5
|
+
export interface PortDef {
|
|
6
|
+
id: string;
|
|
7
|
+
name: string;
|
|
8
|
+
direction: PortDirection;
|
|
9
|
+
dataType: PortDataType;
|
|
10
|
+
defaultValue?: unknown;
|
|
11
|
+
/** Whether multiple connections are allowed (outputs only). */
|
|
12
|
+
multi?: boolean;
|
|
13
|
+
}
|
|
14
|
+
export type NodeCategory = 'flow' | 'math' | 'logic' | 'entity' | 'input' | 'physics' | 'audio' | 'ui' | 'game' | 'variable' | 'custom';
|
|
15
|
+
export interface NodeDef {
|
|
16
|
+
type: string;
|
|
17
|
+
name: string;
|
|
18
|
+
category: NodeCategory;
|
|
19
|
+
description: string;
|
|
20
|
+
color?: string;
|
|
21
|
+
ports: PortDef[];
|
|
22
|
+
/** Execute the node given input values, return output values. */
|
|
23
|
+
execute: (inputs: Record<string, unknown>, context: NodeExecutionContext) => Record<string, unknown> | void;
|
|
24
|
+
}
|
|
25
|
+
export interface NodeExecutionContext {
|
|
26
|
+
entityId: EntityId | null;
|
|
27
|
+
dt: number;
|
|
28
|
+
world: unknown;
|
|
29
|
+
events: EventBus;
|
|
30
|
+
variables: Record<string, unknown>;
|
|
31
|
+
services: Record<string, unknown>;
|
|
32
|
+
/** Trigger an output flow port. */
|
|
33
|
+
triggerFlow: (portId: string) => void;
|
|
34
|
+
}
|
|
35
|
+
export interface NodeInstance {
|
|
36
|
+
id: string;
|
|
37
|
+
type: string;
|
|
38
|
+
position: Vec2;
|
|
39
|
+
/** Override default values for input ports. */
|
|
40
|
+
inputValues: Record<string, unknown>;
|
|
41
|
+
/** Cached output values after execution. */
|
|
42
|
+
outputValues: Record<string, unknown>;
|
|
43
|
+
comment?: string;
|
|
44
|
+
}
|
|
45
|
+
export interface Connection {
|
|
46
|
+
id: string;
|
|
47
|
+
fromNode: string;
|
|
48
|
+
fromPort: string;
|
|
49
|
+
toNode: string;
|
|
50
|
+
toPort: string;
|
|
51
|
+
}
|
|
52
|
+
export interface ScriptGraph {
|
|
53
|
+
id: string;
|
|
54
|
+
name: string;
|
|
55
|
+
nodes: NodeInstance[];
|
|
56
|
+
connections: Connection[];
|
|
57
|
+
variables: GraphVariable[];
|
|
58
|
+
/** Graph-level inputs (parameters) for subgraph use. */
|
|
59
|
+
parameters: PortDef[];
|
|
60
|
+
}
|
|
61
|
+
export interface GraphVariable {
|
|
62
|
+
name: string;
|
|
63
|
+
type: PortDataType;
|
|
64
|
+
value: unknown;
|
|
65
|
+
scope: 'local' | 'global';
|
|
66
|
+
}
|
|
67
|
+
export declare class NodeLibrary {
|
|
68
|
+
private defs;
|
|
69
|
+
register(def: NodeDef): void;
|
|
70
|
+
get(type: string): NodeDef | undefined;
|
|
71
|
+
getAll(): NodeDef[];
|
|
72
|
+
getByCategory(category: NodeCategory): NodeDef[];
|
|
73
|
+
search(query: string): NodeDef[];
|
|
74
|
+
}
|
|
75
|
+
export declare class GraphExecutor {
|
|
76
|
+
readonly events: EventBus;
|
|
77
|
+
private library;
|
|
78
|
+
constructor(library: NodeLibrary);
|
|
79
|
+
/** Execute a graph starting from an entry node (e.g. "on_start", "on_update"). */
|
|
80
|
+
execute(graph: ScriptGraph, entryType: string, context: NodeExecutionContext): void;
|
|
81
|
+
private executeNode;
|
|
82
|
+
}
|
|
83
|
+
export declare function registerBuiltInNodes(library: NodeLibrary): void;
|
|
84
|
+
export declare function createDefaultNodeLibrary(): NodeLibrary;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export { NodeLibrary, GraphExecutor, registerBuiltInNodes, createDefaultNodeLibrary, } from './NodeGraph';
|
|
2
|
+
export type { PortDataType, PortDirection, PortDef, NodeCategory, NodeDef, NodeExecutionContext, NodeInstance, Connection, ScriptGraph, GraphVariable, } from './NodeGraph';
|
|
@@ -0,0 +1,245 @@
|
|
|
1
|
+
export interface UserProfile {
|
|
2
|
+
id: string;
|
|
3
|
+
displayName: string;
|
|
4
|
+
avatarUrl: string;
|
|
5
|
+
bio: string;
|
|
6
|
+
joinedAt: number;
|
|
7
|
+
badges: Badge[];
|
|
8
|
+
stats: UserStats;
|
|
9
|
+
socialLinks: SocialLink[];
|
|
10
|
+
privacy: PrivacySettings;
|
|
11
|
+
}
|
|
12
|
+
export interface Badge {
|
|
13
|
+
id: string;
|
|
14
|
+
name: string;
|
|
15
|
+
icon: string;
|
|
16
|
+
description: string;
|
|
17
|
+
earnedAt: number;
|
|
18
|
+
}
|
|
19
|
+
export interface UserStats {
|
|
20
|
+
gamesPublished: number;
|
|
21
|
+
gamesPlayed: number;
|
|
22
|
+
totalPlayTimeMs: number;
|
|
23
|
+
assetsShared: number;
|
|
24
|
+
ratingsGiven: number;
|
|
25
|
+
followersCount: number;
|
|
26
|
+
followingCount: number;
|
|
27
|
+
jamParticipations: number;
|
|
28
|
+
}
|
|
29
|
+
export interface SocialLink {
|
|
30
|
+
platform: 'github' | 'twitter' | 'youtube' | 'discord' | 'website' | 'itch';
|
|
31
|
+
url: string;
|
|
32
|
+
}
|
|
33
|
+
export interface PrivacySettings {
|
|
34
|
+
profilePublic: boolean;
|
|
35
|
+
showActivity: boolean;
|
|
36
|
+
allowMessages: boolean;
|
|
37
|
+
showOnlineStatus: boolean;
|
|
38
|
+
}
|
|
39
|
+
export type AssetCategory = 'sprites' | 'tilesets' | 'animations' | 'audio-sfx' | 'audio-music' | 'fonts' | 'ui-themes' | 'templates' | 'scripts' | 'shaders' | 'models-3d' | 'particles' | 'complete-projects';
|
|
40
|
+
export type AssetLicense = 'free' | 'cc0' | 'cc-by' | 'cc-by-sa' | 'cc-by-nc' | 'commercial' | 'custom';
|
|
41
|
+
export interface MarketplaceAsset {
|
|
42
|
+
id: string;
|
|
43
|
+
name: string;
|
|
44
|
+
description: string;
|
|
45
|
+
authorId: string;
|
|
46
|
+
category: AssetCategory;
|
|
47
|
+
tags: string[];
|
|
48
|
+
license: AssetLicense;
|
|
49
|
+
version: string;
|
|
50
|
+
price: number;
|
|
51
|
+
currency: string;
|
|
52
|
+
thumbnailUrl: string;
|
|
53
|
+
previewUrls: string[];
|
|
54
|
+
downloadCount: number;
|
|
55
|
+
rating: number;
|
|
56
|
+
ratingCount: number;
|
|
57
|
+
fileSize: number;
|
|
58
|
+
createdAt: number;
|
|
59
|
+
updatedAt: number;
|
|
60
|
+
compatibility: string[];
|
|
61
|
+
}
|
|
62
|
+
export interface MarketplaceQuery {
|
|
63
|
+
search?: string;
|
|
64
|
+
category?: AssetCategory;
|
|
65
|
+
tags?: string[];
|
|
66
|
+
license?: AssetLicense;
|
|
67
|
+
priceMin?: number;
|
|
68
|
+
priceMax?: number;
|
|
69
|
+
sortBy: 'relevance' | 'newest' | 'popular' | 'rating' | 'price-asc' | 'price-desc';
|
|
70
|
+
page: number;
|
|
71
|
+
pageSize: number;
|
|
72
|
+
}
|
|
73
|
+
export interface MarketplaceResult {
|
|
74
|
+
assets: MarketplaceAsset[];
|
|
75
|
+
total: number;
|
|
76
|
+
page: number;
|
|
77
|
+
pageSize: number;
|
|
78
|
+
}
|
|
79
|
+
export declare function createMarketplaceQuery(partial?: Partial<MarketplaceQuery>): MarketplaceQuery;
|
|
80
|
+
export type GameVisibility = 'public' | 'unlisted' | 'private' | 'draft';
|
|
81
|
+
export type ContentRating = 'everyone' | 'teen' | 'mature';
|
|
82
|
+
export interface PublishedGame {
|
|
83
|
+
id: string;
|
|
84
|
+
title: string;
|
|
85
|
+
slug: string;
|
|
86
|
+
authorId: string;
|
|
87
|
+
description: string;
|
|
88
|
+
shortDescription: string;
|
|
89
|
+
thumbnailUrl: string;
|
|
90
|
+
coverImageUrl: string;
|
|
91
|
+
screenshotUrls: string[];
|
|
92
|
+
visibility: GameVisibility;
|
|
93
|
+
contentRating: ContentRating;
|
|
94
|
+
genre: string[];
|
|
95
|
+
tags: string[];
|
|
96
|
+
version: string;
|
|
97
|
+
engineVersion: string;
|
|
98
|
+
playCount: number;
|
|
99
|
+
likeCount: number;
|
|
100
|
+
commentCount: number;
|
|
101
|
+
rating: number;
|
|
102
|
+
ratingCount: number;
|
|
103
|
+
createdAt: number;
|
|
104
|
+
updatedAt: number;
|
|
105
|
+
publishedAt: number;
|
|
106
|
+
controls: ControlSchemeInfo;
|
|
107
|
+
features: GameFeature[];
|
|
108
|
+
minPlayers: number;
|
|
109
|
+
maxPlayers: number;
|
|
110
|
+
embeddable: boolean;
|
|
111
|
+
remixable: boolean;
|
|
112
|
+
sourceGameId?: string;
|
|
113
|
+
}
|
|
114
|
+
export type GameFeature = 'multiplayer' | 'mobile' | 'controller' | 'achievements' | 'leaderboards' | 'cloud-save' | 'vr' | 'ar';
|
|
115
|
+
export interface ControlSchemeInfo {
|
|
116
|
+
keyboard: boolean;
|
|
117
|
+
mouse: boolean;
|
|
118
|
+
touch: boolean;
|
|
119
|
+
gamepad: boolean;
|
|
120
|
+
vr: boolean;
|
|
121
|
+
}
|
|
122
|
+
export interface PublishConfig {
|
|
123
|
+
title: string;
|
|
124
|
+
description: string;
|
|
125
|
+
visibility: GameVisibility;
|
|
126
|
+
contentRating: ContentRating;
|
|
127
|
+
genre: string[];
|
|
128
|
+
tags: string[];
|
|
129
|
+
controls: ControlSchemeInfo;
|
|
130
|
+
remixable: boolean;
|
|
131
|
+
minPlayers: number;
|
|
132
|
+
maxPlayers: number;
|
|
133
|
+
}
|
|
134
|
+
export interface Comment {
|
|
135
|
+
id: string;
|
|
136
|
+
authorId: string;
|
|
137
|
+
targetId: string;
|
|
138
|
+
targetType: 'game' | 'asset';
|
|
139
|
+
text: string;
|
|
140
|
+
createdAt: number;
|
|
141
|
+
updatedAt: number;
|
|
142
|
+
likes: number;
|
|
143
|
+
parentId?: string;
|
|
144
|
+
isEdited: boolean;
|
|
145
|
+
isPinned: boolean;
|
|
146
|
+
}
|
|
147
|
+
export interface Rating {
|
|
148
|
+
authorId: string;
|
|
149
|
+
targetId: string;
|
|
150
|
+
targetType: 'game' | 'asset';
|
|
151
|
+
score: number;
|
|
152
|
+
review?: string;
|
|
153
|
+
createdAt: number;
|
|
154
|
+
}
|
|
155
|
+
export interface RatingAggregate {
|
|
156
|
+
targetId: string;
|
|
157
|
+
average: number;
|
|
158
|
+
count: number;
|
|
159
|
+
distribution: [number, number, number, number, number];
|
|
160
|
+
}
|
|
161
|
+
export declare function computeRatingAggregate(ratings: Rating[]): RatingAggregate;
|
|
162
|
+
export type JamPhase = 'upcoming' | 'submission' | 'voting' | 'results' | 'archived';
|
|
163
|
+
export interface GameJam {
|
|
164
|
+
id: string;
|
|
165
|
+
title: string;
|
|
166
|
+
description: string;
|
|
167
|
+
theme?: string;
|
|
168
|
+
hostId: string;
|
|
169
|
+
startDate: number;
|
|
170
|
+
endDate: number;
|
|
171
|
+
votingEndDate: number;
|
|
172
|
+
phase: JamPhase;
|
|
173
|
+
rules: string;
|
|
174
|
+
prizes: JamPrize[];
|
|
175
|
+
categories: JamCategory[];
|
|
176
|
+
participants: number;
|
|
177
|
+
submissions: number;
|
|
178
|
+
maxTeamSize: number;
|
|
179
|
+
allowLateSubmission: boolean;
|
|
180
|
+
featured: boolean;
|
|
181
|
+
}
|
|
182
|
+
export interface JamPrize {
|
|
183
|
+
place: number;
|
|
184
|
+
description: string;
|
|
185
|
+
value?: string;
|
|
186
|
+
}
|
|
187
|
+
export interface JamCategory {
|
|
188
|
+
name: string;
|
|
189
|
+
description: string;
|
|
190
|
+
weight: number;
|
|
191
|
+
}
|
|
192
|
+
export interface JamSubmission {
|
|
193
|
+
id: string;
|
|
194
|
+
jamId: string;
|
|
195
|
+
gameId: string;
|
|
196
|
+
teamName: string;
|
|
197
|
+
teamMembers: string[];
|
|
198
|
+
submittedAt: number;
|
|
199
|
+
description: string;
|
|
200
|
+
scores: JamScore[];
|
|
201
|
+
rank?: number;
|
|
202
|
+
finalScore?: number;
|
|
203
|
+
}
|
|
204
|
+
export interface JamScore {
|
|
205
|
+
category: string;
|
|
206
|
+
score: number;
|
|
207
|
+
voterId: string;
|
|
208
|
+
}
|
|
209
|
+
export declare function computeJamPhase(jam: GameJam, now: number): JamPhase;
|
|
210
|
+
export declare function computeJamResults(submissions: JamSubmission[], categories: JamCategory[]): JamSubmission[];
|
|
211
|
+
export interface FeaturedCollection {
|
|
212
|
+
id: string;
|
|
213
|
+
title: string;
|
|
214
|
+
description: string;
|
|
215
|
+
gameIds: string[];
|
|
216
|
+
curatedBy: string;
|
|
217
|
+
createdAt: number;
|
|
218
|
+
displayOrder: number;
|
|
219
|
+
}
|
|
220
|
+
export interface DiscoveryFeed {
|
|
221
|
+
featured: FeaturedCollection[];
|
|
222
|
+
trending: string[];
|
|
223
|
+
newReleases: string[];
|
|
224
|
+
topRated: string[];
|
|
225
|
+
staffPicks: string[];
|
|
226
|
+
forYou: string[];
|
|
227
|
+
}
|
|
228
|
+
export interface GameRecommendation {
|
|
229
|
+
gameId: string;
|
|
230
|
+
score: number;
|
|
231
|
+
reason: 'similar-genre' | 'same-author' | 'played-similar' | 'trending' | 'friends-playing';
|
|
232
|
+
}
|
|
233
|
+
/** Simple content-based recommendation by genre/tag overlap. */
|
|
234
|
+
export declare function recommendGames(userPlayedGames: PublishedGame[], allGames: PublishedGame[], limit?: number): GameRecommendation[];
|
|
235
|
+
export type NotificationType = 'comment' | 'rating' | 'follow' | 'jam-start' | 'jam-result' | 'game-feature' | 'asset-review' | 'system' | 'achievement';
|
|
236
|
+
export interface UserNotification {
|
|
237
|
+
id: string;
|
|
238
|
+
userId: string;
|
|
239
|
+
type: NotificationType;
|
|
240
|
+
title: string;
|
|
241
|
+
message: string;
|
|
242
|
+
link?: string;
|
|
243
|
+
read: boolean;
|
|
244
|
+
createdAt: number;
|
|
245
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './Social';
|