Choice: Unterschied zwischen den Versionen

Aus AntamarWiki
Wechseln zu: Navigation, Suche
(Syntax)
 
(16 dazwischenliegende Versionen von 8 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
<choice target="...">...</choice>
+
Mit diesem Tag wird dem Spieler eine Auswahlmöglichkeit angeboten, zu der er nach Beendigung der aktuellen Szene springen kann.
  
Mit diesem Tag wird dem Spieler eine Auswahlmöglichkeit angeboten, zu der er
+
== Syntax ==
nach Beendigung der aktuellen Szene springen kann.
 
  
==target="..."==
+
<code xml>
An Stelle von ... wird der Name der Ziel-Szene (ohne ".xml") angegeben.
+
<choice target="..." [param="..."] [confirm="false"] [enabled="true"] [select-hero=""] [selected-only="false"]>...</choice>
Wenn das Tag keinen Inhalt hat, wird dieser Text auch angezeigt,
+
</code>
sonst der Text zwischen dem Start-und End-Tag.
+
 
 +
*'''target''': An Stelle von ... wird der Name der Ziel-Szene (ohne ".xml") angegeben (oder eine [[Besondere Werte|Variable]] die den Namen enthält).
 +
*'''param''': (optional) Parameterwert, der an die aufgerufene Szene als Variable "param" im Scope "scene" übergeben wird.
 +
*'''confirm''': Hier kann eine Frage angegeben werden, die als zu bestätigende Frage angezeigt wird, bevor die gewünschte Szene wirklich aufgerufen wird.
 +
*'''enabled''' (standardmäßig 'true'): Wenn false, wird die Option durchgestrichen und für den Spieler nicht zugänglich gemacht.
 +
*'''select-hero''' (nur für Gruppen): Wenn '1' angegeben, kann der Gruppenführer einen Held auswählen, der in der Zielszene dann automatisch selektiert ist (als einziger Held).
 +
*'''selected-only''' (nur für Gruppen, standardmäßig 'false'): Wenn 'true' angegeben, kann nur zwischen den aktuell selektierten Helden ausgewählt werden, welcher Held in der Zielszene selektiert sein soll.
 +
 
 +
Wenn das Tag keinen Inhalt hat, wird dieser Text auch angezeigt, sonst der Text zwischen dem Start-und End-Tag.
 +
 
 +
==Beispiele==
 +
 
 +
===Ein einfaches Choice===
 +
<code xml>
 +
<choice target="szene2">weiter</choice>
 +
</code>
 +
Mit Klick auf 'weiter' gelangt der Spieler in ''szene2.xml''
 +
 
 +
===Parameter-Übergabe an aufgerufene Szene===
 +
 
 +
In der Ursprungs-Szene:
 +
<code xml>
 +
Durchgehen, wenn die Tür <choice target="szene2" param="blau"/> oder <choice target="szene2" param="rot"/> leuchtet.
 +
</code>
 +
 
 +
Mit Klick auf 'weiter' gelangt der Spieler in ''szene2.xml'', dort kann dann der Parameter abgefragt werden:
 +
<code xml>
 +
Du bist durch die Tür gegangen, als sie <get name="param"/> leuchtete.
 +
</code>
 +
 
 +
Die Variable gilt nur in der unmittelbaren Folgeszene (inkl. der dort ausgeführten includes), will man den Wert für später speichern, muss man den Wert einer länger gültigen Variable zuweisen, z.B. so:
 +
<code xml>
 +
<store name="tuer-farbe" scope="quest"><get name="param"/></store>
 +
</code>
 +
 
 +
===confirm===
 +
Mit ''confirm'' kann man Sicherheitsfragen einbauen.
 +
<code xml n>
 +
<choice target="Abbruch" confirm="Willst du den Auftrag wirklich abbrechen?">Auftrag abbrechen.</choice>
 +
</code>
 +
 
 +
Bei diesem Beispiel würde der Spieler eine Nachfrage ("Willst du den Auftrag wirklich abbrechen?") angezeigt bekommen, wenn er auf "Auftrag abbrechen" klickt. Dann kann der Spieler mit Klick auf "OK" die Szene aufrufen oder mit Klick auf "Abbrechen" auf der aktuellen Seite bleiben.
 +
 
 +
 
 +
===enabled="false"===
 +
<code xml n>
 +
<ul>
 +
  <li><choice target="singen">Singen</choice></li>
 +
  <li><choice target="tanzen" enabled="false">Tanzen</choice></li>
 +
</ul>
 +
</code>
 +
Hier wird nur Singen als Option angeboten. Tanzen wird zwar angezeigt, ist aber durchgestrichen und nicht klickbar.
 +
 
 +
 
 +
===select-hero (für Gruppen)===
 +
Wenn ''select-hero="1"'', kann der Gruppenführer einen Held auswählen. Dieser wird dann intern automatisch selektiert für die nächste Szene.
 +
<code xml>
 +
<ul>
 +
  <li><choice target="fallgrube" select-hero="1">Wer soll als erstes versuchen über die Grube zu springen?</choice></li>
 +
</ul>
 +
</code>
 +
 
 +
erzeugt in etwa diese Ausgabe:
 +
 
 +
[[Image:Choice-select-hero-beispiel-1.png]]
 +
 
 +
===selected-only (für Gruppen)===
 +
Mit ''selected-only'' kann konfiguriert werden, dass der Spieler nicht zwischen allen Gruppenmitgliedern wählen darf, sondern lediglich aus den aktuell selektierten Helden.
 +
Beispiel:
 +
<code xml>
 +
<select role="Kämpfer"/>
 +
<ul>
 +
  <li><choice target="fallgrube" select-hero="1" selected-only="true">Wer soll als erstes versuchen über die Grube zu springen?</choice></li>
 +
</ul>
 +
</code>
 +
Gruppenmitglieder mit der Rolle 'Dieb' fehlen somit in der Auswahl.
 +
 
 +
Erzeugt in etwa diese Ausgabe:
 +
 
 +
[[Image:Choice-select-hero-beispiel-2.png]]
 +
 
 +
 
 +
[[Kategorie:AOQML-Tags]]

Aktuelle Version vom 8. August 2021, 08:31 Uhr

Mit diesem Tag wird dem Spieler eine Auswahlmöglichkeit angeboten, zu der er nach Beendigung der aktuellen Szene springen kann.

Syntax

<choice target="..." [param="..."] [confirm="false"] [enabled="true"] [select-hero=""] [selected-only="false"]>...</choice>
  • target: An Stelle von ... wird der Name der Ziel-Szene (ohne ".xml") angegeben (oder eine Variable die den Namen enthält).
  • param: (optional) Parameterwert, der an die aufgerufene Szene als Variable "param" im Scope "scene" übergeben wird.
  • confirm: Hier kann eine Frage angegeben werden, die als zu bestätigende Frage angezeigt wird, bevor die gewünschte Szene wirklich aufgerufen wird.
  • enabled (standardmäßig 'true'): Wenn false, wird die Option durchgestrichen und für den Spieler nicht zugänglich gemacht.
  • select-hero (nur für Gruppen): Wenn '1' angegeben, kann der Gruppenführer einen Held auswählen, der in der Zielszene dann automatisch selektiert ist (als einziger Held).
  • selected-only (nur für Gruppen, standardmäßig 'false'): Wenn 'true' angegeben, kann nur zwischen den aktuell selektierten Helden ausgewählt werden, welcher Held in der Zielszene selektiert sein soll.

Wenn das Tag keinen Inhalt hat, wird dieser Text auch angezeigt, sonst der Text zwischen dem Start-und End-Tag.

Beispiele

Ein einfaches Choice

<choice target="szene2">weiter</choice>

Mit Klick auf 'weiter' gelangt der Spieler in szene2.xml

Parameter-Übergabe an aufgerufene Szene

In der Ursprungs-Szene:

Durchgehen, wenn die Tür <choice target="szene2" param="blau"/> oder <choice target="szene2" param="rot"/> leuchtet.

Mit Klick auf 'weiter' gelangt der Spieler in szene2.xml, dort kann dann der Parameter abgefragt werden:

Du bist durch die Tür gegangen, als sie <get name="param"/> leuchtete.

Die Variable gilt nur in der unmittelbaren Folgeszene (inkl. der dort ausgeführten includes), will man den Wert für später speichern, muss man den Wert einer länger gültigen Variable zuweisen, z.B. so:

<store name="tuer-farbe" scope="quest"><get name="param"/></store>

confirm

Mit confirm kann man Sicherheitsfragen einbauen.

<choice target="Abbruch" confirm="Willst du den Auftrag wirklich abbrechen?">Auftrag abbrechen.</choice>

Bei diesem Beispiel würde der Spieler eine Nachfrage ("Willst du den Auftrag wirklich abbrechen?") angezeigt bekommen, wenn er auf "Auftrag abbrechen" klickt. Dann kann der Spieler mit Klick auf "OK" die Szene aufrufen oder mit Klick auf "Abbrechen" auf der aktuellen Seite bleiben.


enabled="false"

<ul>
  <li><choice target="singen">Singen</choice></li>
  <li><choice target="tanzen" enabled="false">Tanzen</choice></li>
</ul>

Hier wird nur Singen als Option angeboten. Tanzen wird zwar angezeigt, ist aber durchgestrichen und nicht klickbar.


select-hero (für Gruppen)

Wenn select-hero="1", kann der Gruppenführer einen Held auswählen. Dieser wird dann intern automatisch selektiert für die nächste Szene.

<ul>
  <li><choice target="fallgrube" select-hero="1">Wer soll als erstes versuchen über die Grube zu springen?</choice></li>
</ul>

erzeugt in etwa diese Ausgabe:

Choice-select-hero-beispiel-1.png

selected-only (für Gruppen)

Mit selected-only kann konfiguriert werden, dass der Spieler nicht zwischen allen Gruppenmitgliedern wählen darf, sondern lediglich aus den aktuell selektierten Helden. Beispiel:

<select role="Kämpfer"/>
<ul>
  <li><choice target="fallgrube" select-hero="1" selected-only="true">Wer soll als erstes versuchen über die Grube zu springen?</choice></li>
</ul>

Gruppenmitglieder mit der Rolle 'Dieb' fehlen somit in der Auswahl.

Erzeugt in etwa diese Ausgabe:

Choice-select-hero-beispiel-2.png