Ouverture de porte avec E

Questions à propos du scripting. Hors Shader, GUI, Audio et Mobile.
PoisonX80
Messages : 1
Inscription : 20 Oct 2023 16:56

Ouverture de porte avec E

Message par PoisonX80 » 04 Nov 2023 22:05

Bonjour,
je travaille sur un jeux d'horreur et j'ai une porte et 2 animation sur cette porte: une où la porte s'ouvre (OpenDoor) et une autre où la porte se ferme (CloseDoor). J'aimerai que quand on s'approche de cette porte un texte apparait avec écrit "E pour ouvrir" et qu'on puissent ouvrir cette porte avec "e" quand on est a côté. Seulement voilà, je n'arrive pas a trouver de tuto (dans la bonne version et pas trop vieux)et malgré mes effort je n'y arrive pas :pleur4: , je me suis alors tourner vers ce forum en espérant que quelqu'un puissent m'aider.
Merci d'avance :super: .
Ps: je suis sur la version 2022.3.4f1 de Unity.

Avatar de l’utilisateur
jmhoubre
Messages : 859
Inscription : 05 Oct 2019 22:05

Re: Ouverture de porte avec E

Message par jmhoubre » 04 Nov 2023 23:43

Bonsoir,
1) la porte doit avoir un collider en mode trigger. Un capsule collider ou un sphere collider fera l'affaire. Le rayon du collider doit être réglé sur le distance du déclenchement de l'affichage.
2) la porte doit avoir un script avec la fonction OnTriggerEnter(), qui affiche le texte souhaité. Dans la fonction Update() du script, on scrute si la touche "E" est pressée ET si le trigger a été déclenché, dans ce cas on déclenche l'animation.

AdrienBourgeois123
Messages : 1
Inscription : 17 Nov 2023 13:26

Re: Ouverture de porte avec E

Message par AdrienBourgeois123 » 27 Nov 2023 08:59

Salut !
Pour ton problème, ça sonne comme un souci de trigger dans Unity. T'as besoin de créer un collider autour de la porte qui détecte quand le joueur est assez proche. Ensuite, tu peux afficher le texte et permettre l'interaction avec la touche "E". Pour ça, utilise les fonctions OnTriggerEnter et OnTriggerExit pour le collider. Et pour l'interaction, un simple if-statement dans la fonction Update qui vérifie si la touche "E" est pressée quand le joueur est dans le collider devrait faire l'affaire. Jette un œil aux docs Unity sur les colliders et les inputs, ça devrait t'aider. Courage, tu vas y arriver ! 🎮👻

Répondre

Revenir vers « Scripting »