So, habe es nun endlich hinbekommen das die Stacks entsprechend bei dem Herstellen von Gegenständen korrekt abgezogen (ReverseForEachLoop sei Dank!).
Dachte schon ich müsste das ganze abbrechen und für die erste Vorstellung des Spiels im Video irgend eine Mogelei einbauen damit das nicht auffällt... aber es geht wunderbar!
Bisher zwar nur einfach, also ohne Berücksichtigung der Qualitäten (wobei es nicht nur die Qualitäten sondern auch die Inhalte ((Namen, Beschreibung, Zugehörigkeiten)) sind).
Also wenn Eisenbarren "Made in Sonstwo" sind, werden diese separat gestapelt, unabhängig von der Qualität. Die Qualität hat mehr die Auswirkung auf die effektive Haltbarkeit und den Bruchwert des Gegenstandes. Mindere Qualität sorgt dafür das die Waffe weniger aushält und schneller dauerhaft kaputt geht. Um das mal für den Anfang primitiv einfach zu halten.
Jetzt muss ich das ganze noch für den Spielerhandel, für die Quest-Belohnung usw. machen.
Dazu muss ich noch ein System machen bei dem es unregelmäßig das Inventar aktualisiert und gegeben falls die Gegenstände neu zusammen stapelt. Nicht das irgendwann mal 1x, 1x, 1x, 1x,1x, Eisen habe usw., obwohl man das ganze stapeln könnte.
Habe das ohne ein Schatteninvenar gemacht, weil man zugleich auch als fremde Person das Inventar einer anderen Person manipulieren kann. Sonst kommt das ganze System zu sehr durcheinander. Auf ein Drag&Drop habe ich bisher noch verzichtet (auch wenn es bequemer wäre), aber das ganze Inventar wird sowieso noch mal in der Zukunft erweitert, angepasst und vielleicht abgeändert.
So Sachen wie das stecken von Materialien in die Materialslots (Werkbank usw.) oder das aneinanderreihen der Materialien in der Richtigen Position, um unterschiedliche Dinge herstellen zu können... das wäre schon geil, aber das schaffe ich derzeit alleine nicht.
Vielen Dank an euch allen für die Informationen!
Manchmal ist das ganze echt so undurchsichtig wie man diverse Dinge am sinnvollsten einbauen soll. Das Inventar + die damit zusammenhängen sind ja essentiell für jedes Spiel.