PATCH: Dissapearing sprites
Posted: Thu Feb 22, 2007 11:33 am
Whilst looking for a few things for the community mod, I stumbled across this patch:
'Hmmn' I thought to myself 'What if I could make a sprite do that?'
Note: The second $00 $02 is the time the sprite will remain in game ticks, the first $02 $00 is the sprite-keen interaction, in this case, bump Keen and make a stomped Yorp when stood on. It can kill, etc.
When Keen plays the game, the sprites will start 'counting' as soon as he sees them, they will not move, but can be shot, or kill Keen, etc. A sprite offscreen doesn't 'count' This can be used to make temporary blocks (That kill, push or freeze, etc) or even trade offs. (Make the Yorp death use this behavior, then change the interaction to $03; when a Yorp is shot, it will freeze, but now kill Keen until it disappears.)
This uses the spare status screen space, but other spaces can be used too, just change where the behavior is patched and the reference. you can even use multiple copies of the behavior to do different things.
Code: Select all
#How long the Zaps/zots remain before disappearing (20 ticks)
%patch $47FC $14 $00
'Hmmn' I thought to myself 'What if I could make a sprite do that?'
Code: Select all
#Make sprites disappear:
#Sprite behavior-needs status screen patch to work!
%patch $10D2 $55 $8B $EC #Overwrite old sprite data
$C7 $06 $20 $82 $02 $00 #Set Keen-sprite interaction
$A1 $4A $82 $03 $06 $14 $5B $A3 $4A $82 $3D $00 $02 #Set time to remain
$7E $06 $C7 $06 $20 $82 $00 $00 $5D $C3 #Disapear when time is up
#Now just make any sprite use this property as spawning:
%patch $18B4 $D2 #10 #Yorp
When Keen plays the game, the sprites will start 'counting' as soon as he sees them, they will not move, but can be shot, or kill Keen, etc. A sprite offscreen doesn't 'count' This can be used to make temporary blocks (That kill, push or freeze, etc) or even trade offs. (Make the Yorp death use this behavior, then change the interaction to $03; when a Yorp is shot, it will freeze, but now kill Keen until it disappears.)
This uses the spare status screen space, but other spaces can be used too, just change where the behavior is patched and the reference. you can even use multiple copies of the behavior to do different things.