Ajouter ses propres effets sonores

pour Danloba, Rylan et Safwan (Forum des Images)

Tu as réalisé ton propre enregistrement ? Voici comment l'ajouter à ton jeu en quelques étapes.

Ajouter ton fichier

Pour commencer, il va falloir charger ton fichier dans le programme. Si tu as fait le hack pour ajouter ses propres assets, tu devrais savoir comment faire. Sinon, voici un petit rappel.

Clique sur la petite flèche en haut à gauche de la page de ton code source.

Tu peux alors voir la liste des fichiers compris dans ton jeu. Clique sur la petite flèche sur le côté pour y ajouter ta bande-son.

Clique alors sur Add File et glisse ton fichier dans la fenêtre qui vient d’apparaître.

Déclarer son fichier dans le programme

Une fois que tu as uploadé ton fichier dans le programme, rends-toi dans le script loadAssets.js et trouve la fonction loadAudio(). Dans cette fonction, ajoute la ligne suivante en remplaçant mon-fichier.wav par le nom de ton fichier.

function loadAudio() {
  
  // charge les sons du jeu
  
  musics[0] = loadSound( 'assets/audio/drum_lesson.mp3' )   ;
  musics[1] = loadSound( 'assets/audio/green-monster.mp3' ) ;
  musics[2] = loadSound( 'assets/audio/like-a-wimp.mp3' )   ;
  musics[3] = loadSound( 'assets/audio/lune.mp3' )          ;
  musics[4] = loadSound( 'assets/audio/mesmen.mp3' )        ;
  musics[5] = loadSound( 'assets/audio/projection.mp3' )
  
  fx[0] = loadSound('assets/audio/defeat.mp3')     ;
  fx[1] = loadSound('assets/audio/equip.mp3')      ;
  fx[2] = loadSound('assets/audio/hit.mp3')        ;
  fx[3] = loadSound('assets/audio/hit2.mp3')       ;
  fx[4] = loadSound('assets/audio/note.mp3')       ;
  fx[5] = loadSound('assets/audio/opendoor.mp3')   ;
  fx[6] = loadSound('assets/audio/notworking.mp3') ;
 fx[7] = loadSound( 'mon-fichier.wav' );
            
}

Attention à bien mettre la bonne extension au nom de ton fichier. S'il s'agit d'un fichier mp3 le nom du fichier devra se terminer par .mp3, si c'est un wav devra se terminer par .wav.

Déclencher ton effet sonore

Il ne te reste plus qu'a ajouter cette ligne à l'endroit de ton programme où tu veux déclencher ton effet sonore.

fx[7].play() ;

Examples

Voici quelques exemples pour t'aider.

Dans cet exemple j'ai modifié la fonction damage() dans le script enemy.js pour remplacer le bruit que font les personnages quand ils ont été vaincus.

function damage(thisEnemy) {

  // fait perdre un point de vie à l'adversaire

  let d = 1;
  let h = thisEnemy.health[1] ;
  
  if ( h == 3 ) fx[2].play() ;
  if ( h == 2 ) fx[3].play() ;
  if ( h <= 1 )fx[7].play() ; // nouveau son
  
  thisEnemy.health[1] -= d ;
  
}

Dans celui-ci, j'ai modifié la fonction pickItem() dans le script item.js pour remplacer le bruit que font les objets lorsqu'ils sont ramassés.

function pickItem( thisItem ) {

  // ici j'ai remplacé le bruit que font les objets l'orsqu'il sont rammassés
  
  let x = thisItem.pos.x ;
  let y = thisItem.pos.y ;
  
  playerPos[1] = createVector( x , y ) ;
  append( onHand , thisItem ) ;
  items = supprObj( items , thisItem ) ;
  
 fx[7].play() ; // nouveau son

}

Là, j'ai modifié la fonction winGame() dans le script game.js pour remplacer le bruit que fait le jeu lorsque le joueur gagne.

function winGame() {
  
  fx[7].play() ; // nouveau son
  
  win = true ;
  savedTime = millis() ;
  
}

Tu peux bien sûr mettre des sons ailleurs. N'hésite pas à utiliser le raccourci cnrtl+f, puis chercher play() pour trouver où sont cachés les autres effets sonores de ton jeu.