It's my old Super Monitor, converted from 1.09.4. However, most of you probably remember it from Sonic 3 & Knuckles. Breaking this monitor gives you 50 rings and instantly transforms you into your super form, no matter how many emeralds you have or what character you are playing.
This object does not overwrite any in-game object. If you want to use it, you will either have to make a map with it (Its Thing # is 3000) or use OBJECTPLACE to place it (it should be right at the end of the list, just hit Rotate Camera L to get to it).
The graphics and SOC are free to use by whoever wants to use them.
Here is a copy of the SOC with comments, if you want to understand how it works (For some reason the comments break the SOC, so don't try to copy and paste this into an SOC and run it)
This object does not overwrite any in-game object. If you want to use it, you will either have to make a map with it (Its Thing # is 3000) or use OBJECTPLACE to place it (it should be right at the end of the list, just hit Rotate Camera L to get to it).
The graphics and SOC are free to use by whoever wants to use them.
Here is a copy of the SOC with comments, if you want to understand how it works (For some reason the comments break the SOC, so don't try to copy and paste this into an SOC and run it)
Code:
Thing 318 # Icon
MAPTHINGNUM = -1
SPAWNSTATE = 1793
SPAWNHEALTH = 1
SEESTATE = 0
SEESOUND = 222 # The sound that is played when the effects are awarded: Super Sonic transformation sound.
REACTIONTIME = 50 # A_RingBox uses REACTIONTIME to determine how many rings to award.
ATTACKSOUND = 0
PAINSTATE = 0
PAINCHANCE = 1
PAINSOUND = 0
MELEESTATE = 0
MISSILESTATE = 0
DEATHSTATE = 0
DEATHSOUND = 0
XDEATHSTATE = 0
SPEED = 131072
RADIUS = 524288
HEIGHT = 917504
MASS = 100
DAMAGE = 4063232
ACTIVESOUND = 0
RAISESTATE = 0
FLAGS = 33591824
Thing 319 # Monitor
MAPTHINGNUM = 3000
SPAWNSTATE = 1791
SPAWNHEALTH = 1
SEESTATE = 0
SEESOUND = 0
REACTIONTIME = 8
ATTACKSOUND = 0
PAINSTATE = 1791
PAINCHANCE = 0
PAINSOUND = 0
MELEESTATE = 0
MISSILESTATE = 0
DEATHSTATE = 1793
DEATHSOUND = 119
XDEATHSTATE = 0
SPEED = 95 # Again, another weird thing: This is what is left behind after the monitor gets popped.
RADIUS = 1048576
HEIGHT = 2097152
MASS = 100
DAMAGE = 318 # For some reason, the Damage has to be set to the object number of whatever comes out of the monitor.
ACTIVESOUND = 0
RAISESTATE = 0
FLAGS = 1048582
FRAME 1791 # Show what's in the monitor
SPRITENUMBER = 243
SPRITESUBNUMBER = 0
DURATION = 2
NEXT = 1792
ACTION None
VAR1 = 0
VAR2 = 0
FRAME 1792 # Static
SPRITENUMBER = 77
SPRITESUBNUMBER = 0
DURATION = 1
NEXT = 1791
ACTION None
VAR1 = 0
VAR2 = 0
FRAME 1793 # Monitor is popped
SPRITENUMBER = 243
SPRITESUBNUMBER = 1
DURATION = 18
NEXT = 1794
ACTION A_MonitorPop
VAR1 = 0
VAR2 = 0
FRAME 1794
SPRITENUMBER = 243
SPRITESUBNUMBER = 1
DURATION = 0
NEXT = 1795
ACTION A_CustomPower
VAR1 = 24 # pw_emeralds, set which emeralds the target has.
VAR2 = 127 # 1 = Green, 2 = Orange, 4 = Purple, 8 = Blue, 16 = Red, 32 = Cyan, 64 = Silver. Add them all up and you get 127.
FRAME 1795
SPRITENUMBER = 243
SPRITESUBNUMBER = 1
DURATION = 0
NEXT = 1796
ACTION A_RingBox # Awards rings equal to the REACTIONTIME of the object that calls it. In this case, 50.
VAR1 = 0 # I don't know why it doesn't use VAR1 instead. It'd be alot easier.
VAR2 = 0
FRAME 1796
SPRITENUMBER = 243
SPRITESUBNUMBER = 1
DURATION = 18
NEXT = 1615
ACTION A_CustomPower
VAR1 = 15 # pw_super, sets whether or not you're Super.
VAR2 = 1 # TRUE: You are Super.
Attachments
Last edited: