/// <summary> /// Valide les achats de l'utilisateur : /// - Créé les nouvelles unités /// - Déduit les fonds correspondants /// - Vide la liste du panier /// - Ferme le panel ShopWrapper /// </summary> public void ValiderButton() { if (!guiManager.GetComponent <GUIController>().dialogOpened || shopPanel.activeSelf) // S'il n'y a pas d'autre fenêtre de dialogue d'ouverte { if (cartItems.Count > 0) { int spawned = 0; Transform unitList = GameObject.Find("Unites").transform; // Pour chaque unité for (int i = 0; i < 7; i++) { GameObject item; // S'il y a une entrée dans le panier if (cartItems.TryGetValue(i, out item)) { // Récupération du nombre demandé par le joueur int count = Int32.Parse(item.transform.Find("Count").gameObject.GetComponent <Text>().text); // Création de chaque instance demandée de cette unité for (int j = 0; j < count; j++) { Vector3 position = new Vector3(41.0f, 1.2f, 19.0f - 0.75f * spawned); CreateUnit(i, unitList, position, joueur); spawned++; } } } joueur.AjouterCredits(-total); SetTotalText(0); AnnulerButton(); } } }