# "character objects SOC"
# "added comments to help with object usage and SOC beginners by zehrooh!" 

Freeslot
MT_PLACECHASE
S_PLACECHASE
MT_BALDI_NORMAL
S_BALDI_NORMAL_STAND
S_BALDI_NORMAL_WAVE
S_BALDI_NORMAL_WAIT
SPR_BLDI
SPR_BLDW
MT_BALDI_PARTY
S_BALDI_PARTY_STAND
S_BALDI_PARTY_WAVE
S_BALDI_PARTY_WAIT
SPR_BLDP
MT_BALDI_PRINCIPAL
S_BALDI_PRINCIPAL
SPR_PNCP
SPR_BLPW
MT_PLAYTIME
S_PLAYTIME_IDLE
SPR_JUMN
MT_PARTYTIME
S_PARTYTIME_IDLE
SPR_JUMH
MT_GOTTASWEEP
S_GOTTASWEEP
MT_GOTTASWEEP_BASH
S_GOTTASWEEP_BASH
SPR_GSWP
MT_1STPRIZE
S_1STPRIZE_IDLE
SPR_1STP
MT_THE_TEST_HEAD
S_THE_TEST_HEAD
SPR_THED
MT_BALDI_ERROR_CHUNKS
S_BALDI_ERROR_CHUNKS
SPR_ERRC
MT_NOTACTUALLY_NULL
S_NOTACTUALLY_NULL
SPR_NANL
MT_BLADDER
S_BLADDER
SPR_BLDD

# "classic characters"

# "SET THIS OBJECTS SCALE TO 0.6"
# "USE MOBJSCALE IN THE CUSTOM TAB OF THE EDIT THING WINDOW (UZB ONLY)"
Object MT_PLACECHASE
#$Category Baldi objects
#$Name Placechase
#$Sprite PLFAA0
MapThingNum = 3180 #
SpawnState = S_PLACECHASE
Radius = 30*FRACUNIT
Height = 90*FRACUNIT
Flags = MF_SCENERY|MF_NOGRAVITY
Speed = 12

State S_PLACECHASE
SpriteName = PLFA
Action = A_Chase
Duration = 1
Var1 = 0
Var2 = 0
Next = S_PLACECHASE

# "classic remastered characters"

# "SET THIS OBJECTS SCALE TO 0.85"
# "USE MOBJSCALE IN THE CUSTOM TAB OF THE EDIT THING WINDOW (UZB ONLY)"
Object MT_BALDI_NORMAL
#$Category Baldi objects
#$Name Baldi
#$Sprite BLDIA0
MapThingNum = 3200
SpawnState = S_BALDI_NORMAL_STAND
SeeState = S_BALDI_NORMAL_WAVE
SeeSound = SFX_OHHI
Radius = 65*FRACUNIT
Height = 160*FRACUNIT
Flags = MF_SCENERY|MF_NOGRAVITY

State S_BALDI_NORMAL_STAND
SpriteName = BLDI
SpriteFrame = A
Action = A_LOOK
Duration = 1
Var1 = (200<<16)+1 # "the first set of numbers changes the objects radius, <<16 shifts the number left and shouldnt be changed for this object"
Var2 = 0
Next = S_BALDI_NORMAL_STAND

State S_BALDI_NORMAL_WAVE
SpriteName = BLDW
SpriteFrame = A|FF_ANIMATE
Duration = 132
Var1 = 33 # "Var1 sets the amount of frames to cycle trough, example; 7 will cycle trough frames A trough G, 26 will cycle trough A trough Z
Var2 = 4 # "Var2 sets how fast it will cycle trough the frames in TICRATES, setting the value to 35 is one second"
Next = S_BALDI_NORMAL_WAIT

State S_BALDI_NORMAL_WAIT
SpriteName = BLDI
Duration = 35*TICRATE # "how many seconds it waits before you can trigger the wave again"
Next = S_BALDI_NORMAL_STAND

# "SET THIS OBJECTS SCALE TO 0.85"
# "USE MOBJSCALE IN THE CUSTOM TAB OF THE EDIT THING WINDOW (UZB ONLY)"
Object MT_BALDI_PARTY
#$Category Baldi objects
#$Name Baldi (Birthday bash)
#$Sprite BLDPA0
MapThingNum = 3206
SpawnState = S_BALDI_PARTY_STAND
SeeState = S_BALDI_PARTY_WAVE
SeeSound = SFX_OHPRTY
Radius = 65*FRACUNIT
Height = 160*FRACUNIT
Flags = MF_SCENERY|MF_NOGRAVITY

State S_BALDI_PARTY_STAND
SpriteName = BLDP
SpriteFrame = A
Action = A_LOOK
Duration = 1
Var1 = (200<<16)+1 # "the first set of numbers changes the objects radius, <<16 shifts the number left and shouldnt be changed for this object"
Var2 = 0
Next = S_BALDI_PARTY_STAND

State S_BALDI_PARTY_WAVE
SpriteName = BLPW
SpriteFrame = A|FF_ANIMATE
Duration = 132
Var1 = 33 # "Var1 sets the amount of frames to cycle trough, example; 7 will cycle trough frames A trough G, 26 will cycle trough A trough Z
Var2 = 4 # "Var2 sets how fast it will cycle trough the frames in TICRATES, setting the value to 35 is one second"
Next = S_BALDI_PARTY_WAIT

State S_BALDI_PARTY_WAIT
SpriteName = BLPW
Duration = 35*TICRATE # "how many seconds it waits before you can trigger the wave again"
Next = S_BALDI_PARTY_STAND

# "SET THIS OBJECTS SCALE TO 0.45"
# "USE MOBJSCALE IN THE CUSTOM TAB OF THE EDIT THING WINDOW (UZB ONLY)"
Object MT_BALDI_PRINCIPAL
#$Category Baldi objects
#$Name Principal of the thing
#$Sprite PNCPA0
MapThingNum = 3209
SpawnState = S_BALDI_PRINCIPAL
Radius = 65*FRACUNIT
Height = 450*FRACUNIT
Flags = MF_NOTHINK|MF_NOGRAVITY

State S_BALDI_PRINCIPAL
SpriteName = PNCP

# "SET THIS OBJECTS SCALE TO 0.25"
# "USE MOBJSCALE IN THE CUSTOM TAB OF THE EDIT THING WINDOW (UZB ONLY)"
Object MT_PLAYTIME
#$Category Baldi objects
#$Name Playtime
#$Sprite JUMNA0
MapThingNum = 3203
SpawnState = S_PLAYTIME_IDLE
Radius = 55*FRACUNIT
Height = 150*FRACUNIT
Flags = MF_SCENERY|MF_NOGRAVITY

State S_PLAYTIME_IDLE
SpriteName = SPR_JUMN
SpriteFrame = A|FF_ANIMATE
Duration = 21
Var1 = 7 # "Var1 sets the amount of frames to cycle trough, example; 7 will cycle trough frames A trough G, 26 will cycle trough A trough Z
Var2 = 3 # "Var2 sets how fast it will cycle trough the frames in TICRATES, setting the value to 35 is one second"
NEXT = S_PLAYTIME_IDLE

# "SET THIS OBJECTS SCALE TO 0.3"
# "USE MOBJSCALE IN THE CUSTOM TAB OF THE EDIT THING WINDOW (UZB ONLY)"
Object MT_PARTYTIME
#$Category Baldi objects
#$Name Playtime (Birthday bash)
#$Sprite JUMHA0
MapThingNum = 3207
SpawnState = S_PARTYTIME_IDLE
Radius = 55*FRACUNIT
Height = 150*FRACUNIT
Flags = MF_SCENERY|MF_NOGRAVITY

State S_PARTYTIME_IDLE
SpriteName = SPR_JUMH
SpriteFrame = A|FF_ANIMATE
Duration = 21
Var1 = 7 # "Var1 sets the amount of frames to cycle trough, example; 7 will cycle trough frames A trough G, 26 will cycle trough A trough Z
Var2 = 3 # "Var2 sets how fast it will cycle trough the frames in TICRATES, setting the value to 35 is one second"
NEXT = S_PARTYTIME_IDLE

Object MT_GOTTASWEEP
#$Category Baldi objects
#$Name Gotta sweep
#$Sprite GSWPA0
MapThingNum = 3204
SpawnState = S_GOTTASWEEP
Radius = 55*FRACUNIT
Height = 150*FRACUNIT
Flags = MF_SCENERY|MF_NOGRAVITY

State S_GOTTASWEEP
SpriteName = GSWP
SpriteFrame = A

Object MT_GOTTASWEEP_BASH
#$Category Baldi objects
#$Name Gotta sweep (Birthday bash)
#$Sprite GSWPB0
MapThingNum = 3208
SpawnState = S_GOTTASWEEP_BASH
Radius = 55*FRACUNIT
Height = 150*FRACUNIT
Flags = MF_SCENERY|MF_NOGRAVITY

State S_GOTTASWEEP_BASH
SpriteName = GSWP
SpriteFrame = B

# "SET THIS OBJECTS SCALE TO 1.1"
# "USE MOBJSCALE IN THE CUSTOM TAB OF THE EDIT THING WINDOW (UZB ONLY)"
Object MT_1STPRIZE
#$Category Baldi objects
#$Name 1st Prize
#$Sprite 1STPA1
MapThingNum = 3201
SpawnState = S_1STPRIZE_IDLE
Radius = 65*FRACUNIT
Height = 160*FRACUNIT
Flags = MF_SCENERY|MF_NOGRAVITY

State S_1STPRIZE_IDLE
SpriteName = SPR_1STP # "adding SPR_ before is *required* for objects with multiple angles"
SpriteFrame = A
Duration = 1
Next = S_1STPRIZE_IDLE

# "SET THIS OBJECTS SCALE TO 0.75"
# "USE MOBJSCALE IN THE CUSTOM TAB OF THE EDIT THING WINDOW (UZB ONLY)"
Object MT_THE_TEST_HEAD
#$Category Baldi objects
#$Name The test's head
#$Sprite THEDA0
MapThingNum = 3210
SpawnState = S_THE_TEST_HEAD
Radius = 30*FRACUNIT
Height = 90*FRACUNIT
Flags = MF_NOTHINK|MF_NOGRAVITY

State S_THE_TEST_HEAD
SpriteName = THED

# "SET THIS OBJECTS SCALE TO 0.65"
# "USE MOBJSCALE IN THE CUSTOM TAB OF THE EDIT THING WINDOW (UZB ONLY)"
Object MT_BALDI_ERROR_CHUNKS
#$Category Baldi objects
#$Name Baldi error chunks
#$Sprite ERRCA0
MapThingNum = 3211
SpawnState = S_BALDI_ERROR_CHUNKS
Radius = 30*FRACUNIT
Height = 165*FRACUNIT
Flags = MF_NOTHINK|MF_NOGRAVITY

State S_BALDI_ERROR_CHUNKS
SpriteName = ERRC

# "SET THIS OBJECTS SCALE TO 0.49"
# "USE MOBJSCALE IN THE CUSTOM TAB OF THE EDIT THING WINDOW (UZB ONLY)"
Object MT_NOTACTUALLY_NULL
#$Category Baldi objects
#$Name Null
#$Sprite NANLA0
MapThingNum = 3205
SpawnState = S_NOTACTUALLY_NULL
Radius = 40*FRACUNIT
Height = 430*FRACUNIT
Flags = MF_NOTHINK|MF_NOGRAVITY

State S_NOTACTUALLY_NULL
SpriteName = NANL

# "SET THIS OBJECTS SCALE TO 0.9"
# "USE MOBJSCALE IN THE CUSTOM TAB OF THE EDIT THING WINDOW (UZB ONLY)"
Object MT_BLADDER
#$Category Baldi objects
#$Name Bladder
#$Sprite BLDDA0
MapThingNum = 3202
SpawnState = S_BLADDER
Radius = 40*FRACUNIT
Height = 230*FRACUNIT
Flags = MF_NOTHINK|MF_NOGRAVITY

State S_BLADDER
SpriteName = BLDD

# "birthday bash characters"