Debug.Log("Win") quand ..

Le problème exposé dans ce sujet a été résolu.

Bonjour après 3 jours d’entrainement intensif sur une série en anglais (youtube), j’ai enfin apris le gros de ’unity..xd En tous cas, ma quéstion c’est ça, j’ai fait un petit projet ou je contrôle une boule qui quand elle entre en collision avec des "pièces", celles-çi se détruisent, voilà mon code, désolé si c’est mal endenté ou autre je débute un peu dans la prog et je suis encore au collège ..

using System.Collections; using System.Collections.Generic; using UnityEngine;

public class Coin : MonoBehaviour { GameObject[] test;

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// Use this for initialization
void Start ()
{

}

// Update is called once per frame
void Update ()
{
    tes = GameObject.FindGameObjectsWithTag ("Coin");
    if (tes )
    {
        Debug.Log ("WIN");
    }
}

void OnCollisionEnter(Collision col)
{
    if (col.gameObject.tag == "Coin") 
    {
        Destroy (col.gameObject);
    }

}

} La variable est affiché dans le texte non dans le code Je voudrais faire apparaitre un WIN dans la consolle quand toutes les "Coins" sont détruites, j’ai essayé de faire coin.enabled = false; mais cela ne marche pas non plus Comment je devrais faire ? Merci

Salut,

Je ne connais pas bien Unity, mais il me semblerait qu’il faudrait plutôt utiliser tes.Length == 0 comme condition, vu que tes est un tableau de GameObject, il sera vide (et aura donc une taille de 0) si aucun objet n’a été trouvé. :)

Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte