This commit is contained in:
2025-12-07 21:31:44 +01:00
parent 4a0ca267ea
commit 974141c08c
52 changed files with 2485 additions and 397 deletions

View File

@@ -7,6 +7,8 @@ class PreloadScene extends Phaser.Scene {
preload() {
console.log('⏳ PreloadScene: Loading assets...');
this.createLoadingBar();
// Load ALL custom sprites
this.load.image('player_sprite', 'assets/player_sprite.png');
this.load.image('zombie_sprite', 'assets/zombie_sprite.png');
@@ -27,6 +29,30 @@ class PreloadScene extends Phaser.Scene {
this.load.image('objects_pack2', 'assets/objects_pack2.png');
this.load.image('trees_vegetation', 'assets/trees_vegetation.png');
// User-uploaded pixel art assets (original)
this.load.image('flowers', 'assets/flowers.png');
this.load.image('tree_green', 'assets/tree_green.png');
this.load.image('tree_blue', 'assets/tree_blue.png');
this.load.image('tree_dead', 'assets/tree_dead.png');
this.load.image('rock_asset', 'assets/rock_asset.png');
// NEW transparent tree/rock assets
this.load.image('tree_blue_new', 'assets/tree_blue_new.png');
this.load.image('tree_green_new', 'assets/tree_green_new.png');
this.load.image('rock_1', 'assets/rock_1.png');
this.load.image('rock_2', 'assets/rock_2.png');
this.load.image('tree_dead_new', 'assets/tree_dead_new.png');
this.load.image('flowers_new', 'assets/flowers_new.png');
this.load.image('hill_sprite', 'assets/hill_sprite.png');
this.load.image('fence', 'assets/fence.png');
this.load.image('gravestone', 'assets/gravestone.png');
// Voxel stil asset-i (2.5D)
this.load.image('tree_voxel_green', 'assets/tree_voxel_green.png');
this.load.image('tree_voxel_blue', 'assets/tree_voxel_blue.png');
this.load.image('tree_voxel_dead', 'assets/tree_voxel_dead.png');
this.load.image('rock_voxel', 'assets/rock_voxel.png');
// Wait for load completion then process transparency
this.load.once('complete', () => {
this.processAllTransparency();
@@ -69,7 +95,28 @@ class PreloadScene extends Phaser.Scene {
'grass_sprite',
'leaf_sprite',
'wheat_sprite',
'stone_texture'
'stone_texture',
// New pixel art assets
'flowers',
'tree_green',
'tree_blue',
'tree_dead',
'rock_asset',
// NEW transparent assets
'tree_blue_new',
'tree_green_new',
'rock_1',
'rock_2',
'tree_dead_new',
'flowers_new',
'hill_sprite',
'fence',
'gravestone',
// Voxel stil
'tree_voxel_green',
'tree_voxel_blue',
'tree_voxel_dead',
'rock_voxel'
];
spritesToProcess.forEach(spriteKey => {
@@ -127,6 +174,42 @@ class PreloadScene extends Phaser.Scene {
this.textures.addCanvas(spriteKey, canvas);
}
createLoadingBar() {
const width = this.cameras.main.width;
const height = this.cameras.main.height;
const progressBar = this.add.graphics();
const progressBox = this.add.graphics();
progressBox.fillStyle(0x222222, 0.8);
progressBox.fillRect(width / 2 - 160, height / 2 - 25, 320, 50);
const loadingText = this.add.text(width / 2, height / 2 - 50, 'Loading NovaFarma...', {
font: '20px Courier New',
fill: '#ffffff'
});
loadingText.setOrigin(0.5, 0.5);
const percentText = this.add.text(width / 2, height / 2, '0%', {
font: '18px Courier New',
fill: '#ffffff'
});
percentText.setOrigin(0.5, 0.5);
this.load.on('progress', (value) => {
percentText.setText(parseInt(value * 100) + '%');
progressBar.clear();
progressBar.fillStyle(0x00ff00, 1); // Matrix Green
progressBar.fillRect(width / 2 - 150, height / 2 - 15, 300 * value, 30);
});
this.load.on('complete', () => {
progressBar.destroy();
progressBox.destroy();
loadingText.destroy();
percentText.destroy();
});
}
create() {
console.log('✅ PreloadScene: Assets loaded!');
window.gameState.currentScene = 'PreloadScene';