F1R3ON Geschrieben 9. Oktober 2016 Melden Share Geschrieben 9. Oktober 2016 Liebe Community, hänger gerade an dem List System bei Unity... ich hab folgendes Problem: public GameObject worldButton; public Transform WorldSpacer; public List<World> WorldList; [system.Serializable] public class World { public string WorldText; public int UnLocked; public bool IsInteractable; public List<Level> LevelList; [system.Serializable] public class Level { public string LevelText; public int UnLocked; public bool IsInteractable; } } Ich möchte die Levels untergeordnet den Welten hinbekommen, nur weiß ich nicht wie ich an die LevelList rankommen soll? weil foreach(var level in LevelList) { } klappt nicht da die Variable LevelList nicht gefunden wird :/ Wie bekomme ich es hin im Inspector eine Liste der Welten und darin der Levels anzulegen, wäre da vllt. ein Dictonary besser geeignet? Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Djeurissen Geschrieben 9. Oktober 2016 Melden Share Geschrieben 9. Oktober 2016 World world = new World(); world.LevelList ? Warum willst du den hier ein Dictionary benutzen? Die Frage wäre ja, weißt du was ein Dictionary macht, denn das scheint nicht so. Da ein Dictionary in diesem Fall keinen Unterschied macht ob du auf die Variable zugreifen kannst oder nicht. Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
F1R3ON Geschrieben 9. Oktober 2016 Autor Melden Share Geschrieben 9. Oktober 2016 Wenn ich world.LevelList benütze wie kann ich dann auf String etc zugreifen? Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Djeurissen Geschrieben 9. Oktober 2016 Melden Share Geschrieben 9. Oktober 2016 world.LevelList ist nichts weiter als ein Zugriff auf das Objekt world um an das public Attribut List<Level> zu kommen. Anders ausgedrückt, world.LevelList ist nichts weiter als List<Level> Dementsprechend kann man leicht auf die Elemente der Liste zugreifen world.LevelList[0] und das wiederrum ist ein Objekt vom Typ Level also kann ich auch das hier machen world.LevelList[0].LevelText Und so weiter, wenn du ne foreach Schleife benutzen willst kannst du auch einfach foreach(var level in world.LevelList) machen Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
F1R3ON Geschrieben 9. Oktober 2016 Autor Melden Share Geschrieben 9. Oktober 2016 Perfekt hat geklappt, brauchte einen Denkanstoß ^^" Danke dir für die Erklärung Link zu diesem Kommentar Auf anderen Seiten teilen More sharing options...
Recommended Posts
Archiviert
Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.