@austencloud/backgrounds 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/css/backgrounds.css +63 -0
- package/css/index.css +8 -0
- package/dist/backgrounds/autumn-drift/domain/constants/autumn-constants.d.ts +145 -0
- package/dist/backgrounds/autumn-drift/domain/constants/autumn-constants.d.ts.map +1 -0
- package/dist/backgrounds/autumn-drift/domain/constants/autumn-constants.js +124 -0
- package/dist/backgrounds/autumn-drift/domain/constants/autumn-constants.js.map +1 -0
- package/dist/backgrounds/autumn-drift/domain/models/autumn-models.d.ts +39 -0
- package/dist/backgrounds/autumn-drift/domain/models/autumn-models.d.ts.map +1 -0
- package/dist/backgrounds/autumn-drift/domain/models/autumn-models.js +4 -0
- package/dist/backgrounds/autumn-drift/domain/models/autumn-models.js.map +1 -0
- package/dist/backgrounds/autumn-drift/services/AutumnDriftBackgroundSystem.d.ts +40 -0
- package/dist/backgrounds/autumn-drift/services/AutumnDriftBackgroundSystem.d.ts.map +1 -0
- package/dist/backgrounds/autumn-drift/services/AutumnDriftBackgroundSystem.js +136 -0
- package/dist/backgrounds/autumn-drift/services/AutumnDriftBackgroundSystem.js.map +1 -0
- package/dist/backgrounds/autumn-drift/services/LeafSystem.d.ts +11 -0
- package/dist/backgrounds/autumn-drift/services/LeafSystem.d.ts.map +1 -0
- package/dist/backgrounds/autumn-drift/services/LeafSystem.js +302 -0
- package/dist/backgrounds/autumn-drift/services/LeafSystem.js.map +1 -0
- package/dist/backgrounds/autumn-drift/services/WindSystem.d.ts +10 -0
- package/dist/backgrounds/autumn-drift/services/WindSystem.d.ts.map +1 -0
- package/dist/backgrounds/autumn-drift/services/WindSystem.js +100 -0
- package/dist/backgrounds/autumn-drift/services/WindSystem.js.map +1 -0
- package/dist/backgrounds/cherry-blossom/domain/constants/cherry-blossom-constants.d.ts +332 -0
- package/dist/backgrounds/cherry-blossom/domain/constants/cherry-blossom-constants.d.ts.map +1 -0
- package/dist/backgrounds/cherry-blossom/domain/constants/cherry-blossom-constants.js +315 -0
- package/dist/backgrounds/cherry-blossom/domain/constants/cherry-blossom-constants.js.map +1 -0
- package/dist/backgrounds/cherry-blossom/domain/constants/time-of-day-presets.d.ts +82 -0
- package/dist/backgrounds/cherry-blossom/domain/constants/time-of-day-presets.d.ts.map +1 -0
- package/dist/backgrounds/cherry-blossom/domain/constants/time-of-day-presets.js +153 -0
- package/dist/backgrounds/cherry-blossom/domain/constants/time-of-day-presets.js.map +1 -0
- package/dist/backgrounds/cherry-blossom/domain/models/cherry-blossom-models.d.ts +37 -0
- package/dist/backgrounds/cherry-blossom/domain/models/cherry-blossom-models.d.ts.map +1 -0
- package/dist/backgrounds/cherry-blossom/domain/models/cherry-blossom-models.js +5 -0
- package/dist/backgrounds/cherry-blossom/domain/models/cherry-blossom-models.js.map +1 -0
- package/dist/backgrounds/cherry-blossom/services/CherryBlossomBackgroundSystem.d.ts +100 -0
- package/dist/backgrounds/cherry-blossom/services/CherryBlossomBackgroundSystem.d.ts.map +1 -0
- package/dist/backgrounds/cherry-blossom/services/CherryBlossomBackgroundSystem.js +259 -0
- package/dist/backgrounds/cherry-blossom/services/CherryBlossomBackgroundSystem.js.map +1 -0
- package/dist/backgrounds/cherry-blossom/services/CherryBlossomPetalSystem.d.ts +17 -0
- package/dist/backgrounds/cherry-blossom/services/CherryBlossomPetalSystem.d.ts.map +1 -0
- package/dist/backgrounds/cherry-blossom/services/CherryBlossomPetalSystem.js +632 -0
- package/dist/backgrounds/cherry-blossom/services/CherryBlossomPetalSystem.js.map +1 -0
- package/dist/backgrounds/cherry-blossom/services/CherryBlossomWindSystem.d.ts +30 -0
- package/dist/backgrounds/cherry-blossom/services/CherryBlossomWindSystem.d.ts.map +1 -0
- package/dist/backgrounds/cherry-blossom/services/CherryBlossomWindSystem.js +139 -0
- package/dist/backgrounds/cherry-blossom/services/CherryBlossomWindSystem.js.map +1 -0
- package/dist/backgrounds/cherry-blossom/services/environment/CherryStarSystem.d.ts +30 -0
- package/dist/backgrounds/cherry-blossom/services/environment/CherryStarSystem.d.ts.map +1 -0
- package/dist/backgrounds/cherry-blossom/services/environment/CherryStarSystem.js +141 -0
- package/dist/backgrounds/cherry-blossom/services/environment/CherryStarSystem.js.map +1 -0
- package/dist/backgrounds/cherry-blossom/services/environment/LanternSystem.d.ts +22 -0
- package/dist/backgrounds/cherry-blossom/services/environment/LanternSystem.d.ts.map +1 -0
- package/dist/backgrounds/cherry-blossom/services/environment/LanternSystem.js +172 -0
- package/dist/backgrounds/cherry-blossom/services/environment/LanternSystem.js.map +1 -0
- package/dist/backgrounds/cherry-blossom/services/environment/TreeSilhouetteSystem.d.ts +26 -0
- package/dist/backgrounds/cherry-blossom/services/environment/TreeSilhouetteSystem.d.ts.map +1 -0
- package/dist/backgrounds/cherry-blossom/services/environment/TreeSilhouetteSystem.js +144 -0
- package/dist/backgrounds/cherry-blossom/services/environment/TreeSilhouetteSystem.js.map +1 -0
- package/dist/backgrounds/deep-ocean/domain/constants/fish-constants.d.ts +338 -0
- package/dist/backgrounds/deep-ocean/domain/constants/fish-constants.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/domain/constants/fish-constants.js +473 -0
- package/dist/backgrounds/deep-ocean/domain/constants/fish-constants.js.map +1 -0
- package/dist/backgrounds/deep-ocean/domain/debug-config.d.ts +22 -0
- package/dist/backgrounds/deep-ocean/domain/debug-config.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/domain/debug-config.js +26 -0
- package/dist/backgrounds/deep-ocean/domain/debug-config.js.map +1 -0
- package/dist/backgrounds/deep-ocean/domain/models/DeepOceanModels.d.ts +518 -0
- package/dist/backgrounds/deep-ocean/domain/models/DeepOceanModels.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/domain/models/DeepOceanModels.js +36 -0
- package/dist/backgrounds/deep-ocean/domain/models/DeepOceanModels.js.map +1 -0
- package/dist/backgrounds/deep-ocean/domain/types/fish-personality-types.d.ts +124 -0
- package/dist/backgrounds/deep-ocean/domain/types/fish-personality-types.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/domain/types/fish-personality-types.js +8 -0
- package/dist/backgrounds/deep-ocean/domain/types/fish-personality-types.js.map +1 -0
- package/dist/backgrounds/deep-ocean/physics/BodyOutlineCalculator.d.ts +47 -0
- package/dist/backgrounds/deep-ocean/physics/BodyOutlineCalculator.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/physics/BodyOutlineCalculator.js +125 -0
- package/dist/backgrounds/deep-ocean/physics/BodyOutlineCalculator.js.map +1 -0
- package/dist/backgrounds/deep-ocean/physics/SpineChain.d.ts +97 -0
- package/dist/backgrounds/deep-ocean/physics/SpineChain.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/physics/SpineChain.js +215 -0
- package/dist/backgrounds/deep-ocean/physics/SpineChain.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/DeepOceanBackgroundOrchestrator.d.ts +94 -0
- package/dist/backgrounds/deep-ocean/services/DeepOceanBackgroundOrchestrator.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/DeepOceanBackgroundOrchestrator.js +273 -0
- package/dist/backgrounds/deep-ocean/services/DeepOceanBackgroundOrchestrator.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/DeepOceanServiceFactory.d.ts +43 -0
- package/dist/backgrounds/deep-ocean/services/DeepOceanServiceFactory.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/DeepOceanServiceFactory.js +88 -0
- package/dist/backgrounds/deep-ocean/services/DeepOceanServiceFactory.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IBubblePhysics.d.ts +24 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IBubblePhysics.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IBubblePhysics.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IBubblePhysics.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IBubbleRenderer.d.ts +11 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IBubbleRenderer.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IBubbleRenderer.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IBubbleRenderer.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IColorCalculator.d.ts +46 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IColorCalculator.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IColorCalculator.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IColorCalculator.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishAnimator.d.ts +60 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishAnimator.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishAnimator.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishAnimator.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishBodyRenderer.d.ts +21 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishBodyRenderer.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishBodyRenderer.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishBodyRenderer.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishDecisionMaker.d.ts +61 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishDecisionMaker.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishDecisionMaker.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishDecisionMaker.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishEffectRenderer.d.ts +34 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishEffectRenderer.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishEffectRenderer.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishEffectRenderer.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishFaceRenderer.d.ts +24 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishFaceRenderer.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishFaceRenderer.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishFaceRenderer.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishFactory.d.ts +21 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishFactory.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishFactory.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishFactory.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishFinRenderer.d.ts +35 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishFinRenderer.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishFinRenderer.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishFinRenderer.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishFlockingCalculator.d.ts +18 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishFlockingCalculator.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishFlockingCalculator.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishFlockingCalculator.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishHomeZoneHandler.d.ts +38 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishHomeZoneHandler.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishHomeZoneHandler.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishHomeZoneHandler.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishHuntingHandler.d.ts +101 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishHuntingHandler.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishHuntingHandler.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishHuntingHandler.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishInteractionHandler.d.ts +55 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishInteractionHandler.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishInteractionHandler.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishInteractionHandler.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishMoodManager.d.ts +44 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishMoodManager.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishMoodManager.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishMoodManager.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishMovementController.d.ts +31 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishMovementController.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishMovementController.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishMovementController.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishPatternRenderer.d.ts +23 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishPatternRenderer.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishPatternRenderer.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishPatternRenderer.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishPersonalityGenerator.d.ts +31 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishPersonalityGenerator.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishPersonalityGenerator.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishPersonalityGenerator.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishPropulsionCalculator.d.ts +33 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishPropulsionCalculator.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishPropulsionCalculator.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishPropulsionCalculator.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishRareBehaviorHandler.d.ts +55 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishRareBehaviorHandler.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishRareBehaviorHandler.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishRareBehaviorHandler.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishRenderer.d.ts +11 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishRenderer.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishRenderer.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishRenderer.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishSpineController.d.ts +40 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishSpineController.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishSpineController.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishSpineController.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishSpriteManager.d.ts +40 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishSpriteManager.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishSpriteManager.js +7 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishSpriteManager.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishVisualUpdater.d.ts +22 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishVisualUpdater.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishVisualUpdater.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishVisualUpdater.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishWobbleAnimator.d.ts +36 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishWobbleAnimator.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishWobbleAnimator.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IFishWobbleAnimator.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IGradientRenderer.d.ts +20 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IGradientRenderer.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IGradientRenderer.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IGradientRenderer.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IJellyfishAnimator.d.ts +24 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IJellyfishAnimator.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IJellyfishAnimator.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IJellyfishAnimator.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IJellyfishRenderer.d.ts +11 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IJellyfishRenderer.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IJellyfishRenderer.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IJellyfishRenderer.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/ILightRayCalculator.d.ts +32 -0
- package/dist/backgrounds/deep-ocean/services/contracts/ILightRayCalculator.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/ILightRayCalculator.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/ILightRayCalculator.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/ILightRayRenderer.d.ts +16 -0
- package/dist/backgrounds/deep-ocean/services/contracts/ILightRayRenderer.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/ILightRayRenderer.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/ILightRayRenderer.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IParticleRenderer.d.ts +11 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IParticleRenderer.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IParticleRenderer.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IParticleRenderer.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IParticleSystem.d.ts +28 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IParticleSystem.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IParticleSystem.js +2 -0
- package/dist/backgrounds/deep-ocean/services/contracts/IParticleSystem.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/BubblePhysics.d.ts +22 -0
- package/dist/backgrounds/deep-ocean/services/implementations/BubblePhysics.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/BubblePhysics.js +303 -0
- package/dist/backgrounds/deep-ocean/services/implementations/BubblePhysics.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/BubbleRenderer.d.ts +43 -0
- package/dist/backgrounds/deep-ocean/services/implementations/BubbleRenderer.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/BubbleRenderer.js +218 -0
- package/dist/backgrounds/deep-ocean/services/implementations/BubbleRenderer.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/ColorCalculator.d.ts +17 -0
- package/dist/backgrounds/deep-ocean/services/implementations/ColorCalculator.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/ColorCalculator.js +96 -0
- package/dist/backgrounds/deep-ocean/services/implementations/ColorCalculator.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/DeepOceanPerformanceMonitor.d.ts +47 -0
- package/dist/backgrounds/deep-ocean/services/implementations/DeepOceanPerformanceMonitor.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/DeepOceanPerformanceMonitor.js +132 -0
- package/dist/backgrounds/deep-ocean/services/implementations/DeepOceanPerformanceMonitor.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishAnimator.d.ts +76 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishAnimator.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishAnimator.js +293 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishAnimator.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishBodyRenderer.d.ts +27 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishBodyRenderer.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishBodyRenderer.js +152 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishBodyRenderer.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishDecisionMaker.d.ts +54 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishDecisionMaker.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishDecisionMaker.js +358 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishDecisionMaker.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishEffectRenderer.d.ts +26 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishEffectRenderer.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishEffectRenderer.js +184 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishEffectRenderer.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishFaceRenderer.d.ts +17 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishFaceRenderer.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishFaceRenderer.js +184 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishFaceRenderer.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishFactory.d.ts +25 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishFactory.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishFactory.js +436 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishFactory.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishFinRenderer.d.ts +19 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishFinRenderer.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishFinRenderer.js +224 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishFinRenderer.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishFlockingCalculator.d.ts +20 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishFlockingCalculator.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishFlockingCalculator.js +159 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishFlockingCalculator.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishHomeZoneHandler.d.ts +22 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishHomeZoneHandler.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishHomeZoneHandler.js +88 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishHomeZoneHandler.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishHuntingHandler.d.ts +43 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishHuntingHandler.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishHuntingHandler.js +340 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishHuntingHandler.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishInteractionHandler.d.ts +32 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishInteractionHandler.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishInteractionHandler.js +272 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishInteractionHandler.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishMoodManager.d.ts +25 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishMoodManager.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishMoodManager.js +241 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishMoodManager.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishMovementController.d.ts +50 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishMovementController.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishMovementController.js +319 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishMovementController.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishPatternRenderer.d.ts +59 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishPatternRenderer.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishPatternRenderer.js +472 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishPatternRenderer.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishPersonalityGenerator.d.ts +16 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishPersonalityGenerator.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishPersonalityGenerator.js +110 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishPersonalityGenerator.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishPropulsionCalculator.d.ts +29 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishPropulsionCalculator.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishPropulsionCalculator.js +109 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishPropulsionCalculator.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishRareBehaviorHandler.d.ts +30 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishRareBehaviorHandler.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishRareBehaviorHandler.js +254 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishRareBehaviorHandler.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishRenderer.d.ts +50 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishRenderer.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishRenderer.js +288 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishRenderer.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishRendererLegacy.d.ts +27 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishRendererLegacy.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishRendererLegacy.js +574 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishRendererLegacy.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishSpineController.d.ts +31 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishSpineController.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishSpineController.js +165 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishSpineController.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishSpriteManager.d.ts +23 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishSpriteManager.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishSpriteManager.js +161 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishSpriteManager.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishVisualUpdater.d.ts +20 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishVisualUpdater.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishVisualUpdater.js +185 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishVisualUpdater.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishWobbleAnimator.d.ts +16 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishWobbleAnimator.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishWobbleAnimator.js +274 -0
- package/dist/backgrounds/deep-ocean/services/implementations/FishWobbleAnimator.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/GradientRenderer.d.ts +31 -0
- package/dist/backgrounds/deep-ocean/services/implementations/GradientRenderer.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/GradientRenderer.js +208 -0
- package/dist/backgrounds/deep-ocean/services/implementations/GradientRenderer.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/JellyfishAnimator.d.ts +38 -0
- package/dist/backgrounds/deep-ocean/services/implementations/JellyfishAnimator.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/JellyfishAnimator.js +411 -0
- package/dist/backgrounds/deep-ocean/services/implementations/JellyfishAnimator.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/JellyfishRenderer.d.ts +84 -0
- package/dist/backgrounds/deep-ocean/services/implementations/JellyfishRenderer.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/JellyfishRenderer.js +521 -0
- package/dist/backgrounds/deep-ocean/services/implementations/JellyfishRenderer.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/LightRayCalculator.d.ts +16 -0
- package/dist/backgrounds/deep-ocean/services/implementations/LightRayCalculator.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/LightRayCalculator.js +217 -0
- package/dist/backgrounds/deep-ocean/services/implementations/LightRayCalculator.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/LightRayRenderer.d.ts +41 -0
- package/dist/backgrounds/deep-ocean/services/implementations/LightRayRenderer.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/LightRayRenderer.js +216 -0
- package/dist/backgrounds/deep-ocean/services/implementations/LightRayRenderer.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/ParticleRenderer.d.ts +6 -0
- package/dist/backgrounds/deep-ocean/services/implementations/ParticleRenderer.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/ParticleRenderer.js +14 -0
- package/dist/backgrounds/deep-ocean/services/implementations/ParticleRenderer.js.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/ParticleSystem.d.ts +11 -0
- package/dist/backgrounds/deep-ocean/services/implementations/ParticleSystem.d.ts.map +1 -0
- package/dist/backgrounds/deep-ocean/services/implementations/ParticleSystem.js +66 -0
- package/dist/backgrounds/deep-ocean/services/implementations/ParticleSystem.js.map +1 -0
- package/dist/backgrounds/ember-glow/domain/constants/ember-constants.d.ts +206 -0
- package/dist/backgrounds/ember-glow/domain/constants/ember-constants.d.ts.map +1 -0
- package/dist/backgrounds/ember-glow/domain/constants/ember-constants.js +251 -0
- package/dist/backgrounds/ember-glow/domain/constants/ember-constants.js.map +1 -0
- package/dist/backgrounds/ember-glow/domain/models/ember-models.d.ts +108 -0
- package/dist/backgrounds/ember-glow/domain/models/ember-models.d.ts.map +1 -0
- package/dist/backgrounds/ember-glow/domain/models/ember-models.js +5 -0
- package/dist/backgrounds/ember-glow/domain/models/ember-models.js.map +1 -0
- package/dist/backgrounds/ember-glow/services/EmberGlowBackgroundSystem.d.ts +71 -0
- package/dist/backgrounds/ember-glow/services/EmberGlowBackgroundSystem.d.ts.map +1 -0
- package/dist/backgrounds/ember-glow/services/EmberGlowBackgroundSystem.js +325 -0
- package/dist/backgrounds/ember-glow/services/EmberGlowBackgroundSystem.js.map +1 -0
- package/dist/backgrounds/ember-glow/services/coal-bed-system.d.ts +49 -0
- package/dist/backgrounds/ember-glow/services/coal-bed-system.d.ts.map +1 -0
- package/dist/backgrounds/ember-glow/services/coal-bed-system.js +191 -0
- package/dist/backgrounds/ember-glow/services/coal-bed-system.js.map +1 -0
- package/dist/backgrounds/ember-glow/services/ember-system.d.ts +85 -0
- package/dist/backgrounds/ember-glow/services/ember-system.d.ts.map +1 -0
- package/dist/backgrounds/ember-glow/services/ember-system.js +438 -0
- package/dist/backgrounds/ember-glow/services/ember-system.js.map +1 -0
- package/dist/backgrounds/ember-glow/services/smoke-system.d.ts +41 -0
- package/dist/backgrounds/ember-glow/services/smoke-system.d.ts.map +1 -0
- package/dist/backgrounds/ember-glow/services/smoke-system.js +181 -0
- package/dist/backgrounds/ember-glow/services/smoke-system.js.map +1 -0
- package/dist/backgrounds/ember-glow/services/spark-system.d.ts +47 -0
- package/dist/backgrounds/ember-glow/services/spark-system.d.ts.map +1 -0
- package/dist/backgrounds/ember-glow/services/spark-system.js +261 -0
- package/dist/backgrounds/ember-glow/services/spark-system.js.map +1 -0
- package/dist/backgrounds/firefly-forest/domain/constants/firefly-constants.d.ts +130 -0
- package/dist/backgrounds/firefly-forest/domain/constants/firefly-constants.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/domain/constants/firefly-constants.js +140 -0
- package/dist/backgrounds/firefly-forest/domain/constants/firefly-constants.js.map +1 -0
- package/dist/backgrounds/firefly-forest/domain/constants/tree-silhouette-constants.d.ts +44 -0
- package/dist/backgrounds/firefly-forest/domain/constants/tree-silhouette-constants.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/domain/constants/tree-silhouette-constants.js +295 -0
- package/dist/backgrounds/firefly-forest/domain/constants/tree-silhouette-constants.js.map +1 -0
- package/dist/backgrounds/firefly-forest/domain/models/firefly-models.d.ts +22 -0
- package/dist/backgrounds/firefly-forest/domain/models/firefly-models.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/domain/models/firefly-models.js +2 -0
- package/dist/backgrounds/firefly-forest/domain/models/firefly-models.js.map +1 -0
- package/dist/backgrounds/firefly-forest/domain/models/tree-silhouette-models.d.ts +115 -0
- package/dist/backgrounds/firefly-forest/domain/models/tree-silhouette-models.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/domain/models/tree-silhouette-models.js +7 -0
- package/dist/backgrounds/firefly-forest/domain/models/tree-silhouette-models.js.map +1 -0
- package/dist/backgrounds/firefly-forest/services/AmbientParticleSystem.d.ts +23 -0
- package/dist/backgrounds/firefly-forest/services/AmbientParticleSystem.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/services/AmbientParticleSystem.js +208 -0
- package/dist/backgrounds/firefly-forest/services/AmbientParticleSystem.js.map +1 -0
- package/dist/backgrounds/firefly-forest/services/CampfireSystem.d.ts +24 -0
- package/dist/backgrounds/firefly-forest/services/CampfireSystem.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/services/CampfireSystem.js +287 -0
- package/dist/backgrounds/firefly-forest/services/CampfireSystem.js.map +1 -0
- package/dist/backgrounds/firefly-forest/services/FireflyForestBackgroundSystem.d.ts +146 -0
- package/dist/backgrounds/firefly-forest/services/FireflyForestBackgroundSystem.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/services/FireflyForestBackgroundSystem.js +660 -0
- package/dist/backgrounds/firefly-forest/services/FireflyForestBackgroundSystem.js.map +1 -0
- package/dist/backgrounds/firefly-forest/services/FireflySystem.d.ts +15 -0
- package/dist/backgrounds/firefly-forest/services/FireflySystem.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/services/FireflySystem.js +303 -0
- package/dist/backgrounds/firefly-forest/services/FireflySystem.js.map +1 -0
- package/dist/backgrounds/firefly-forest/services/ProceduralForestSystem.d.ts +251 -0
- package/dist/backgrounds/firefly-forest/services/ProceduralForestSystem.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/services/ProceduralForestSystem.js +486 -0
- package/dist/backgrounds/firefly-forest/services/ProceduralForestSystem.js.map +1 -0
- package/dist/backgrounds/firefly-forest/services/TreeSilhouetteImageLoader.d.ts +31 -0
- package/dist/backgrounds/firefly-forest/services/TreeSilhouetteImageLoader.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/services/TreeSilhouetteImageLoader.js +191 -0
- package/dist/backgrounds/firefly-forest/services/TreeSilhouetteImageLoader.js.map +1 -0
- package/dist/backgrounds/firefly-forest/services/TreeSilhouetteSystem.d.ts +47 -0
- package/dist/backgrounds/firefly-forest/services/TreeSilhouetteSystem.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/services/TreeSilhouetteSystem.js +241 -0
- package/dist/backgrounds/firefly-forest/services/TreeSilhouetteSystem.js.map +1 -0
- package/dist/backgrounds/firefly-forest/services/ambient/EasterEggSystem.d.ts +155 -0
- package/dist/backgrounds/firefly-forest/services/ambient/EasterEggSystem.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/services/ambient/EasterEggSystem.js +339 -0
- package/dist/backgrounds/firefly-forest/services/ambient/EasterEggSystem.js.map +1 -0
- package/dist/backgrounds/firefly-forest/services/animation/WindAnimator.d.ts +93 -0
- package/dist/backgrounds/firefly-forest/services/animation/WindAnimator.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/services/animation/WindAnimator.js +263 -0
- package/dist/backgrounds/firefly-forest/services/animation/WindAnimator.js.map +1 -0
- package/dist/backgrounds/firefly-forest/services/atmosphere/AtmosphericFogSystem.d.ts +135 -0
- package/dist/backgrounds/firefly-forest/services/atmosphere/AtmosphericFogSystem.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/services/atmosphere/AtmosphericFogSystem.js +286 -0
- package/dist/backgrounds/firefly-forest/services/atmosphere/AtmosphericFogSystem.js.map +1 -0
- package/dist/backgrounds/firefly-forest/services/composition/ParallaxForestComposer.d.ts +116 -0
- package/dist/backgrounds/firefly-forest/services/composition/ParallaxForestComposer.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/services/composition/ParallaxForestComposer.js +299 -0
- package/dist/backgrounds/firefly-forest/services/composition/ParallaxForestComposer.js.map +1 -0
- package/dist/backgrounds/firefly-forest/services/ground/GroundLayerSystem.d.ts +112 -0
- package/dist/backgrounds/firefly-forest/services/ground/GroundLayerSystem.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/services/ground/GroundLayerSystem.js +303 -0
- package/dist/backgrounds/firefly-forest/services/ground/GroundLayerSystem.js.map +1 -0
- package/dist/backgrounds/firefly-forest/services/noise/PerlinNoise.d.ts +44 -0
- package/dist/backgrounds/firefly-forest/services/noise/PerlinNoise.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/services/noise/PerlinNoise.js +143 -0
- package/dist/backgrounds/firefly-forest/services/noise/PerlinNoise.js.map +1 -0
- package/dist/backgrounds/firefly-forest/services/rendering/ForestCanvasRenderer.d.ts +50 -0
- package/dist/backgrounds/firefly-forest/services/rendering/ForestCanvasRenderer.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/services/rendering/ForestCanvasRenderer.js +396 -0
- package/dist/backgrounds/firefly-forest/services/rendering/ForestCanvasRenderer.js.map +1 -0
- package/dist/backgrounds/firefly-forest/services/trees/BareTree.d.ts +63 -0
- package/dist/backgrounds/firefly-forest/services/trees/BareTree.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/services/trees/BareTree.js +215 -0
- package/dist/backgrounds/firefly-forest/services/trees/BareTree.js.map +1 -0
- package/dist/backgrounds/firefly-forest/services/trees/EcologicalPatternProvider.d.ts +34 -0
- package/dist/backgrounds/firefly-forest/services/trees/EcologicalPatternProvider.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/services/trees/EcologicalPatternProvider.js +89 -0
- package/dist/backgrounds/firefly-forest/services/trees/EcologicalPatternProvider.js.map +1 -0
- package/dist/backgrounds/firefly-forest/services/trees/FoliageNoiseGenerator.d.ts +74 -0
- package/dist/backgrounds/firefly-forest/services/trees/FoliageNoiseGenerator.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/services/trees/FoliageNoiseGenerator.js +274 -0
- package/dist/backgrounds/firefly-forest/services/trees/FoliageNoiseGenerator.js.map +1 -0
- package/dist/backgrounds/firefly-forest/services/trees/SpaceColonizationTree.d.ts +75 -0
- package/dist/backgrounds/firefly-forest/services/trees/SpaceColonizationTree.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/services/trees/SpaceColonizationTree.js +290 -0
- package/dist/backgrounds/firefly-forest/services/trees/SpaceColonizationTree.js.map +1 -0
- package/dist/backgrounds/firefly-forest/services/trees/StochasticConiferTree.d.ts +78 -0
- package/dist/backgrounds/firefly-forest/services/trees/StochasticConiferTree.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/services/trees/StochasticConiferTree.js +273 -0
- package/dist/backgrounds/firefly-forest/services/trees/StochasticConiferTree.js.map +1 -0
- package/dist/backgrounds/firefly-forest/services/trees/TreeGenerator.d.ts +25 -0
- package/dist/backgrounds/firefly-forest/services/trees/TreeGenerator.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/services/trees/TreeGenerator.js +136 -0
- package/dist/backgrounds/firefly-forest/services/trees/TreeGenerator.js.map +1 -0
- package/dist/backgrounds/firefly-forest/services/trees/TreePlacementResolver.d.ts +31 -0
- package/dist/backgrounds/firefly-forest/services/trees/TreePlacementResolver.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/services/trees/TreePlacementResolver.js +136 -0
- package/dist/backgrounds/firefly-forest/services/trees/TreePlacementResolver.js.map +1 -0
- package/dist/backgrounds/firefly-forest/services/trees/TreeSilhouetteRenderer.d.ts +34 -0
- package/dist/backgrounds/firefly-forest/services/trees/TreeSilhouetteRenderer.d.ts.map +1 -0
- package/dist/backgrounds/firefly-forest/services/trees/TreeSilhouetteRenderer.js +111 -0
- package/dist/backgrounds/firefly-forest/services/trees/TreeSilhouetteRenderer.js.map +1 -0
- package/dist/backgrounds/night-sky/constants.d.ts +271 -0
- package/dist/backgrounds/night-sky/constants.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/constants.js +233 -0
- package/dist/backgrounds/night-sky/constants.js.map +1 -0
- package/dist/backgrounds/night-sky/domain/constants/night-sky-constants.d.ts +245 -0
- package/dist/backgrounds/night-sky/domain/constants/night-sky-constants.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/domain/constants/night-sky-constants.js +273 -0
- package/dist/backgrounds/night-sky/domain/constants/night-sky-constants.js.map +1 -0
- package/dist/backgrounds/night-sky/domain/models/NightSkyConfigModels.d.ts +11 -0
- package/dist/backgrounds/night-sky/domain/models/NightSkyConfigModels.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/domain/models/NightSkyConfigModels.js +3 -0
- package/dist/backgrounds/night-sky/domain/models/NightSkyConfigModels.js.map +1 -0
- package/dist/backgrounds/night-sky/domain/models/night-sky-models.d.ts +277 -0
- package/dist/backgrounds/night-sky/domain/models/night-sky-models.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/domain/models/night-sky-models.js +3 -0
- package/dist/backgrounds/night-sky/domain/models/night-sky-models.js.map +1 -0
- package/dist/backgrounds/night-sky/domain/types/night-sky-types.d.ts +11 -0
- package/dist/backgrounds/night-sky/domain/types/night-sky-types.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/domain/types/night-sky-types.js +3 -0
- package/dist/backgrounds/night-sky/domain/types/night-sky-types.js.map +1 -0
- package/dist/backgrounds/night-sky/services/AuroraSystem.d.ts +28 -0
- package/dist/backgrounds/night-sky/services/AuroraSystem.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/AuroraSystem.js +236 -0
- package/dist/backgrounds/night-sky/services/AuroraSystem.js.map +1 -0
- package/dist/backgrounds/night-sky/services/CometSystem.d.ts +82 -0
- package/dist/backgrounds/night-sky/services/CometSystem.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/CometSystem.js +375 -0
- package/dist/backgrounds/night-sky/services/CometSystem.js.map +1 -0
- package/dist/backgrounds/night-sky/services/ConstellationSystem.d.ts +20 -0
- package/dist/backgrounds/night-sky/services/ConstellationSystem.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/ConstellationSystem.js +69 -0
- package/dist/backgrounds/night-sky/services/ConstellationSystem.js.map +1 -0
- package/dist/backgrounds/night-sky/services/MilkyWayParticleSystem.d.ts +37 -0
- package/dist/backgrounds/night-sky/services/MilkyWayParticleSystem.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/MilkyWayParticleSystem.js +279 -0
- package/dist/backgrounds/night-sky/services/MilkyWayParticleSystem.js.map +1 -0
- package/dist/backgrounds/night-sky/services/MilkyWaySystem.d.ts +118 -0
- package/dist/backgrounds/night-sky/services/MilkyWaySystem.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/MilkyWaySystem.js +458 -0
- package/dist/backgrounds/night-sky/services/MilkyWaySystem.js.map +1 -0
- package/dist/backgrounds/night-sky/services/NebulaSystem.d.ts +63 -0
- package/dist/backgrounds/night-sky/services/NebulaSystem.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/NebulaSystem.js +358 -0
- package/dist/backgrounds/night-sky/services/NebulaSystem.js.map +1 -0
- package/dist/backgrounds/night-sky/services/NightSkyBackgroundSystem.d.ts +152 -0
- package/dist/backgrounds/night-sky/services/NightSkyBackgroundSystem.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/NightSkyBackgroundSystem.js +451 -0
- package/dist/backgrounds/night-sky/services/NightSkyBackgroundSystem.js.map +1 -0
- package/dist/backgrounds/night-sky/services/NightSkyServiceFactory.d.ts +44 -0
- package/dist/backgrounds/night-sky/services/NightSkyServiceFactory.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/NightSkyServiceFactory.js +63 -0
- package/dist/backgrounds/night-sky/services/NightSkyServiceFactory.js.map +1 -0
- package/dist/backgrounds/night-sky/services/ParallaxStarSystem.d.ts +73 -0
- package/dist/backgrounds/night-sky/services/ParallaxStarSystem.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/ParallaxStarSystem.js +446 -0
- package/dist/backgrounds/night-sky/services/ParallaxStarSystem.js.map +1 -0
- package/dist/backgrounds/night-sky/services/ProceduralNebulaSystem.d.ts +27 -0
- package/dist/backgrounds/night-sky/services/ProceduralNebulaSystem.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/ProceduralNebulaSystem.js +220 -0
- package/dist/backgrounds/night-sky/services/ProceduralNebulaSystem.js.map +1 -0
- package/dist/backgrounds/night-sky/services/SpaceshipSystem.d.ts +18 -0
- package/dist/backgrounds/night-sky/services/SpaceshipSystem.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/SpaceshipSystem.js +71 -0
- package/dist/backgrounds/night-sky/services/SpaceshipSystem.js.map +1 -0
- package/dist/backgrounds/night-sky/services/UFOSystem.d.ts +229 -0
- package/dist/backgrounds/night-sky/services/UFOSystem.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/UFOSystem.js +949 -0
- package/dist/backgrounds/night-sky/services/UFOSystem.js.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/INightSkyCalculationService.d.ts +40 -0
- package/dist/backgrounds/night-sky/services/contracts/INightSkyCalculationService.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/INightSkyCalculationService.js +2 -0
- package/dist/backgrounds/night-sky/services/contracts/INightSkyCalculationService.js.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOBehavior.d.ts +17 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOBehavior.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOBehavior.js +8 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOBehavior.js.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOBehaviorRunner.d.ts +65 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOBehaviorRunner.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOBehaviorRunner.js +8 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOBehaviorRunner.js.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFODecisionMaker.d.ts +42 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFODecisionMaker.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFODecisionMaker.js +5 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFODecisionMaker.js.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOEntranceAnimator.d.ts +35 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOEntranceAnimator.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOEntranceAnimator.js +8 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOEntranceAnimator.js.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOExitAnimator.d.ts +36 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOExitAnimator.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOExitAnimator.js +8 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOExitAnimator.js.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOFactory.d.ts +18 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOFactory.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOFactory.js +5 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOFactory.js.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOInteractionHandler.d.ts +41 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOInteractionHandler.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOInteractionHandler.js +8 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOInteractionHandler.js.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOMoodManager.d.ts +39 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOMoodManager.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOMoodManager.js +8 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOMoodManager.js.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOMovementController.d.ts +54 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOMovementController.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOMovementController.js +5 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOMovementController.js.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOParticleRenderer.d.ts +43 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOParticleRenderer.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOParticleRenderer.js +9 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOParticleRenderer.js.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFORenderer.d.ts +43 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFORenderer.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFORenderer.js +8 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFORenderer.js.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOStarScanner.d.ts +31 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOStarScanner.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOStarScanner.js +9 -0
- package/dist/backgrounds/night-sky/services/contracts/IUFOStarScanner.js.map +1 -0
- package/dist/backgrounds/night-sky/services/domain/ufo-types.d.ts +240 -0
- package/dist/backgrounds/night-sky/services/domain/ufo-types.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/domain/ufo-types.js +8 -0
- package/dist/backgrounds/night-sky/services/domain/ufo-types.js.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/NightSkyCalculationService.d.ts +56 -0
- package/dist/backgrounds/night-sky/services/implementations/NightSkyCalculationService.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/NightSkyCalculationService.js +188 -0
- package/dist/backgrounds/night-sky/services/implementations/NightSkyCalculationService.js.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOBehaviorRunner.d.ts +47 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOBehaviorRunner.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOBehaviorRunner.js +118 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOBehaviorRunner.js.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/UFODecisionMaker.d.ts +12 -0
- package/dist/backgrounds/night-sky/services/implementations/UFODecisionMaker.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/UFODecisionMaker.js +58 -0
- package/dist/backgrounds/night-sky/services/implementations/UFODecisionMaker.js.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOEntranceAnimator.d.ts +11 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOEntranceAnimator.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOEntranceAnimator.js +70 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOEntranceAnimator.js.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOExitAnimator.d.ts +11 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOExitAnimator.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOExitAnimator.js +74 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOExitAnimator.js.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOFactory.d.ts +18 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOFactory.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOFactory.js +174 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOFactory.js.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOInteractionHandler.d.ts +28 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOInteractionHandler.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOInteractionHandler.js +137 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOInteractionHandler.js.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOMoodManager.d.ts +18 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOMoodManager.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOMoodManager.js +179 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOMoodManager.js.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOMovementController.d.ts +25 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOMovementController.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOMovementController.js +172 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOMovementController.js.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOParticleRenderer.d.ts +20 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOParticleRenderer.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOParticleRenderer.js +193 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOParticleRenderer.js.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/UFORenderer.d.ts +24 -0
- package/dist/backgrounds/night-sky/services/implementations/UFORenderer.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/UFORenderer.js +215 -0
- package/dist/backgrounds/night-sky/services/implementations/UFORenderer.js.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOStarScanner.d.ts +16 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOStarScanner.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOStarScanner.js +92 -0
- package/dist/backgrounds/night-sky/services/implementations/UFOStarScanner.js.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/CelebratingBehavior.d.ts +18 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/CelebratingBehavior.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/CelebratingBehavior.js +83 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/CelebratingBehavior.js.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/ChasingBehavior.d.ts +14 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/ChasingBehavior.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/ChasingBehavior.js +94 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/ChasingBehavior.js.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/CommunicatingBehavior.d.ts +18 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/CommunicatingBehavior.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/CommunicatingBehavior.js +126 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/CommunicatingBehavior.js.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/FollowingBehavior.d.ts +18 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/FollowingBehavior.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/FollowingBehavior.js +128 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/FollowingBehavior.js.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/GivingUpBehavior.d.ts +14 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/GivingUpBehavior.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/GivingUpBehavior.js +47 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/GivingUpBehavior.js.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/GroundInvestigationBehavior.d.ts +19 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/GroundInvestigationBehavior.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/GroundInvestigationBehavior.js +146 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/GroundInvestigationBehavior.js.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/NappingBehavior.d.ts +19 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/NappingBehavior.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/NappingBehavior.js +127 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/NappingBehavior.js.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/PanickingBehavior.d.ts +18 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/PanickingBehavior.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/PanickingBehavior.js +100 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/PanickingBehavior.js.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/PeekabooBehavior.d.ts +18 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/PeekabooBehavior.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/PeekabooBehavior.js +116 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/PeekabooBehavior.js.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/PhotographingBehavior.d.ts +18 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/PhotographingBehavior.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/PhotographingBehavior.js +101 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/PhotographingBehavior.js.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/SampleCollectionBehavior.d.ts +18 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/SampleCollectionBehavior.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/SampleCollectionBehavior.js +113 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/SampleCollectionBehavior.js.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/SurfingBehavior.d.ts +18 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/SurfingBehavior.d.ts.map +1 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/SurfingBehavior.js +123 -0
- package/dist/backgrounds/night-sky/services/implementations/behaviors/SurfingBehavior.js.map +1 -0
- package/dist/backgrounds/rainbow/domain/constants/rainbow-constants.d.ts +79 -0
- package/dist/backgrounds/rainbow/domain/constants/rainbow-constants.d.ts.map +1 -0
- package/dist/backgrounds/rainbow/domain/constants/rainbow-constants.js +203 -0
- package/dist/backgrounds/rainbow/domain/constants/rainbow-constants.js.map +1 -0
- package/dist/backgrounds/rainbow/domain/models/rainbow-models.d.ts +158 -0
- package/dist/backgrounds/rainbow/domain/models/rainbow-models.d.ts.map +1 -0
- package/dist/backgrounds/rainbow/domain/models/rainbow-models.js +2 -0
- package/dist/backgrounds/rainbow/domain/models/rainbow-models.js.map +1 -0
- package/dist/backgrounds/rainbow/services/PrideHeartsSystem.d.ts +46 -0
- package/dist/backgrounds/rainbow/services/PrideHeartsSystem.d.ts.map +1 -0
- package/dist/backgrounds/rainbow/services/PrideHeartsSystem.js +138 -0
- package/dist/backgrounds/rainbow/services/PrideHeartsSystem.js.map +1 -0
- package/dist/backgrounds/rainbow/services/RainbowBackgroundSystem.d.ts +91 -0
- package/dist/backgrounds/rainbow/services/RainbowBackgroundSystem.d.ts.map +1 -0
- package/dist/backgrounds/rainbow/services/RainbowBackgroundSystem.js +239 -0
- package/dist/backgrounds/rainbow/services/RainbowBackgroundSystem.js.map +1 -0
- package/dist/backgrounds/rainbow/services/RainbowBokehSystem.d.ts +46 -0
- package/dist/backgrounds/rainbow/services/RainbowBokehSystem.d.ts.map +1 -0
- package/dist/backgrounds/rainbow/services/RainbowBokehSystem.js +127 -0
- package/dist/backgrounds/rainbow/services/RainbowBokehSystem.js.map +1 -0
- package/dist/backgrounds/rainbow/services/RainbowGradientSystem.d.ts +51 -0
- package/dist/backgrounds/rainbow/services/RainbowGradientSystem.d.ts.map +1 -0
- package/dist/backgrounds/rainbow/services/RainbowGradientSystem.js +149 -0
- package/dist/backgrounds/rainbow/services/RainbowGradientSystem.js.map +1 -0
- package/dist/backgrounds/rainbow/services/RainbowShimmerSystem.d.ts +38 -0
- package/dist/backgrounds/rainbow/services/RainbowShimmerSystem.d.ts.map +1 -0
- package/dist/backgrounds/rainbow/services/RainbowShimmerSystem.js +99 -0
- package/dist/backgrounds/rainbow/services/RainbowShimmerSystem.js.map +1 -0
- package/dist/backgrounds/rainbow/services/RainbowSparkleSystem.d.ts +42 -0
- package/dist/backgrounds/rainbow/services/RainbowSparkleSystem.d.ts.map +1 -0
- package/dist/backgrounds/rainbow/services/RainbowSparkleSystem.js +126 -0
- package/dist/backgrounds/rainbow/services/RainbowSparkleSystem.js.map +1 -0
- package/dist/backgrounds/simple/services/GradientGeneratorService.d.ts +33 -0
- package/dist/backgrounds/simple/services/GradientGeneratorService.d.ts.map +1 -0
- package/dist/backgrounds/simple/services/GradientGeneratorService.js +135 -0
- package/dist/backgrounds/simple/services/GradientGeneratorService.js.map +1 -0
- package/dist/backgrounds/simple/services/SimpleBackgroundSystem.d.ts +60 -0
- package/dist/backgrounds/simple/services/SimpleBackgroundSystem.d.ts.map +1 -0
- package/dist/backgrounds/simple/services/SimpleBackgroundSystem.js +103 -0
- package/dist/backgrounds/simple/services/SimpleBackgroundSystem.js.map +1 -0
- package/dist/backgrounds/snowfall/domain/constants/snowfall-constants.d.ts +31 -0
- package/dist/backgrounds/snowfall/domain/constants/snowfall-constants.d.ts.map +1 -0
- package/dist/backgrounds/snowfall/domain/constants/snowfall-constants.js +36 -0
- package/dist/backgrounds/snowfall/domain/constants/snowfall-constants.js.map +1 -0
- package/dist/backgrounds/snowfall/domain/models/snowfall-models.d.ts +51 -0
- package/dist/backgrounds/snowfall/domain/models/snowfall-models.d.ts.map +1 -0
- package/dist/backgrounds/snowfall/domain/models/snowfall-models.js +3 -0
- package/dist/backgrounds/snowfall/domain/models/snowfall-models.js.map +1 -0
- package/dist/backgrounds/snowfall/services/SnowfallBackgroundSystem.d.ts +41 -0
- package/dist/backgrounds/snowfall/services/SnowfallBackgroundSystem.d.ts.map +1 -0
- package/dist/backgrounds/snowfall/services/SnowfallBackgroundSystem.js +110 -0
- package/dist/backgrounds/snowfall/services/SnowfallBackgroundSystem.js.map +1 -0
- package/dist/backgrounds/snowfall/services/SnowflakeSystem.d.ts +10 -0
- package/dist/backgrounds/snowfall/services/SnowflakeSystem.d.ts.map +1 -0
- package/dist/backgrounds/snowfall/services/SnowflakeSystem.js +201 -0
- package/dist/backgrounds/snowfall/services/SnowflakeSystem.js.map +1 -0
- package/dist/card/domain/background-card-constants.d.ts +17 -0
- package/dist/card/domain/background-card-constants.d.ts.map +1 -0
- package/dist/card/domain/background-card-constants.js +112 -0
- package/dist/card/domain/background-card-constants.js.map +1 -0
- package/dist/card/domain/background-card-types.d.ts +21 -0
- package/dist/card/domain/background-card-types.d.ts.map +1 -0
- package/dist/card/domain/background-card-types.js +5 -0
- package/dist/card/domain/background-card-types.js.map +1 -0
- package/dist/card/effects/cursor-glow-effect.d.ts +23 -0
- package/dist/card/effects/cursor-glow-effect.d.ts.map +1 -0
- package/dist/card/effects/cursor-glow-effect.js +55 -0
- package/dist/card/effects/cursor-glow-effect.js.map +1 -0
- package/dist/card/effects/spring.d.ts +25 -0
- package/dist/card/effects/spring.d.ts.map +1 -0
- package/dist/card/effects/spring.js +77 -0
- package/dist/card/effects/spring.js.map +1 -0
- package/dist/card/effects/tilt-effect.d.ts +24 -0
- package/dist/card/effects/tilt-effect.d.ts.map +1 -0
- package/dist/card/effects/tilt-effect.js +89 -0
- package/dist/card/effects/tilt-effect.js.map +1 -0
- package/dist/card/element/background-card-element.d.ts +57 -0
- package/dist/card/element/background-card-element.d.ts.map +1 -0
- package/dist/card/element/background-card-element.js +267 -0
- package/dist/card/element/background-card-element.js.map +1 -0
- package/dist/card/element/background-card-styles.d.ts +9 -0
- package/dist/card/element/background-card-styles.d.ts.map +1 -0
- package/dist/card/element/background-card-styles.js +221 -0
- package/dist/card/element/background-card-styles.js.map +1 -0
- package/dist/card.d.ts +20 -0
- package/dist/card.d.ts.map +1 -0
- package/dist/card.js +19 -0
- package/dist/card.js.map +1 -0
- package/dist/core/contracts/IBackgroundConfigurationService.d.ts +46 -0
- package/dist/core/contracts/IBackgroundConfigurationService.d.ts.map +1 -0
- package/dist/core/contracts/IBackgroundConfigurationService.js +5 -0
- package/dist/core/contracts/IBackgroundConfigurationService.js.map +1 -0
- package/dist/core/contracts/IBackgroundController.d.ts +122 -0
- package/dist/core/contracts/IBackgroundController.d.ts.map +1 -0
- package/dist/core/contracts/IBackgroundController.js +27 -0
- package/dist/core/contracts/IBackgroundController.js.map +1 -0
- package/dist/core/contracts/IBackgroundRenderingService.d.ts +19 -0
- package/dist/core/contracts/IBackgroundRenderingService.d.ts.map +1 -0
- package/dist/core/contracts/IBackgroundRenderingService.js +5 -0
- package/dist/core/contracts/IBackgroundRenderingService.js.map +1 -0
- package/dist/core/contracts/IBackgroundSystem.d.ts +45 -0
- package/dist/core/contracts/IBackgroundSystem.d.ts.map +1 -0
- package/dist/core/contracts/IBackgroundSystem.js +8 -0
- package/dist/core/contracts/IBackgroundSystem.js.map +1 -0
- package/dist/core/contracts/IGeoLocationProvider.d.ts +28 -0
- package/dist/core/contracts/IGeoLocationProvider.d.ts.map +1 -0
- package/dist/core/contracts/IGeoLocationProvider.js +24 -0
- package/dist/core/contracts/IGeoLocationProvider.js.map +1 -0
- package/dist/core/domain/constants.d.ts +60 -0
- package/dist/core/domain/constants.d.ts.map +1 -0
- package/dist/core/domain/constants.js +107 -0
- package/dist/core/domain/constants.js.map +1 -0
- package/dist/core/domain/enums.d.ts +23 -0
- package/dist/core/domain/enums.d.ts.map +1 -0
- package/dist/core/domain/enums.js +27 -0
- package/dist/core/domain/enums.js.map +1 -0
- package/dist/core/domain/models.d.ts +41 -0
- package/dist/core/domain/models.d.ts.map +1 -0
- package/dist/core/domain/models.js +5 -0
- package/dist/core/domain/models.js.map +1 -0
- package/dist/core/domain/types.d.ts +49 -0
- package/dist/core/domain/types.d.ts.map +1 -0
- package/dist/core/domain/types.js +5 -0
- package/dist/core/domain/types.js.map +1 -0
- package/dist/core/services/AdaptiveQualityManager.d.ts +74 -0
- package/dist/core/services/AdaptiveQualityManager.d.ts.map +1 -0
- package/dist/core/services/AdaptiveQualityManager.js +190 -0
- package/dist/core/services/AdaptiveQualityManager.js.map +1 -0
- package/dist/core/services/BackgroundConfigurationService.d.ts +49 -0
- package/dist/core/services/BackgroundConfigurationService.d.ts.map +1 -0
- package/dist/core/services/BackgroundConfigurationService.js +139 -0
- package/dist/core/services/BackgroundConfigurationService.js.map +1 -0
- package/dist/core/services/BackgroundController.d.ts +95 -0
- package/dist/core/services/BackgroundController.d.ts.map +1 -0
- package/dist/core/services/BackgroundController.js +526 -0
- package/dist/core/services/BackgroundController.js.map +1 -0
- package/dist/core/services/BackgroundFactory.d.ts +27 -0
- package/dist/core/services/BackgroundFactory.d.ts.map +1 -0
- package/dist/core/services/BackgroundFactory.js +164 -0
- package/dist/core/services/BackgroundFactory.js.map +1 -0
- package/dist/core/services/BackgroundRenderingService.d.ts +14 -0
- package/dist/core/services/BackgroundRenderingService.d.ts.map +1 -0
- package/dist/core/services/BackgroundRenderingService.js +47 -0
- package/dist/core/services/BackgroundRenderingService.js.map +1 -0
- package/dist/core/services/MoonRenderer.d.ts +78 -0
- package/dist/core/services/MoonRenderer.d.ts.map +1 -0
- package/dist/core/services/MoonRenderer.js +463 -0
- package/dist/core/services/MoonRenderer.js.map +1 -0
- package/dist/core/services/ServiceFactory.d.ts +39 -0
- package/dist/core/services/ServiceFactory.d.ts.map +1 -0
- package/dist/core/services/ServiceFactory.js +70 -0
- package/dist/core/services/ServiceFactory.js.map +1 -0
- package/dist/core/services/ShootingStarSystem.d.ts +39 -0
- package/dist/core/services/ShootingStarSystem.d.ts.map +1 -0
- package/dist/core/services/ShootingStarSystem.js +144 -0
- package/dist/core/services/ShootingStarSystem.js.map +1 -0
- package/dist/index.d.ts +53 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +37 -0
- package/dist/index.js.map +1 -0
- package/package.json +54 -0
|
@@ -0,0 +1,325 @@
|
|
|
1
|
+
import { EMBER_BACKGROUND_GRADIENT, EMBER_GLOW_QUALITY_CONFIGS, DENSITY_MULTIPLIERS, HEAT_INTENSITY_CONFIGS, } from "../domain/constants/ember-constants.js";
|
|
2
|
+
// Import subsystem modules
|
|
3
|
+
import * as EmberSystem from "./ember-system.js";
|
|
4
|
+
import * as SmokeSystem from "./smoke-system.js";
|
|
5
|
+
import * as SparkSystem from "./spark-system.js";
|
|
6
|
+
import * as CoalBedSystem from "./coal-bed-system.js";
|
|
7
|
+
/**
|
|
8
|
+
* Ember Glow Background System
|
|
9
|
+
*
|
|
10
|
+
* Orchestrates four particle subsystems:
|
|
11
|
+
* - Smoke: Dark, slow-rising particles for depth
|
|
12
|
+
* - Embers: Glowing orange/amber particles with flicker
|
|
13
|
+
* - Sparks: Small, bright, fast particles
|
|
14
|
+
*
|
|
15
|
+
* Supports heat intensity (affects all subsystems), density presets,
|
|
16
|
+
* quality levels, layer visibility, and accessibility settings.
|
|
17
|
+
*/
|
|
18
|
+
export class EmberGlowBackgroundSystem {
|
|
19
|
+
// State
|
|
20
|
+
quality = "medium";
|
|
21
|
+
heatIntensity = "warm";
|
|
22
|
+
densityPreset = "normal";
|
|
23
|
+
isInitialized = false;
|
|
24
|
+
dimensions = { width: 0, height: 0 };
|
|
25
|
+
motionMultiplier = 1.0;
|
|
26
|
+
// Breathing effect state (A+ enhancement - stronger, more visible)
|
|
27
|
+
breathingPhase = 0;
|
|
28
|
+
breathingPeriod = 4; // seconds for full cycle
|
|
29
|
+
breathingAmplitude = 0.5; // ±50% intensity variation (increased from 0.3)
|
|
30
|
+
// Layer visibility
|
|
31
|
+
layers = {
|
|
32
|
+
gradient: true,
|
|
33
|
+
coalBed: true, // A+ - glowing heat source at bottom
|
|
34
|
+
smoke: true,
|
|
35
|
+
embers: true,
|
|
36
|
+
sparks: true,
|
|
37
|
+
// Enhancement layers
|
|
38
|
+
vignette: false,
|
|
39
|
+
bottomGlow: false,
|
|
40
|
+
sparkTrails: false,
|
|
41
|
+
breathing: false,
|
|
42
|
+
};
|
|
43
|
+
// Gradient colors
|
|
44
|
+
gradientStops = EMBER_BACKGROUND_GRADIENT;
|
|
45
|
+
// No constructor needed - subsystems are module-level singletons
|
|
46
|
+
initialize(dimensions, quality) {
|
|
47
|
+
this.quality = quality;
|
|
48
|
+
this.dimensions = dimensions;
|
|
49
|
+
const config = EMBER_GLOW_QUALITY_CONFIGS[quality];
|
|
50
|
+
const densityMult = DENSITY_MULTIPLIERS[this.densityPreset];
|
|
51
|
+
const heatConfig = HEAT_INTENSITY_CONFIGS[this.heatIntensity];
|
|
52
|
+
// Apply density to ember system
|
|
53
|
+
EmberSystem.setDensityMultiplier(densityMult);
|
|
54
|
+
EmberSystem.setHeatIntensity(this.heatIntensity);
|
|
55
|
+
EmberSystem.setFlicker(config.flickerEnabled, config.flickerSpeed);
|
|
56
|
+
EmberSystem.initialize(dimensions, config.emberCount);
|
|
57
|
+
// Initialize smoke
|
|
58
|
+
SmokeSystem.initialize(dimensions, Math.floor(config.smokeCount * densityMult));
|
|
59
|
+
// Sparks get heat bonus
|
|
60
|
+
const sparkCount = Math.floor(config.sparkCount * densityMult * (1 + heatConfig.sparkBonus));
|
|
61
|
+
SparkSystem.initialize(dimensions, sparkCount);
|
|
62
|
+
// Initialize coal bed (A+ enhancement)
|
|
63
|
+
CoalBedSystem.initialize(dimensions, quality);
|
|
64
|
+
this.isInitialized = true;
|
|
65
|
+
}
|
|
66
|
+
update(dimensions, frameMultiplier = 1.0) {
|
|
67
|
+
// Auto-initialize if dimensions changed
|
|
68
|
+
if (dimensions.width > 0 && dimensions.height > 0) {
|
|
69
|
+
if (!this.isInitialized) {
|
|
70
|
+
this.initialize(dimensions, this.quality);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
if (!this.isInitialized)
|
|
74
|
+
return;
|
|
75
|
+
this.dimensions = dimensions;
|
|
76
|
+
// Advance breathing phase (assuming 60fps base)
|
|
77
|
+
// Breathing respects motion multiplier for accessibility
|
|
78
|
+
if (this.layers.breathing) {
|
|
79
|
+
const secondsPerFrame = (frameMultiplier * this.motionMultiplier) / 60;
|
|
80
|
+
this.breathingPhase += (secondsPerFrame / this.breathingPeriod) * Math.PI * 2;
|
|
81
|
+
if (this.breathingPhase > Math.PI * 2) {
|
|
82
|
+
this.breathingPhase -= Math.PI * 2;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
// Calculate breathing multiplier for subsystems that sync with it
|
|
86
|
+
const breathingMult = this.layers.breathing
|
|
87
|
+
? 1 + Math.sin(this.breathingPhase) * this.breathingAmplitude
|
|
88
|
+
: 1;
|
|
89
|
+
// Update all subsystems
|
|
90
|
+
if (this.layers.coalBed) {
|
|
91
|
+
CoalBedSystem.setBreathingMultiplier(breathingMult);
|
|
92
|
+
CoalBedSystem.update(dimensions, frameMultiplier);
|
|
93
|
+
}
|
|
94
|
+
if (this.layers.smoke) {
|
|
95
|
+
SmokeSystem.update(dimensions, frameMultiplier);
|
|
96
|
+
}
|
|
97
|
+
if (this.layers.embers) {
|
|
98
|
+
EmberSystem.update(dimensions, frameMultiplier);
|
|
99
|
+
}
|
|
100
|
+
if (this.layers.sparks) {
|
|
101
|
+
SparkSystem.update(dimensions, frameMultiplier);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
draw(ctx, dimensions) {
|
|
105
|
+
// Calculate breathing intensity multiplier
|
|
106
|
+
const breathingMult = this.layers.breathing
|
|
107
|
+
? 1 + Math.sin(this.breathingPhase) * this.breathingAmplitude
|
|
108
|
+
: 1;
|
|
109
|
+
// Layer 1: Background gradient
|
|
110
|
+
if (this.layers.gradient) {
|
|
111
|
+
const gradient = ctx.createLinearGradient(0, 0, dimensions.width, dimensions.height);
|
|
112
|
+
this.gradientStops.forEach(({ position, color }) => {
|
|
113
|
+
gradient.addColorStop(position, color);
|
|
114
|
+
});
|
|
115
|
+
ctx.fillStyle = gradient;
|
|
116
|
+
ctx.fillRect(0, 0, dimensions.width, dimensions.height);
|
|
117
|
+
}
|
|
118
|
+
// Layer 2: Coal bed (A+ - glowing heat source at bottom)
|
|
119
|
+
if (this.layers.coalBed && this.isInitialized) {
|
|
120
|
+
CoalBedSystem.draw(ctx, dimensions);
|
|
121
|
+
}
|
|
122
|
+
// Layer 3: Bottom glow (warm radial glow from below)
|
|
123
|
+
if (this.layers.bottomGlow) {
|
|
124
|
+
this.drawBottomGlow(ctx, dimensions, breathingMult);
|
|
125
|
+
}
|
|
126
|
+
// Layer 3: Smoke (behind embers)
|
|
127
|
+
if (this.layers.smoke && this.isInitialized) {
|
|
128
|
+
SmokeSystem.draw(ctx, dimensions);
|
|
129
|
+
}
|
|
130
|
+
// Layer 4: Embers
|
|
131
|
+
if (this.layers.embers && this.isInitialized) {
|
|
132
|
+
EmberSystem.draw(ctx, dimensions);
|
|
133
|
+
}
|
|
134
|
+
// Layer 5: Sparks (on top)
|
|
135
|
+
if (this.layers.sparks && this.isInitialized) {
|
|
136
|
+
SparkSystem.draw(ctx, dimensions);
|
|
137
|
+
}
|
|
138
|
+
// Layer 6: Vignette (darkens edges, focuses center - pulses with breathing)
|
|
139
|
+
if (this.layers.vignette) {
|
|
140
|
+
this.drawVignette(ctx, dimensions, breathingMult);
|
|
141
|
+
}
|
|
142
|
+
// Layer 7: Breathing overlay (warm pulse across entire scene)
|
|
143
|
+
if (this.layers.breathing) {
|
|
144
|
+
this.drawBreathingOverlay(ctx, dimensions, breathingMult);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Draw breathing overlay - a warm color wash that pulses visibly
|
|
149
|
+
* A+ Enhancement: Stronger, more noticeable breathing effect
|
|
150
|
+
*/
|
|
151
|
+
drawBreathingOverlay(ctx, dimensions, breathingMult) {
|
|
152
|
+
// Calculate intensity based on breathing phase
|
|
153
|
+
// Now with ±50% amplitude, breathingMult ranges from 0.5 to 1.5
|
|
154
|
+
const breathIntensity = Math.max(0, (breathingMult - 1) * 2); // 0 to 1.0
|
|
155
|
+
// Warm amber overlay from bottom (always visible when breathing enabled)
|
|
156
|
+
const baseOverlay = 0.03; // Constant subtle warmth
|
|
157
|
+
const pulseOverlay = breathIntensity * 0.12; // Pulsing component
|
|
158
|
+
// Full-screen warm gradient from bottom
|
|
159
|
+
const gradient = ctx.createLinearGradient(0, dimensions.height, 0, 0);
|
|
160
|
+
gradient.addColorStop(0, `rgba(255, 140, 50, ${baseOverlay + pulseOverlay})`);
|
|
161
|
+
gradient.addColorStop(0.3, `rgba(255, 100, 30, ${(baseOverlay + pulseOverlay) * 0.7})`);
|
|
162
|
+
gradient.addColorStop(0.6, `rgba(255, 80, 20, ${(baseOverlay + pulseOverlay) * 0.3})`);
|
|
163
|
+
gradient.addColorStop(1, `rgba(0, 0, 0, 0)`);
|
|
164
|
+
ctx.fillStyle = gradient;
|
|
165
|
+
ctx.fillRect(0, 0, dimensions.width, dimensions.height);
|
|
166
|
+
// Additional center glow that pulses (like the fire is breathing)
|
|
167
|
+
if (breathIntensity > 0.1) {
|
|
168
|
+
const centerX = dimensions.width / 2;
|
|
169
|
+
const centerY = dimensions.height * 0.85;
|
|
170
|
+
const glowRadius = dimensions.width * 0.4 * (1 + breathIntensity * 0.2);
|
|
171
|
+
const centerGlow = ctx.createRadialGradient(centerX, centerY, 0, centerX, centerY, glowRadius);
|
|
172
|
+
centerGlow.addColorStop(0, `rgba(255, 160, 60, ${breathIntensity * 0.08})`);
|
|
173
|
+
centerGlow.addColorStop(0.5, `rgba(255, 100, 30, ${breathIntensity * 0.04})`);
|
|
174
|
+
centerGlow.addColorStop(1, `rgba(0, 0, 0, 0)`);
|
|
175
|
+
ctx.fillStyle = centerGlow;
|
|
176
|
+
ctx.fillRect(0, 0, dimensions.width, dimensions.height);
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Draw a warm radial glow emanating from bottom center
|
|
181
|
+
*/
|
|
182
|
+
drawBottomGlow(ctx, dimensions, breathingMult) {
|
|
183
|
+
const centerX = dimensions.width / 2;
|
|
184
|
+
const centerY = dimensions.height + dimensions.height * 0.1; // Below screen
|
|
185
|
+
const radius = Math.max(dimensions.width, dimensions.height) * 0.8;
|
|
186
|
+
const gradient = ctx.createRadialGradient(centerX, centerY, 0, centerX, centerY, radius);
|
|
187
|
+
// Warm amber glow with breathing intensity
|
|
188
|
+
const baseOpacity = 0.25 * breathingMult;
|
|
189
|
+
gradient.addColorStop(0, `rgba(255, 140, 50, ${baseOpacity})`);
|
|
190
|
+
gradient.addColorStop(0.3, `rgba(255, 100, 30, ${baseOpacity * 0.6})`);
|
|
191
|
+
gradient.addColorStop(0.6, `rgba(200, 60, 20, ${baseOpacity * 0.3})`);
|
|
192
|
+
gradient.addColorStop(1, "rgba(0, 0, 0, 0)");
|
|
193
|
+
ctx.fillStyle = gradient;
|
|
194
|
+
ctx.fillRect(0, 0, dimensions.width, dimensions.height);
|
|
195
|
+
}
|
|
196
|
+
/**
|
|
197
|
+
* Draw a vignette effect (darkens edges, pulses with breathing)
|
|
198
|
+
* A+ Enhancement: Vignette pulses subtly with the breathing effect
|
|
199
|
+
*/
|
|
200
|
+
drawVignette(ctx, dimensions, breathingMult) {
|
|
201
|
+
const centerX = dimensions.width / 2;
|
|
202
|
+
const centerY = dimensions.height / 2;
|
|
203
|
+
const radius = Math.max(dimensions.width, dimensions.height) * 0.7;
|
|
204
|
+
const gradient = ctx.createRadialGradient(centerX, centerY, 0, centerX, centerY, radius);
|
|
205
|
+
// Vignette opacity pulses with breathing (edges darken during "exhale")
|
|
206
|
+
// When breathing enabled, breathingMult ranges from 0.5 to 1.5
|
|
207
|
+
// Invert: darker edges when breathingMult is low (exhale)
|
|
208
|
+
const vignetteStrength = this.layers.breathing
|
|
209
|
+
? 1 + (1 - breathingMult) * 0.3 // 0.85 to 1.15 multiplier
|
|
210
|
+
: 1;
|
|
211
|
+
// Transparent center, dark edges
|
|
212
|
+
gradient.addColorStop(0, "rgba(0, 0, 0, 0)");
|
|
213
|
+
gradient.addColorStop(0.5, "rgba(0, 0, 0, 0)");
|
|
214
|
+
gradient.addColorStop(0.8, `rgba(0, 0, 0, ${0.3 * vignetteStrength})`);
|
|
215
|
+
gradient.addColorStop(1, `rgba(0, 0, 0, ${0.6 * vignetteStrength})`);
|
|
216
|
+
ctx.fillStyle = gradient;
|
|
217
|
+
ctx.fillRect(0, 0, dimensions.width, dimensions.height);
|
|
218
|
+
}
|
|
219
|
+
setQuality(quality) {
|
|
220
|
+
this.quality = quality;
|
|
221
|
+
const config = EMBER_GLOW_QUALITY_CONFIGS[quality];
|
|
222
|
+
const densityMult = DENSITY_MULTIPLIERS[this.densityPreset];
|
|
223
|
+
const heatConfig = HEAT_INTENSITY_CONFIGS[this.heatIntensity];
|
|
224
|
+
// Update flicker settings
|
|
225
|
+
EmberSystem.setFlicker(config.flickerEnabled, config.flickerSpeed);
|
|
226
|
+
// Update particle counts
|
|
227
|
+
if (this.isInitialized) {
|
|
228
|
+
EmberSystem.setCount(this.dimensions, config.emberCount);
|
|
229
|
+
SmokeSystem.setCount(this.dimensions, Math.floor(config.smokeCount * densityMult));
|
|
230
|
+
SparkSystem.setCount(this.dimensions, Math.floor(config.sparkCount * densityMult), heatConfig.sparkBonus);
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
setAccessibility(settings) {
|
|
234
|
+
if (settings.reducedMotion) {
|
|
235
|
+
// Slow all animations significantly
|
|
236
|
+
this.motionMultiplier = 0.2;
|
|
237
|
+
// Reduce spark trail length for reduced motion
|
|
238
|
+
SparkSystem.setTrailConfig(4, 0.7);
|
|
239
|
+
}
|
|
240
|
+
else {
|
|
241
|
+
this.motionMultiplier = 1.0;
|
|
242
|
+
// Full trail length when motion is allowed
|
|
243
|
+
SparkSystem.setTrailConfig(10, 0.85);
|
|
244
|
+
}
|
|
245
|
+
// Pass to all subsystems
|
|
246
|
+
EmberSystem.setMotionMultiplier(this.motionMultiplier);
|
|
247
|
+
SmokeSystem.setMotionMultiplier(this.motionMultiplier);
|
|
248
|
+
SparkSystem.setMotionMultiplier(this.motionMultiplier);
|
|
249
|
+
CoalBedSystem.setMotionMultiplier(this.motionMultiplier);
|
|
250
|
+
}
|
|
251
|
+
handleResize(oldDimensions, newDimensions) {
|
|
252
|
+
if (!this.isInitialized)
|
|
253
|
+
return;
|
|
254
|
+
this.dimensions = newDimensions;
|
|
255
|
+
EmberSystem.handleResize(oldDimensions, newDimensions);
|
|
256
|
+
// Smoke and sparks don't need resize handling - they respawn naturally
|
|
257
|
+
}
|
|
258
|
+
cleanup() {
|
|
259
|
+
EmberSystem.cleanup();
|
|
260
|
+
SmokeSystem.cleanup();
|
|
261
|
+
SparkSystem.cleanup();
|
|
262
|
+
CoalBedSystem.cleanup();
|
|
263
|
+
this.isInitialized = false;
|
|
264
|
+
}
|
|
265
|
+
/**
|
|
266
|
+
* Set layer visibility
|
|
267
|
+
*/
|
|
268
|
+
setLayerVisibility(layers) {
|
|
269
|
+
this.layers = { ...this.layers, ...layers };
|
|
270
|
+
// Wire up sparkTrails to SparkSystem
|
|
271
|
+
if (layers.sparkTrails !== undefined) {
|
|
272
|
+
SparkSystem.setTrailsEnabled(layers.sparkTrails);
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
/**
|
|
276
|
+
* Get current scene statistics
|
|
277
|
+
*/
|
|
278
|
+
getStats() {
|
|
279
|
+
return {
|
|
280
|
+
embers: EmberSystem.getCount(),
|
|
281
|
+
smoke: SmokeSystem.getCount(),
|
|
282
|
+
sparks: SparkSystem.getCount(),
|
|
283
|
+
coals: CoalBedSystem.getCount(),
|
|
284
|
+
heatIntensity: this.heatIntensity,
|
|
285
|
+
densityPreset: this.densityPreset,
|
|
286
|
+
};
|
|
287
|
+
}
|
|
288
|
+
/**
|
|
289
|
+
* Set heat intensity level
|
|
290
|
+
* Affects ember colors, speed, glow, and spark bonus
|
|
291
|
+
*/
|
|
292
|
+
setHeatIntensity(intensity) {
|
|
293
|
+
this.heatIntensity = intensity;
|
|
294
|
+
// Update ember system
|
|
295
|
+
EmberSystem.setHeatIntensity(intensity);
|
|
296
|
+
// Update spark count with heat bonus
|
|
297
|
+
if (this.isInitialized) {
|
|
298
|
+
const config = EMBER_GLOW_QUALITY_CONFIGS[this.quality];
|
|
299
|
+
const densityMult = DENSITY_MULTIPLIERS[this.densityPreset];
|
|
300
|
+
const heatConfig = HEAT_INTENSITY_CONFIGS[intensity];
|
|
301
|
+
SparkSystem.setCount(this.dimensions, Math.floor(config.sparkCount * densityMult), heatConfig.sparkBonus);
|
|
302
|
+
// Reinitialize embers to apply new heat colors
|
|
303
|
+
EmberSystem.initialize(this.dimensions, Math.floor(config.emberCount * densityMult));
|
|
304
|
+
}
|
|
305
|
+
}
|
|
306
|
+
/**
|
|
307
|
+
* Set density preset
|
|
308
|
+
* Multiplies all particle counts
|
|
309
|
+
*/
|
|
310
|
+
setDensityPreset(preset) {
|
|
311
|
+
this.densityPreset = preset;
|
|
312
|
+
const densityMult = DENSITY_MULTIPLIERS[preset];
|
|
313
|
+
// Update density multiplier in ember system
|
|
314
|
+
EmberSystem.setDensityMultiplier(densityMult);
|
|
315
|
+
if (this.isInitialized) {
|
|
316
|
+
const config = EMBER_GLOW_QUALITY_CONFIGS[this.quality];
|
|
317
|
+
const heatConfig = HEAT_INTENSITY_CONFIGS[this.heatIntensity];
|
|
318
|
+
// Reinitialize all systems with new density
|
|
319
|
+
EmberSystem.initialize(this.dimensions, config.emberCount);
|
|
320
|
+
SmokeSystem.setCount(this.dimensions, Math.floor(config.smokeCount * densityMult));
|
|
321
|
+
SparkSystem.setCount(this.dimensions, Math.floor(config.sparkCount * densityMult), heatConfig.sparkBonus);
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
//# sourceMappingURL=EmberGlowBackgroundSystem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EmberGlowBackgroundSystem.js","sourceRoot":"","sources":["../../../../src/backgrounds/ember-glow/services/EmberGlowBackgroundSystem.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CoalBedSystem - Glowing heat source at bottom (A+ Enhancement)
|
|
3
|
+
*
|
|
4
|
+
* Creates a visible bed of glowing coals that:
|
|
5
|
+
* - Pulse with offset phases (not synchronized)
|
|
6
|
+
* - Randomly flare as hotspots
|
|
7
|
+
* - Provide grounding for the scene (particles come FROM here)
|
|
8
|
+
* - Sync with scene breathing for cohesive feel
|
|
9
|
+
*
|
|
10
|
+
* Plain TypeScript module - no Svelte runes needed for standalone package.
|
|
11
|
+
*/
|
|
12
|
+
import type { Dimensions } from "../../../core/domain/types.js";
|
|
13
|
+
import type { QualityLevel } from "../../../core/domain/types.js";
|
|
14
|
+
/**
|
|
15
|
+
* Initialize coal bed
|
|
16
|
+
*/
|
|
17
|
+
export declare function initialize(dimensions: Dimensions, quality: QualityLevel): void;
|
|
18
|
+
/**
|
|
19
|
+
* Update coal bed - pulse and flare
|
|
20
|
+
*/
|
|
21
|
+
export declare function update(_dimensions: Dimensions, frameMultiplier: number): void;
|
|
22
|
+
/**
|
|
23
|
+
* Draw coal bed
|
|
24
|
+
*/
|
|
25
|
+
export declare function draw(ctx: CanvasRenderingContext2D, _dimensions: Dimensions): void;
|
|
26
|
+
/**
|
|
27
|
+
* Set motion multiplier for accessibility
|
|
28
|
+
*/
|
|
29
|
+
export declare function setMotionMultiplier(multiplier: number): void;
|
|
30
|
+
/**
|
|
31
|
+
* Set breathing multiplier (syncs with scene breathing)
|
|
32
|
+
*/
|
|
33
|
+
export declare function setBreathingMultiplier(multiplier: number): void;
|
|
34
|
+
/**
|
|
35
|
+
* Get a random coal position for spark spawning
|
|
36
|
+
*/
|
|
37
|
+
export declare function getRandomCoalPosition(): {
|
|
38
|
+
x: number;
|
|
39
|
+
y: number;
|
|
40
|
+
} | null;
|
|
41
|
+
/**
|
|
42
|
+
* Get coal count for stats
|
|
43
|
+
*/
|
|
44
|
+
export declare function getCount(): number;
|
|
45
|
+
/**
|
|
46
|
+
* Cleanup
|
|
47
|
+
*/
|
|
48
|
+
export declare function cleanup(): void;
|
|
49
|
+
//# sourceMappingURL=coal-bed-system.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coal-bed-system.d.ts","sourceRoot":"","sources":["../../../../src/backgrounds/ember-glow/services/coal-bed-system.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAGhE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AA+DlE;;GAEG;AACH,wBAAgB,UAAU,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,GAAG,IAAI,CAqB9E;AAED;;GAEG;AACH,wBAAgB,MAAM,CAAC,WAAW,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,GAAG,IAAI,CAwD7E;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,GAAG,EAAE,wBAAwB,EAAE,WAAW,EAAE,UAAU,GAAG,IAAI,CA+BjF;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAE5D;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAE/D;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CASvE;AAED;;GAEG;AACH,wBAAgB,QAAQ,IAAI,MAAM,CAEjC;AAED;;GAEG;AACH,wBAAgB,OAAO,IAAI,IAAI,CAE9B"}
|
|
@@ -0,0 +1,191 @@
|
|
|
1
|
+
import { COAL_CONFIG, COAL_COUNTS } from "../domain/constants/ember-constants.js";
|
|
2
|
+
// ============================================================================
|
|
3
|
+
// MUTABLE STATE
|
|
4
|
+
// ============================================================================
|
|
5
|
+
let coals = [];
|
|
6
|
+
let motionMultiplier = 1.0;
|
|
7
|
+
let breathingMult = 1.0;
|
|
8
|
+
// ============================================================================
|
|
9
|
+
// PRIVATE HELPERS
|
|
10
|
+
// ============================================================================
|
|
11
|
+
/**
|
|
12
|
+
* Create a coal at a specific position
|
|
13
|
+
*/
|
|
14
|
+
function createCoal(x, y) {
|
|
15
|
+
const size = COAL_CONFIG.SIZE_MIN + Math.random() * COAL_CONFIG.SIZE_RANGE;
|
|
16
|
+
const baseIntensity = COAL_CONFIG.INTENSITY_MIN + Math.random() * COAL_CONFIG.INTENSITY_RANGE;
|
|
17
|
+
// Interpolate color based on intensity
|
|
18
|
+
const t = baseIntensity;
|
|
19
|
+
const color = {
|
|
20
|
+
r: Math.floor(COAL_CONFIG.COLOR_COOL.r + (COAL_CONFIG.COLOR_HOT.r - COAL_CONFIG.COLOR_COOL.r) * t),
|
|
21
|
+
g: Math.floor(COAL_CONFIG.COLOR_COOL.g + (COAL_CONFIG.COLOR_HOT.g - COAL_CONFIG.COLOR_COOL.g) * t),
|
|
22
|
+
b: Math.floor(COAL_CONFIG.COLOR_COOL.b + (COAL_CONFIG.COLOR_HOT.b - COAL_CONFIG.COLOR_COOL.b) * t),
|
|
23
|
+
};
|
|
24
|
+
return {
|
|
25
|
+
x,
|
|
26
|
+
y,
|
|
27
|
+
size,
|
|
28
|
+
glowRadius: size * COAL_CONFIG.GLOW_MULTIPLIER,
|
|
29
|
+
pulsePhase: Math.random() * Math.PI * 2, // Random start phase
|
|
30
|
+
pulseSpeed: COAL_CONFIG.PULSE_SPEED_MIN + Math.random() * COAL_CONFIG.PULSE_SPEED_RANGE,
|
|
31
|
+
baseIntensity,
|
|
32
|
+
currentIntensity: baseIntensity,
|
|
33
|
+
isFlaring: false,
|
|
34
|
+
flareTimer: 0,
|
|
35
|
+
color,
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Lerp between two colors
|
|
40
|
+
*/
|
|
41
|
+
function lerpColor(a, b, t) {
|
|
42
|
+
return {
|
|
43
|
+
r: Math.floor(a.r + (b.r - a.r) * t),
|
|
44
|
+
g: Math.floor(a.g + (b.g - a.g) * t),
|
|
45
|
+
b: Math.floor(a.b + (b.b - a.b) * t),
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
// ============================================================================
|
|
49
|
+
// PUBLIC API
|
|
50
|
+
// ============================================================================
|
|
51
|
+
/**
|
|
52
|
+
* Initialize coal bed
|
|
53
|
+
*/
|
|
54
|
+
export function initialize(dimensions, quality) {
|
|
55
|
+
const count = COAL_COUNTS[quality] ?? COAL_COUNTS.medium;
|
|
56
|
+
const newCoals = [];
|
|
57
|
+
// Distribute coals across bottom zone
|
|
58
|
+
const bottomY = dimensions.height * (1 - COAL_CONFIG.BOTTOM_ZONE);
|
|
59
|
+
const zoneHeight = dimensions.height * COAL_CONFIG.BOTTOM_ZONE;
|
|
60
|
+
for (let i = 0; i < count; i++) {
|
|
61
|
+
// Spread horizontally with some clustering in center
|
|
62
|
+
const centerBias = Math.random() * Math.random(); // Bias toward center
|
|
63
|
+
const xOffset = (Math.random() - 0.5) * 2;
|
|
64
|
+
const x = dimensions.width / 2 + xOffset * dimensions.width * 0.4 * (1 - centerBias * 0.5);
|
|
65
|
+
// Vertical position within bottom zone
|
|
66
|
+
const y = bottomY + Math.random() * zoneHeight;
|
|
67
|
+
newCoals.push(createCoal(x, y));
|
|
68
|
+
}
|
|
69
|
+
coals = newCoals;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Update coal bed - pulse and flare
|
|
73
|
+
*/
|
|
74
|
+
export function update(_dimensions, frameMultiplier) {
|
|
75
|
+
const effectiveMultiplier = frameMultiplier * motionMultiplier;
|
|
76
|
+
coals = coals.map((coal) => {
|
|
77
|
+
// Advance pulse phase
|
|
78
|
+
const newPulsePhase = coal.pulsePhase + coal.pulseSpeed * effectiveMultiplier;
|
|
79
|
+
// Calculate pulsing intensity
|
|
80
|
+
const pulseEffect = Math.sin(newPulsePhase) * COAL_CONFIG.PULSE_AMPLITUDE;
|
|
81
|
+
let newIntensity = coal.baseIntensity * (1 + pulseEffect);
|
|
82
|
+
// Apply breathing multiplier
|
|
83
|
+
newIntensity *= breathingMult;
|
|
84
|
+
// Handle flare state
|
|
85
|
+
let newIsFlaring = coal.isFlaring;
|
|
86
|
+
let newFlareTimer = coal.flareTimer;
|
|
87
|
+
if (coal.isFlaring) {
|
|
88
|
+
// Count down flare
|
|
89
|
+
newFlareTimer -= effectiveMultiplier;
|
|
90
|
+
if (newFlareTimer <= 0) {
|
|
91
|
+
newIsFlaring = false;
|
|
92
|
+
newFlareTimer = 0;
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
// Boost intensity during flare
|
|
96
|
+
newIntensity += COAL_CONFIG.FLARE_INTENSITY_BOOST;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
// Random chance to start flare
|
|
101
|
+
if (Math.random() < COAL_CONFIG.FLARE_CHANCE * effectiveMultiplier) {
|
|
102
|
+
newIsFlaring = true;
|
|
103
|
+
newFlareTimer =
|
|
104
|
+
COAL_CONFIG.FLARE_DURATION_MIN + Math.random() * COAL_CONFIG.FLARE_DURATION_RANGE;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
// Clamp intensity
|
|
108
|
+
newIntensity = Math.min(1.4, Math.max(0.3, newIntensity));
|
|
109
|
+
// Update color based on current intensity
|
|
110
|
+
const colorT = Math.min(1, (newIntensity - 0.3) / 0.7);
|
|
111
|
+
const baseColor = lerpColor(COAL_CONFIG.COLOR_COOL, COAL_CONFIG.COLOR_HOT, colorT);
|
|
112
|
+
const newColor = newIsFlaring
|
|
113
|
+
? lerpColor(baseColor, COAL_CONFIG.COLOR_FLARE, 0.5)
|
|
114
|
+
: baseColor;
|
|
115
|
+
return {
|
|
116
|
+
...coal,
|
|
117
|
+
pulsePhase: newPulsePhase,
|
|
118
|
+
currentIntensity: newIntensity,
|
|
119
|
+
isFlaring: newIsFlaring,
|
|
120
|
+
flareTimer: newFlareTimer,
|
|
121
|
+
color: newColor,
|
|
122
|
+
};
|
|
123
|
+
});
|
|
124
|
+
}
|
|
125
|
+
/**
|
|
126
|
+
* Draw coal bed
|
|
127
|
+
*/
|
|
128
|
+
export function draw(ctx, _dimensions) {
|
|
129
|
+
for (const coal of coals) {
|
|
130
|
+
const { x, y, size, glowRadius, currentIntensity, color, isFlaring } = coal;
|
|
131
|
+
// Skip invalid coals
|
|
132
|
+
if (!Number.isFinite(x) || !Number.isFinite(y))
|
|
133
|
+
continue;
|
|
134
|
+
const effectiveGlow = glowRadius * (isFlaring ? 1.3 : 1);
|
|
135
|
+
// Draw outer glow
|
|
136
|
+
const outerGradient = ctx.createRadialGradient(x, y, 0, x, y, effectiveGlow);
|
|
137
|
+
outerGradient.addColorStop(0, `rgba(${color.r}, ${color.g}, ${color.b}, ${currentIntensity * 0.8})`);
|
|
138
|
+
outerGradient.addColorStop(0.3, `rgba(${color.r}, ${color.g}, ${color.b}, ${currentIntensity * 0.4})`);
|
|
139
|
+
outerGradient.addColorStop(0.6, `rgba(${color.r}, ${color.g}, ${color.b}, ${currentIntensity * 0.15})`);
|
|
140
|
+
outerGradient.addColorStop(1, `rgba(${color.r}, ${color.g}, ${color.b}, 0)`);
|
|
141
|
+
ctx.fillStyle = outerGradient;
|
|
142
|
+
ctx.fillRect(x - effectiveGlow, y - effectiveGlow, effectiveGlow * 2, effectiveGlow * 2);
|
|
143
|
+
// Draw core (brighter center)
|
|
144
|
+
const coreGradient = ctx.createRadialGradient(x, y, 0, x, y, size);
|
|
145
|
+
const coreColor = isFlaring ? COAL_CONFIG.COLOR_FLARE : color;
|
|
146
|
+
coreGradient.addColorStop(0, `rgba(${coreColor.r}, ${coreColor.g}, ${coreColor.b}, ${currentIntensity})`);
|
|
147
|
+
coreGradient.addColorStop(0.5, `rgba(${color.r}, ${color.g}, ${color.b}, ${currentIntensity * 0.7})`);
|
|
148
|
+
coreGradient.addColorStop(1, `rgba(${color.r}, ${color.g}, ${color.b}, 0)`);
|
|
149
|
+
ctx.fillStyle = coreGradient;
|
|
150
|
+
ctx.beginPath();
|
|
151
|
+
ctx.arc(x, y, size, 0, Math.PI * 2);
|
|
152
|
+
ctx.fill();
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* Set motion multiplier for accessibility
|
|
157
|
+
*/
|
|
158
|
+
export function setMotionMultiplier(multiplier) {
|
|
159
|
+
motionMultiplier = multiplier;
|
|
160
|
+
}
|
|
161
|
+
/**
|
|
162
|
+
* Set breathing multiplier (syncs with scene breathing)
|
|
163
|
+
*/
|
|
164
|
+
export function setBreathingMultiplier(multiplier) {
|
|
165
|
+
breathingMult = multiplier;
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Get a random coal position for spark spawning
|
|
169
|
+
*/
|
|
170
|
+
export function getRandomCoalPosition() {
|
|
171
|
+
if (coals.length === 0)
|
|
172
|
+
return null;
|
|
173
|
+
// Prefer flaring coals, but fall back to any coal
|
|
174
|
+
const flaringCoals = coals.filter((c) => c.isFlaring);
|
|
175
|
+
const pool = flaringCoals.length > 0 ? flaringCoals : coals;
|
|
176
|
+
const coal = pool[Math.floor(Math.random() * pool.length)];
|
|
177
|
+
return { x: coal.x, y: coal.y };
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Get coal count for stats
|
|
181
|
+
*/
|
|
182
|
+
export function getCount() {
|
|
183
|
+
return coals.length;
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* Cleanup
|
|
187
|
+
*/
|
|
188
|
+
export function cleanup() {
|
|
189
|
+
coals = [];
|
|
190
|
+
}
|
|
191
|
+
//# sourceMappingURL=coal-bed-system.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"coal-bed-system.js","sourceRoot":"","sources":["../../../../src/backgrounds/ember-glow/services/coal-bed-system.ts"],"names":[],"mappings":"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"}
|