diff --git a/front/src/Phaser/Entity/PlayerTextures.ts b/front/src/Phaser/Entity/PlayerTextures.ts index 6d0f99c0..8a560b56 100644 --- a/front/src/Phaser/Entity/PlayerTextures.ts +++ b/front/src/Phaser/Entity/PlayerTextures.ts @@ -18,6 +18,7 @@ export const PLAYER_RESOURCES: BodyResourceDescriptionListInterface = { "male6": {name: "male6", img: "resources/characters/pipoya/Male 17-2.png"}, "male7": {name: "male7", img: "resources/characters/pipoya/Male 18-1.png"}, "male8": {name: "male8", img: "resources/characters/pipoya/Male 16-4.png"}, + "male9": {name: "male9", img: "resources/characters/pipoya/Teacher male 02.png"}, "Female1": {name: "Female1", img: "resources/characters/pipoya/Female 01-1.png"}, "Female2": {name: "Female2", img: "resources/characters/pipoya/Female 02-2.png"}, "Female3": {name: "Female3", img: "resources/characters/pipoya/Female 03-4.png"}, @@ -25,7 +26,8 @@ export const PLAYER_RESOURCES: BodyResourceDescriptionListInterface = { "Female5": {name: "Female5", img: "resources/characters/pipoya/Female 10-3.png"}, "Female6": {name: "Female6", img: "resources/characters/pipoya/Female 17-2.png"}, "Female7": {name: "Female7", img: "resources/characters/pipoya/Female 18-1.png"}, - "Female8": {name: "Female8", img: "resources/characters/pipoya/Female 16-4.png"} + "Female8": {name: "Female8", img: "resources/characters/pipoya/Female 16-4.png"}, + "Female9": {name: "Female9", img: "resources/characters/pipoya/Female 07-2.png"} }; export const COLOR_RESOURCES: BodyResourceDescriptionListInterface = { diff --git a/front/src/Phaser/Entity/PlayerTexturesLoadingManager.ts b/front/src/Phaser/Entity/PlayerTexturesLoadingManager.ts index 6f684b2d..c2a421e5 100644 --- a/front/src/Phaser/Entity/PlayerTexturesLoadingManager.ts +++ b/front/src/Phaser/Entity/PlayerTexturesLoadingManager.ts @@ -26,9 +26,9 @@ export const loadAllDefaultModels = (load: LoaderPlugin): BodyResourceDescriptio export const loadCustomTexture = (load: LoaderPlugin, texture: CharacterTexture) => { const name = 'customCharacterTexture'+texture.id; load.spritesheet(name,texture.url,{frameWidth: 32, frameHeight: 32}); + return name; } - export const lazyLoadPlayerCharacterTextures = (loadPlugin: LoaderPlugin, texturePlugin: TextureManager, texturekeys:Array): Promise => { const promisesList:Promise[] = []; texturekeys.forEach((textureKey: string|BodyResourceDescriptionInterface) => { diff --git a/front/src/Phaser/Login/CustomizeScene.ts b/front/src/Phaser/Login/CustomizeScene.ts index 2cc58a8e..c6364ef6 100644 --- a/front/src/Phaser/Login/CustomizeScene.ts +++ b/front/src/Phaser/Login/CustomizeScene.ts @@ -60,6 +60,9 @@ export class CustomizeScene extends ResizableScene { const textures = localUser?.textures; if (textures) { for (const texture of textures) { + if(texture.level === -1){ + continue; + } loadCustomTexture(this.load, texture); const name = 'customCharacterTexture'+texture.id; this.layers[texture.level].unshift({ diff --git a/front/src/Phaser/Login/SelectCharacterScene.ts b/front/src/Phaser/Login/SelectCharacterScene.ts index 723638f5..82a9f75c 100644 --- a/front/src/Phaser/Login/SelectCharacterScene.ts +++ b/front/src/Phaser/Login/SelectCharacterScene.ts @@ -6,7 +6,7 @@ import {EnableCameraSceneName} from "./EnableCameraScene"; import {CustomizeSceneName} from "./CustomizeScene"; import {ResizableScene} from "./ResizableScene"; import {localUserStore} from "../../Connexion/LocalUserStore"; -import {loadAllDefaultModels} from "../Entity/PlayerTexturesLoadingManager"; +import {loadAllDefaultModels, loadCustomTexture} from "../Entity/PlayerTexturesLoadingManager"; import {addLoader} from "../Components/Loader"; import {BodyResourceDescriptionInterface} from "../Entity/PlayerTextures"; @@ -22,7 +22,7 @@ enum LoginTextures { } export class SelectCharacterScene extends ResizableScene { - private readonly nbCharactersPerRow = 4; + private readonly nbCharactersPerRow = 6; private textField!: TextField; private pressReturnField!: TextField; private logo!: Image; @@ -51,6 +51,18 @@ export class SelectCharacterScene extends ResizableScene { this.playerModels = loadAllDefaultModels(this.load); this.load.image(LoginTextures.customizeButton, 'resources/objects/customize.png'); this.load.image(LoginTextures.customizeButtonSelected, 'resources/objects/customize_selected.png'); + + const localUser = localUserStore.getLocalUser(); + const textures = localUser?.textures; + if (textures) { + for (const texture of textures) { + if(texture.level !== -1){ + continue; + } + const name = loadCustomTexture(this.load, texture); + this.playerModels.push({name: name, img: texture.url}); + } + } } create() {