Character im Raum platzieren (ohne die Character-option)

Fragen zu "Adventure Game Studio"? Hier rein!
Antworten
Rayman

Character im Raum platzieren (ohne die Character-option)

Beitrag von Rayman »

Servus!

Ich wollte bei meinen Spiel eine Trailer-Animation machen,
dass eine Figur (z.B. EGO) rauskommt,
wenn die Tür sich öffnet.
Also nachdem sich die Tür öffnet soll vor der Tür
der EGO stehen. Ich habe das mit den Optionen
versucht, aber dann ist der EGO schon da, bevor die
Tür sich öffnet.
Was muss ich da machen :(
Benutzeravatar
Fightmeyer
Riesiger Roboteraffe
Riesiger Roboteraffe
Beiträge: 7308
Registriert: 16.12.2004, 22:51
Wohnort: Potsdam
Kontaktdaten:

Beitrag von Fightmeyer »

Im Room kannst Du n Häkchen setzen, bei PlayerCharacter visible. Nimm das Häkchen raus und Dein EGO ist erstmal nicht zu sehen. Anschließend muß Du ihn über den entsprechenden Scriptbefehl anzeigen lassen...

EDIT: Moment, ich glaube, das hieß "Hide Player" Da muß dann das Häkchen rein und Dein EGO wird nciht angezeigt.
Zuletzt geändert von Fightmeyer am 25.09.2005, 19:51, insgesamt 1-mal geändert.
Benutzeravatar
Floyd
Logik-Lord
Logik-Lord
Beiträge: 1088
Registriert: 14.03.2004, 19:59

...

Beitrag von Floyd »

Bei "Before FadeIn":

Code: Alles auswählen

SetCharacterTransparency(EGO,100);
Nachdem die Tür geöffnet wurde:

Code: Alles auswählen

SetCharacterTransparency(EGO,0);
Ich hoffe mal, dass es das ist, was du suchst.
MfG Floyd
Benutzeravatar
Sinitrena
Tastatursteuerer
Tastatursteuerer
Beiträge: 678
Registriert: 08.05.2004, 01:01
Wohnort: Frankfurt
Kontaktdaten:

Beitrag von Sinitrena »

Oder du setzt für die Tür eine Baseline hinter der sich der Charakter befindet
http://www.sinitrena.de.vu Meine Spiele: "A very special dog", "A magic stone", "James Bond - Who wants to live again?", "Lonely Night", "Death of an Angel", "The Witch, the Wizard and the Blue Cup", "Emerald Eyes"
Rayman

Geht nicht.

Beitrag von Rayman »

Bei Before fadeIn hab ich die
Codes auch versucht, aber es geht nicht.
Nicht mal der Tipp mit dem "Hide Character Player" geht nicht.
Ich habe es so versucht:


Wait(10);
ObjectOn(6);
SetCharacterTransparency(EGO,100);
SetCharacterTransparency(EGO,0);
PlaySound(1);
Wait(5);
DisplaySpeech(EGO,"Hallo.");

Was die 100 und die 0 bei SetCharacterTransparency bedeuten,
das weiß ich nicht.
Rayman

Geht nicht.

Beitrag von Rayman »

Bei Before fadeIn hab ich die
Codes auch versucht, aber es geht nicht.
Nicht mal der Tipp mit dem "Hide Character Player" geht nicht.
Ich habe es so versucht:


Wait(10);
ObjectOn(6);
SetCharacterTransparency(EGO,100);
SetCharacterTransparency(EGO,0);
PlaySound(1);
Wait(5);
DisplaySpeech(EGO,"Hallo.");

Was die 100 und die 0 bei SetCharacterTransparency bedeuten,
das weiß ich nicht.
Rayman

Beitrag von Rayman »

Sorry das meine Antwort 2mal erschien.
Bei mir war ein Fehler passiert. :oops:
Benutzeravatar
Floyd
Logik-Lord
Logik-Lord
Beiträge: 1088
Registriert: 14.03.2004, 19:59

Beitrag von Floyd »

Code: Alles auswählen

Wait(10);
ObjectOn(6);
SetCharacterTransparency(EGO,100);
SetCharacterTransparency(EGO,0);
PlaySound(1);
Wait(5);
DisplaySpeech(EGO,"Hallo."); 
100 bedeutet, dass der Spieler unsichtbar ist, 0, dass er volkommen sichtbar ist. 50 wäre z.B. dann halbtransparent.

Dass es so nicht funktioniert, liegt daran, dass du den Charakter mit
SetCharacterTransparency(EGO,100); unsichtbar machst, ihn aber fast im selben Moment wieder sichtbar machst mit SetCharacterTransparency(EGO,0); .

Entferne einfach mal

Code: Alles auswählen

SetCharacterTransparency(EGO,100);
aus diesem script und füge es bei BeforeFadeIn ein, dann müsste es gehen.
MfG Floyd
Benutzeravatar
Sinitrena
Tastatursteuerer
Tastatursteuerer
Beiträge: 678
Registriert: 08.05.2004, 01:01
Wohnort: Frankfurt
Kontaktdaten:

Beitrag von Sinitrena »

Die Zahlen bei Character Transperancy stehen für die Durchsichtigkeit des Cha: 0 überhauptnicht, 100 ganz durchsichtig.


Bei deinem Script setzt AGS den Cha auf ganz durchsichtig und dann sofort auf ganz sichtbar, ohne eine Pause dazwischen zu machen, dass das nicht funktionieren kann dürfte eigentlich klar sein. Wenn du ein Wait (40) dazwischen setzen würdest, dann wäre er (bei Standartspielgeschwindigkeit) für ein Sekunde unsichtbar, was für deine Zwecke wahrscheinlich schon reichen dürfte.

Was das Before FadeIn betrifft, darf da nicht der gesamte Code hinein, sonst passiert das alles bevor der Raum überhaupt sichtbar ist.

Es muss eher so aussehen:

Script Before FadeIn
SetCharacterTransparency (EGO, 100);


Script First Time Player enters room
Wait (40);
SetCharacterTransparency (EGO,0);
PlaySound (1);
Wait (5);
DisplaySpeech (EGO, "Hallo");


Da ich nicht genau weiß, was dein ObjectOn (6) einschaltet hab ich das jetzt mal rausgelassen.


EDIT: Floyd und ich haben gleichzeitig gepostet. Wie ich das hasse. :roll:
http://www.sinitrena.de.vu Meine Spiele: "A very special dog", "A magic stone", "James Bond - Who wants to live again?", "Lonely Night", "Death of an Angel", "The Witch, the Wizard and the Blue Cup", "Emerald Eyes"
Rayman

Beitrag von Rayman »

Ok. SetCharacterTransperency(EGO,100);
hab ich entfernt
und SetCharacterTransperency in Befor fadeIn eingefügt, aber es tut sich immer noch nichts.
Benutzeravatar
Sinitrena
Tastatursteuerer
Tastatursteuerer
Beiträge: 678
Registriert: 08.05.2004, 01:01
Wohnort: Frankfurt
Kontaktdaten:

Beitrag von Sinitrena »

Du brauchst unbedingt ein Wait bei Player enters Screen.

Aber was meinst du mit "es tut sich immer noch nichts"?

Am besten kopierst du schnell das ganze room sript in den Thread, das erleichtert die Fehlersuche.
http://www.sinitrena.de.vu Meine Spiele: "A very special dog", "A magic stone", "James Bond - Who wants to live again?", "Lonely Night", "Death of an Angel", "The Witch, the Wizard and the Blue Cup", "Emerald Eyes"
Rayman

Beitrag von Rayman »

// script for room: Player enters screen (before fadein)

Wait(40);
SetCharacterTransparency(EGO,0);
ObjectOn(6);
PlaySound(1);
Wait(5);
DisplaySpeech(EGO,"Hallo.");


so habe ich das jetzt gemacht.
ObjectOn(6); ist eine Tür.
Benutzeravatar
Sinitrena
Tastatursteuerer
Tastatursteuerer
Beiträge: 678
Registriert: 08.05.2004, 01:01
Wohnort: Frankfurt
Kontaktdaten:

Beitrag von Sinitrena »

Lies mal, was ich vorhin gepostet hab....

Bis auf das erste SetCharacterTransperancy gehört nichts in Before FadeIn, weil es sonst passiert bevor der Raum überhaupt sichtbar ist!
http://www.sinitrena.de.vu Meine Spiele: "A very special dog", "A magic stone", "James Bond - Who wants to live again?", "Lonely Night", "Death of an Angel", "The Witch, the Wizard and the Blue Cup", "Emerald Eyes"
Benutzeravatar
Floyd
Logik-Lord
Logik-Lord
Beiträge: 1088
Registriert: 14.03.2004, 19:59

...

Beitrag von Floyd »

Dieses Script muss in "After FadeIn" bzw. "First Time Player Enters Screen".
In "Before FadeIn" schreibst du lediglich

Code: Alles auswählen

SetCharacterTransparency(EGO,100); 
edit: Diesmal warst du wohl schneller :wink: .
Benutzeravatar
Sinitrena
Tastatursteuerer
Tastatursteuerer
Beiträge: 678
Registriert: 08.05.2004, 01:01
Wohnort: Frankfurt
Kontaktdaten:

Beitrag von Sinitrena »

@Floyd: Ich glaube, es reicht wenn einer antwortet, der arme Rayman fühlt sich ja noch ganz überrumpelt...
http://www.sinitrena.de.vu Meine Spiele: "A very special dog", "A magic stone", "James Bond - Who wants to live again?", "Lonely Night", "Death of an Angel", "The Witch, the Wizard and the Blue Cup", "Emerald Eyes"
Antworten