2017-09-17 5 views
0

J'ai ce problème, que je dessine un nouveau Rect avec une interface graphique: il dessine seulement maintenant sur l'écran. Ce que je veux faire est de faire de ce dessin un enfant d'un objet, donc je peux le cacher avec SetActive(false). Ce sera uniquement disponible lorsque les joueurs feront une pause et ouvriront l'inventaire. Le jeu est 2D pour Android.Comment créer une interface utilisateur graphique Rect enfant d'un objet?

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

public class Inventory : MonoBehaviour 
{ 
    public int SlotsX, SlotsY; 

    public GUISkin Skin; 

    public List<Item> inventory = new List<Item>(); 
    public List<Item> slots = new List<Item>(); 

    private ItemDatabase database; 

    void Start() 
    { 
     for (int i = 0; i < (SlotsX * SlotsY); i++) 
     { 
      slots.Add(new Item()); 
     } 

     database = GameObject.FindGameObjectWithTag("Item Database").GetComponent<ItemDatabase>(); 
     inventory.Add(database.Items[0]); 
     inventory.Add(database.Items[1]); 
     inventory.Add(database.Items[3]); 
     inventory.Add(database.Items[4]); 
     inventory.Add(database.Items[5]); 
     inventory.Add(database.Items[6]); 
    } 

    void OnGUI() 
    { 
     GUI.skin = Skin; 
     DrawInventory(); 
     for (int i = 0; i < inventory.Count; i++) 
     { 
      GUI.Label(new Rect(10, i * 40, 200, 50), inventory[i].itemName); 
     } 
    } 

    void DrawInventory() 
    { 
     for (int x = 0; x < SlotsX; x++) 
     { 
      for (int y = 0; y < SlotsY; y++) 
      { 
       GUI.Box(new Rect(x * 180, y * 180, 160, 160), "", Skin.GetStyle("Slot")); 
      } 
     } 
    } 
} 
+0

Arrêtez d'utiliser OnGui et utilisez la [nouvelle 4.6 UI] (https://unity3d.com/learn/tutorials/modules/beginner/live-training-archive/the-new-ui) à la place. – Draco18s

Répondre

0

Pour définir le parent d'un gameobject dans l'unité programme, utilisez simplement ceci: childGameObject.transform.SetParent(parentGameObject);

EDIT: il est hors Transforme pas simple avec Ongui. Suivez les conseils de Draco18s et utilisez le nouveau système GUI.

+0

Cela ... ne s'applique malheureusement pas aux éléments GUI créés avec OnGui. – Draco18s