Animation bis zu Ende und dann Dialog
- DieFüchsin
- Adventure-Gott
- Beiträge: 4406
- Registriert: 12.03.2004, 16:55
Animation bis zu Ende und dann Dialog
Ich habe in einem Raum einen Charakter, der ständig animiert wird. Beim ansprechen soll die Animation zu Ende geführt werden und dann der Dialog gestartet werden.
Wie kann ich das realisieren?
Die Füchsin
Wie kann ich das realisieren?
Die Füchsin
-
- Adventure-Gott
- Beiträge: 4575
- Registriert: 13.07.2004, 14:04
- Wohnort: Da wo muss
- Kontaktdaten:
die Animation, dass er aufhört (du meinst das doch jetzt, wie z.B. den Messerwerfer in Algerien in Indy4) Soll einfach einen freien Loop belegen.
Dieses Script ist sowohl AGS 2.62 als auch 2.7 kompatibel
Code: Alles auswählen
DisplaySpeech(INDY, "Entschuldigung");
AnimateCharacterEx(WERFER,freierloop,5,0,0,1);
FaceCharacter(WERFER, INDY);
DisplaySpeech(WERFER, "Ja?");
RunDialog(0);
Es heißt, Leute mit den originellsten Nicknames schreiben die besten Beiträge
Ausnahmen bestätigen die Regel
_________________
<Problem> Weil du denken kannst.
Zuletzt bearbeitet von [ZENSIERT] am 16.07.1759, 16:19, insgesamt 54743869-mal bearbeitet
Ausnahmen bestätigen die Regel
_________________
<Problem> Weil du denken kannst.
Zuletzt bearbeitet von [ZENSIERT] am 16.07.1759, 16:19, insgesamt 54743869-mal bearbeitet
- DieFüchsin
- Adventure-Gott
- Beiträge: 4406
- Registriert: 12.03.2004, 16:55
hmm du meinst also, ich soll zwei Animationen machen, eine der Bewegung und eine des Aufhörens?
So einfach ist das leider nicht, ich versuch es mal kurz zu beschreiben:
Der Character ist ein Fisch, der immerzu aus dem Wasser springt, einen Bogen in der Luft macht und dann wieder ins Wasser taucht.
Sprechen kann er erst, wenn er wieder im Wasser angekommen ist und dort den Kopf heraus streckt.
Wird er wärend des Sprungs (der laufenden Animation) angesprochen, muss er erst das Ende der Animation erreichen, also wieder im Wasser landen, bevor es weitergehen kann.
Sonst verschwindet er mitten in der Luft und ist plötzlich im Wasser.
Ein zusätzllicher Loop nützt nach meiner Ansicht da nichts. Oder hab ich was falsch verstanden?
Zur Version: Ich schau mal, hab sie nicht im Kopf und das Programm ist weit entfernt auf einem anderen Rechner
Die Füchsin
So einfach ist das leider nicht, ich versuch es mal kurz zu beschreiben:
Der Character ist ein Fisch, der immerzu aus dem Wasser springt, einen Bogen in der Luft macht und dann wieder ins Wasser taucht.
Sprechen kann er erst, wenn er wieder im Wasser angekommen ist und dort den Kopf heraus streckt.
Wird er wärend des Sprungs (der laufenden Animation) angesprochen, muss er erst das Ende der Animation erreichen, also wieder im Wasser landen, bevor es weitergehen kann.
Sonst verschwindet er mitten in der Luft und ist plötzlich im Wasser.
Ein zusätzllicher Loop nützt nach meiner Ansicht da nichts. Oder hab ich was falsch verstanden?
Zur Version: Ich schau mal, hab sie nicht im Kopf und das Programm ist weit entfernt auf einem anderen Rechner
Die Füchsin
-
- Hobby-Archäologe
- Beiträge: 163
- Registriert: 28.04.2005, 16:26
- Wohnort: Mönchengladbach
Code: Alles auswählen
DisplaySpeech(EGO, "Hi, Fischi");
while (Character[FISCHI].frame != "Endframe der Bewegung"){
wait(1));}
AnimateCharacterEx(FISCHI,"Kopf-rausstreckt-Loop",5,0,0,1);
FaceCharacter(FISCHI, EGO);
DisplaySpeech(FISCHI, "Wat is?");
RunDialog(0);
Zuletzt geändert von Smiley am 01.06.2005, 20:53, insgesamt 2-mal geändert.
-
- Adventure-Gott
- Beiträge: 4575
- Registriert: 13.07.2004, 14:04
- Wohnort: Da wo muss
- Kontaktdaten:
Tja, kannste vielleicht auch direkt so beschreiben!DieFüchsin hat geschrieben:hmm du meinst also, ich soll zwei Animationen machen, eine der Bewegung und eine des Aufhörens?
So einfach ist das leider nicht, ich versuch es mal kurz zu beschreiben:
Der Character ist ein Fisch, der immerzu aus dem Wasser springt, einen Bogen in der Luft macht und dann wieder ins Wasser taucht.
Sprechen kann er erst, wenn er wieder im Wasser angekommen ist und dort den Kopf heraus streckt.
Wird er wärend des Sprungs (der laufenden Animation) angesprochen, muss er erst das Ende der Animation erreichen, also wieder im Wasser landen, bevor es weitergehen kann.
Sonst verschwindet er mitten in der Luft und ist plötzlich im Wasser.
Ein zusätzllicher Loop nützt nach meiner Ansicht da nichts. Oder hab ich was falsch verstanden?
Zur Version: Ich schau mal, hab sie nicht im Kopf und das Programm ist weit entfernt auf einem anderen Rechner
Die Füchsin
DA wäre ich auch auf die while-Schleife gekommen
Nix für ungut, deine Frage ist ja jetzt beantwortet
Es heißt, Leute mit den originellsten Nicknames schreiben die besten Beiträge
Ausnahmen bestätigen die Regel
_________________
<Problem> Weil du denken kannst.
Zuletzt bearbeitet von [ZENSIERT] am 16.07.1759, 16:19, insgesamt 54743869-mal bearbeitet
Ausnahmen bestätigen die Regel
_________________
<Problem> Weil du denken kannst.
Zuletzt bearbeitet von [ZENSIERT] am 16.07.1759, 16:19, insgesamt 54743869-mal bearbeitet
- DieFüchsin
- Adventure-Gott
- Beiträge: 4406
- Registriert: 12.03.2004, 16:55
- DieFüchsin
- Adventure-Gott
- Beiträge: 4406
- Registriert: 12.03.2004, 16:55
-
- Adventure-Gott
- Beiträge: 4575
- Registriert: 13.07.2004, 14:04
- Wohnort: Da wo muss
- Kontaktdaten:
Lektion 1: Wir ersetzen in solchen Situationen den Wortbestandteil "character" durch "object"
und: character[FISCHI].frame muss durch irgendwas ersetzt werden. Wer hat TFMR?
und: character[FISCHI].frame muss durch irgendwas ersetzt werden. Wer hat TFMR?
Es heißt, Leute mit den originellsten Nicknames schreiben die besten Beiträge
Ausnahmen bestätigen die Regel
_________________
<Problem> Weil du denken kannst.
Zuletzt bearbeitet von [ZENSIERT] am 16.07.1759, 16:19, insgesamt 54743869-mal bearbeitet
Ausnahmen bestätigen die Regel
_________________
<Problem> Weil du denken kannst.
Zuletzt bearbeitet von [ZENSIERT] am 16.07.1759, 16:19, insgesamt 54743869-mal bearbeitet
-
- Hobby-Archäologe
- Beiträge: 163
- Registriert: 28.04.2005, 16:26
- Wohnort: Mönchengladbach
- KhrisMUC
- Adventure-Gott
- Beiträge: 4674
- Registriert: 14.03.2005, 00:55
- Wohnort: München
@die Füchsin, [ZENSIERT]: Leider nicht.
Da Objekte nicht zwangsläufig eine View zugeordnet haben (ein Sprite reicht ja anfangs aus), wäre object.frame nicht immer definiert. Man könnte natürlich -1 zurückliefern, wenn das Objekt gerade nicht animiert wird, aber CJ hat's bis jetzt nicht eingebaut.
workaround: einen hotspot nehmen und einen non-clickable Charakter dahinter setzen.
EDIT: Smileys Vorschlag könnte funktionieren, in 2.7 wäre das
Ich weiss aber nicht, ob das funktioniert, sprich, ob oFischi.Graphic sich während der Animation ändert. Bin auch grade zu faul, es auszuprobieren
Da Objekte nicht zwangsläufig eine View zugeordnet haben (ein Sprite reicht ja anfangs aus), wäre object.frame nicht immer definiert. Man könnte natürlich -1 zurückliefern, wenn das Objekt gerade nicht animiert wird, aber CJ hat's bis jetzt nicht eingebaut.
workaround: einen hotspot nehmen und einen non-clickable Charakter dahinter setzen.
EDIT: Smileys Vorschlag könnte funktionieren, in 2.7 wäre das
Code: Alles auswählen
while(oFischi.Graphic!=x)
Use gopher repellent on funny little man
- DieFüchsin
- Adventure-Gott
- Beiträge: 4406
- Registriert: 12.03.2004, 16:55