Rendre un personnage invulnérable

Tu veux qu'un ou plusieurs de tes personnages ne puissent pas être attaqués par ton joueur ? Intéressant ! Voici comment faire.

Créer la fonction damage

Dans le script enemy.js crée cette nouvelle fonction.

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[0].play() ;
  
  thisEnemy.health[1] -= d ;
  
}

Modifier la fonction attack()

Toujours dans le script enemy.js, trouve la fonction attack() et supprime son contenu comme dans l'exemple.

function attack(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[0].play() ; thisEnemy.health[1] -= d ;
}

Rendre seulement certains personnages invulnérables

Désormais il ne se passe plus rien quand un joueur se dirige vers un autre personnage. Tu voudrais que ton joueur puisse tout de même attaquer certains personnages ? Dans ce cas ajoute cette ligne dans la fonction attack().

function attack(thisEnemy) {

  // ici, seul le personnage 0 peut être attaqué

if ( thisEnemy.type == 0 ) damage(thisEnemy);
}

Si besoin, modifie le 0 dans la condition pour choisir le personnage que le joueur peut continuer d'attaquer.

thisEnemy.type == 0 // pour le personnage 0
thisEnemy.type == 1 // pour le personnage 1