Les éléments de décoration permettent de rendre l'univers figuré par le jeu plus vivant et plus immersif. Ils peuvent aussi être l'occasion de cacher des passages ou des objets secrets.
Charger une image
load.jsconst PNG = [ "bush" , "grass" , "bean" , ]
Créer un composant
component.js// Ajoutes ici tes propres composants
function swing( amp = 4 , speed = 1 ) { // balance l'orientation d'un objet const offset_mult = 0.5 ; return { id:"swing", require: [ "rotate","sprite" ] , update() { const k = this.pos.x + this.pos.y ; const t = time() * speed + k * offset_mult this.angle = wave(-amp,amp,t) }, } }
Déclarer un symbole
level.jsconst levelConf = { // paramètres du niveau tileWidth: 64, tileHeight: 64, tiles: { // listes des objet à placer dans les niveaux
"B": () => [ // décoration premier plan sprite("bush"), area(), anchor("bot"), swing(), offscreen({ hide: true }), rotate(), scale(1), z(1), pos(0,0), ],"b": () => [ // décoration arrière plan sprite("bush"), area(), anchor("bot"), swing(), offscreen({ hide: true }), rotate(), scale(1), pos(0,0), z(-1), ],"#": () => [ // player sprite("bean"), platformerController(), health(1), character(), area(), anchor("bot"), body(), ], "=": () => [ // bloc sprite("grass"), area(), body({ isStatic: true }), anchor("bot"), offscreen({ hide: true }), ], }, }
Placer les objets
level.js// plan du niveau const LEVELS = [ // liste des niveaux du jeu [ " === " , " = " , " # l L l " , "===========" , ], ];
l'échelle
Le composant scale
permet de modifier la taille de l'élément de décor choisi ( 1
pour la taille d'origine ).
scale( 1.3 )
la position horizontale
Le composant pos
permet de modifier l'emplacement de l'élément de décor par rapport à sa position dans le niveau en nombre de pixels.
Le premier paramètre permet de modifier la position horizontale ( -1
ou moins pour déplacer vers le haut, 1
ou plus pour déplacer vers le bas ).
pos( 0 )
la position verticale
Le composant pos
permet de modifier l'emplacement de l'élément de décor par rapport à sa position dans le niveau en nombre de pixels.
Le deuxième paramètre permet de modifier la position verticale ( -1
ou moins pour déplacer vers la gauche, 1
ou plus pour déplacer vers la droite ).
pos( 0 , 4 )
l'amplutide du mouvement
Le premier paramètre du composant swing
permet de régler l'amplitude du mouvement de l'élément de décor.
Plus le nombre est élevé plus le mouvement aura d'amplitude.
swing( 4 )
la vitesse du mouvement
Le deuxième paramètre du composant swing
permet de régler la vitesse du mouvement de l'élément de décor.
Plus le nombre est élevé plus le mouvement sera rapide.
swing( 4 , 1 )
le niveau de superposition
Le composant z
permet de régler le niveau de superposition de l'élément de décor ( -1
ou moins par s'afficher derrière le joueur, 1 ou plus par s'afficher devant ).
Si plusieurs objets sont sur le même plan, c'est celui qui a été placé le plus bas, puis le plus à droite qui s'affichera devant ( ordre dans lequel ils ont été déclarés dans le niveau ).
z( -1 )