Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Nächste Überarbeitung | Vorherige Überarbeitung | ||
quickstart:skripte:monologe [2015/08/18 22:15] 127.0.0.1 Externe Bearbeitung |
quickstart:skripte:monologe [2016/02/07 22:38] (aktuell) milgo |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | = Der Monolog = | + | ====== Monologe ====== |
- | :In diesem kleinen Tutorial erkläre ich euch, wie man einen Monolog macht. Man muss zuerst im Spacer ein Triggerscript setzen. Da muss auf jeden Fall (falls der Monolog ausgelöst werden soll, wenn man in das Triggerscript hineinläuft) __CdDyn__ auf __TRUE__ sein, da dadurch erst eine Collision mit dem hero stattfinden kann. Und __reactToOnPC__ muss auch auf TRUE sein, da mit die Reaktion beim PC, also dem hero ausgelöst wird. Und man sollte darauf achten, dass __ReactToOnNPC__ nicht auf __TRUE__ ist, da der Monolog sonst auch ausgelöst wird, wenn andere NPC´s hineinlaufen. | + | |
- | :Als Nächstes wird ganz unten bei ScriptFunc irgendwas angeben. Z.B. __TRIGGER_TAL1MONOLOG__. Dadurch wird ein Script aufgerufen, das mit __**func** void TRIGGER_TAL1MONOLOG ()__ beginnt. | + | |
- | :Nun wird das Script geschrieben. Ich kopier einfach mal eins von mir und erklär das: | + | |
- | :__//********************************************************* __ | + | In diesem kleinen Tutorial erkläre ich euch, wie man einen Monolog macht. Man muss zuerst im Spacer ein Triggerscript setzen. Da muss auf jeden Fall (falls der Monolog ausgelöst werden soll, wenn man in das Triggerscript hineinläuft) ''CdDyn'' auf ''TRUE'' sein, da dadurch erst eine Collision mit dem hero stattfinden kann. Und ''reactToOnPC'' muss auch auf ''TRUE'' sein, da mit die Reaktion beim PC, also dem hero ausgelöst wird. Und man sollte darauf achten, dass ''ReactToOnNPC'' nicht auf ''TRUE'' ist, da der Monolog sonst auch ausgelöst wird, wenn andere NPCs hineinlaufen. |
- | :__// Trigger Monolog __ | + | Als Nächstes wird ganz unten bei ScriptFunc irgendwas angeben. Z.B. ''TRIGGER_TAL1MONOLOG''. Dadurch wird ein Script aufgerufen, das mit ''func void TRIGGER_TAL1MONOLOG ()'' beginnt. |
- | :__//********************************************************* __ | + | Nun wird das Script geschrieben. Ich kopier einfach mal eins von mir und erklär das: |
- | :__**func** **void** TRIGGER_TAL1MONOLOG () __ | + | <code C>//********************************************************* |
- | :__{ __ | + | // Trigger Monolog |
- | ::__AI_StandUp(**self**); ////oder hero// __ | + | //********************************************************* |
- | ::__AI_Output(**hero**, **self**, "DIA_Monolog_Tal1_15_00"); ////DeinText// __ | + | |
- | ::__AI_Output(**hero**, **self**, "DIA_Monolog_Tal1_15_01"); ////DeinText// __ | + | |
- | ::__AI_Output(**hero**, **self**, "DIA_Monolog_Tal1_15_02"); ////DeinText// __ | + | |
- | :__}; __ | + | |
- | :So sieht das dann aus. Ich habe es mit __**func** **void** TRIGGER_TAL1MONOLOG () __ begonnen. Da muss man nach dem __**func** **void** __ das angeben, was bei dem Triggerscript bei __ScriptFunc __ hingeschrieben wurde. Die Funktion __AI_StandUp(**self**); __ ist dafür da, dass er vor dem Monolog stehen bleibt, sonst rennt er unkontrollierbar geradeaus, bis er fertig geredet hat. Man kann auch die Funktion __AI_StandUpQuick(**self**); __ nehmen, die noch besser geeignet ist. Als Nächstes schreibt man einfach die Outputs. Das hier ist natürlich nur ein einfacher Monolog. Man könnte noch viel mehr Funktionen einbauen, z.B. ein Erdbeben, aber ich denke, dass das erstmal reichen sollte. | + | func void TRIGGER_TAL1MONOLOG () |
+ | { | ||
+ | AI_StandUp(self); //oder hero | ||
+ | AI_Output(hero, self, "DIA_Monolog_Tal1_15_00"); //DeinText | ||
+ | AI_Output(hero, self, "DIA_Monolog_Tal1_15_01"); //DeinText | ||
+ | AI_Output(hero, self, "DIA_Monolog_Tal1_15_02"); //DeinText | ||
+ | };</code> | ||
- | :Wenn man If-Abfragen macht, die den Helden betreffen, dann darf man nicht wie in normalen Dialogen __**other** __ nehmen, sondern __**self** __, oder __**hero** __. | + | So sieht das dann aus. Ich habe es mit ''func void TRIGGER_TAL1MONOLOG ()'' begonnen. Da muss man nach dem ''func void*'' das angeben, was bei dem Triggerscript bei ''ScriptFunc'' hingeschrieben wurde. Die Funktion ''AI_StandUp(self);'' ist dafür da, dass er vor dem Monolog stehen bleibt, sonst rennt er unkontrollierbar geradeaus, bis er fertig geredet hat. Man kann auch die Funktion ''AI_StandUpQuick(self);'' nehmen, die noch besser geeignet ist. Als Nächstes schreibt man einfach die Outputs. Das hier ist natürlich nur ein einfacher Monolog. Man könnte noch viel mehr Funktionen einbauen, z.B. ein Erdbeben, aber ich denke, dass das erstmal reichen sollte. |
- | :Gut, ich hoffe, ich konnte euch helfen und sehe in den nächsten Mods ein paar Monologe von euch;) Okay, Spaß beiseite, viel Glück noch beim weiteren Modden:) | + | Wenn man If-Abfragen macht, die den Helden betreffen, dann darf man nicht wie in normalen Dialogen ''other'' nehmen, sondern ''self'', oder ''hero''. |
- | :MfG Golden Age | + | Gut, ich hoffe, ich konnte euch helfen und sehe in den nächsten Mods ein paar Monologe von euch;) Okay, Spaß beiseite, viel Glück noch beim weiteren Modden:) |