@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,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AmbientParticleSystem - Floating dust motes and pollen for atmospheric depth
|
|
3
|
+
*
|
|
4
|
+
* Creates subtle ambient particles that:
|
|
5
|
+
* - Float slowly at various depths (3 layers like grass)
|
|
6
|
+
* - Respond to mouse parallax for depth illusion
|
|
7
|
+
* - Catch moonlight occasionally (brief shimmer)
|
|
8
|
+
* - Add atmospheric haze to the forest scene
|
|
9
|
+
*/
|
|
10
|
+
import type { Dimensions, QualityLevel } from "../../../core/domain/types.js";
|
|
11
|
+
export interface AmbientParticleAPI {
|
|
12
|
+
initialize: (dimensions: Dimensions, quality: QualityLevel) => void;
|
|
13
|
+
update: (dimensions: Dimensions, frameMultiplier: number) => void;
|
|
14
|
+
drawLayer: (ctx: CanvasRenderingContext2D, layer: 0 | 1 | 2, parallaxOffset: {
|
|
15
|
+
x: number;
|
|
16
|
+
y: number;
|
|
17
|
+
}) => void;
|
|
18
|
+
setQuality: (quality: QualityLevel, dimensions: Dimensions) => void;
|
|
19
|
+
getCount: () => number;
|
|
20
|
+
cleanup: () => void;
|
|
21
|
+
}
|
|
22
|
+
export declare function createAmbientParticleSystem(): AmbientParticleAPI;
|
|
23
|
+
//# sourceMappingURL=AmbientParticleSystem.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AmbientParticleSystem.d.ts","sourceRoot":"","sources":["../../../../src/backgrounds/firefly-forest/services/AmbientParticleSystem.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,UAAU,EACV,YAAY,EACb,MAAM,+BAA+B,CAAC;AAoDvC,MAAM,WAAW,kBAAkB;IACjC,UAAU,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,KAAK,IAAI,CAAC;IACpE,MAAM,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,KAAK,IAAI,CAAC;IAClE,SAAS,EAAE,CAAC,GAAG,EAAE,wBAAwB,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,cAAc,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAC/G,UAAU,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,KAAK,IAAI,CAAC;IACpE,QAAQ,EAAE,MAAM,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,wBAAgB,2BAA2B,IAAI,kBAAkB,CAgMhE"}
|
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AmbientParticleSystem - Floating dust motes and pollen for atmospheric depth
|
|
3
|
+
*
|
|
4
|
+
* Creates subtle ambient particles that:
|
|
5
|
+
* - Float slowly at various depths (3 layers like grass)
|
|
6
|
+
* - Respond to mouse parallax for depth illusion
|
|
7
|
+
* - Catch moonlight occasionally (brief shimmer)
|
|
8
|
+
* - Add atmospheric haze to the forest scene
|
|
9
|
+
*/
|
|
10
|
+
// Configuration
|
|
11
|
+
const PARTICLE_COUNTS = {
|
|
12
|
+
high: 80,
|
|
13
|
+
medium: 50,
|
|
14
|
+
low: 30,
|
|
15
|
+
minimal: 15,
|
|
16
|
+
"ultra-minimal": 8,
|
|
17
|
+
};
|
|
18
|
+
const PARTICLE_CONFIG = {
|
|
19
|
+
// Size ranges per layer (far = tiny, near = larger)
|
|
20
|
+
SIZE: {
|
|
21
|
+
far: { min: 0.8, max: 1.5 },
|
|
22
|
+
mid: { min: 1.2, max: 2.2 },
|
|
23
|
+
near: { min: 1.8, max: 3.5 },
|
|
24
|
+
},
|
|
25
|
+
// Opacity ranges per layer (far = faint, near = more visible)
|
|
26
|
+
OPACITY: {
|
|
27
|
+
far: { min: 0.08, max: 0.18 },
|
|
28
|
+
mid: { min: 0.12, max: 0.25 },
|
|
29
|
+
near: { min: 0.15, max: 0.35 },
|
|
30
|
+
},
|
|
31
|
+
// Movement
|
|
32
|
+
DRIFT_SPEED: { min: 0.02, max: 0.08 }, // Very slow floating
|
|
33
|
+
DRIFT_ANGLE_CHANGE: 0.01, // Gentle direction changes
|
|
34
|
+
// Shimmer (catching moonlight)
|
|
35
|
+
SHIMMER_CHANCE: 0.0003, // Rare per frame
|
|
36
|
+
SHIMMER_DURATION: 60, // Frames
|
|
37
|
+
SHIMMER_BOOST: 0.4, // Added opacity
|
|
38
|
+
// Distribution - mostly in upper/mid areas (not ground level)
|
|
39
|
+
ZONE_TOP: 0.05,
|
|
40
|
+
ZONE_BOTTOM: 0.75, // Keep above ground grass
|
|
41
|
+
};
|
|
42
|
+
// Color for particles - very pale, bluish (moonlit dust)
|
|
43
|
+
const PARTICLE_COLOR = { r: 200, g: 210, b: 230 };
|
|
44
|
+
export function createAmbientParticleSystem() {
|
|
45
|
+
let particles = [];
|
|
46
|
+
let currentQuality = "medium";
|
|
47
|
+
function randomInRange(min, max) {
|
|
48
|
+
return min + Math.random() * (max - min);
|
|
49
|
+
}
|
|
50
|
+
function createParticle(dimensions, layer) {
|
|
51
|
+
const layerKey = layer === 0 ? "far" : layer === 1 ? "mid" : "near";
|
|
52
|
+
const sizeConfig = PARTICLE_CONFIG.SIZE[layerKey];
|
|
53
|
+
const opacityConfig = PARTICLE_CONFIG.OPACITY[layerKey];
|
|
54
|
+
const zoneHeight = dimensions.height * (PARTICLE_CONFIG.ZONE_BOTTOM - PARTICLE_CONFIG.ZONE_TOP);
|
|
55
|
+
const zoneTop = dimensions.height * PARTICLE_CONFIG.ZONE_TOP;
|
|
56
|
+
return {
|
|
57
|
+
x: Math.random() * dimensions.width,
|
|
58
|
+
y: zoneTop + Math.random() * zoneHeight,
|
|
59
|
+
size: randomInRange(sizeConfig.min, sizeConfig.max),
|
|
60
|
+
opacity: randomInRange(opacityConfig.min, opacityConfig.max),
|
|
61
|
+
layer,
|
|
62
|
+
driftAngle: Math.random() * Math.PI * 2,
|
|
63
|
+
driftSpeed: randomInRange(PARTICLE_CONFIG.DRIFT_SPEED.min, PARTICLE_CONFIG.DRIFT_SPEED.max),
|
|
64
|
+
shimmerPhase: 0,
|
|
65
|
+
shimmerSpeed: 0.05 + Math.random() * 0.03,
|
|
66
|
+
isShimmering: false,
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
function initialize(dimensions, quality) {
|
|
70
|
+
currentQuality = quality;
|
|
71
|
+
const count = PARTICLE_COUNTS[quality];
|
|
72
|
+
particles = [];
|
|
73
|
+
// Distribute across layers: 40% far, 35% mid, 25% near
|
|
74
|
+
const farCount = Math.floor(count * 0.4);
|
|
75
|
+
const midCount = Math.floor(count * 0.35);
|
|
76
|
+
const nearCount = count - farCount - midCount;
|
|
77
|
+
for (let i = 0; i < farCount; i++) {
|
|
78
|
+
particles.push(createParticle(dimensions, 0));
|
|
79
|
+
}
|
|
80
|
+
for (let i = 0; i < midCount; i++) {
|
|
81
|
+
particles.push(createParticle(dimensions, 1));
|
|
82
|
+
}
|
|
83
|
+
for (let i = 0; i < nearCount; i++) {
|
|
84
|
+
particles.push(createParticle(dimensions, 2));
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
function update(dimensions, frameMultiplier) {
|
|
88
|
+
const zoneTop = dimensions.height * PARTICLE_CONFIG.ZONE_TOP;
|
|
89
|
+
const zoneBottom = dimensions.height * PARTICLE_CONFIG.ZONE_BOTTOM;
|
|
90
|
+
for (const particle of particles) {
|
|
91
|
+
// Gentle drift angle change
|
|
92
|
+
particle.driftAngle += (Math.random() - 0.5) * PARTICLE_CONFIG.DRIFT_ANGLE_CHANGE * frameMultiplier;
|
|
93
|
+
// Update position
|
|
94
|
+
particle.x += Math.cos(particle.driftAngle) * particle.driftSpeed * frameMultiplier;
|
|
95
|
+
particle.y += Math.sin(particle.driftAngle) * particle.driftSpeed * frameMultiplier;
|
|
96
|
+
// Add slight upward tendency (dust rises)
|
|
97
|
+
particle.y -= 0.01 * frameMultiplier;
|
|
98
|
+
// Wrap horizontally
|
|
99
|
+
if (particle.x < -10) {
|
|
100
|
+
particle.x = dimensions.width + 10;
|
|
101
|
+
}
|
|
102
|
+
else if (particle.x > dimensions.width + 10) {
|
|
103
|
+
particle.x = -10;
|
|
104
|
+
}
|
|
105
|
+
// Wrap vertically (respawn at bottom if floats too high)
|
|
106
|
+
if (particle.y < zoneTop - 10) {
|
|
107
|
+
particle.y = zoneBottom;
|
|
108
|
+
particle.x = Math.random() * dimensions.width;
|
|
109
|
+
}
|
|
110
|
+
else if (particle.y > zoneBottom + 10) {
|
|
111
|
+
particle.y = zoneTop;
|
|
112
|
+
particle.x = Math.random() * dimensions.width;
|
|
113
|
+
}
|
|
114
|
+
// Handle shimmer state
|
|
115
|
+
if (particle.isShimmering) {
|
|
116
|
+
particle.shimmerPhase += particle.shimmerSpeed * frameMultiplier;
|
|
117
|
+
if (particle.shimmerPhase >= 1) {
|
|
118
|
+
particle.isShimmering = false;
|
|
119
|
+
particle.shimmerPhase = 0;
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
else {
|
|
123
|
+
// Chance to start shimmering
|
|
124
|
+
if (Math.random() < PARTICLE_CONFIG.SHIMMER_CHANCE * frameMultiplier) {
|
|
125
|
+
particle.isShimmering = true;
|
|
126
|
+
particle.shimmerPhase = 0;
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
function drawLayer(ctx, layer, parallaxOffset) {
|
|
132
|
+
const layerParticles = particles.filter((p) => p.layer === layer);
|
|
133
|
+
for (const particle of layerParticles) {
|
|
134
|
+
const { x, y, size, opacity, isShimmering, shimmerPhase } = particle;
|
|
135
|
+
// Apply parallax
|
|
136
|
+
const drawX = x + parallaxOffset.x;
|
|
137
|
+
const drawY = y + parallaxOffset.y;
|
|
138
|
+
// Calculate opacity with shimmer boost
|
|
139
|
+
let finalOpacity = opacity;
|
|
140
|
+
if (isShimmering) {
|
|
141
|
+
// Sine curve for smooth shimmer in/out
|
|
142
|
+
const shimmerIntensity = Math.sin(shimmerPhase * Math.PI);
|
|
143
|
+
finalOpacity += PARTICLE_CONFIG.SHIMMER_BOOST * shimmerIntensity;
|
|
144
|
+
}
|
|
145
|
+
// Draw particle with soft glow
|
|
146
|
+
const glowRadius = size * 3;
|
|
147
|
+
// Outer soft glow
|
|
148
|
+
const gradient = ctx.createRadialGradient(drawX, drawY, 0, drawX, drawY, glowRadius);
|
|
149
|
+
gradient.addColorStop(0, `rgba(${PARTICLE_COLOR.r}, ${PARTICLE_COLOR.g}, ${PARTICLE_COLOR.b}, ${finalOpacity * 0.6})`);
|
|
150
|
+
gradient.addColorStop(0.4, `rgba(${PARTICLE_COLOR.r}, ${PARTICLE_COLOR.g}, ${PARTICLE_COLOR.b}, ${finalOpacity * 0.2})`);
|
|
151
|
+
gradient.addColorStop(1, `rgba(${PARTICLE_COLOR.r}, ${PARTICLE_COLOR.g}, ${PARTICLE_COLOR.b}, 0)`);
|
|
152
|
+
ctx.fillStyle = gradient;
|
|
153
|
+
ctx.beginPath();
|
|
154
|
+
ctx.arc(drawX, drawY, glowRadius, 0, Math.PI * 2);
|
|
155
|
+
ctx.fill();
|
|
156
|
+
// Bright core
|
|
157
|
+
ctx.fillStyle = `rgba(${PARTICLE_COLOR.r + 30}, ${PARTICLE_COLOR.g + 25}, ${PARTICLE_COLOR.b + 20}, ${Math.min(1, finalOpacity * 1.5)})`;
|
|
158
|
+
ctx.beginPath();
|
|
159
|
+
ctx.arc(drawX, drawY, size * 0.5, 0, Math.PI * 2);
|
|
160
|
+
ctx.fill();
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
function setQuality(quality, dimensions) {
|
|
164
|
+
if (quality === currentQuality)
|
|
165
|
+
return;
|
|
166
|
+
currentQuality = quality;
|
|
167
|
+
const targetCount = PARTICLE_COUNTS[quality];
|
|
168
|
+
const farTarget = Math.floor(targetCount * 0.4);
|
|
169
|
+
const midTarget = Math.floor(targetCount * 0.35);
|
|
170
|
+
const nearTarget = targetCount - farTarget - midTarget;
|
|
171
|
+
// Adjust counts per layer
|
|
172
|
+
const adjustLayer = (layer, target) => {
|
|
173
|
+
const current = particles.filter((p) => p.layer === layer);
|
|
174
|
+
while (current.length < target) {
|
|
175
|
+
const newParticle = createParticle(dimensions, layer);
|
|
176
|
+
particles.push(newParticle);
|
|
177
|
+
current.push(newParticle);
|
|
178
|
+
}
|
|
179
|
+
// Remove excess
|
|
180
|
+
let removed = 0;
|
|
181
|
+
particles = particles.filter((p) => {
|
|
182
|
+
if (p.layer === layer && removed < current.length - target) {
|
|
183
|
+
removed++;
|
|
184
|
+
return false;
|
|
185
|
+
}
|
|
186
|
+
return true;
|
|
187
|
+
});
|
|
188
|
+
};
|
|
189
|
+
adjustLayer(0, farTarget);
|
|
190
|
+
adjustLayer(1, midTarget);
|
|
191
|
+
adjustLayer(2, nearTarget);
|
|
192
|
+
}
|
|
193
|
+
function getCount() {
|
|
194
|
+
return particles.length;
|
|
195
|
+
}
|
|
196
|
+
function cleanup() {
|
|
197
|
+
particles = [];
|
|
198
|
+
}
|
|
199
|
+
return {
|
|
200
|
+
initialize,
|
|
201
|
+
update,
|
|
202
|
+
drawLayer,
|
|
203
|
+
setQuality,
|
|
204
|
+
getCount,
|
|
205
|
+
cleanup,
|
|
206
|
+
};
|
|
207
|
+
}
|
|
208
|
+
//# sourceMappingURL=AmbientParticleSystem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AmbientParticleSystem.js","sourceRoot":"","sources":["../../../../src/backgrounds/firefly-forest/services/AmbientParticleSystem.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CampfireSystem - Cozy campfire with flickering flames and ambient glow
|
|
3
|
+
*
|
|
4
|
+
* Creates a warm campfire that:
|
|
5
|
+
* - Sits at the bottom center of the scene
|
|
6
|
+
* - Has flickering flames with multiple layers
|
|
7
|
+
* - Emits rising sparks
|
|
8
|
+
* - Casts warm ambient glow onto the surrounding scene
|
|
9
|
+
* - Adds a subtle smoke column rising
|
|
10
|
+
*/
|
|
11
|
+
import type { Dimensions, QualityLevel } from "../../../core/domain/types.js";
|
|
12
|
+
export interface CampfireAPI {
|
|
13
|
+
initialize: (dimensions: Dimensions, quality: QualityLevel) => void;
|
|
14
|
+
update: (dimensions: Dimensions, frameMultiplier: number) => void;
|
|
15
|
+
draw: (ctx: CanvasRenderingContext2D, dimensions: Dimensions, parallaxOffset: {
|
|
16
|
+
x: number;
|
|
17
|
+
y: number;
|
|
18
|
+
}) => void;
|
|
19
|
+
drawAmbientGlow: (ctx: CanvasRenderingContext2D, dimensions: Dimensions) => void;
|
|
20
|
+
setQuality: (quality: QualityLevel, dimensions: Dimensions) => void;
|
|
21
|
+
cleanup: () => void;
|
|
22
|
+
}
|
|
23
|
+
export declare function createCampfireSystem(): CampfireAPI;
|
|
24
|
+
//# sourceMappingURL=CampfireSystem.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CampfireSystem.d.ts","sourceRoot":"","sources":["../../../../src/backgrounds/firefly-forest/services/CampfireSystem.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EACV,UAAU,EACV,YAAY,EACb,MAAM,+BAA+B,CAAC;AAoFvC,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,OAAO,EAAE,YAAY,KAAK,IAAI,CAAC;IACpE,MAAM,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,KAAK,IAAI,CAAC;IAClE,IAAI,EAAE,CAAC,GAAG,EAAE,wBAAwB,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAChH,eAAe,EAAE,CAAC,GAAG,EAAE,wBAAwB,EAAE,UAAU,EAAE,UAAU,KAAK,IAAI,CAAC;IACjF,UAAU,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,UAAU,KAAK,IAAI,CAAC;IACpE,OAAO,EAAE,MAAM,IAAI,CAAC;CACrB;AAED,wBAAgB,oBAAoB,IAAI,WAAW,CA8SlD"}
|
|
@@ -0,0 +1,287 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CampfireSystem - Cozy campfire with flickering flames and ambient glow
|
|
3
|
+
*
|
|
4
|
+
* Creates a warm campfire that:
|
|
5
|
+
* - Sits at the bottom center of the scene
|
|
6
|
+
* - Has flickering flames with multiple layers
|
|
7
|
+
* - Emits rising sparks
|
|
8
|
+
* - Casts warm ambient glow onto the surrounding scene
|
|
9
|
+
* - Adds a subtle smoke column rising
|
|
10
|
+
*/
|
|
11
|
+
// Configuration - Distant, subtle campfire (Easter egg in the distance)
|
|
12
|
+
const CAMPFIRE_CONFIG = {
|
|
13
|
+
// Position (relative to viewport) - off to the side, at the horizon
|
|
14
|
+
POSITION_X: 0.18, // Left side, not center
|
|
15
|
+
POSITION_Y: 0.82, // At the horizon line (far distance)
|
|
16
|
+
// Fire pit (logs/stones) - tiny at this distance
|
|
17
|
+
PIT_WIDTH: 0.012, // Very small - it's far away
|
|
18
|
+
PIT_HEIGHT: 0.003,
|
|
19
|
+
// Flames - tiny distant flames
|
|
20
|
+
FLAME_COUNT: { high: 3, medium: 2, low: 2, minimal: 1, "ultra-minimal": 1 },
|
|
21
|
+
FLAME_WIDTH_MIN: 0.004,
|
|
22
|
+
FLAME_WIDTH_MAX: 0.008,
|
|
23
|
+
FLAME_HEIGHT_MIN: 0.012,
|
|
24
|
+
FLAME_HEIGHT_MAX: 0.022,
|
|
25
|
+
FLAME_FLICKER_SPEED: 0.06,
|
|
26
|
+
// Sparks - rare and tiny
|
|
27
|
+
SPARK_CHANCE: 0.008, // Much rarer
|
|
28
|
+
SPARK_COUNT_MAX: 4,
|
|
29
|
+
SPARK_SPEED_Y: -0.4,
|
|
30
|
+
SPARK_SPEED_X_RANGE: 0.15,
|
|
31
|
+
SPARK_SIZE_MIN: 0.5,
|
|
32
|
+
SPARK_SIZE_MAX: 1.2,
|
|
33
|
+
SPARK_LIFE: 50, // Shorter life
|
|
34
|
+
// Smoke - very subtle wisp
|
|
35
|
+
SMOKE_CHANCE: 0.005,
|
|
36
|
+
SMOKE_COUNT_MAX: 3,
|
|
37
|
+
SMOKE_SPEED_Y: -0.15,
|
|
38
|
+
SMOKE_SIZE_START: 2,
|
|
39
|
+
SMOKE_SIZE_END: 8,
|
|
40
|
+
SMOKE_LIFE: 120,
|
|
41
|
+
// Glow - subtle warm dot in the distance
|
|
42
|
+
GLOW_RADIUS_MULTIPLIER: 4, // Smaller glow
|
|
43
|
+
GLOW_INTENSITY: 0.08, // Very subtle
|
|
44
|
+
GLOW_FLICKER_RANGE: 0.03,
|
|
45
|
+
};
|
|
46
|
+
// Flame colors from core (white-yellow) to tip (red-orange)
|
|
47
|
+
const FLAME_COLORS = {
|
|
48
|
+
core: { r: 255, g: 250, b: 220 }, // White-yellow
|
|
49
|
+
inner: { r: 255, g: 200, b: 80 }, // Bright orange
|
|
50
|
+
outer: { r: 255, g: 120, b: 40 }, // Deep orange
|
|
51
|
+
tip: { r: 200, g: 60, b: 30 }, // Red-orange
|
|
52
|
+
};
|
|
53
|
+
export function createCampfireSystem() {
|
|
54
|
+
let flames = [];
|
|
55
|
+
let sparks = [];
|
|
56
|
+
let smokeParticles = [];
|
|
57
|
+
let currentQuality = "medium";
|
|
58
|
+
let flickerPhase = 0;
|
|
59
|
+
function createFlame(dimensions, index, total) {
|
|
60
|
+
const fireX = dimensions.width * CAMPFIRE_CONFIG.POSITION_X;
|
|
61
|
+
const fireY = dimensions.height * CAMPFIRE_CONFIG.POSITION_Y;
|
|
62
|
+
// Spread flames across the pit width
|
|
63
|
+
const spread = dimensions.width * CAMPFIRE_CONFIG.PIT_WIDTH * 0.7;
|
|
64
|
+
const offsetX = total > 1 ? (index / (total - 1) - 0.5) * spread : 0;
|
|
65
|
+
const width = dimensions.width * (CAMPFIRE_CONFIG.FLAME_WIDTH_MIN +
|
|
66
|
+
Math.random() * (CAMPFIRE_CONFIG.FLAME_WIDTH_MAX - CAMPFIRE_CONFIG.FLAME_WIDTH_MIN));
|
|
67
|
+
const height = dimensions.height * (CAMPFIRE_CONFIG.FLAME_HEIGHT_MIN +
|
|
68
|
+
Math.random() * (CAMPFIRE_CONFIG.FLAME_HEIGHT_MAX - CAMPFIRE_CONFIG.FLAME_HEIGHT_MIN));
|
|
69
|
+
// Assign color based on position (center flames brighter)
|
|
70
|
+
const centerDistance = Math.abs(index - (total - 1) / 2) / Math.max(1, (total - 1) / 2);
|
|
71
|
+
let color;
|
|
72
|
+
if (centerDistance < 0.3)
|
|
73
|
+
color = "core";
|
|
74
|
+
else if (centerDistance < 0.5)
|
|
75
|
+
color = "inner";
|
|
76
|
+
else if (centerDistance < 0.8)
|
|
77
|
+
color = "outer";
|
|
78
|
+
else
|
|
79
|
+
color = "tip";
|
|
80
|
+
return {
|
|
81
|
+
x: fireX + offsetX,
|
|
82
|
+
baseY: fireY,
|
|
83
|
+
width,
|
|
84
|
+
height,
|
|
85
|
+
phase: Math.random() * Math.PI * 2,
|
|
86
|
+
speed: CAMPFIRE_CONFIG.FLAME_FLICKER_SPEED * (0.8 + Math.random() * 0.4),
|
|
87
|
+
color,
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
function createSpark(dimensions) {
|
|
91
|
+
const fireX = dimensions.width * CAMPFIRE_CONFIG.POSITION_X;
|
|
92
|
+
const fireY = dimensions.height * CAMPFIRE_CONFIG.POSITION_Y;
|
|
93
|
+
const pitWidth = dimensions.width * CAMPFIRE_CONFIG.PIT_WIDTH * 0.5;
|
|
94
|
+
return {
|
|
95
|
+
x: fireX + (Math.random() - 0.5) * pitWidth,
|
|
96
|
+
y: fireY - dimensions.height * CAMPFIRE_CONFIG.FLAME_HEIGHT_MIN * 0.5,
|
|
97
|
+
vx: (Math.random() - 0.5) * CAMPFIRE_CONFIG.SPARK_SPEED_X_RANGE,
|
|
98
|
+
vy: CAMPFIRE_CONFIG.SPARK_SPEED_Y * (0.8 + Math.random() * 0.4),
|
|
99
|
+
size: CAMPFIRE_CONFIG.SPARK_SIZE_MIN + Math.random() * (CAMPFIRE_CONFIG.SPARK_SIZE_MAX - CAMPFIRE_CONFIG.SPARK_SIZE_MIN),
|
|
100
|
+
life: CAMPFIRE_CONFIG.SPARK_LIFE * (0.6 + Math.random() * 0.4),
|
|
101
|
+
maxLife: CAMPFIRE_CONFIG.SPARK_LIFE,
|
|
102
|
+
color: Math.random() > 0.3 ? FLAME_COLORS.inner : FLAME_COLORS.core,
|
|
103
|
+
};
|
|
104
|
+
}
|
|
105
|
+
function createSmoke(dimensions) {
|
|
106
|
+
const fireX = dimensions.width * CAMPFIRE_CONFIG.POSITION_X;
|
|
107
|
+
const fireY = dimensions.height * CAMPFIRE_CONFIG.POSITION_Y - dimensions.height * CAMPFIRE_CONFIG.FLAME_HEIGHT_MAX;
|
|
108
|
+
return {
|
|
109
|
+
x: fireX + (Math.random() - 0.5) * 10,
|
|
110
|
+
y: fireY,
|
|
111
|
+
vx: (Math.random() - 0.5) * 0.3,
|
|
112
|
+
vy: CAMPFIRE_CONFIG.SMOKE_SPEED_Y,
|
|
113
|
+
size: CAMPFIRE_CONFIG.SMOKE_SIZE_START,
|
|
114
|
+
opacity: 0.15 + Math.random() * 0.1,
|
|
115
|
+
life: CAMPFIRE_CONFIG.SMOKE_LIFE * (0.8 + Math.random() * 0.4),
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
function initialize(dimensions, quality) {
|
|
119
|
+
currentQuality = quality;
|
|
120
|
+
const flameCount = CAMPFIRE_CONFIG.FLAME_COUNT[quality];
|
|
121
|
+
flames = [];
|
|
122
|
+
for (let i = 0; i < flameCount; i++) {
|
|
123
|
+
flames.push(createFlame(dimensions, i, flameCount));
|
|
124
|
+
}
|
|
125
|
+
sparks = [];
|
|
126
|
+
smokeParticles = [];
|
|
127
|
+
flickerPhase = 0;
|
|
128
|
+
}
|
|
129
|
+
function update(dimensions, frameMultiplier) {
|
|
130
|
+
// Update flicker phase for ambient glow
|
|
131
|
+
flickerPhase += 0.05 * frameMultiplier;
|
|
132
|
+
// Update flames
|
|
133
|
+
for (const flame of flames) {
|
|
134
|
+
flame.phase += flame.speed * frameMultiplier;
|
|
135
|
+
}
|
|
136
|
+
// Spawn new sparks
|
|
137
|
+
if (sparks.length < CAMPFIRE_CONFIG.SPARK_COUNT_MAX &&
|
|
138
|
+
Math.random() < CAMPFIRE_CONFIG.SPARK_CHANCE * frameMultiplier) {
|
|
139
|
+
sparks.push(createSpark(dimensions));
|
|
140
|
+
}
|
|
141
|
+
// Update sparks
|
|
142
|
+
sparks = sparks.filter(spark => {
|
|
143
|
+
spark.x += spark.vx * frameMultiplier;
|
|
144
|
+
spark.y += spark.vy * frameMultiplier;
|
|
145
|
+
spark.vy += 0.02 * frameMultiplier; // Slight upward deceleration
|
|
146
|
+
spark.life -= frameMultiplier;
|
|
147
|
+
return spark.life > 0;
|
|
148
|
+
});
|
|
149
|
+
// Spawn smoke
|
|
150
|
+
if (currentQuality !== "ultra-minimal" && currentQuality !== "minimal") {
|
|
151
|
+
if (smokeParticles.length < CAMPFIRE_CONFIG.SMOKE_COUNT_MAX &&
|
|
152
|
+
Math.random() < CAMPFIRE_CONFIG.SMOKE_CHANCE * frameMultiplier) {
|
|
153
|
+
smokeParticles.push(createSmoke(dimensions));
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
// Update smoke
|
|
157
|
+
smokeParticles = smokeParticles.filter(smoke => {
|
|
158
|
+
smoke.x += smoke.vx * frameMultiplier;
|
|
159
|
+
smoke.y += smoke.vy * frameMultiplier;
|
|
160
|
+
smoke.vx += (Math.random() - 0.5) * 0.01 * frameMultiplier; // Drift
|
|
161
|
+
smoke.size += 0.1 * frameMultiplier; // Expand
|
|
162
|
+
smoke.opacity -= 0.001 * frameMultiplier; // Fade
|
|
163
|
+
smoke.life -= frameMultiplier;
|
|
164
|
+
return smoke.life > 0 && smoke.opacity > 0.01;
|
|
165
|
+
});
|
|
166
|
+
}
|
|
167
|
+
function draw(ctx, dimensions, parallaxOffset) {
|
|
168
|
+
const fireX = dimensions.width * CAMPFIRE_CONFIG.POSITION_X + parallaxOffset.x;
|
|
169
|
+
const fireY = dimensions.height * CAMPFIRE_CONFIG.POSITION_Y + parallaxOffset.y;
|
|
170
|
+
const pitWidth = dimensions.width * CAMPFIRE_CONFIG.PIT_WIDTH;
|
|
171
|
+
const pitHeight = dimensions.height * CAMPFIRE_CONFIG.PIT_HEIGHT;
|
|
172
|
+
// Draw fire pit (logs/stones) - dark silhouette
|
|
173
|
+
ctx.fillStyle = "rgb(20, 15, 10)";
|
|
174
|
+
ctx.beginPath();
|
|
175
|
+
ctx.ellipse(fireX, fireY, pitWidth / 2, pitHeight / 2, 0, 0, Math.PI * 2);
|
|
176
|
+
ctx.fill();
|
|
177
|
+
// Draw small log silhouettes
|
|
178
|
+
ctx.fillStyle = "rgb(30, 20, 15)";
|
|
179
|
+
ctx.beginPath();
|
|
180
|
+
ctx.ellipse(fireX - pitWidth * 0.2, fireY - pitHeight * 0.3, pitWidth * 0.15, pitHeight * 0.4, -0.3, 0, Math.PI * 2);
|
|
181
|
+
ctx.fill();
|
|
182
|
+
ctx.beginPath();
|
|
183
|
+
ctx.ellipse(fireX + pitWidth * 0.15, fireY - pitHeight * 0.2, pitWidth * 0.18, pitHeight * 0.35, 0.4, 0, Math.PI * 2);
|
|
184
|
+
ctx.fill();
|
|
185
|
+
// Draw smoke behind flames
|
|
186
|
+
for (const smoke of smokeParticles) {
|
|
187
|
+
const gradient = ctx.createRadialGradient(smoke.x + parallaxOffset.x, smoke.y + parallaxOffset.y, 0, smoke.x + parallaxOffset.x, smoke.y + parallaxOffset.y, smoke.size);
|
|
188
|
+
gradient.addColorStop(0, `rgba(80, 80, 90, ${smoke.opacity * 0.7})`);
|
|
189
|
+
gradient.addColorStop(0.5, `rgba(60, 60, 70, ${smoke.opacity * 0.4})`);
|
|
190
|
+
gradient.addColorStop(1, `rgba(50, 50, 60, 0)`);
|
|
191
|
+
ctx.fillStyle = gradient;
|
|
192
|
+
ctx.beginPath();
|
|
193
|
+
ctx.arc(smoke.x + parallaxOffset.x, smoke.y + parallaxOffset.y, smoke.size, 0, Math.PI * 2);
|
|
194
|
+
ctx.fill();
|
|
195
|
+
}
|
|
196
|
+
// Draw flames (from outer to inner for proper layering)
|
|
197
|
+
const sortedFlames = [...flames].sort((a, b) => {
|
|
198
|
+
const order = { tip: 0, outer: 1, inner: 2, core: 3 };
|
|
199
|
+
return order[a.color] - order[b.color];
|
|
200
|
+
});
|
|
201
|
+
for (const flame of sortedFlames) {
|
|
202
|
+
const flicker = Math.sin(flame.phase) * 0.2 + Math.sin(flame.phase * 1.7) * 0.1;
|
|
203
|
+
const currentHeight = flame.height * (0.8 + flicker * 0.4);
|
|
204
|
+
const currentWidth = flame.width * (0.9 + flicker * 0.2);
|
|
205
|
+
const flameX = flame.x + parallaxOffset.x;
|
|
206
|
+
const flameY = flame.baseY + parallaxOffset.y;
|
|
207
|
+
const baseColor = FLAME_COLORS[flame.color];
|
|
208
|
+
// Flame gradient
|
|
209
|
+
const gradient = ctx.createRadialGradient(flameX, flameY - currentHeight * 0.3, 0, flameX, flameY - currentHeight * 0.4, currentHeight * 0.8);
|
|
210
|
+
gradient.addColorStop(0, `rgba(${baseColor.r}, ${baseColor.g}, ${baseColor.b}, 0.95)`);
|
|
211
|
+
gradient.addColorStop(0.4, `rgba(${baseColor.r}, ${baseColor.g * 0.7}, ${baseColor.b * 0.5}, 0.7)`);
|
|
212
|
+
gradient.addColorStop(0.7, `rgba(${baseColor.r * 0.8}, ${baseColor.g * 0.4}, 0, 0.4)`);
|
|
213
|
+
gradient.addColorStop(1, `rgba(${baseColor.r * 0.5}, 0, 0, 0)`);
|
|
214
|
+
// Draw flame shape (teardrop-ish)
|
|
215
|
+
ctx.fillStyle = gradient;
|
|
216
|
+
ctx.beginPath();
|
|
217
|
+
ctx.moveTo(flameX - currentWidth / 2, flameY);
|
|
218
|
+
// Left curve
|
|
219
|
+
ctx.quadraticCurveTo(flameX - currentWidth * 0.6, flameY - currentHeight * 0.4, flameX + (Math.sin(flame.phase * 2) * currentWidth * 0.1), flameY - currentHeight);
|
|
220
|
+
// Right curve back down
|
|
221
|
+
ctx.quadraticCurveTo(flameX + currentWidth * 0.6, flameY - currentHeight * 0.4, flameX + currentWidth / 2, flameY);
|
|
222
|
+
ctx.closePath();
|
|
223
|
+
ctx.fill();
|
|
224
|
+
}
|
|
225
|
+
// Draw sparks on top
|
|
226
|
+
for (const spark of sparks) {
|
|
227
|
+
const lifeRatio = spark.life / spark.maxLife;
|
|
228
|
+
const opacity = lifeRatio * 0.9;
|
|
229
|
+
ctx.fillStyle = `rgba(${spark.color.r}, ${spark.color.g}, ${spark.color.b}, ${opacity})`;
|
|
230
|
+
ctx.beginPath();
|
|
231
|
+
ctx.arc(spark.x + parallaxOffset.x, spark.y + parallaxOffset.y, spark.size * lifeRatio, 0, Math.PI * 2);
|
|
232
|
+
ctx.fill();
|
|
233
|
+
// Spark glow
|
|
234
|
+
const glowGradient = ctx.createRadialGradient(spark.x + parallaxOffset.x, spark.y + parallaxOffset.y, 0, spark.x + parallaxOffset.x, spark.y + parallaxOffset.y, spark.size * 3);
|
|
235
|
+
glowGradient.addColorStop(0, `rgba(${spark.color.r}, ${spark.color.g}, ${spark.color.b}, ${opacity * 0.5})`);
|
|
236
|
+
glowGradient.addColorStop(1, `rgba(${spark.color.r}, ${spark.color.g}, 0, 0)`);
|
|
237
|
+
ctx.fillStyle = glowGradient;
|
|
238
|
+
ctx.beginPath();
|
|
239
|
+
ctx.arc(spark.x + parallaxOffset.x, spark.y + parallaxOffset.y, spark.size * 3, 0, Math.PI * 2);
|
|
240
|
+
ctx.fill();
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
function drawAmbientGlow(ctx, dimensions) {
|
|
244
|
+
const fireX = dimensions.width * CAMPFIRE_CONFIG.POSITION_X;
|
|
245
|
+
const fireY = dimensions.height * CAMPFIRE_CONFIG.POSITION_Y;
|
|
246
|
+
const fireHeight = dimensions.height * CAMPFIRE_CONFIG.FLAME_HEIGHT_MAX;
|
|
247
|
+
const glowRadius = fireHeight * CAMPFIRE_CONFIG.GLOW_RADIUS_MULTIPLIER;
|
|
248
|
+
// Flickering intensity
|
|
249
|
+
const flicker = Math.sin(flickerPhase) * CAMPFIRE_CONFIG.GLOW_FLICKER_RANGE +
|
|
250
|
+
Math.sin(flickerPhase * 2.3) * CAMPFIRE_CONFIG.GLOW_FLICKER_RANGE * 0.5;
|
|
251
|
+
const intensity = CAMPFIRE_CONFIG.GLOW_INTENSITY + flicker;
|
|
252
|
+
// Warm ambient glow
|
|
253
|
+
const gradient = ctx.createRadialGradient(fireX, fireY - fireHeight * 0.3, 0, fireX, fireY - fireHeight * 0.3, glowRadius);
|
|
254
|
+
gradient.addColorStop(0, `rgba(255, 150, 50, ${intensity * 0.4})`);
|
|
255
|
+
gradient.addColorStop(0.2, `rgba(255, 100, 30, ${intensity * 0.25})`);
|
|
256
|
+
gradient.addColorStop(0.5, `rgba(200, 60, 20, ${intensity * 0.1})`);
|
|
257
|
+
gradient.addColorStop(1, `rgba(150, 30, 10, 0)`);
|
|
258
|
+
ctx.fillStyle = gradient;
|
|
259
|
+
ctx.fillRect(fireX - glowRadius, fireY - fireHeight - glowRadius, glowRadius * 2, glowRadius + fireHeight);
|
|
260
|
+
}
|
|
261
|
+
function setQuality(quality, dimensions) {
|
|
262
|
+
if (quality === currentQuality)
|
|
263
|
+
return;
|
|
264
|
+
currentQuality = quality;
|
|
265
|
+
// Reinitialize flames for new quality
|
|
266
|
+
const flameCount = CAMPFIRE_CONFIG.FLAME_COUNT[quality];
|
|
267
|
+
flames = [];
|
|
268
|
+
for (let i = 0; i < flameCount; i++) {
|
|
269
|
+
flames.push(createFlame(dimensions, i, flameCount));
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
function cleanup() {
|
|
273
|
+
flames = [];
|
|
274
|
+
sparks = [];
|
|
275
|
+
smokeParticles = [];
|
|
276
|
+
flickerPhase = 0;
|
|
277
|
+
}
|
|
278
|
+
return {
|
|
279
|
+
initialize,
|
|
280
|
+
update,
|
|
281
|
+
draw,
|
|
282
|
+
drawAmbientGlow,
|
|
283
|
+
setQuality,
|
|
284
|
+
cleanup,
|
|
285
|
+
};
|
|
286
|
+
}
|
|
287
|
+
//# sourceMappingURL=CampfireSystem.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"CampfireSystem.js","sourceRoot":"","sources":["../../../../src/backgrounds/firefly-forest/services/CampfireSystem.ts"],"names":[],"mappings":"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"}
|