Je débute sur Unity et j'essaie de me familiariser avec le changement de scène et la création de niveaux. Je connais la commande SceneManager.LoadScene qui permet de passer d'une scène à une autre, et je sais comment passer d'une scène à une autre en appuyant sur une touche prédéfinie. En revanche je souhaiterais pouvoir ne permettre aux joueurs de passer à la scène suivante seulement si il est proche d'un objet. Par exemple je voudrais que lorsqu'il est proche d'un drapeau et qu'il appuie sur espace cela lance un niveau.
J'ai donc essayé de travailler avec un box collider et un on trigger pour que lorsque le joueur entre dans la zone et appuie sur espace cela passe à la scène suivante. Mais j'ai un peu du mal à écrire le script étant donné que j'ai encore un peu de mal avec le C#. Voilà donc l'algorithme que j'ai écris :
Code : Tout sélectionner
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ChangeScenOnclickSpace : MonoBehaviour {
public void Update ()
{
if (Input.GetKeyDown (KeyCode.Space)&&Collider.gameObject.tag=="Player")
{
SceneManager.LoadScene("Niveau1");
}
}
}
Merci d'avance, Syp.