SetMenuItem: Unterschied zwischen den Versionen

Aus Sternenschweif Wiki
Wechseln zu: Navigation, Suche
(Beispiele)
 
Zeile 25: Zeile 25:
  
 
/* Ersetze den Menüpunkt "talk" mit dem Aufruf des Dialogs "kvir_elsurion" mit Icon "talk" und Beschriftung "text_talk" */
 
/* Ersetze den Menüpunkt "talk" mit dem Aufruf des Dialogs "kvir_elsurion" mit Icon "talk" und Beschriftung "text_talk" */
setMenuItem( { "replace": "talk",
+
setMenuItem({  
"dialog": "kvir_elsurion",
+
  "replace": "talk",
"icon": "talk",
+
  "dialog": "kvir_elsurion",
"caption": "text_talk" } );
+
  "icon": "talk",
 +
  "caption": "text_talk"  
 +
});
  
 
/* Füge den Aufruf zum Dialog "neweatdialog" hinzu, mit dem icon "eat1" und dem Text "text_eatsomething" */
 
/* Füge den Aufruf zum Dialog "neweatdialog" hinzu, mit dem icon "eat1" und dem Text "text_eatsomething" */
setMenuItem( { "dialog": "neweatdialog",
+
setMenuItem({
"icon": "eat1",
+
  "dialog": "neweatdialog",
"caption": "text_eatsomething" } );
+
  "icon": "eat1",
 +
  "caption": "text_eatsomething"  
 +
});
  
 
/* Vertausche die Reihenfolge von talk und eat im Herbergen-Menü */
 
/* Vertausche die Reihenfolge von talk und eat im Herbergen-Menü */
setMenuItem( { "replace": "talk",
+
setMenuItem({
"action": "eatnew",
+
  "replace": "talk",
"icon": "eat1",
+
  "action": "eatnew",
"caption": "text_eat" } );
+
  "icon": "eat1",
setMenuItem( { "replace": "eat",
+
  "caption": "text_eat"
"action": "talk",
+
});
"icon": "talk",
+
setMenuItem({
"caption": "text_talkhostel" } );
+
  "replace": "eat",
setMenuItem( { "replace": "eatnew",
+
  "action": "talk",
"action": "eat",
+
  "icon": "talk",
"icon": "eat1",
+
  "caption": "text_talkhostel"
"caption": "text_eat" } );
+
});
 +
setMenuItem({
 +
  "replace": "eatnew",
 +
  "action": "eat",
 +
  "icon": "eat1",
 +
  "caption": "text_eat"
 +
});
  
 
</syntaxhighlight>
 
</syntaxhighlight>

Aktuelle Version vom 18. Oktober 2016, 15:03 Uhr

setMenuItem( itemdata );

Bei aktivierter InsideScene oder kurz vor dem Setzen einer Scene (Scene-Event) kann das Menü der folgende Scene vollständig modifiziert werden. ACHTUNG: Wenn der "leave"-Menüpunkt entfernt wird, wird die Szene ohne zusätzliche Programmierung zur Gameover-Todesfalle.

Parameter-Objekt

  • remove: Entfernt den angegebenen Menüpunkt aus dem Menü. Alle anderen Daten werden ignoriert, wenn remove angegeben wurde
  • replace: Ersetzt den angegebenen Menüpunkt mit folgenden Daten. Ist replace nicht gesetzt, wird der Menüpunkt am Ende hinzugefügt
  • dialog: Der aufzurufende Dialog bei Klick des Icon. Verpflichtend ohne remove und action
  • action: Die aufzurufende Standardaktion. Verpflichtend ohne remove und dialog
  • icon: Das zu verwendende Icon. Verpflichtend ohne remove
  • caption: Der Textschlüssel, der beim Icon erscheint. Verpflichtend ohne remove

Modding-Hinweis

Um die verfügbaren Aktionen und Icons zu eruieren, steht in der Konsole der Befehl dumpcontrolmenu zur Verfügung, wenn man sich in einer Insidescene befindet.

Beispiele

setMenuItem( { "remove": "talk" } ); /* Entfernt den Menüpunkt "talk" aus dem Menü */
 
/* Ersetze den Menüpunkt "talk" mit dem Aufruf des Dialogs "kvir_elsurion" mit Icon "talk" und Beschriftung "text_talk" */
setMenuItem({ 
  "replace": "talk",
  "dialog": "kvir_elsurion",
  "icon": "talk",
  "caption": "text_talk" 
});
 
/* Füge den Aufruf zum Dialog "neweatdialog" hinzu, mit dem icon "eat1" und dem Text "text_eatsomething" */
setMenuItem({
  "dialog": "neweatdialog",
  "icon": "eat1",
  "caption": "text_eatsomething" 
});
 
/* Vertausche die Reihenfolge von talk und eat im Herbergen-Menü */
setMenuItem({
  "replace": "talk",
  "action": "eatnew",
  "icon": "eat1",
  "caption": "text_eat"
});
setMenuItem({
  "replace": "eat",
  "action": "talk",
  "icon": "talk",
  "caption": "text_talkhostel"
});
setMenuItem({
  "replace": "eatnew",
  "action": "eat",
  "icon": "eat1",
  "caption": "text_eat"
});