Salle d’évasion
Fait partie de la section Physique et gameplay du Journey Unity de Coddy. Leçon 70 sur 71.
Une salle d’évasion avec une serrure à code. Trois plaques de pression grises sont posées au sol, et la porte du mur nord ne s’ouvre que lorsque le joueur marche dessus dans le bon ordre : plaque 1, plaque 2, plaque 3. Rien dans la salle n’indique quelle plaque est laquelle. Une mauvaise plaque relance le code depuis le début et fait clignoter toutes les plaques en rouge pendant une seconde. La porte ouverte reste ouverte quelques secondes, puis se referme, mais jamais sur le joueur : tant que le joueur se tient dans l’embrasure, elle attend.
Le script Player est prêt : les flèches permettent au joueur de se déplacer, celui-ci est étiqueté Player et se trouve sur la couche Player. Écris deux scripts : Plate sur chaque plaque et CodeLock sur la serrure.
Défi
DifficileRelie les plaques et le code : 1, 2, 3.
- Dans
Plate, quand lePlayerentre, appellecodeLock.Press(number);. - Dans
Press, avecint next = 1: une correspondance affiche"Plate " + numberet ajoute 1 ; après 3, afficheUnlocked, puis réinitialisenext. - Sinon, affiche
Wrong plate, réinitialisenextet lance une coroutine : plaques enColor.red, pendant 1 seconde, puis enColor.gray.
Clique sur « Jouer » et trouve l’ordre. Puis clique sur « Vérifier ».
Essayez vous-même
using System.Collections;
using UnityEngine;
public class CodeLock : MonoBehaviour
{
[SerializeField] private Renderer[] plates;
[SerializeField] private GameObject door;
[SerializeField] private Transform doorway;
[SerializeField] private float openTime = 4f;
public void Press(int number)
{
// vérifier le code ; faire clignoter les plaques en cas d'erreur ; ouvrir la porte après la plaque 3
}
}
Toutes les leçons de Physique et gameplay
1Corps rigide
Gravité et massePousser avec AddForceSauter avec une impulsionFixedUpdate pour la physiqueVitesseCorps cinématiquesRécapitulatif : plateforme de lancement4Coroutines
InvoquerInvokeRepeating, CancelInvokeVotre première coroutineBoucles dans les coroutinesArrêter les coroutinesRécapitulatif : compte à rebours7Rotation
Angles d’EulerQuaternionsRegardez dans la direction où vous vous déplacezTourner en douceurRécapitulatif : tourelle10Projet : Évasion de l’arène
L’arèneLes chasseurs2Collisions
OnCollisionEnterQu’est-ce que j’ai touché ?Se briser à l’impactRester au solRebond et frictionFormes des collidersRécapitulatif : mur destructible5Projet : Course aux pièces
La balle roulanteDes pièces à ramasser3Déclencheurs
Colliders déclencheursOnTriggerEnterObjets à ramasserLes caisses gardent le resteZones mortellesEntrée et sortieRécapitulatif : clé et porteEntraînez-vous par vous-même : Playground Unity