Maniac Mansion Mania Forum

MMM-Werkzeugkiste => Technik => Thema gestartet von: Sparky am 25. August 2009, 19:51:07

Titel: Explosion!
Beitrag von: Sparky am 25. August 2009, 19:51:07
Hi hi hi!

Ich möchte eine Szene machen, in der etwas explodiert und der Raum anschließend ein anderes Hintergrundbild hat.
Vielleicht könnte es irgendwie mit animiertem Hintergrund funktionieren. Ich hab aber keinen Plan wie.
 ???
Könnte mir jemand helfen?
Danke im Voraus!
Titel: Re: Explosion!
Beitrag von: 1mal_volltanken am 25. August 2009, 22:56:42
Ich würde es bspw. mit GlobalInts machen...

Im Startbildschirm, würd ich erstmal in den RoomSettings eine Variable festlegen.

Bspw. so:

SetGlobalInt(300,0) ;  // Raum vor der Explosion


Dort, wo Du die Raum-Verknüpfungen gelegt hast, schreibst Du einfach:

if (GetGlobalInt(300) == 0)  EnterRoom (50,x,y,DIR_x) ;
else if (GetGlobalInt(300) == 1) EnterRoom (51, x,y,DIR_x) ;[/color]

Hierbei stellt der Room50 den Raum vor der Explosion dar, der Room51 den Raum nach der Explosion.
Bei der Explosion muss dann natürlich der Befehl enthalten sein "SetGlobalInt(300,1)".

So kann man es machen.


BG
der Volltanker


Titel: Re: Explosion!
Beitrag von: NsMn am 25. August 2009, 23:15:11
Das ist vöölig überflüssig. Das einfachste ist, bei dem Fenster, in dem man die Hintergrundanimationen setzt, einfach 2 Frames mit dem normalen und dem Background nach der Explosion erstellen. Dann schreibst du nach der Explosion einfach:

SetBackgroundFrame(-die Nummer des Frames mit dem Hintergrund nach d. Explosion-);
Ist aus dem Gedächtnis, dürfte aber funktionieren.
Titel: Re: Explosion!
Beitrag von: Bòógieman am 26. August 2009, 08:10:43
jap wie NsMn gesagt hat, nur dass du auch den standardhintergrund per setbackgroundframe setzen musst, denn bei mehreren frames wird der raum standardmäßig animiert und das willst du da ja nicht  ;)
Titel: Re: Explosion!
Beitrag von: Sparky am 27. August 2009, 14:54:42
Wuha! Danke danke! Werd's sofort ausprobiern!
Wait(300);
Okay, scheint zu funktionieren.
Background Animation auf -1 gesetzt, dann läuft's!