Accueil Lifestyle Culture Geek Je code, tu codes… vous codez ? #10

Je code, tu codes… vous codez ? #10

1

C’est qui l’boss ?

 

Bonjour à toutes et à tous, et bienvenue dans cette nouvelle série d’articles qui traitera – en long, large et autres travers – de la programmation, et puisque nous sommes sur Cleek, nous parlerons bien entendu ici de l’art geek dans toute sa splendeur : le jeu vidéo et les étapes nécessaires pour créer le vôtre de A à Z !

Non, non, ne fuyez pas tout de suite, rassurez-vous, le développement de logiciels n’est en aucun cas, contrairement à certaines idées reçues, une affaire d’intellos reclus et monomaniaques ! En effet, quelques cuillères à soupe de logique, une ou deux onces de patience ainsi que quelques grammes de curiosité sont les seuls ingrédients requis pour développer la base d’un jeu vidéo.

Cette semaine, un ajout de taille, et non des moindres : notre premier boss ! Notre objectif sera relativement simple : au bout de quelques minutes, le spawner de vaisseaux ennemis s’interrompt pour laisser place à l’apparition de notre boss, qui s’arrêtera au milieu de l’écran pour commencer à tirer ses propres projectiles. Il va sans dire que ce gros méchant sera doté d’une réserve de points de vie importante !

 

[divider]Le physics ne fait pas tout[/divider]

 

Emparez-vous pour commencer de ce magnifique sprite, et ajoutez-le à votre projet dans le bon dossier.

 

Beau comme un sous neuf !
Beau comme un sous neuf !

 

Glissez ce sprite dans la Hierarchy et augmentez son échelle en X et Y à 2 pour doubler sa taille à l’écran. Appliquez une rotation de -90 sur l’axe Z pour orienter correctement notre boss.

 

 

Ensuite, ajoutez un Rigidbody dont vous décochez la gravité (« Use gravity ») et auquel vous appliquez des contraintes de rotation en X, Y et Z. Pour finir avec le sprite et sa physique, vous pouvez ajouter un box collider qui reprend l’avant du boss : le seul endroit où les tirs lui feront des dégâts. Cochez l’option « Is trigger ».

 

 

 

[divider]Un coup de mou[/divider]

 

Avant de passer à la suite de notre boss, fabriquons lui un projectile digne d’être tiré par un vaisseau si majestueux. C’est décidé, notre premier boss lancera des sphères de plasma bleu-pixel… un peu comme l’image que voici :

 

 

Comme d’habitude, dans le dossier sprite, puis glissez le sur votre Hierarchy. Ajoutez un Rigidbody dont vous décochez la gravité, puis créer la sphère de collision via l’outil « Sphere Collider ». N’oubliez pas de cocher l’option « Is Trigger ».

Nous allons ensuite ajouter trois scripts sur notre « bossShoot » :

  • MoveShoot (speed = -3)
  • FreeObject (IsEnnemi = true)
  • GestionSante (IsEnnemi = true, AExplosion = ExplosionPrefab, Degats = 1, PointsDeVie = 2)

 

 

Une fois cela fait, renommez le GameObject créé en « BossShootPrefab » et glissez-le dans le dossier Prefab, puis supprimez-le de la Hierarchy.

 

[divider]Si peu de code[/divider]

 

Créons un nouveau script que nous baptiserons « MoveBoss ».

 

 

Recopiez ce code à l’intérieur, et voyons ensemble comment il fonctionne :

  • le boss démarre à l’extrémité droite de l’écran, il va se déplacer vers la gauche jusqu’à atteindre le point « StopForward »
  • quand il atteint le point d’arrêt « StopForward », la variable « BossCanShoot » va passer à True, autorisant le boss à tirer sur notre pauvre Nyan-Cat
  • le boss se déplace de haut en bas sans s’arrêter

 

Après le déplacement, place à la violence, avec l’utilisation par notre Boss du prefab créé tout à l’heure : le « BossShootPrefab » qui sera instancié à intervalles réguliers par le script « BossFire ».

Créez ce script. Maintenant.

 

 

Rien de bien nouveau dans ce morceau de code. Notez néanmoins la ligne dans laquelle nous farfouillons dans le script BossFire pour aller récupérer la valeur de la variable « BossCanShoot ».

Retournons sur notre boss dans la Hierarchy, et ajoutons lui nos deux derniers scripts créés : MoveBoss et BossFire. La dernière chose dont nous avons besoin sera le script GestionSante, ajoutez-le en fixant 50 points de vie par exemple.

 

 

Terminons la conception de notre premier boss en le convertissant en prefab après l’avoir renommé « Boss1Prefab » (le glisser dans le dossier prefab, puis le supprimer de la Hierarchy).

 

[divider]Je spawn, tu spawns, il….[/divider]

 

La dernière chose à faire est de modifier le script qui fait apparaître les ennemis. Faites confiance au script suivant, il n’est pas méchant :

 

 

Nous attendons simplement que la valeur du compteur dépasse les 3600, après quoi nous bloquons l’apparition des vaisseaux ennemis basiques au profit de l’apparition du boss. Sauvegardez le script et associez dans Unity le prefab de boss au champ correspondant du spawner comme sur l’image suivante :

 

 

Sauvegardez, testez et tentez de survivre plus de trois minutes !

 

1 COMMENTAIRE

Comments are closed.

Quitter la version mobile