PDA

View Full Version : How do you actually make the exit of a level?


Joonas
02-07-2003, 03:03 AM
The ending. Fade-out...
It isn't just like placing a normal exit in F7... or is it?

theHunted
02-07-2003, 05:36 AM
gotta place a trigger sending this message:

x_modeswitch->s_modeswitch(menu);

im not quite sure if that message already causes the screen to smoothly fade to black.
if not you should combine it with a timer sending:

maxpayne_hudmode->MPHM_FlashToColor(0x000000ff, x, 99, 99);
(where x is the time it akes for the screen to smoothly fade to black)

so first create a trigger that will cause the end (player collission for example)
let the trigger start a timer, which is sending the flashtocolor at the first keyframe and the modeswitch message at the last keyframe

Joonas
02-07-2003, 05:40 AM
Thanks for your help. images/icons/smile.gif

EDIT:
maxpayne_hudmode->MPHM_FlashToColor(0x000000ff, x, 99, 99);
(where x is the time it akes for the screen to smoothly fade to black)

so first create a trigger that will cause the end (player collission for example)
let the trigger start a timer, which is sending the flashtocolor at the first keyframe and the modeswitch message at the last keyframe<font size="2" face="Verdana, Arial">Do I do that? images/icons/frown.gif

[ 02-07-2003, 05:48 AM: Message edited by: Joonas ]

theHunted
02-07-2003, 06:36 AM
?
you mean how?

hopefully someone else wants to post a step by step guide for you, but i seriously dont feel like that atm.

i suggest you first try studying:
http://www.3drealms.com/max/tutorials/MaxED/dynamic_objects.htm
(every door is already a "timer")

i'll propably write a guide for you in a few hours though, then i got time again.

Froz
02-07-2003, 08:32 AM
Put a trigger where your level ends (opening a door for example). Now create a new dummy box, this will be the timer. Make it dynamic. Make a null anim and its lenght to match the fade's lenght. Now add the modeswitch code to the timer's null animation send after block. Finally go back to your trigger, put the fadetocolor code there and the launch the dummy timer's null animation...

william ford
02-07-2003, 07:59 PM
Put a trigger where your level ends (opening a door for example). Now create a new dummy box, this will be the timer. Make it dynamic. Make a null anim and its lenght to match the fade's lenght. Now add the modeswitch code to the timer's null animation send after block. Finally go back to your trigger, put the fadetocolor code there and the launch the dummy timer's null animation... <font size="2" face="Verdana, Arial">What the hell is that??? Never heard of that...ever. I swear u make up some of this stuff. images/icons/tongue.gif

HairlessWookie
02-08-2003, 01:03 AM
he's right....
u make a player collision trigger at the end of the level....where the player has to walk to trigger it....or use the door as a trigger. Then u make an animation in the trigger that does the hud fade....at the last keyframe of that animation u specify a map change ...maxpayne_gamemode->gm_init(levelname); (you can use an external timer such as a DO box, or you can use the door to time the animation.)
for it to look right you will have to time the hud fade with the time it takes to complete the animation and switch to the next level.
Exits are something completely different that have nothing to do with exiting a level. When u build an exit, it seperates the level into two pieces,...one piece on one side of the exit, one piece on the other. The maxpayne engine will not render what is on the other side of the exit until you either look through it or walk through it. This is used to make the game run smoother by not rendering polygons that you are not looking at. you can also optimize your exits with the help of doors and triggers. read a tutorial and you will completely understand.