Le changement de scène (Première version)

Maintenant, que Brock peut enfin se déplacer dans une des maps, il est temps qu’il aille explorer les suivantes, il ne va pas rester tout le jeu chez lui, où est l’aventure sinon.

Afin qu’il puisse passer de scène en scène, des Exits Points furent créés pour chaque map. Ces points sont représentés par un Empty possédant un BoxCollider2D dont l’option IsTrigger est activée. Cette option permet de déclencher une fonction quand un autre GameObject entre dans la zone de l’Empty. Ici, on veut que le changement de scène se passe quand Brock entre dans l’Exit Point.

Les points créés, il faut les rendre fonctionnelles. Un script fut alors créé pour permettre le chargement d’une autre scène lorsque Brock entre dans l’Exit Point. Ce script fonctionne avec la classe SceneManagement d’Unity. Elle permet de charger une scène, avec la fonction LoadScene, si cette dernière se trouve dans les paramètres du Build. Sans ça, impossible de charger une nouvelle scène.

Le nom de la scène à charger est alors passé en paramètre du script. La fonction OnTriggerEnter2D est alors utilisée et vérifie le tag de l’objet qui a trigger l’Exit Point. Si celui-ci correspond au tag “player”, la fonction LoadScene est appelée avec en paramètre le nom de la scène donnée précédemment. La nouvelle scène est alors chargée et Brock apparaît à la position de l’ancien Exit Point.

Bien sûr, des améliorations sont encore possibles pour le changement de scène, on pourrait faire le changement avec une transition pour éviter d’avoir un changement brusque ou encore ajouter des Starts Points pour initialiser une position de départ pour Brock dans chaque scène.