These are new variables that you can assign to each "State" in SOCs.
i.e.,
State 438
Action A_FireShot
Var1 = 42
Var2 = 1
Here are some that accept values:
A_FireShot
var1 = mobj type to fire
var2 = Z offset for missile spawn origin
A_SuperFireShot
Just like A_FireShot, but also stops Super Sonic
A_Look
var1 = if > 0, mobj looks all around itself for a target, rather than just where it's facing
var2 = if 0, the seestate and seesound is set when a target is found; if = 1, only the seestate is set; if = 2, only the seesound is played; if > 2, neither the seesound or seestate is set.
A_BunnyHop
var1 = Sets hop height
var2 = Sets hop distance
A_BubbleRise
if var1 > 0, don't randomly 'bend' around the water (rise straight up)
var2 = bubble rise speed
A_DropMine
var1 = z offset for spawning mine
A_Snowball
var1 = additional time to add to snowball duration
A_CrawlaCommanderThink
var1 = mobj type to fire as projectile (like old final demo behavior)
var2 = pogo height/speed
A_RingExplode
var1 = mobj type to spawn as debris
A_Boss2PogoSFX
var1 = pogo height
A_TurretStart
var1 = object # to fire
var2 = activation distance threshold in fracunits (2048 is default)
A_TurretStop
If var1 > 0, then don't play the 'activesound'
A_SmokeTrailer
var1 = mobj type to spawn as 'smoke'
A_SpawnObjectAbsolute(x,y,z,type)
A_SpawnObjectRelative(x,y,z,type)
Upper 16 bits of var1 = x
Lower 16 bits of var1 = y
Upper 16 bits of var2 = z
Lower 16 bits of var2 = type
A_ChangeAngleRelative
var1 = min
var2 = max
Changes angle by to a relative value randomly picked between the min and max
A_ChangeAngleAbsolute
var1 = min
var2 = max
Changes angle by to an absolute value randomly picked between the min and max
A_PlaySound
var1 = sfx number to play
var2 = if 0, plays sound from calling mobj, otherwise plays at local machine
A_FindTarget
var1 = mobj type to find as target
var2 = if 0, finds nearest, if nonzero, finds farthest away
A_SetTics
if var1 > 0, then set tics to value of var1
else, if var2 > 0, then set tics to value of mobj's threshold
A_SkullAttack
var1 =
0 - Fly at the player
1 - Fly away from the player
2 - Strafe in relation to the player
A_ChangeColorRelative
if(var1), find target and add its color value to yours
else, var2 = color value to add
A_ChangeColorAbsolute
if(var1), set your color to your target's color
else, var2 = color value to set to
A_MoveRelative
var1 = angle
var2 = force
A_MoveAbsolute
var1 = angle
var2 = force
Anyone have ideas for others?
i.e.,
State 438
Action A_FireShot
Var1 = 42
Var2 = 1
Here are some that accept values:
A_FireShot
var1 = mobj type to fire
var2 = Z offset for missile spawn origin
A_SuperFireShot
Just like A_FireShot, but also stops Super Sonic
A_Look
var1 = if > 0, mobj looks all around itself for a target, rather than just where it's facing
var2 = if 0, the seestate and seesound is set when a target is found; if = 1, only the seestate is set; if = 2, only the seesound is played; if > 2, neither the seesound or seestate is set.
A_BunnyHop
var1 = Sets hop height
var2 = Sets hop distance
A_BubbleRise
if var1 > 0, don't randomly 'bend' around the water (rise straight up)
var2 = bubble rise speed
A_DropMine
var1 = z offset for spawning mine
A_Snowball
var1 = additional time to add to snowball duration
A_CrawlaCommanderThink
var1 = mobj type to fire as projectile (like old final demo behavior)
var2 = pogo height/speed
A_RingExplode
var1 = mobj type to spawn as debris
A_Boss2PogoSFX
var1 = pogo height
A_TurretStart
var1 = object # to fire
var2 = activation distance threshold in fracunits (2048 is default)
A_TurretStop
If var1 > 0, then don't play the 'activesound'
A_SmokeTrailer
var1 = mobj type to spawn as 'smoke'
A_SpawnObjectAbsolute(x,y,z,type)
A_SpawnObjectRelative(x,y,z,type)
Upper 16 bits of var1 = x
Lower 16 bits of var1 = y
Upper 16 bits of var2 = z
Lower 16 bits of var2 = type
A_ChangeAngleRelative
var1 = min
var2 = max
Changes angle by to a relative value randomly picked between the min and max
A_ChangeAngleAbsolute
var1 = min
var2 = max
Changes angle by to an absolute value randomly picked between the min and max
A_PlaySound
var1 = sfx number to play
var2 = if 0, plays sound from calling mobj, otherwise plays at local machine
A_FindTarget
var1 = mobj type to find as target
var2 = if 0, finds nearest, if nonzero, finds farthest away
A_SetTics
if var1 > 0, then set tics to value of var1
else, if var2 > 0, then set tics to value of mobj's threshold
A_SkullAttack
var1 =
0 - Fly at the player
1 - Fly away from the player
2 - Strafe in relation to the player
A_ChangeColorRelative
if(var1), find target and add its color value to yours
else, var2 = color value to add
A_ChangeColorAbsolute
if(var1), set your color to your target's color
else, var2 = color value to set to
A_MoveRelative
var1 = angle
var2 = force
A_MoveAbsolute
var1 = angle
var2 = force
Anyone have ideas for others?