Dialog - different rooms?

Fragen zu "Adventure Game Studio"? Hier rein!
Antworten
Benutzeravatar
Kleener_Apfel
Adventure-Treff
Adventure-Treff
Beiträge: 2817
Registriert: 30.11.2003, 18:41

Dialog - different rooms?

Beitrag von Kleener_Apfel »

Ich hab das Problem, dass, wenn ich z.B. mit Britney in ihrem Zimmer reden möchte

1) der Charakter nicht zu der angegeben Position läuft
2) Wenn ich den Dialog beende, das ganze abbricht mit der Begründung "characters are in different rooms"


Ich hab mich schon durch unzählige Tutorials gewuselt aber irgendwie klappts nicht. Bin auch keene Leuchte in Sachen AGS

Momentan siehts bei mir so aus:
// script for character104: Talk to character
MoveCharacter(ED,75,135);
FaceCharacter(ED,VIEW22);
FaceCharacter(VIEW22,ED);
RunDialog (0);
Hab das Script ausm Adventure-Treff (oder Adventure-Corner?) Tutorial so umgewandelt und bei Britneys Talk-Interaction als "Run Script" eingefügt.... muss ich etwa bei Ed nochmal dasselbe Script einfügen oder was hab ich falsch gemacht?
Benutzeravatar
Floyd
Logik-Lord
Logik-Lord
Beiträge: 1088
Registriert: 14.03.2004, 19:59

...

Beitrag von Floyd »

Zwischen MoveCharacter und FaceCharacter muss auf jeden Fall noch dieser Befehl:
while (character[EGO].walking != 0) {
Wait(1);
}
.
Das script musst du nur bei dem Charakter einfügen, der angeklickt wird, also dem NPC.
Das mit den unterschiedlichen Räumen ist seltsam. Sicher, dass beide sich im selben Raum befinden? Wieso heißt der Charakter eigentlich View22 :wink: ?
MfG Floyd
Benutzeravatar
KhrisMUC
Adventure-Gott
Adventure-Gott
Beiträge: 4674
Registriert: 14.03.2005, 00:55
Wohnort: München

Beitrag von KhrisMUC »

Statt der while-Schleife geht auch MoveCharacterBlocking.

Wieso schaut denn keiner mehr ins Manual?!
Use gopher repellent on funny little man
strazer

Beitrag von strazer »

Zwischen MoveCharacter und FaceCharacter muss auf jeden Fall noch dieser Befehl:
Es ist wohl einfacher statt MoveCharacter einfach MoveCharacterBlocking zu benutzen.
Wenn ich den Dialog beende, das ganze abbricht mit der Begründung "characters are in different rooms"
Vermutlich hat es tatsächlich etwas mit VIEW22 zu tun. Du benutzt den Namen eines Views statt den eines Charakters. View-Namen werden genau wie Charakter-Namen intern in Nummern umgewandelt, also wenn du

FaceCharacter(ED, VIEW22);

machst, sieht es für AGS im Endeffekt so aus (angenommen ED ist Charakter Nummer 0 und VIEW22 ist View Nummer 22):

FaceCharacter(0, 22);

ED versucht also nun Charakter Nummer 22 anzuschauen, aber dieser ist nicht im aktuellen Raum, daher die Fehlermeldung.

Du möchtest wahrscheinlich dies:

FaceCharacter(ED, BRITNEY);
Benutzeravatar
Kleener_Apfel
Adventure-Treff
Adventure-Treff
Beiträge: 2817
Registriert: 30.11.2003, 18:41

Beitrag von Kleener_Apfel »

Also für das VIEW22 stand ursprünglich TALK... aber da hat AGS och rumgemeckert.

Ich probiers auf jeden Fall mal aus ;) Danke schön

Edit

Es klappt! Danke! Ihr seid echt Genies ;)
Antworten