World of Gothic Archiv
> NWN-Hilfe Brauche Hilfe bei if-else |
|
23.07.2002, 13:17 | #1 | ||
Sparschwein Beiträge: 44 |
Brauche Hilfe bei if-else
Also ich habe Hier einen Script void main() { object oNPC = GetObjectByTag("Jaeth"); object oPC = GetLastPerceived(); GetObjectSeen(oPC,oNPC); AssignCommand(oNPC, ClearAllActions()); AssignCommand(oNPC, ActionMoveToObject(oPC)); SpeakString("Hey,Ihr da"); AssignCommand(oNPC, ActionStartConversation(oPC)); } Und ich würde oPC gerne mit GetIsPc Überprüfen, ob es eben auch der NPC is .. Wie Muss das dann aussehen oO Weil GetIsPC Gibt ja TRUE Oder False zurück, Also müsste man doch dann if pPC == TRUE { ...} Aber die If-Else syntax is mir nich bekannt :( und ich habe auch nirgends ein Beispiel gefunden. Wenn ich grade mal einen Thread aufhabe :D . Vieleicht kann Irgendjemand mal ein Kleines (Bebildertes) tutorial zu der Sache mit den Lokalen Variablen in Gesprächen schreiben |
||
23.07.2002, 13:29 | #2 | ||
GuradonHellsing Beiträge: 232 |
gibs doch schon ..... http://www.c-plusplus.de/c___1.htm |
||
23.07.2002, 13:32 | #3 | ||
Fantasyelf Beiträge: 36 |
Du mußt nicht == TRUE hinschreiben, sondern folgendes reicht auch: if GetIsPC(...) { ... //wenn TRUE } else { ... //wenn FALSE } PS: Funktioniert denn jetzt die TRAUMSEQUENZ? |
||
23.07.2002, 13:36 | #4 | ||
Sparschwein Beiträge: 44 |
void main() { object oNPC = GetObjectByTag("Jaeth"); object oPC = GetLastPerceived(); if (GetIsPC(oPC) == TRUE) { GetObjectSeen(oPC,oNPC); AssignCommand(oNPC, ClearAllActions()); AssignCommand(oNPC, ActionMoveToObject(oPC)); SpeakString("Hey,Ihr da"); AssignCommand(oNPC, ActionStartConversation(oPC)); } } So Also beim Kompilieren gibt es keinen Fehler, mal sehen ob es geht. |
||
23.07.2002, 13:43 | #5 | ||
Fantasyelf Beiträge: 36 |
Die vorletzte Klammer "{" muß vor - SpeakString("Was Ein Wetter,Kameraden."); - sein. Mich würde wirklich interessieren, ob es jetzt mit der vom Spieler ungestörten Spielsequenz funktioniert. Ich benutze bei meinem Module selber Sequenzen und die funktionieren, bis auf die Tatsache, das man immer noch oben links die Commands wegklicken kann, aber sonst kann man den PC nicht steuern. |
||
23.07.2002, 14:13 | #6 | ||
Sparschwein Beiträge: 44 |
So If geht jetzt. Aber er Sagt es immer wenn ich In seine Umgebung Laufe Deswegen wollte ich mit Variablen noch Abfragen, das er mich nur ein Einziges Mal Anspricht. void main() { object oNPC = GetObjectByTag("Jaeth"); object oPC = GetLastPerceived(); string sKey = "Test"; int iValue = 1; SetLocalInt(oNPC, sKey, iValue); if (GetIsPC(oPC) == TRUE) { GetObjectSeen(oPC,oNPC); AssignCommand(oNPC, ClearAllActions()); AssignCommand(oNPC, ActionMoveToObject(oPC)); SpeakString("Hey,Ihr da"); AssignCommand(oNPC, ActionStartConversation(oPC)); } } ich Dachte mir das es hinter die If Zeile kommt also ); && iValue != 1 ... Aber so richtig verstehe ich das nicht |
||
23.07.2002, 16:41 | #7 | ||
Fantasyelf Beiträge: 36 |
Es muß so lauten: if ((GetIsPC(oPC)) && (GetLocalInt(oNPC,sKey) != 1)) { ... } PS: Im Forgotten Book gibt es Skripte, wo Du dir so etwas abgucken kannst. Das Book ist sehr empfehlenswert. |
||
|