diff --git a/front/dist/resources/logos/logo.png b/front/dist/resources/logos/logo.png new file mode 100644 index 00000000..f4440ad5 Binary files /dev/null and b/front/dist/resources/logos/logo.png differ diff --git a/front/src/Phaser/Components/Loader.ts b/front/src/Phaser/Components/Loader.ts index ab9c0d95..d9dde0a7 100644 --- a/front/src/Phaser/Components/Loader.ts +++ b/front/src/Phaser/Components/Loader.ts @@ -1,6 +1,18 @@ +const LogoNameIndex: string = 'logo'; +const LogoResource: string = 'resources/logos/logo.png'; + +export const addLoader = (scene: Phaser.Scene): void => { + const loaderPlugin = scene.load.image(LogoNameIndex, LogoResource); + loaderPlugin.spritesheet(LogoNameIndex, LogoResource); + const promiseLoadLogoTexture = new Promise((res) => { + if (loaderPlugin.textureManager.exists(LogoNameIndex)) { + return res(scene.add.image(scene.game.renderer.width / 2, 100, LogoNameIndex)); + } + loaderPlugin.once(`filecomplete-spritesheet-${LogoNameIndex}`, () => { + res(scene.add.image(scene.game.renderer.width / 2, 100, LogoNameIndex)) + }); + }); -export const addLoader = (scene:Phaser.Scene): void => { - const loadingText = scene.add.text(scene.game.renderer.width / 2, 200, 'Loading'); const progress = scene.add.graphics(); scene.load.on('progress', (value: number) => { progress.clear(); @@ -8,7 +20,9 @@ export const addLoader = (scene:Phaser.Scene): void => { progress.fillRect(0, 270, 800 * value, 60); }); scene.load.on('complete', () => { - loadingText.destroy(); + promiseLoadLogoTexture.then((resLoadingImage: Phaser.GameObjects.Image) => { + resLoadingImage.destroy(); + }); progress.destroy(); }); } \ No newline at end of file