✅ SYSTEMS CREATED: **1. BiomeMusicSystem.js (Background Music):** - Automatic music switching based on player position - Smooth cross-fade transitions (2 seconds) - Biome-specific tracks (grassland, forest, town, combat) - Night music override (8pm-6am) - Volume control + master volume - Loop support for ambient tracks **2. AudioTriggerSystem.js (Spatial Audio):** - Trigger audio when player enters specific tiles - One-time trigger support (play only once) - Radius detection (exact tile or area) - Delay support before audio plays - Callback functions after audio - Visual debug markers (green circle + 🔊 icon) - Trigger history tracking **3. TestVisualAudioScene.js (DEMO SCENE):** 🎬 Complete visual & audio demonstration: **Visual Effects:** - Kai character with 8 animated dreadlocks - Dreadlocks wave in wind (sine wave animation) - 20 falling leaves (continuous spawn) - Leaf rotation + side-sway animation - WASD movement controls - Camera follow with zoom **Audio Triggers:** - Yellow tile at (10, 7) triggers Kai's voice - Plays: 'My name is Kai, and I will find my sister.' - One-time trigger (won't repeat) - Speech bubble appears after trigger - Visual feedback (green flash) **Scene Features:** - Grass tile grid (20x15) - Alternating light/dark grass pattern - Instructions overlay - ESC to exit scene **Integration:** - Added to index.html - Added to game.js scene list - Ready to launch: game.scene.start('TestVisualAudioScene') 🎯 Test Command: Open browser console and type: game.scene.start('TestVisualAudioScene') 📝 For music: 1. Add music files to /assets/audio/music/ 2. System automatically cross-fades on biome change 3. Night music override active 8pm-6am
257 lines
15 KiB
HTML
257 lines
15 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="sl">
|
|
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
|
|
<!-- Suppress Electron Security Warning for Dev -->
|
|
<meta http-equiv="Content-Security-Policy"
|
|
content="script-src 'self' 'unsafe-inline' 'unsafe-eval' blob: data:; object-src 'self';">
|
|
<title>Mrtva Dolina - Death Valley</title>
|
|
<style>
|
|
* {
|
|
margin: 0;
|
|
padding: 0;
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
body {
|
|
background: #000;
|
|
overflow: hidden;
|
|
font-family: 'Courier New', monospace;
|
|
}
|
|
|
|
#game-container {
|
|
display: flex;
|
|
justify-content: center;
|
|
align-items: center;
|
|
width: 100vw;
|
|
height: 100vh;
|
|
image-rendering: -moz-crisp-edges;
|
|
image-rendering: -webkit-crisp-edges;
|
|
image-rendering: pixelated;
|
|
image-rendering: crisp-edges;
|
|
}
|
|
|
|
canvas {
|
|
image-rendering: -moz-crisp-edges;
|
|
image-rendering: -webkit-crisp-edges;
|
|
image-rendering: pixelated;
|
|
image-rendering: crisp-edges;
|
|
}
|
|
</style>
|
|
</head>
|
|
|
|
<body>
|
|
<div id="game-container"></div>
|
|
<div id="debug-console"
|
|
style="position: fixed; top: 0; left: 0; color: red; pointer-events: none; z-index: 9999; white-space: pre-wrap;">
|
|
</div>
|
|
|
|
<script>
|
|
window.onerror = function (msg, url, lineNo, columnNo, error) {
|
|
const container = document.getElementById('debug-console');
|
|
if (container) {
|
|
container.innerHTML += `ERROR: ${msg}\nAt: ${url}:${lineNo}:${columnNo}\n\n`;
|
|
}
|
|
console.error('Global Error:', msg, url, lineNo, error);
|
|
return false;
|
|
};
|
|
</script>
|
|
|
|
<!-- Phaser 3 -->
|
|
<script src="node_modules/phaser/dist/phaser.js"></script>
|
|
|
|
<!-- UI Theme -->
|
|
<script src="src/ui/UITheme.js"></script>
|
|
<script src="src/ui/UIHelpers.js"></script>
|
|
<script src="src/ui/WeatherUI.js"></script> <!-- Weather Control Panel -->
|
|
|
|
<!-- Utilities -->
|
|
<script src="src/utils/PerlinNoise.js"></script>
|
|
<script src="src/utils/IsometricUtils.js"></script>
|
|
<script src="src/utils/TextureGenerator.js"></script>
|
|
<script src="src/utils/ObjectPool.js"></script>
|
|
<script src="src/utils/SpatialGrid.js"></script>
|
|
<script src="src/utils/Pathfinding.js"></script>
|
|
<script src="src/utils/Compression.js"></script>
|
|
<script src="src/utils/PerformanceMonitor.js"></script>
|
|
<script src="src/utils/IntegrationTests.js"></script>
|
|
|
|
<!-- Data -->
|
|
<script src="src/data/CraftingRecipes.js"></script>
|
|
<script src="src/data/Act1QuestData.js"></script> <!-- 📖 Act 1 Quests -->
|
|
<script src="src/data/GrokDialogues.js"></script> <!-- 💬 Grok NPC Dialogues -->
|
|
|
|
<!-- Systems -->
|
|
<script src="src/systems/TerrainSystem.js"></script>
|
|
<script src="src/systems/FarmingSystem.js"></script>
|
|
<script src="src/systems/BuildSystem.js"></script>
|
|
<script src="src/systems/Antigravity.js"></script>
|
|
<script src="src/systems/PathfindingSystem.js"></script>
|
|
<script src="src/systems/SaveSystem.js"></script>
|
|
<script src="src/systems/SaveManager.js"></script>
|
|
<!-- TimeSystem merged into WeatherSystem -->
|
|
<script src="src/systems/StatsSystem.js"></script>
|
|
<script src="src/systems/InventorySystem.js"></script>
|
|
<script src="src/utils/GlobalInventoryHelper.js"></script> <!-- Global inventory helper -->
|
|
<script src="src/systems/LootSystem.js"></script>
|
|
<script src="src/systems/InteractionSystem.js"></script>
|
|
<script src="src/utils/InventoryIcons.js"></script> <!-- 2D Flat Icons -->
|
|
<script src="src/systems/BuildingSystem.js"></script>
|
|
<script src="src/systems/WeatherSystem.js"></script>
|
|
<script src="src/systems/LightingSystem.js"></script> <!-- 💡 Lighting & Shadows -->
|
|
<script src="src/systems/WeatherEnhancementsSystem.js"></script> <!-- 🌬️ Weather Enhancements -->
|
|
<script src="src/systems/UIPolishSystem.js"></script> <!-- 🎨 UI Polish -->
|
|
<script src="src/systems/BiomeSystem.js"></script> <!-- 🌍 Phase 28: Biomes -->
|
|
<script src="src/systems/ChunkManager.js"></script> <!-- 💾 Phase 28: Chunk Loading -->
|
|
<script src="src/systems/TransitionSystem.js"></script> <!-- 🌈 Phase 28: Smooth Transitions -->
|
|
<script src="src/systems/RiverSystem.js"></script> <!-- 🌊 Phase 28: Rivers -->
|
|
<script src="src/systems/LakeSystem.js"></script> <!-- 🏞️ Phase 28: Lakes -->
|
|
<script src="src/systems/StructureSystem.js"></script> <!-- 🏛️ Phase 28: Structures & Roads -->
|
|
<script src="src/systems/StructureInteractionSystem.js"></script> <!-- 🏛️ Phase 29: Interactions -->
|
|
<script src="src/systems/NPCPopulationSystem.js"></script> <!-- 👥 Phase 29: NPCs -->
|
|
<script src="src/systems/BiomeEnemySystem.js"></script> <!-- 👹 Phase 29: Enemies -->
|
|
<script src="src/systems/LandmarkQuestSystem.js"></script> <!-- 📜 Phase 29: Quests -->
|
|
<script src="src/systems/MapRevealSystem.js"></script> <!-- 🗺️ Phase 29: Map -->
|
|
<script src="src/systems/WorldEventSystem.js"></script>
|
|
<script src="src/systems/QuestSystem.js"></script>
|
|
<script src="src/systems/QuestSystemExpanded.js"></script> <!-- 📖 Act 1 Quest System -->
|
|
<script src="src/ui/QuestTrackerUI.js"></script> <!-- 📋 Quest Tracker UI -->
|
|
<!-- DayNightSystem merged into WeatherSystem -->
|
|
<script src="src/systems/SoundManager.js"></script>
|
|
<script src="src/systems/ParallaxSystem.js"></script>
|
|
<script src="src/systems/ParticleEffects.js"></script>
|
|
<script src="src/systems/ParticleEnhancementsSystem.js"></script> <!-- ✨ Enhanced Particles -->
|
|
<!-- New Conceptual Systems -->
|
|
<script src="src/systems/ZombieWorkerSystem.js"></script>
|
|
<script src="src/systems/LegacySystem.js"></script>
|
|
<script src="src/systems/ExpansionSystem.js"></script>
|
|
<script src="src/systems/BlueprintSystem.js"></script>
|
|
<script src="src/systems/CollectionSystem.js"></script>
|
|
<script src="src/systems/HybridSkillSystem.js"></script>
|
|
<script src="src/systems/DialogueSystem.js"></script> <!-- 💬 NPC Conversations -->
|
|
<script src="src/systems/VoiceoverSystem.js"></script> <!-- 🎤 Ana's Voice & Flashbacks -->
|
|
<script src="src/systems/TwinBondSystem.js"></script> <!-- 💞 Twin Bond (Kai ↔ Ana) -->
|
|
<script src="src/systems/OceanSystem.js"></script>
|
|
<script src="src/systems/VisualEffectsSystem.js"></script>
|
|
<script src="src/systems/PlaytimeTrackerSystem.js"></script>
|
|
<script src="src/systems/LocalizationSystem.js"></script>
|
|
<script src="src/utils/FPSMonitor.js"></script>
|
|
<script src="src/systems/PerennialCropSystem.js"></script>
|
|
<script src="src/systems/MountSystem.js"></script>
|
|
<script src="src/systems/SteamIntegrationSystem.js"></script>
|
|
<script src="src/systems/AchievementTriggers.js"></script>
|
|
<script src="src/systems/StarterChestSystem.js"></script>
|
|
<script src="src/systems/GemDropSystem.js"></script>
|
|
<script src="src/systems/StatusEffectSystem.js"></script> <!-- 🌈 Status Effects -->
|
|
|
|
<!-- Multiplayer -->
|
|
<!-- <script src="https://cdn.socket.io/4.7.2/socket.io.min.js"></script> -->
|
|
<script src="src/systems/MultiplayerSystem.js"></script>
|
|
<script src="src/systems/GraveSystem.js"></script> <!-- Grave/Rest System -->
|
|
<script src="src/systems/ScooterRepairSystem.js"></script> <!-- Scooter Repair -->
|
|
<script src="src/systems/WorkstationSystem.js"></script> <!-- Furnaces & Machines -->
|
|
<script src="src/systems/NPCSpawner.js"></script> <!-- NPC Spawner -->
|
|
<script src="src/systems/AccessibilitySystem.js"></script> <!-- Accessibility Features -->
|
|
<script src="src/systems/VisualSoundCueSystem.js"></script> <!-- Visual Sound Cues (Deaf/HoH) -->
|
|
<script src="src/systems/InputRemappingSystem.js"></script> <!-- Input Remapping (Keyboard/Controller) -->
|
|
<script src="src/systems/ScreenReaderSystem.js"></script> <!-- Screen Reader (Blind/VI) -->
|
|
<script src="src/systems/DyslexiaSupportSystem.js"></script> <!-- Dyslexia Support -->
|
|
<script src="src/systems/ADHDAutismSupportSystem.js"></script> <!-- ADHD/Autism Support -->
|
|
<script src="src/systems/MotorAccessibilitySystem.js"></script> <!-- Motor Accessibility -->
|
|
<script src="src/systems/VisualEnhancementSystem.js"></script> <!-- Visual Enhancements -->
|
|
<script src="src/systems/FogOfWarSystem.js"></script> <!-- Fog of War -->
|
|
<script src="src/systems/UIGraphicsSystem.js"></script> <!-- UI Graphics & Achievements -->
|
|
<script src="src/systems/BuildingVisualsSystem.js"></script> <!-- Building Animations & Genetics -->
|
|
<script src="src/systems/SkillTreeSystem.js"></script> <!-- Skill Tree & Progression -->
|
|
<script src="src/systems/CraftingTiersSystem.js"></script> <!-- Crafting Tiers & Tools -->
|
|
<script src="src/systems/FarmAutomationSystem.js"></script> <!-- Farm Automation & Workers -->
|
|
<script src="src/systems/AnimalBreedingSystem.js"></script> <!-- Animal Breeding & Genetics -->
|
|
<script src="src/systems/AutomationTierSystem.js"></script> <!-- Automation Tiers -->
|
|
<script src="src/systems/BreedingUISystem.js"></script> <!-- Breeding UI & Family Tree -->
|
|
<script src="src/systems/CookingSystem.js"></script> <!-- Cooking & Recipes -->
|
|
<script src="src/systems/FishingSystem.js"></script> <!-- Fishing & Minigame -->
|
|
<script src="src/systems/WorkerCreaturesSystem.js"></script> <!-- Worker Creatures -->
|
|
<script src="src/systems/MiningDungeonsSystem.js"></script> <!-- Mining & Dungeons -->
|
|
<script src="src/systems/BossBattlesSystem.js"></script> <!-- Boss Battles -->
|
|
<script src="src/systems/StoryQuestSystem.js"></script> <!-- Story & Quests -->
|
|
<script src="src/systems/MultiplayerSocialSystem.js"></script> <!-- Multiplayer & Social -->
|
|
<script src="src/systems/TechnicalPerformanceSystem.js"></script> <!-- Technical & Performance -->
|
|
<script src="src/systems/PlatformSupportSystem.js"></script> <!-- Platform Support -->
|
|
<script src="src/systems/SaveSystemExpansion.js"></script> <!-- Save System Expansion -->
|
|
<script src="src/systems/CentralPopupSystem.js"></script> <!-- Central Popup System -->
|
|
<script src="src/systems/TutorialSystem.js"></script> <!-- Tutorial System -->
|
|
<script src="src/systems/UnifiedStatsPanel.js"></script> <!-- Unified Stats Panel -->
|
|
<script src="src/systems/FullInventoryUI.js"></script> <!-- Full Inventory UI (I key) -->
|
|
<script src="src/systems/CameraSystem.js"></script> <!-- Camera System (Trailer/Screenshots) -->
|
|
|
|
<!-- 🎨 2D FLAT CONVERSION -->
|
|
<script src="data/map2d_data.js"></script>
|
|
<script src="src/systems/Flat2DTerrainSystem.js"></script>
|
|
<script src="src/systems/MicroFarmSystem.js"></script> <!-- PHASE 37 -->
|
|
<script src="src/systems/MintingSystem.js"></script> <!-- PHASE 40 -->
|
|
|
|
<!-- Entities -->
|
|
<script src="src/entities/Player.js"></script>
|
|
<script src="src/entities/NPC.js"></script>
|
|
<script src="src/entities/Boss.js"></script>
|
|
<script src="src/entities/Scooter.js"></script>
|
|
<script src="src/entities/LootChest.js"></script>
|
|
<script src="src/entities/ZombieSpawner.js"></script>
|
|
|
|
<script src="src/scenes/BootScene.js"></script>
|
|
<script src="src/scenes/PreloadScene.js"></script>
|
|
<script src="src/scenes/DemoScene.js"></script> <!-- 🎮 DEMO SCENE -->
|
|
<script src="src/scenes/DemoSceneEnhanced.js"></script> <!-- ✨ ENHANCED DEMO with Locket! -->
|
|
<script src="src/scenes/TiledTestScene.js"></script> <!-- 🗺️ Tiled Map Test Scene -->
|
|
<!-- ⚠️ TEMPORARILY DISABLED - Missing assets (prologue.json, NPC portraits) -->
|
|
<!-- <script src="src/scenes/PrologueScene.js"></script> --><!-- 🎬 Story Prologue -->
|
|
<script src="src/scenes/UIScene.js"></script>
|
|
<script src="src/scenes/StoryScene.js"></script>
|
|
<script src="src/scenes/TownSquareScene.js"></script>
|
|
|
|
<!-- 🛠️ CRAFTING SYSTEM -->
|
|
<script src="src/systems/CraftingSystem.js"></script>
|
|
<script src="src/ui/CraftingUI.js"></script>
|
|
|
|
|
|
<!-- 🆕 NEW SYSTEMS (P16-P30) - 23.12.2025 -->
|
|
<script src="src/systems/MiningSystem.js"></script> <!-- ⛏️ P16: 5 Mines, 315 levels -->
|
|
<script src="src/systems/CharacterCustomizationSystem.js"></script> <!-- 👤 P17: Gender, RGB colors -->
|
|
<script src="src/systems/TownRestorationSystem.js"></script> <!-- 🏘️ P19: 27 towns, 180 NPCs -->
|
|
<script src="src/systems/PortalRepairSystem.js"></script> <!-- 🌀 P20: 18 portals -->
|
|
<script src="src/systems/SmartZombieSystem.js"></script> <!-- 🧠 P22: Lv1-10 AI -->
|
|
<script src="src/systems/ToolSystem.js"></script> <!-- 🔧 P23: 6 tiers, durability -->
|
|
<script src="src/systems/AnaClueSystem.js"></script> <!-- 💜 P25: 50 collectibles -->
|
|
<script src="src/systems/PyramidSystem.js"></script> <!-- 🏜️ P26: Pyramids, Sphinx -->
|
|
<script src="src/systems/SlimesDogsSystem.js"></script> <!-- 🟢🐶 P27: 8 slimes, dog -->
|
|
<script src="src/systems/AnimalsSeedsSystem.js"></script> <!-- 🐄🌱 P28: 16+ animals, 100+ seeds -->
|
|
<script src="src/systems/AutomationSystem.js"></script> <!-- ⚙️ P29: Full automation -->
|
|
<script src="src/systems/InventorySystemExpanded.js"></script> <!-- 🎒 P30: 50 slots -->
|
|
|
|
<!-- 🆕 JAN 04 SYSTEMS - New Game Mechanics -->
|
|
<script src="src/systems/SleepSystem.js"></script> <!-- 💤 Sleep & Energy -->
|
|
<script src="src/systems/CraftingTablesSystem.js"></script> <!-- 🔨 Crafting Tables -->
|
|
<script src="src/systems/BakeryShopSystem.js"></script> <!-- 🥖 Bakery Shop -->
|
|
<script src="src/systems/BarberShopSystem.js"></script> <!-- 💈 Barber Shop -->
|
|
<script src="src/systems/LawyerOfficeSystem.js"></script> <!-- ⚖️ Lawyer Office -->
|
|
<script src="src/systems/ZombieMinerAutomationSystem.js"></script> <!-- ⛏️ Zombie Miners -->
|
|
<script src="src/systems/TownGrowthSystem.js"></script> <!-- 🏘️ Town Growth -->
|
|
<script src="src/systems/NPCPrivacySystem.js"></script> <!-- 🏠 NPC Privacy -->
|
|
<script src="src/systems/MasterGameSystemsManager.js"></script> <!-- 🎮 Master Coordinator -->
|
|
|
|
<!-- 🧪 TEST SCENE -->
|
|
<script src="src/scenes/SystemsTestScene.js"></script>
|
|
|
|
<!-- 🎵 NEW AUDIO SYSTEMS - JAN 8 2026 -->
|
|
<script src="src/systems/BiomeMusicSystem.js"></script> <!-- Background music cross-fade -->
|
|
<script src="src/systems/AudioTriggerSystem.js"></script> <!-- Spatial audio triggers -->
|
|
<script src="src/scenes/TestVisualAudioScene.js"></script> <!-- Visual & Audio Test Scene -->
|
|
|
|
<script src="src/scenes/GameScene.js"></script>
|
|
|
|
<script src="src/game.js"></script>
|
|
</body>
|
|
|
|
</html> |