Jump to content
Unity Insider Forum

ID für ScriptableObject


chrische5

Recommended Posts

Hallo

 

Ich suche eine Möglichkeit meinen Item, die so sind bei der Erstellung automatisch eine persistente ID zuzuweisen. Allerdings bekomme ich das nicht recht hin. Die Zuweisung funktioinert, aber die ID ist dauerhaft, sondern wird jedes Mal neu vergeben. Das ist schlecht, weil ich diese ID speichern will, um nachher die entsprechenden Items beim Laden wieder zu finden. Hat da jemand eine Lösung? Gehe ich das Problem vielleicht komplett falsch an?

 

Christoph

Link zu diesem Kommentar
Auf anderen Seiten teilen

Brauchst du die ID im Build oder reicht der Editor? Im Editor kannst du dieselbe GUID benutzen, die Unity intern benutzt, mit GlobalObjectId. Im Build musst du dich darum selber kümmern. Da machst du zum Beispiel eine Superklasse oder ein Interface, das die ID zurück gibt, und nutzt sowas wie C#'s Guid-Klasse. Alternativ machst du ein zentrales Register, in das alle SOs reinkommen und das für jedes eine ID hat. in dem Fall muss auch alles über dieses Register abgewickelt werden, ist also nur in seltenen Fällen sinnvoll.

Aber wenn ich so darüber nachdenke...

vor 15 Stunden schrieb chrische5:

Gehe ich das Problem vielleicht komplett falsch an?

Vielleicht? Was lädst du denn da wie, und warum?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo

 

Ich nähere mich ganz langsam einem Ende bei meinem Spiel. Nun möchte ich eine Speicherfunktion anbieten.

Dazu speichere ich Positionen, Questfortschritt....

Ich will aber auch die Inventare der Kisten und NPCs sichern. Im Spiel hat jede Kiste und alle Dinge mit Items ein eigenes Inventar mit den jeweiligen Items. Zum Speichern gehe ich alle Inventare durch und will die Ids der Items sichern, die sich im jeweiligen Inventar befinden. Beim Laden lese ich diese IDs aus, eine Funktion iteriert über alle Items des Spiel, vergleicht die IDs und schiebt diese dann in die entsprechenden Inventare.

Das mache ich derzeit mit den Namen der Items und es funktioniert. Es ist demnach also ein akademisches Problem. Ich habe derzeit eine überschaubare Zahl an Items und Inventaren im Spiel, da geht das so, aber sobald ich einen Namen für ein Item doppelt vergebe, wird es natürlich problematisch. Ist mein Ansatz komisch? 

 

Christoph

Link zu diesem Kommentar
Auf anderen Seiten teilen

Archiviert

Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.

×
×
  • Neu erstellen...