News:

Don't forget to visit the main site! There's lots of helpful docs, patches, and more!

Main Menu

[SM] door animation

Started by stat!k, August 05, 2010, 07:08:20 AM

Previous topic - Next topic

stat!k

hey, i need to make it so that the door opening animation freezes on the very last frame.
ok, so when you shoot the door, it goes through its animation, then deletes the door bubble, i want to make it
A) freeze on the last frame
B) not delete the bubble
if anyone knows anything about this, please help me!

apparently its just a 5th frame -.-

Lunaria

Once all four frames in each of the animations have run they will all end up on the "5th frame", so to speak. This last frame is shared by all the hatches.



That's where it is on a standard CRE tile map.

Edit: Yes, this applies to gray hatches too.

JAM

#2
I understand what you want to do: leave a small part of hatch when any door will be fully open? It can be done easily.

You'll need unheadered ROM to perform hex works.

Open SMILE. Select any room with PLMs. Click on any PLM. Select door PLMs, starting from C842 (Grey door facing left). Don't click OK, just look at header of the window. There'll be 2 addresses (24794 | 23E70). Remember or write somewhere the second address.

Repeat the process for every door.

Close SMILE. Open hex editor. Jump to the first address in the list (23E70). You'll see bunch of instructions. Scroll down until you see something like this:
04 00 XX XX 04 00 YY YY

Aqua: Delay in frames
Yellow: pointer to instruction (drawing instruction in this case).

Scroll down until you see
01 00 ZZ ZZ

This is the last drawing instruction when the door is opened and this image of bubble will be displayed after door opens. It now points to "fully opened door". Change ZZ ZZ to bytes right before 01 00. Save.

Run the game to check the effect.

If everything is fine, repeat the process for every door.


To find locations of blue doors, use doc PLM_Details.txt by Kej (can be found here: http://jathys.zophar.net/supermetroid/kejardon/index.html)