ShowItemContainer: Unterschied zwischen den Versionen
Zeile 87: | Zeile 87: | ||
showItemContainer({..."desc":"Beschreibung","filter":["Weapon","Armor","Equippable"],...}); | showItemContainer({..."desc":"Beschreibung","filter":["Weapon","Armor","Equippable"],...}); | ||
+ | |||
+ | =Wichtig= | ||
+ | Die Anzahl Zeilen im Container ist auf 10 beschränkt, d.h. im Normalfall können maximal 70 Slots dargestellt werden! | ||
+ | |||
</syntaxhighlight> | </syntaxhighlight> |
Version vom 29. Mai 2017, 17:30 Uhr
Anzeige und Verarbeitung eines Item-Containers.
showItemContainer( {"caption":"Überschrift", "itemset":"general_item_set", "desc":"Beschreibung", "limit":7, "callback":"afterItemcontainerClose", "linked":false, "who":3, "items":itemobjekt, "list":["arrow","arrow","rapier"], "doublelist":["arrow",15,"rapier",3], "dontLeavePersonal":true, "dontLeaveQuest":true, "dontLeave":["rapier"]}); // zB showItemContainer( {"caption":"Test", "doublelist":["arrow",15,"rapier",3]} );
caption: Überschrift für das Fenster
itemset: Der Name des Generalstate, in dem das Itemset gespeichert werden soll
desc: Beschreibungstext für den Fensterinhalt
limit: Anzahl der Slots im Container insgesamt
callback: Rückruffunktion, die nach dem Containeritem aufgerufen wird
linked: Ob das Fenster an das Charakterfenster gebunden werden soll, d.h. das Charakterfenster schließt sich automatisch, wenn das Containerfenster geschlossen wird. Umgekehrt ist das ohnehin der Fall (standard: false)
who: Welcher Charakter initial geöffnet werden soll, wenn das Containerfenster aufgeht (standard: 0)
filter: Welche Itemtypen im Container erlaubt sein sollen. Mögliche Werte siehe unten. Standard: alle
limitweight: Welches Gesamtgewicht (in Unzen) im Container erlaubt sein soll. Standard: 0 (unbegrenzt)
items: Item-Listenobjekt, das einzelne Item-Objekte enthält und angezeigt werden soll. Achtung, keine automatische Speicherung in einem Itemset!
list: Zeichenketten-Listenobjekt, enthält eine Liste von ItemIDs, die im Container liegen sollen
doublelist: Item-Array-Doppellistenobjekt, enthält jeweils im Wechsel eine ItemID und die Anzahl an Items, die von dieser ItemID vorhanden sind
dontLeavePersonal: Items, die "personal" markiert sind, können nicht zurückgelassen werden, es erscheint eine Meldung und das Schließen des Fensters wird verhindert (standard: true)
dontLeaveQuest: Items, die "quest" markiert sind, können nicht zurückgelassen werden, es erscheint eine Meldung und das Schließen des Fensters wird verhindert (standard: true)
dontLeave: Zeichenketten-Listenobjekt, enthält eine Liste von ItemIDs, die nicht zurückgelassen werden können, es erscheint eine Meldung und das Schließen des Fensters wird verhindert.
autoclose: Ob das ContainerFenster automatisch geschlossen werden soll, wenn keine Items mehr darin liegen (standard: true)
justtake: Ob Items nur aus dem Container genommen, nicht jedoch zurückgelegt werden können, zB bei einem Händler (standard: false)
forceitemorder: Wenn items als "list" oder "doublelist" übergeben werden und dieser Paramter "true" gesetzt wird, werden die Items nicht zusammengefasst, sondern 1:1 entsprechend der Angaben der Liste abgelegt (standard: false)
singleitemmode: Schließt den Dialog automatisch, wenn ein einzelnes Item entfernt wurde und zeigt den "alles nehmen"-Button nicht an (standard: false)
Achtung bei den Einträgen für die Items: Der Inhalt des Containers wird in folgender Reihenfolge geprüft:
- itemset
- wenn nicht vorhanden: items
- wenn nicht vorhanden: list
- wenn nicht vorhanden: doublelist
Mögliche Werte für den "Filter"-Eintrag:
General Weapon Armor Equippable Herb Potion Poison Document Tool Ammo Ingredient Jewelry
Einzelne Einträge können direkt hingeschrieben werden, wenn mehrere angegeben werden sollen, dann in Form eines Feldes:
showItemContainer({..."desc":"Beschreibung","filter":"General",...}); showItemContainer({..."desc":"Beschreibung","filter":["Weapon","Armor","Equippable"],...}); =Wichtig= Die Anzahl Zeilen im Container ist auf 10 beschränkt, d.h. im Normalfall können maximal 70 Slots dargestellt werden!