Oblivion:Alternativen mit Messageboxen auswählen: Unterschied zwischen den Versionen

Aus Skript-Wiki
Wechseln zu: Navigation, Suche
K
K
Zeile 2: Zeile 2:
 
Mit den Messageboxen kann der Nutzer aus vorgegebenen Möglichkeiten etwas auswählen.  
 
Mit den Messageboxen kann der Nutzer aus vorgegebenen Möglichkeiten etwas auswählen.  
  
== Messagebox mit Alternative ==
+
 
 +
== Einfache Auswahl ==
  
 
=== Anwendung ===
 
=== Anwendung ===
 
==== Aufgabenstellung ====
 
==== Aufgabenstellung ====
 
Dem Spieler wird angeboten, einen Apfel in das Inventar zu bekommen. Der Spieler kann annehmen oder ablehnen.
 
Dem Spieler wird angeboten, einen Apfel in das Inventar zu bekommen. Der Spieler kann annehmen oder ablehnen.
 +
  
 
==== 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. Beim zweiten mal wird -1 zurückgegeben.
 
[[ob:GetButtonpressed|GetButtonpressed]] liefert nur das erste Mal nach erfolgter Auswahl einen korrekten Wert. Beim zweiten mal wird -1 zurückgegeben.
 +
  
 
=== Realisierung ===
 
=== Realisierung ===
 
 
==== Umgebung ====
 
==== Umgebung ====
 
keine Anmerkungen
 
keine Anmerkungen
 +
  
 
==== Script ====
 
==== Script ====
Zeile 50: Zeile 53:
 
End
 
End
 
</tesscript>  
 
</tesscript>  
 +
  
 
==== Handhabung ====
 
==== Handhabung ====
 
Dies Script kann als Object-Script oder als Quest-Script genutzt werden.
 
Dies Script kann als Object-Script oder als Quest-Script genutzt werden.
 +
 +
 +
== Auswahl über einen Aktivator==
 +
 +
=== Anwendung ===
 +
==== Aufgabenstellung ====
 +
Der Player soll nach Drücken eines Schalters nach seinem Wunschgetränk gefragt werden. Entsprechend der Auswahl bekommt er etwas zu trinken.
 +
 +
==== Theorie ====
 +
Diese Messagebox erscheint im Onactivate-Block, die Auswahl kann dort aber nicht abgearbeitet werden, da der Block nur bei der Aktivierung durchlaufen wird.
 +
 +
=== Realisierung ===
 +
 +
==== Umgebung ====
 +
Es gibt einen Schalter in der Welt, auf diesem liegt das Script.
 +
 +
==== Script ====
 +
<tesscript>
 +
Scn OrderDrink
 +
;gives a drink to the player
 +
;originated: keris, 20.11.07
 +
 +
short Button
 +
short RealiseSelection
 +
 +
Begin OnActivate
 +
    if ( IsActionRef Player == 1 )
 +
              if RealiseSelection == 0
 +
                    MessageBox "Was möchtet Ihr zu trinken?" "Bier" "Wein"  "nichts"
 +
                    Set RealiseSelection to 1
 +
              else
 +
  Set RealiseSelection to 0
 +
  Activate Player
 +
              endif
 +
    else
 +
          Activate
 +
    endif
 +
End
 +
 +
Begin GameMode
 +
 +
    if RealiseSelection == 1
 +
          Set Button to GetButtonPressed
 +
      Set RealiseSelection to 0
 +
          if Button < 0
 +
              Return
 +
          elseif  Button ==  0
 +
              Player.EquipItem DrinkBeer
 +
          elseif  button ==  1
 +
              Player.EquipItem DrinkWine1SurilieGood
 +
          elseif  Button ==  2
 +
              Return
 +
          endif
 +
    endif
 +
 +
End </tesscript>
 +
 +
 +
==== Handhabung ====
 +
Dies Script liegt auf einem Object vom Typ Aktivator.
 +
  
 
==  Weitere Information ==
 
==  Weitere Information ==

Version vom 23. August 2008, 17:20 Uhr

Einleitung

Mit den Messageboxen kann der Nutzer aus vorgegebenen Möglichkeiten etwas auswählen.


Einfache Auswahl

Anwendung

Aufgabenstellung

Dem Spieler wird angeboten, einen Apfel in das Inventar zu bekommen. Der Spieler kann annehmen oder ablehnen.


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. Beim zweiten mal wird -1 zurückgegeben.


Realisierung

Umgebung

keine Anmerkungen


Script

<tesscript> Scn MakeAChoice

Written by keris
9.8.08

short Doonce short Button short RealiseSelection

Begin GameMode

  if Doonce == 0
     set Doonce to 1 ; es soll nur einmal gemacht werden!
     messagebox "Möchtet ihr einen Apfel?", "Ja", "Nein"
     Set RealiseSelection to 1      
  endif
  if RealiseSelection 
     Set Button to GetButtonPressed
     Set RealiseSelection to 0
     if Button == -1 
        return
     elseif Button == 0
        Player.AddItem apple 1
     elseif Button == 1
        return
     endif
  endif

End </tesscript>


Handhabung

Dies Script kann als Object-Script oder als Quest-Script genutzt werden.


Auswahl über einen Aktivator

Anwendung

Aufgabenstellung

Der Player soll nach Drücken eines Schalters nach seinem Wunschgetränk gefragt werden. Entsprechend der Auswahl bekommt er etwas zu trinken.

Theorie

Diese Messagebox erscheint im Onactivate-Block, die Auswahl kann dort aber nicht abgearbeitet werden, da der Block nur bei der Aktivierung durchlaufen wird.

Realisierung

Umgebung

Es gibt einen Schalter in der Welt, auf diesem liegt das Script.

Script

<tesscript> Scn OrderDrink

gives a drink to the player
originated
keris, 20.11.07

short Button short RealiseSelection

Begin OnActivate

    if ( IsActionRef Player == 1 )
              if RealiseSelection == 0
                   MessageBox "Was möchtet Ihr zu trinken?" "Bier" "Wein"  "nichts"
                   Set RealiseSelection to 1
              else

Set RealiseSelection to 0 Activate Player

              endif
    else
          Activate
    endif

End

Begin GameMode

    if RealiseSelection == 1
         Set Button to GetButtonPressed

Set RealiseSelection to 0

         if Button < 0
              Return
         elseif  Button ==  0
              Player.EquipItem DrinkBeer
         elseif  button ==  1
              Player.EquipItem DrinkWine1SurilieGood
         elseif  Button ==  2
              Return
         endif
    endif

End </tesscript>


Handhabung

Dies Script liegt auf einem Object vom Typ Aktivator.


Weitere Information