Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
choices-erstellen [2015/08/18 22:16] 127.0.0.1 Externe Bearbeitung |
choices-erstellen [2016/02/06 05:02] (aktuell) milky-way |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ====== Dialog-Choices ====== | ||
+ | |||
Willkommen zu dem Tutorial zum erstellen von Choices. Choices sind mehrere Auswahlmöglichkeiten. Das heißt wenn dich ein NPC fragt: "Wie gehts?" und man mit z.B. "Gut" oder "Schlecht" antworten kann: Das sind Choices. | Willkommen zu dem Tutorial zum erstellen von Choices. Choices sind mehrere Auswahlmöglichkeiten. Das heißt wenn dich ein NPC fragt: "Wie gehts?" und man mit z.B. "Gut" oder "Schlecht" antworten kann: Das sind Choices. | ||
Zeile 5: | Zeile 7: | ||
Also, erst mal ein Beispiel: | Also, erst mal ein Beispiel: | ||
- | --------- | + | <code cpp>//////////////////////////////////////////////////////////// |
- | //////////////////////////////////////////////////////////// | + | |
////////////// Hallo | ////////////// Hallo | ||
/////////////////////////////////////////////////////// | /////////////////////////////////////////////////////// | ||
Zeile 47: | Zeile 48: | ||
Info_ClearChoices(Dia_Dieter_Hallo); | Info_ClearChoices(Dia_Dieter_Hallo); | ||
}; | }; | ||
- | --------- | + | </code> |
- | { | + | |
+ | |||
+ | <code cpp>{ | ||
[...] | [...] | ||
Info_ClearChoices (DIA_Dieter_Hallo); | Info_ClearChoices (DIA_Dieter_Hallo); | ||
Info_AddChoice (DIA_Dieter_Hallo, "Schlecht", DIA_Dieter_Hallo_a ); | Info_AddChoice (DIA_Dieter_Hallo, "Schlecht", DIA_Dieter_Hallo_a ); | ||
Info_AddChoice (DIA_Dieter_Hallo, "Gut", DIA_Dieter_Hallo_b ); | Info_AddChoice (DIA_Dieter_Hallo, "Gut", DIA_Dieter_Hallo_b ); | ||
- | }; | + | };</code> |
- | --------- | + | |
Das ist das neue. Ihr packt das einfach in die normale FUNC VOID eures Dialogs. Natürlich können es auch mehr als nur 2 Choices sein. | Das ist das neue. Ihr packt das einfach in die normale FUNC VOID eures Dialogs. Natürlich können es auch mehr als nur 2 Choices sein. | ||
Dann tragt ihr einfach folgendes ein ein: | Dann tragt ihr einfach folgendes ein ein: | ||
- | --------- | + | <code cpp> |
Info_AddChoice (DIA_Dieter_Hallo, "Geht so",DIA_Dieter_Hallo_c ); . | Info_AddChoice (DIA_Dieter_Hallo, "Geht so",DIA_Dieter_Hallo_c ); . | ||
- | --------- | + | </code> |
"Info_ClearChoices" lässt erst mal die alten Auswahlmöglichketen verschwinden. | "Info_ClearChoices" lässt erst mal die alten Auswahlmöglichketen verschwinden. | ||
"Info_AddChoice" fügt eine Auswahlmöglichkeit (Choice) hinzu. | "Info_AddChoice" fügt eine Auswahlmöglichkeit (Choice) hinzu. | ||
- | In die Klammern kommt erst die Dialoginstanz. Als zweites kommt in die Klammern dann die discription/der Text für den Dialog angezeigt wird. Und dann die Instanz für die Choice, also das, was ausgeführt werden soll, wenn der Spieler sich für diese Auswahl entschieden hat. | + | In die Klammern kommt erst die Dialoginstanz. Als zweites kommt in die Klammern dann die description/der Text für den Dialog angezeigt wird. Und dann die Instanz für die Choice, also das, was ausgeführt werden soll, wenn der Spieler sich für diese Auswahl entschieden hat. |
- | --------- | + | <code cpp> |
FUNC VOID Dia_Dieter_Hallo_a () | FUNC VOID Dia_Dieter_Hallo_a () | ||
{ | { | ||
Zeile 80: | Zeile 82: | ||
AI_Output (self, other,"Dia_Dieter_Hallo_b_npc_01"); //Das ist aber schön. | AI_Output (self, other,"Dia_Dieter_Hallo_b_npc_01"); //Das ist aber schön. | ||
Info_ClearChoices(Dia_Dieter_Hallo); | Info_ClearChoices(Dia_Dieter_Hallo); | ||
- | }; | + | };</code> |
- | --------- | + | |
Für jede der im zweiten Teil der Info_AddChoice-Syntax angegebene Instanz wird unter die abgeschlossene "normale" FUNC VOID eine neue erstellt, mit eben dieser Instanz. Auch hier kann man neue AddChoice-Befehle einfügen. Das ClearChoices aber nur verwenden, wenn die bis dahin vorhandenen Choices auch wirklich weg sollen! | Für jede der im zweiten Teil der Info_AddChoice-Syntax angegebene Instanz wird unter die abgeschlossene "normale" FUNC VOID eine neue erstellt, mit eben dieser Instanz. Auch hier kann man neue AddChoice-Befehle einfügen. Das ClearChoices aber nur verwenden, wenn die bis dahin vorhandenen Choices auch wirklich weg sollen! |