GOOGLE ADS

vendredi 29 avril 2022

Comment coder un script pour passer à la scène suivante après avoir remporté une manche

Comment coder un script pour passer à la scène suivante après avoir gagné une manche? que faire pour passer à la scène suivante lorsque le joueur remporte la manche et non lorsque le bouton de la souris est enfoncé. Je fais principalement référence à ce passage Voici mon code pour la commutation de scène :


using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
public class LevelLoader: MonoBehaviour
{
public Animator transition;
public float transitionTime = 1f;
// Update is called once per frame
void Update()
{
if(Input.GetMouseButtDown(0))
{
LoadNextLevel();
}
}
public void LoadNextLevel()
{
StartCoroutine(LoadLevel(SceneManager.GetActiveScene().buildIndex + 1));
}
IEnumerator LoadLevel(int levelIndex)
{
transition.SetTrigger("Start");
yield return new WaitForSeconds(transitionTime);
SceneManager.LoadScene(levelIndex);
}
}

Solution du problème

Tout ce que vous avez à faire est d'appeler LoadNextLevel() lorsque les conditions sont remplies pour charger le niveau suivant. Je pense qu'il faut l'appeler ici:

if (win)
{
yield return new WaitForSecondsRealtime(0.3f);
LoadNextLevel();
}

Aucun commentaire:

Enregistrer un commentaire

Comment utiliseriez-vous .reduce() sur des arguments au lieu d'un tableau ou d'un objet spécifique ?

Je veux définir une fonction.flatten qui aplatit plusieurs éléments en un seul tableau. Je sais que ce qui suit n'est pas possible, mais...