2017-10-14 1 views
0

Ich möchte ein Array erstellen, das ein GameObject und ein entsprechendes Float enthält.Erstellen Sie ein mehrdimensionales Array von GameObjects und schwimmt

Ich versuche jedem Feind die Fähigkeit zu geben, einen Gegenstand fallen zu lassen, wenn sie sterben. Dieser Gegenstand wird eines der GameObjects und der Schwimmer ist die Wahrscheinlichkeit, dass er fallen gelassen wird.

Also habe ich diese Klasse:

public class ItemToDrop : MonoBehaviour { 
    public GameObject itemToDrop; 
    public float probability; 
} 

und versuchte, es in meinem Feind-Klasse:

[SerializeField] 
    private List<ItemToDrop> items; 

Ich habe versucht, auch nur

Hastable<GameObject, float> items; 

zu tun, aber es funktioniert nicht als würde man mir sagen, welche Gegenstände es halten sollte.

Aber das funktioniert nicht. Ich versuchte ArrayList etc ..

Gibt es eine Möglichkeit, eine Liste, Hashtable (oder anderen Container) auf diese Weise zu erstellen?

+2

Liste sollte –

+0

arbeiten, ich habe keine Erfahrung in der Einheit, aber nicht die Einheit unterstützt überhaupt Liste ?? Auch ich verstehe nicht, warum Sie versucht haben, hasable –

+0

@ RJ-Unity unterstützt Liste ganz gut, ich benutze sie in meinem eigenen Projekt. Ich weiß nicht, was das Problem hier ist. – Draco18s

Antwort

0

Ich denke, Sie wollen Ihre Klasse Variablen aus dem Inspektor vergeben.
ich ausprobiert diesen:

[System.Serializable] 
public class ItemToDrop :System.Object { 
    public GameObject itemToDrop; 
    public float probability; 
} 

Und bekam die folgende Ausgabe in Inspektoren.
enter image description here

Verwandte Themen