There are two elevators, 'First' and 'Main'
Now, by default elevators have two states, 'normal' and 'swapped'; under certain circumstances the open/closed tiles of the doors will 'swap around'; for example, the first elevator pair start with the bottom door open (Normal) when Keen is playing in the main hub however it is the TOP door that is open (Swapped) so Keen can go back to the bottom floor. In this case the condition is 'Is Keen above the first door?'
In their 'swapped' state elevator doors take a 2x2 block of tiles in the foreground plane from the level (At either 0,0 for a closed door or 0,8 for an open one) that is, they replace some of the original map tiles.
Code: Select all
#Elevator door locations; #Under certain conditions these have their tiles replaced so #Keen may use them #First elevator start %patch $F451 $4C $00 %patch $F455 $18 $00 #First elevator destination %patch $F460 $37 $00 %patch $F464 $16 $00 #Main elevator start %patch $F497 $37 $00 %patch $F49B $1A $00 #Main elevator destination %patch $F4B2 $1E $00 %patch $F4B6 $18 $00
Note that it is theoretically possible to make the Main elevator shaft open if Keen has something like x lives, x vitalin or the V card, etc, since the 'fuse' condition is really a 'Level complete' condition.
By making the elevator ignore 1 or more fuses you essentially remove a condition for opening it, so you can have less fuses, but not more.
Code: Select all
#Fuses required to activate main shaft: #($74 = need fuse broke, $75 = need fuse whole, $90 $90 = ignore fuse) %patch $F473 $74 #Level 4 %patch $F47A $74 #Level 6 %patch $F481 $74 #Level 8 %patch $F488 $74 #Level 10 #Levels elevator activating fuses are found: %patch $F470 $24 #Level 4 (28 + 8 = 36) %patch $F477 $74 #Level 6 (28 + 12 = 40) %patch $F47E $74 #Level 8 (28 + 16 = 44) %patch $F485 $74 #Level 10 (28 + 20 = 48) #First elevator shaft doesn't care where Keen is on map #(Doors don't reverse if Keen completes a level above #the bottom door) %patch $F431 $90 $90