ChooseItem

Aus Sternenschweif Wiki
Version vom 19. Mai 2019, 14:01 Uhr von Yuan (Diskussion | Beiträge)

(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche
chooseItem({"action":action, "callback":callback, "desc1":"", "desc2":"", "needchar":false, "showequipped":false, "itemon":null, "itemtype":null});

Ruft den Wähle-ein-Item-Dialog auf, und liefert das gewählte Item zurück.

action: Textuelle Beschreibung des Vorgangs, also zB "Wähle Waffe, die vergiftet werden soll"

callback: Name der Callback-Javascript-Funktion. Diese hat das folgende Format:

function callback_receiver( itemid, itembezeichnung, characterid )

Sollte kein Item gewählt worden sein, zB wenn "Esc" gedrückt wurde, so liefert der Parameter itemid den Wert "noid", itembezeichnung ist leer und characterid ist -1

Alle nachfolgenden Parameter sind optional

desc1, desc2: Zwei Beschreibungstexte für die Aktion, die unterhalb der Hauptbeschreibung eingeblendet werden können

needchar: Ob auch die Auswahl eines Charakters (z.B. zum Durchführen einer Tätigkeit mit dem gewählten Gegenstand) angezeigt werden soll. Der gewählte Charakter (rechts oben) wird dann in characterid gespeichert. Auf die Charakterauswahl kann unter der "action" (z.B. "Wähle einen Gegenstand") in der zweiten Zeile "desc1" hingewiesen werden (z.B. "Und jemanden, der ihn benutzen soll").

showequipped: Ob nur ausgerüstete (true) oder nur nicht ausgerüstete (false) Gegenstände angezeigt werden sollen

itemon: wenn gesetzt, filtert es das Inventar nach Items, die eine bestimmte "on"-Eigenschaft haben (zB "applypoison", um nur vergiftbare Waffen anzuzeigen)

itemtype: wenn gesetzt (nur in Kombination mit "on"), werden Items gefiltert, die eine bestimmte "Type"-Eigenschaft auch noch haben (zB on "carry" type "checkbonusap")

Intern wird "chosenItem" gespeichert, aus dem auch noch aktueller Träger, aktueller Slot sowie detaillierte Daten des Items abgelesen werden können, diese kann mittels getChosenItem abgerufen werden.