Oblivion:Alternativen mit mehreren Messageboxen auswählen: Unterschied zwischen den Versionen
Keris (Diskussion | Beiträge) K (Die Seite wurde neu angelegt: == Einleitung == Mit den Messageboxen kann der Nutzer aus vorgegebenen Möglichkeiten etwas auswählen. == Einfache Auswahl == === Anwendung === ==== Aufgabenstellu...) |
Keris (Diskussion | Beiträge) K |
||
(4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
== Einleitung == | == Einleitung == | ||
− | Mit den Messageboxen kann der Nutzer aus vorgegebenen Möglichkeiten etwas auswählen. | + | Mit den Messageboxen kann der Nutzer auch aus mehreren vorgegebenen Möglichkeiten etwas auswählen. |
Zeile 7: | Zeile 7: | ||
=== Anwendung === | === Anwendung === | ||
==== Aufgabenstellung ==== | ==== Aufgabenstellung ==== | ||
− | Der Spieler kann von einer Speisekarte unterschiedliche Gänge (Vorspeise, Hauptgericht oder Nachspeise )wählen bzw. keine Wahl treffen und je nach gewähltem Gang eine Speise wählen. Wählt er ein Hauptgericht, wird er aufgefordert, ein dazu passendes Getränk zu wählen. | + | Der Spieler kann von einer Speisekarte unterschiedliche Gänge (Vorspeise, Hauptgericht oder Nachspeise) wählen bzw. keine Wahl treffen und je nach gewähltem Gang eine Speise wählen. Wählt er ein Hauptgericht, wird er aufgefordert, ein dazu passendes Getränk zu wählen. |
==== Theorie ==== | ==== Theorie ==== | ||
Es gilt zu beachten, dass maximal neun Alternativen angegeben werden können. | Es gilt zu beachten, dass maximal neun Alternativen angegeben werden können. | ||
− | [[ob:GetButtonpressed|GetButtonpressed]] liefert nur das erste Mal nach erfolgter Auswahl einen korrekten Wert. GetButtonPressed liefert | + | [[ob:GetButtonpressed|GetButtonpressed]] liefert nur das erste Mal nach erfolgter Auswahl einen korrekten Wert. GetButtonPressed liefert den gedrückten Button der aktuellen! Messagebox. Bei mehrerern Messageboxen muss die Abarbeitung so realisiert werden, dass sich die verschiedenen Messageboxen nicht stören. |
Zeile 118: | Zeile 118: | ||
==== Handhabung ==== | ==== Handhabung ==== | ||
− | + | Dieses Script liegt als Object-Script auf einem Buch oder einer Rolle. Für die Verwaltung der Messageboxen und der zugehörigen Button-Abarbeitung wurden Paare von Werten genommen, - für die Messageboxen, + für die Button-Abarbeitung. Die Aufrufe der Messageboxen sind geschachtelt. Für die unterschiedlichen Schachtelungen (hier sind es max. drei) sollte man zur Klarheit auch entsprechende Werte nehmen, die die Schachtelung verdeutlichen. Hier wurden Einer, Zehner und Hunderter gewählt, um die Zugehörigkeiten am Wert der Step-Variablen zu erkennen. | |
Zeile 130: | Zeile 130: | ||
− | |||
− | + | {{ Scriptkategorie |Messages und Messageboxen|Level_3_Scripts|Alternativen mit mehreren Messageboxen auswählen}} | |
− | |||
− |
Aktuelle Version vom 9. Mai 2009, 20:48 Uhr
Inhaltsverzeichnis
Einleitung
Mit den Messageboxen kann der Nutzer auch aus mehreren vorgegebenen Möglichkeiten etwas auswählen.
Einfache Auswahl
Anwendung
Aufgabenstellung
Der Spieler kann von einer Speisekarte unterschiedliche Gänge (Vorspeise, Hauptgericht oder Nachspeise) wählen bzw. keine Wahl treffen und je nach gewähltem Gang eine Speise wählen. Wählt er ein Hauptgericht, wird er aufgefordert, ein dazu passendes Getränk zu wählen.
Theorie
Es gilt zu beachten, dass maximal neun Alternativen angegeben werden können. GetButtonpressed liefert nur das erste Mal nach erfolgter Auswahl einen korrekten Wert. GetButtonPressed liefert den gedrückten Button der aktuellen! Messagebox. Bei mehrerern Messageboxen muss die Abarbeitung so realisiert werden, dass sich die verschiedenen Messageboxen nicht stören.
Realisierung
Umgebung
keine Anmerkungen
Script
<tesscript>scn Speisekarte
- Written by keris
- 9.8.08
short Button short Step
begin OnActivate If IsActionRef Player
MessageBox "Was möchtet ihr bestellen? " "Vorspeise" "Hauptgericht" "Nachtisch" "Nichts"
Set Step to -1 EndIf End
Begin GameMode
If Step == 0 Return ElseIf Step == -10 ;Message senden Set Step to 10 MessageBox "Welche Vorspeise darf es sein?" "Salat" "Brot"
Set Button to -1
ElseIf Step == 10 ;zweite Message auswerten Set Button to GetButtonPressed If Button == 0 Player.Additem Lettuce 1 Set Step to 0 ElseIf Button == 1 Player.Additem Breadloaf 1 Set Step to 0 EndIf
ElseIf Step == -20 ;Message senden Set Step to 20 MessageBox "Welches Hauptgericht darf es sein?" "Rindfleisch" "Hammel "
ElseIf Step == 20 ;zweite Message auswerten Set Button to GetButtonPressed If Button == 0 Player.Additem Beef 1 Set Step to -200 ElseIf Button == 1 Player.Additem Mutton 1 Set Step to -200 EndIf
ElseIf Step == -200 ;Message senden MessageBox "Ihr habt noch keine Getränke gewählt." "Wein" "Bier" Set Step to 200
ElseIf Step == 200 ; Message auswerten
Set Button to GetButtonPressed
If Button == 0 Player.Additem DrinkWine1SurilieGood 1 Set Step to 0 ElseIf Button == 1 Player.Additem Drinkbeer 1 Set Step to 0 EndIf
ElseIf Step == -30 ;Message senden Set Step to 30 MessageBox "Welcher Nachtisch darf es sein?" "Apfel" "Kuchen" "Käse"
ElseIf Step == 30 ;zweite Message auswerten
Set Button to GetButtonPressed
If Button == 0 Player.Additem Apple 1 Set Step to 0 ElseIf Button == 1 Player.Additem Sweetcake 1 Set Step to 0 ElseIf Button == 2 Player.Additem CheeseWedge 1 Set Step to 0 EndIf
ElseIf Step == -1 ;Anfangsmessage auswerten
Set Button to GetButtonPressed
If Button == 0 Set Step to -10 ElseIf Button == 1 Set Step to -20 ElseIf Button == 2 Set Step to -30 ElseIf Button == 3 Set Step to 0 EndIf EndIf
end
</tesscript>
Handhabung
Dieses Script liegt als Object-Script auf einem Buch oder einer Rolle. Für die Verwaltung der Messageboxen und der zugehörigen Button-Abarbeitung wurden Paare von Werten genommen, - für die Messageboxen, + für die Button-Abarbeitung. Die Aufrufe der Messageboxen sind geschachtelt. Für die unterschiedlichen Schachtelungen (hier sind es max. drei) sollte man zur Klarheit auch entsprechende Werte nehmen, die die Schachtelung verdeutlichen. Hier wurden Einer, Zehner und Hunderter gewählt, um die Zugehörigkeiten am Wert der Step-Variablen zu erkennen.
Weitere Information
Weitere Scripts aus dieser Kategorie
Level 1
Level 2
Level 3
{{#if: Messages und Messageboxen | }}
{{#if: Level_3_Scripts | }}