diff --git a/assets/slike/zgodba/05_Chernobyl_assets_BACKUP_20260112_064319_references_intro_shots_chaos_streets_apocalypse.png b/INTRO_STORY_IMAGES/05_Chernobyl_assets_BACKUP_20260112_064319_references_intro_shots_chaos_streets_apocalypse.png similarity index 100% rename from assets/slike/zgodba/05_Chernobyl_assets_BACKUP_20260112_064319_references_intro_shots_chaos_streets_apocalypse.png rename to INTRO_STORY_IMAGES/05_Chernobyl_assets_BACKUP_20260112_064319_references_intro_shots_chaos_streets_apocalypse.png diff --git a/assets/slike/zgodba/05_Chernobyl_assets_BACKUP_20260112_064319_references_intro_shots_virus_city_aerial.png b/INTRO_STORY_IMAGES/05_Chernobyl_assets_BACKUP_20260112_064319_references_intro_shots_virus_city_aerial.png similarity index 100% rename from assets/slike/zgodba/05_Chernobyl_assets_BACKUP_20260112_064319_references_intro_shots_virus_city_aerial.png rename to INTRO_STORY_IMAGES/05_Chernobyl_assets_BACKUP_20260112_064319_references_intro_shots_virus_city_aerial.png diff --git a/assets/slike/zgodba/10_Volcanic_Zone_assets_BACKUP_20260112_064319_references_intro_shots_ana_memory_flash_purple.png b/INTRO_STORY_IMAGES/10_Volcanic_Zone_assets_BACKUP_20260112_064319_references_intro_shots_ana_memory_flash_purple.png similarity index 100% rename from assets/slike/zgodba/10_Volcanic_Zone_assets_BACKUP_20260112_064319_references_intro_shots_ana_memory_flash_purple.png rename to INTRO_STORY_IMAGES/10_Volcanic_Zone_assets_BACKUP_20260112_064319_references_intro_shots_ana_memory_flash_purple.png diff --git a/assets/slike/zgodba/MOJE_SLIKE_KONCNA_ostalo_parents_transparent_ghosts_dreamy.png b/INTRO_STORY_IMAGES/MOJE_SLIKE_KONCNA_ostalo_parents_transparent_ghosts_dreamy.png similarity index 100% rename from assets/slike/zgodba/MOJE_SLIKE_KONCNA_ostalo_parents_transparent_ghosts_dreamy.png rename to INTRO_STORY_IMAGES/MOJE_SLIKE_KONCNA_ostalo_parents_transparent_ghosts_dreamy.png diff --git a/assets/slike/zgodba/ana_barbershop_dreads_dreamy.png b/INTRO_STORY_IMAGES/ana_barbershop_dreads_dreamy.png similarity index 100% rename from assets/slike/zgodba/ana_barbershop_dreads_dreamy.png rename to INTRO_STORY_IMAGES/ana_barbershop_dreads_dreamy.png diff --git a/assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_ana_barbershop_dreads.png b/INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_ana_barbershop_dreads.png similarity index 100% rename from assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_ana_barbershop_dreads.png rename to INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_ana_barbershop_dreads.png diff --git a/assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_ana_taken_military.png b/INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_ana_taken_military.png similarity index 100% rename from assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_ana_taken_military.png rename to INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_ana_taken_military.png diff --git a/assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_birthday_cake_rd.png b/INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_birthday_cake_rd.png similarity index 100% rename from assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_birthday_cake_rd.png rename to INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_birthday_cake_rd.png diff --git a/assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_family_portrait_punk_complete.png b/INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_family_portrait_punk_complete.png similarity index 100% rename from assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_family_portrait_punk_complete.png rename to INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_family_portrait_punk_complete.png diff --git a/assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_gronk_doorway_silhouette.png b/INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_gronk_doorway_silhouette.png similarity index 100% rename from assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_gronk_doorway_silhouette.png rename to INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_gronk_doorway_silhouette.png diff --git a/assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_kai_alone_basement.png b/INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_kai_alone_basement.png similarity index 100% rename from assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_kai_alone_basement.png rename to INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_kai_alone_basement.png diff --git a/assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_kai_ana_twins_childhood.png b/INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_kai_ana_twins_childhood.png similarity index 100% rename from assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_kai_ana_twins_childhood.png rename to INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_kai_ana_twins_childhood.png diff --git a/assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_kai_bedroom_wakeup.png b/INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_kai_bedroom_wakeup.png similarity index 100% rename from assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_kai_bedroom_wakeup.png rename to INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_kai_bedroom_wakeup.png diff --git a/assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_kai_first_dreads_family.png b/INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_kai_first_dreads_family.png similarity index 100% rename from assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_kai_first_dreads_family.png rename to INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_kai_first_dreads_family.png diff --git a/assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_otac_longboard_pier.png b/INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_otac_longboard_pier.png similarity index 100% rename from assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_otac_longboard_pier.png rename to INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_otac_longboard_pier.png diff --git a/assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_parents_transparent_ghosts.png b/INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_parents_transparent_ghosts.png similarity index 100% rename from assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_parents_transparent_ghosts.png rename to INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_parents_transparent_ghosts.png diff --git a/assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_virus_xnoir_microscope.png b/INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_virus_xnoir_microscope.png similarity index 100% rename from assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_virus_xnoir_microscope.png rename to INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_virus_xnoir_microscope.png diff --git a/assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_zombie_silhouettes_panic.png b/INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_zombie_silhouettes_panic.png similarity index 100% rename from assets/slike/zgodba/assets_BACKUP_20260112_064319_references_intro_shots_zombie_silhouettes_panic.png rename to INTRO_STORY_IMAGES/assets_BACKUP_20260112_064319_references_intro_shots_zombie_silhouettes_panic.png diff --git a/assets/slike/zgodba/assets_images_intro_sequence_birthday_cake_rd_dreamy.png b/INTRO_STORY_IMAGES/assets_images_intro_sequence_birthday_cake_rd_dreamy.png similarity index 100% rename from assets/slike/zgodba/assets_images_intro_sequence_birthday_cake_rd_dreamy.png rename to INTRO_STORY_IMAGES/assets_images_intro_sequence_birthday_cake_rd_dreamy.png diff --git a/assets/slike/zgodba/assets_images_intro_sequence_kai_first_dreads_family_dreamy.png b/INTRO_STORY_IMAGES/assets_images_intro_sequence_kai_first_dreads_family_dreamy.png similarity index 100% rename from assets/slike/zgodba/assets_images_intro_sequence_kai_first_dreads_family_dreamy.png rename to INTRO_STORY_IMAGES/assets_images_intro_sequence_kai_first_dreads_family_dreamy.png diff --git a/assets/slike/zgodba/assets_images_intro_sequence_otac_longboard_pier_dreamy.png b/INTRO_STORY_IMAGES/assets_images_intro_sequence_otac_longboard_pier_dreamy.png similarity index 100% rename from assets/slike/zgodba/assets_images_intro_sequence_otac_longboard_pier_dreamy.png rename to INTRO_STORY_IMAGES/assets_images_intro_sequence_otac_longboard_pier_dreamy.png diff --git a/assets/slike/zgodba/assets_images_intro_sequence_zombie_silhouettes_panic_dreamy.png b/INTRO_STORY_IMAGES/assets_images_intro_sequence_zombie_silhouettes_panic_dreamy.png similarity index 100% rename from assets/slike/zgodba/assets_images_intro_sequence_zombie_silhouettes_panic_dreamy.png rename to INTRO_STORY_IMAGES/assets_images_intro_sequence_zombie_silhouettes_panic_dreamy.png diff --git a/INTRO_STORY_IMAGES/download.jpg b/INTRO_STORY_IMAGES/download.jpg new file mode 100644 index 000000000..837b537c6 Binary files /dev/null and b/INTRO_STORY_IMAGES/download.jpg differ diff --git a/assets/slike/zgodba/assets_BACKUP_20260112_064319_sprites_portraits_ana_portrait.png b/assets/slike/zgodba/assets_BACKUP_20260112_064319_sprites_portraits_ana_portrait.png deleted file mode 100644 index 2a3e3f2a0..000000000 Binary files a/assets/slike/zgodba/assets_BACKUP_20260112_064319_sprites_portraits_ana_portrait.png and /dev/null differ diff --git a/assets/slike/zgodba/assets_BACKUP_20260112_064319_sprites_portraits_gronk_portrait.png b/assets/slike/zgodba/assets_BACKUP_20260112_064319_sprites_portraits_gronk_portrait.png deleted file mode 100644 index 6de9d1703..000000000 Binary files a/assets/slike/zgodba/assets_BACKUP_20260112_064319_sprites_portraits_gronk_portrait.png and /dev/null differ diff --git a/assets/slike/zgodba/assets_BACKUP_20260112_064319_sprites_portraits_kai_portrait.png b/assets/slike/zgodba/assets_BACKUP_20260112_064319_sprites_portraits_kai_portrait.png deleted file mode 100644 index 523527570..000000000 Binary files a/assets/slike/zgodba/assets_BACKUP_20260112_064319_sprites_portraits_kai_portrait.png and /dev/null differ diff --git a/index.html b/index.html index 5dbf59d20..e4313735c 100644 --- a/index.html +++ b/index.html @@ -245,6 +245,7 @@ + diff --git a/src/game.js b/src/game.js index fada74ac3..cc4e60846 100644 --- a/src/game.js +++ b/src/game.js @@ -81,6 +81,7 @@ const config = { PreloadScene, AssetTestScene, IntroScene, + MainMenuScene, PrologueScene, EnhancedPrologueScene, UltimatePrologueScene, diff --git a/src/scenes/MainMenuScene.js b/src/scenes/MainMenuScene.js new file mode 100644 index 000000000..e11abb472 --- /dev/null +++ b/src/scenes/MainMenuScene.js @@ -0,0 +1,113 @@ +class MainMenuScene extends Phaser.Scene { + constructor() { + super({ key: 'MainMenuScene' }); + } + + preload() { + // 1. GLASBA + this.load.audio('main_theme', 'assets/audio/music/main_theme.mp3'); + + // 2. OZADJE (Placeholder logic incase image is missing) + // If you have the specific file: 'assets/slike/main_menu/menu_bg_noir.png' + this.load.image('menu_bg_noir', 'assets/slike/gui/menu_bg_noir.png'); + } + + create() { + // 1. GLASBA: Takojšen začetek (Loop) + if (!this.sound.get('main_theme')) { + this.sound.play('main_theme', { loop: true, volume: 0.5 }); + } + + // 2. OZADJE: Kai na spalni vreči, Noir stil + // Add image centered + const bg = this.add.image(this.cameras.main.centerX, this.cameras.main.centerY, 'menu_bg_noir'); + // Fit to screen (cover) + const scaleX = this.cameras.main.width / bg.width; + const scaleY = this.cameras.main.height / bg.height; + const scale = Math.max(scaleX, scaleY); + bg.setScale(scale).setTint(0x888888); // Slight dark tint base + + // VIGNETTE EFFECT (Temni robovi) - Noir Stil + // Create a radial gradient texture on the fly or use an overlay + const vignette = this.add.graphics(); + vignette.fillStyle(0x000000, 1); + // Draw separate rects or use a texture, simplest is a big circle cut out or just overlay image + // For pure code vignette: + // We will simple darken edges using a radial gradient Sprite if possible, + // but Phaser Graphics doesn't support radial gradients easily in WebGL without texture. + // Alternative: Add a dark border overlay. + + // Simulating vignette with dark overlay and lower alpha in center (hacky but works without assets) + // Ideally we load a 'vignette.png' + + // Let's use a Title Text for Flair + this.add.text(this.cameras.main.centerX, 100, "MRTVA DOLINA", { + fontFamily: 'Access', // Or your game font + fontSize: '84px', + color: '#FFFFFF', + stroke: '#000000', + strokeThickness: 8 + }).setOrigin(0.5); + + + // 3. GUMB ZA ZAČETEK: Style 32 (5px rob) + this.createStyle32Button(this.cameras.main.centerX, 400, "ZAČNI POT", () => { + // Stop music if you want fresh start or keep it + this.sound.stopAll(); + + // Ko klikneš, ugasnemo meni in zaženemo INTRO + this.scene.start('IntroScene'); + }); + } + + /** + * Helper to create Style 32 Button + * 5px Black Border, White Text, Hover Effect + */ + createStyle32Button(x, y, text, onClick) { + // Container + const button = this.add.container(x, y); + + // Background (White inside) + const bg = this.add.rectangle(0, 0, 300, 60, 0xFFFFFF); + // Border (Black 5px) - simulated by a larger black rectangle behind or stroke + // Actually Phaser Rectangle allows stroke + bg.setStrokeStyle(5, 0x000000); // 5px Black Border + bg.setInteractive({ useHandCursor: true }); + + // Text + const label = this.add.text(0, 0, text, { + fontFamily: 'Arial', // Replace with game font + fontSize: '28px', + color: '#000000', + fontStyle: 'bold' + }).setOrigin(0.5); + + button.add([bg, label]); + + // Interactions + bg.on('pointerdown', () => { + bg.setFillStyle(0xDDDDDD); // Press effect + }); + + bg.on('pointerup', () => { + bg.setFillStyle(0xFFFFFF); + onClick(); + }); + + bg.on('pointerover', () => { + bg.setFillStyle(0xEEEEEE); // Hover light gray + label.setScale(1.1); // Pop effect + }); + + bg.on('pointerout', () => { + bg.setFillStyle(0xFFFFFF); + label.setScale(1.0); + }); + } +} + +// Export for node/webpack env (if needed) or global +if (typeof module !== 'undefined' && module.exports) { + module.exports = MainMenuScene; +} diff --git a/src/scenes/PreloadScene.js b/src/scenes/PreloadScene.js index 98a4e3b51..8d25a04b3 100644 --- a/src/scenes/PreloadScene.js +++ b/src/scenes/PreloadScene.js @@ -551,7 +551,7 @@ class PreloadScene extends Phaser.Scene { // ✅ Starting INTRO SEQUENCE (NEW! Jan 10, 2026) this.time.delayedCall(500, () => { console.log('🎬 Starting GameScene (DEMO MODE - SKIP INTRO)...'); - this.scene.start('GameScene'); // ← NEW INTRO SEQUENCE + this.scene.start('MainMenuScene'); // 🎮 MENU START }); } });