You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
AM2Rogue/Export_Code/gml_Object_oMOmega_Step_0.gml

1282 lines
32 KiB

var slash_dist, msl, tl;
slash_dist = 130
if (target_mode == 0)
{
targetx = oCharacter.x
targety = oCharacter.y
}
else if (target_mode == 1)
{
targetx = targetx2
targety = y
}
if (target_mode == 0 && ((facing == 1 && x > limit_right) || (facing == -1 && x < limit_left)))
target_mode = 1
image_xscale = facing
if (isCollisionBottom(1) == 0)
yVel += 0.2
else if (yVel > 0)
yVel = 0
if (state == 0)
{
body_frame = 0
head_frame = 0
fleg_spr = sMOmega_FLeg
bleg_spr = 613
farm_spr = sMOmega_FArm
barm_spr = 612
head_spr = omega_head
bleg_frame = 0
fleg_frame = 0
farm_frame = 0
barm_frame = 0
yoff = 0
head_follow = 1
if (point_distance(x, y, oCharacter.x, y) < (160 + (oControl.widescreen_space / 2)))
event_user(1)
if instance_exists(oMissile)
{
msl = instance_nearest(x, y, oMissile)
if (distance_to_object(msl) < 60)
event_user(1)
}
if instance_exists(oBeam)
{
msl = instance_nearest(x, y, oBeam)
if (distance_to_object(msl) < 60)
event_user(1)
}
if (statetime == 520 || statetime == 1200)
eyes_close = 15
}
if (state == 1)
{
if (statetime == 0)
{
body_target_angle = -10
fleg_spr = sMOmega_FLeg_Walk
bleg_spr = 616
farm_spr = sMOmega_FArm
barm_spr = 612
head_spr = omega_head
bleg_frame = 0
fleg_frame = 0
farm_frame = 0
barm_frame = 0
yoff = 0
head_yoff = 0
head_follow = 1
head_frame = 0
}
if ((targetx < x && facing == 1) || (targetx >= x && facing == -1 && statetime == 40))
{
state = 2
statetime = 0
}
if ((facing == 1 && isCollisionRight(50) == 0) || (facing == -1 && isCollisionLeft(50) == 0))
{
if (statetime == 3)
x += (3 * facing)
if (statetime == 5)
x += (3 * facing)
if (statetime == 8)
x += (3 * facing)
if (statetime == 11)
x += (3 * facing)
if (statetime == 13)
x += (3 * facing)
if (statetime == 15)
x += (3 * facing)
if (statetime == 18)
x += (3 * facing)
if (statetime == 20)
x += (4 * facing)
if (statetime == 23)
x += (4 * facing)
if (statetime == 25)
x += (4 * facing)
if (statetime == 28)
x += (4 * facing)
if (statetime == 30)
x += (4 * facing)
if (statetime == 32)
x += (2 * facing)
if (statetime == 36)
x += (2 * facing)
if (statetime == 44)
x += (2 * facing)
}
if ((fleg_frame >= 3 && fleg_frame < 3.25) || (fleg_frame >= 14 && fleg_frame < 14.25))
{
sfx_play(sndMZetaFootstep)
screen_shake(5, 2)
farm_frame = 3
}
if (farm_frame > 0)
farm_frame -= 0.25
barm_frame = farm_frame
fleg_frame = anim_frame_cycle(fleg_spr, fleg_frame, 0.4)
if (fleg_frame < 13)
bleg_frame = fleg_frame
switch floor(fleg_frame)
{
case 0:
yoff = 0
head_yoff = 0
farm_frame = 0
barm_frame = 0
break
case 1:
yoff = -1
head_yoff = 0
farm_frame = 0
barm_frame = 0
break
case 2:
yoff = -2
head_yoff = 0
farm_frame = 0
barm_frame = 0
break
case 3:
case 4:
yoff = -3
head_yoff = 0
farm_frame = 0
barm_frame = 0
break
case 5:
yoff = -2
head_yoff = 0
farm_frame = 0
barm_frame = 0
break
case 6:
yoff = -1
head_yoff = 1
farm_frame = 1
barm_frame = 1
break
case 7:
yoff = 0
head_yoff = 2
farm_frame = 2
barm_frame = 2
break
case 8:
yoff = -1
head_yoff = 2
farm_frame = 2
barm_frame = 2
break
case 9:
yoff = -2
head_yoff = 1
farm_frame = 1
barm_frame = 1
break
case 10:
yoff = -3
head_yoff = 1
farm_frame = 1
barm_frame = 1
break
case 11:
yoff = -2
head_yoff = 0
farm_frame = 0
barm_frame = 0
break
case 12:
yoff = -1
head_yoff = 0
farm_frame = 0
barm_frame = 0
break
case 13:
bleg_spr = 613
bleg_frame = 0
bleg_xoff = 8
yoff = 0
head_yoff = 0
break
case 14:
yoff = 0
head_yoff = 0
farm_frame = 0
barm_frame = 0
bleg_xoff = 6
break
case 15:
yoff = 0
head_yoff = 0
farm_frame = 0
barm_frame = 0
bleg_xoff = 4
break
case 16:
yoff = 0
head_yoff = 0
farm_frame = 0
barm_frame = 0
bleg_xoff = 2
break
case 17:
yoff = 0
head_yoff = 1
farm_frame = 1
barm_frame = 1
bleg_xoff = 0
break
}
if (statetime == 43)
{
state = choose(3, 6, 7, 20, 20)
if (laststate == 1)
state = choose(3, 7, 20, 20)
statetime = 0
if (state == 7 && point_distance(x, y, oCharacter.x, y) > 280)
state = 3
if (oCharacter.y > y && point_distance(x, y, oCharacter.x, y) < slash_dist && ((oCharacter.x > x && facing == 1) || (oCharacter.x < x && facing == -1)))
state = 10
if (target_mode == 1)
{
if ((facing == -1 && x < (room_width / 2)) || (facing == 1 && x >= (room_width / 2)))
state = 2
else
state = 7
}
if (oCharacter.y < (y - 48) && oCharacter.state == 27 && abs((oCharacter.x - x)) <= 144 && oCharacter.x > 64 && oCharacter.x < (room_width - 64))
{
if (abs((oCharacter.x - x)) <= 48)
{
state = 7
statetime = 0
}
else if (sign((oCharacter.x - x)) == facing)
{
state = 11
statetime = 0
}
else
{
state = 2
statetime = 0
}
}
if (state == 6)
laststate = 1
else
laststate = 0
}
}
if (state == 2)
{
if (statetime == 0)
{
body_frame = 0
body_target_angle = 0
head_target_angle = 0
yoff = 0
head_yoff = 0
bleg_frame = 0
fleg_frame = 0
farm_frame = 0
barm_frame = 0
head_follow = 0
sfx_play(sndMOmegaBreathe)
}
if (statetime > 0)
{
if (head_frame < 2.5)
head_frame += 0.25
}
if (statetime == 10)
{
body_spr = sMOmega_Body_Turn
fleg_spr = -4
bleg_spr = -4
farm_spr = -4
barm_spr = -4
head_xoff = -20
}
if (statetime == 14)
facing *= -1
if (statetime >= 18)
{
body_spr = omega_body
farm_spr = sMOmega_FArm
barm_spr = 612
fleg_spr = sMOmega_FLeg
bleg_spr = 613
head_xoff = 0
if (head_frame > 0)
head_frame -= 0.25
}
if (statetime == 22)
{
if (random(1) < 0.5)
{
state = 1
statetime = -1
}
else
{
state = 20
statetime = 0
}
if (oCharacter.y > y && point_distance(x, y, oCharacter.x, y) < slash_dist && ((oCharacter.x > x && facing == 1) || (oCharacter.x < x && facing == -1)))
{
state = 10
statetime = 0
}
else if (oCharacter.y < (y - 48) && oCharacter.state == 27 && abs((oCharacter.x - x)) <= 144)
{
if (abs((oCharacter.x - x)) <= 48)
{
state = 7
statetime = -1
}
else
{
state = 11
statetime = -1
}
}
}
}
if (state == 3)
{
if (statetime == 0)
{
body_frame = 0
head_frame = 0
body_target_angle = -35
fleg_spr = sMOmega_FLeg_Crouch
bleg_spr = 614
farm_spr = sMOmega_FArm
barm_spr = 612
head_spr = omega_head
bleg_frame = 0
fleg_frame = 0
farm_frame = 0
barm_frame = 0
yoff = 0
head_follow = 1
xVel = 0
yVel = 0
sfx_play(sndMOmegaAttack)
roaring = 60
}
fleg_frame = anim_frame(fleg_spr, fleg_frame, 0.5)
bleg_frame = fleg_frame
farm_frame = anim_frame(farm_spr, farm_frame, 0.5)
barm_frame = farm_frame
if (floor(fleg_frame) == 0)
yoff = 0
if (floor(fleg_frame) == 1)
yoff = 2
if (floor(fleg_frame) == 2)
yoff = 4
if (floor(fleg_frame) == 3)
yoff = 6
if (floor(fleg_frame) == 4)
yoff = 8
if (floor(fleg_frame) == 5)
yoff = 10
if (floor(fleg_frame) == 6)
yoff = 12
if (floor(fleg_frame) == 7)
yoff = 14
if (floor(fleg_frame) == 8)
yoff = 16
if (floor(fleg_frame) == 9)
yoff = 18
if (statetime == 40)
{
state = 4
statetime = 0
}
}
if (state == 4)
{
if (statetime == 0)
{
body_frame = 0
head_frame = 0
body_target_angle = -30
fleg_spr = sMOmega_FLeg_Jump
bleg_spr = 615
farm_spr = sMOmega_FArm
barm_spr = 612
head_spr = omega_head
bleg_frame = 0
fleg_frame = 0
farm_frame = 0
barm_frame = 0
yoff = 0
head_follow = 1
yVel = -2
xVel = (6 * facing)
sfx_play(sndMZetaJump)
grab_obj = instance_create(x, y, oMOmegaGrab)
}
fleg_frame = anim_frame(fleg_spr, fleg_frame, 0.5)
bleg_frame = fleg_frame
if (isCollisionBottom(1) > 0 && statetime > 10)
{
state = 5
statetime = 0
with (grab_obj)
instance_destroy()
}
if ((xVel > 0 && isCollisionRight(80)) || (xVel < 0 && isCollisionLeft(80)))
xVel = 0
}
if (state == 5)
{
if (statetime == 0)
{
body_frame = 0
head_frame = 0
body_target_angle = -35
fleg_spr = sMOmega_FLeg_Crouch
bleg_spr = 614
farm_spr = sMOmega_FArm
barm_spr = 612
head_spr = omega_head
bleg_frame = 9
fleg_frame = 9
farm_frame = 8
barm_frame = 8
yoff = 0
head_follow = 0
head_target_angle = (-30 * facing)
yVel = 0
sfx_play(sndMZetaLand)
make_smoke_explosion(x, (y + 41))
make_smoke_explosion((x + 10), (y + 41))
make_smoke_explosion((x - 10), (y + 41))
screen_shake(8, 3)
eyes_close = 15
}
xVel *= 0.6
if (statetime < 10)
body_frame = anim_frame(body_spr, body_frame, 0.5)
if (statetime == 30 && oCharacter.state == 40 && point_distance(x, y, oCharacter.x, y) < 150 && ((facing == 1 && oCharacter.x > x) || (facing == -1 && oCharacter.x < x)))
{
alarm[0] = 1
head_target_angle = (40 * facing)
sfx_play(sndMOmegaFlame)
roaring = 30
}
if (statetime >= 30)
{
fleg_frame = anim_frame(fleg_spr, fleg_frame, -0.5)
bleg_frame = fleg_frame
farm_frame = anim_frame(farm_spr, farm_frame, -0.25)
barm_frame = farm_frame
}
if (statetime == 40)
body_target_angle = 0
if (statetime > 55)
body_frame = anim_frame(body_spr, body_frame, -0.2)
if (floor(fleg_frame) == 0)
yoff = 0
if (floor(fleg_frame) == 1)
yoff = 2
if (floor(fleg_frame) == 2)
yoff = 4
if (floor(fleg_frame) == 3)
yoff = 6
if (floor(fleg_frame) == 4)
yoff = 8
if (floor(fleg_frame) == 5)
yoff = 10
if (floor(fleg_frame) == 6)
yoff = 12
if (floor(fleg_frame) == 7)
yoff = 14
if (floor(fleg_frame) == 8)
yoff = 16
if (floor(fleg_frame) == 9)
yoff = 18
if (floor(body_frame) == 0)
oMOmegaMask.image_index = 0
if (floor(body_frame) > 0)
oMOmegaMask.image_index = 1
if (statetime == 70)
{
event_user(3)
state = 1
statetime = -1
if (oCharacter.y > y && point_distance(x, y, oCharacter.x, y) < slash_dist && ((oCharacter.x > x && facing == 1) || (oCharacter.x < x && facing == -1)))
{
state = 10
statetime = 0
}
}
}
if (state == 6)
{
if (statetime == 0)
{
body_frame = 0
head_frame = 0
body_target_angle = -35
fleg_spr = sMOmega_FLeg_Crouch
bleg_spr = 614
farm_spr = sMOmega_FArm
barm_spr = 612
head_spr = omega_head
bleg_frame = 0
fleg_frame = 0
farm_frame = 0
barm_frame = 0
yoff = 0
head_follow = 0
head_target_angle = (-30 * facing)
xVel = 0
yVel = 0
alarm[0] = 110
sfx_play(sndMOmegaBreathe)
}
if (statetime < 110)
{
fleg_frame = anim_frame(fleg_spr, fleg_frame, 0.25)
bleg_frame = fleg_frame
}
if (statetime == 110)
{
roaring = 60
head_target_angle = (40 * facing)
body_target_angle = 30
sfx_play(sndMOmegaFlame)
}
if (statetime >= 110)
{
fleg_frame = anim_frame(fleg_spr, fleg_frame, -0.25)
bleg_frame = fleg_frame
}
if (statetime == 130)
head_target_angle = (-30 * facing)
if (statetime == 210)
{
event_user(3)
state = 1
statetime = -1
}
if (floor(fleg_frame) == 0)
yoff = 0
if (floor(fleg_frame) == 1)
yoff = 2
if (floor(fleg_frame) == 2)
yoff = 4
if (floor(fleg_frame) == 3)
yoff = 6
if (floor(fleg_frame) == 4)
yoff = 8
if (floor(fleg_frame) == 5)
yoff = 10
if (floor(fleg_frame) == 6)
yoff = 12
if (floor(fleg_frame) == 7)
yoff = 14
if (floor(fleg_frame) == 8)
yoff = 16
if (floor(fleg_frame) == 9)
yoff = 18
}
if (state == 7)
{
if (statetime == 0)
{
body_frame = 0
head_frame = 0
body_target_angle = -35
fleg_spr = sMOmega_FLeg_Crouch
bleg_spr = 614
farm_spr = sMOmega_FArm
barm_spr = 612
head_spr = omega_head
bleg_frame = 0
fleg_frame = 0
farm_frame = 0
barm_frame = 0
yoff = 0
head_follow = 1
xVel = 0
yVel = 0
}
fleg_frame = anim_frame(fleg_spr, fleg_frame, 0.5)
bleg_frame = fleg_frame
if (floor(fleg_frame) == 0)
yoff = 0
if (floor(fleg_frame) == 1)
yoff = 2
if (floor(fleg_frame) == 2)
yoff = 4
if (floor(fleg_frame) == 3)
yoff = 6
if (floor(fleg_frame) == 4)
yoff = 8
if (floor(fleg_frame) == 5)
yoff = 10
if (floor(fleg_frame) == 6)
yoff = 12
if (floor(fleg_frame) == 7)
yoff = 14
if (floor(fleg_frame) == 8)
yoff = 16
if (floor(fleg_frame) == 9)
yoff = 18
if (statetime == 30)
{
state = 8
statetime = 0
}
}
if (state == 8)
{
if (statetime == 0)
{
body_frame = 0
head_frame = 0
body_target_angle = 30
fleg_spr = sMOmega_FLeg_Jump
bleg_spr = 615
farm_spr = sMOmega_FArm
barm_spr = 612
head_spr = omega_head
bleg_frame = 0
fleg_frame = 0
farm_frame = 0
barm_frame = 0
yoff = 0
head_follow = 1
yVel = -4.6
xVel = (1 * facing)
sfx_play(sndMZetaJump)
if (target_mode == 1)
xVel = (5 * facing)
}
fleg_frame = anim_frame(fleg_spr, fleg_frame, 0.5)
bleg_frame = fleg_frame
if (statetime > 20)
body_target_angle -= 2
if (statetime > 20)
yVel += 0.5
if (isCollisionBottom(1) > 0 && statetime > 10)
{
state = 5
statetime = -1
screen_shake(30, 5)
instance_create(x, (y + 41), oMOmegaGroundHit)
}
}
if (state == 10)
{
if (statetime == 0)
{
body_frame = 0
head_frame = 0
body_target_angle = -5
fleg_spr = sMOmega_FLeg_Crouch
bleg_spr = 614
farm_spr = sMOmega_FArm_Slash
barm_spr = 612
head_spr = omega_head
bleg_frame = 0
fleg_frame = 0
farm_frame = 0
barm_frame = 0
yoff = 0
head_follow = 1
xVel = 0
yVel = 0
sfx_play(sndMOmegaBreathe)
}
if (statetime < 20)
{
if (fleg_frame < 3)
fleg_frame += 0.25
if (farm_frame < 2)
farm_frame += 0.25
if (farm_xoff < 10)
farm_xoff += 0.5
}
if (statetime == 20)
{
farm_frame = 3
farm_xoff = 0
proj = instance_create((((x - surf_x) + farm_x) + (14 * facing)), (((y - surf_y) + farm_y) + 38), oMOmega_Projectile)
proj.hspeed = (3.5 * facing)
proj.image_xscale = facing
sfx_play(sndArachnusSwipe)
}
if (statetime > 20)
{
farm_frame = anim_frame(farm_spr, farm_frame, 0.5)
if (fleg_frame > 0)
fleg_frame -= 0.25
}
if (floor(fleg_frame) == 0)
yoff = 0
if (floor(fleg_frame) == 1)
yoff = 2
if (floor(fleg_frame) == 2)
yoff = 4
if (floor(fleg_frame) == 3)
yoff = 6
if (statetime == 30)
{
if (random(1) < 0.5)
state = 1
else
state = 6
statetime = -1
}
}
if (state == 11)
{
if (statetime == 0)
{
body_frame = 0
head_frame = 0
body_target_angle = -25
fleg_spr = sMOmega_FLeg
bleg_spr = 613
farm_spr = sMOmega_FArm
barm_spr = 612
head_spr = omega_head
bleg_frame = 0
fleg_frame = 0
farm_frame = 0
barm_frame = 0
yoff = 0
head_follow = 0
head_target_angle = (-30 * facing)
eyes_close = 15
xVel = 0
yVel = 0
alarm[0] = 70
sfx_play(sndMOmegaBreathe)
}
if (statetime == 60)
{
head_target_angle = (60 * facing)
body_target_angle = 40
sfx_play(sndMOmegaFlame)
roaring = 30
}
if (statetime == 90)
{
event_user(3)
state = 1
statetime = -1
}
if (floor(fleg_frame) == 0)
yoff = 0
if (floor(fleg_frame) == 1)
yoff = 2
if (floor(fleg_frame) == 2)
yoff = 4
if (floor(fleg_frame) == 3)
yoff = 6
if (floor(fleg_frame) == 4)
yoff = 8
if (floor(fleg_frame) == 5)
yoff = 10
if (floor(fleg_frame) == 6)
yoff = 12
if (floor(fleg_frame) == 7)
yoff = 14
if (floor(fleg_frame) == 8)
yoff = 16
if (floor(fleg_frame) == 9)
yoff = 18
}
if (state == 20)
{
body_frame = 0
head_frame = 0
fleg_spr = sMOmega_FLeg
bleg_spr = 613
farm_spr = sMOmega_FArm
barm_spr = 612
head_spr = omega_head
bleg_frame = 0
fleg_frame = 0
farm_frame = 0
barm_frame = 0
yoff = 0
head_follow = 1
if (statetime < 30)
{
if (oCharacter.y > y && point_distance(x, y, oCharacter.x, y) < slash_dist && ((oCharacter.x > x && facing == 1) || (oCharacter.x < x && facing == -1)))
{
state = 10
statetime = -1
}
}
if (statetime == 30)
{
if (oCharacter.y < y)
{
if (oCharacter.y > y && point_distance(x, y, oCharacter.x, y) < 64)
state = 6
else
state = 7
statetime = -1
}
else
{
state = 3
statetime = -1
}
}
if (state == 7 && point_distance(x, y, oCharacter.x, y) > 280)
state = 3
}
if (state == 50)
{
if (statetime == 0)
{
tl = instance_create((x - (facing * 6)), (y + 26), oMOmegaTailMutate)
tl.image_xscale = facing
body_spr = 632
fleg_spr = sMOmega_FLegMutate
bleg_spr = 631
farm_spr = sMOmega_FArmMutate
barm_spr = 630
head_spr = 635
body_frame = 7
head_frame = 7
bleg_frame = 3
fleg_frame = 3
farm_frame = 3
barm_frame = 3
head_follow = 0
head_target_angle = 0
yoff = 18
tail.visible = false
}
if (statetime == 30)
head_shake = 4
if (statetime == 40)
farm_shake = 4
if (statetime == 50)
body_shake = 4
if (statetime == 60)
{
bleg_shake = 80
fleg_shake = 60
sfx_play(sndMGammaMorph)
}
if (statetime > 60 && statetime < 100)
{
if (bleg_frame > 0)
bleg_frame -= 0.1
if (fleg_frame > 0)
fleg_frame -= 0.1
}
if (statetime == 100)
{
fleg_spr = sMOmega_FLeg_Crouch
bleg_spr = 614
fleg_frame = 9
bleg_frame = 9
}
if (statetime == 70)
{
body_shake = 80
head_shake = 80
sfx_play(sndMGammaEyes)
}
if (statetime > 70 && statetime < 150)
{
if (body_frame > 0)
body_frame -= 0.1
}
if (statetime == 150)
{
body_spr = omega_body
body_frame = 0
}
if (statetime == 90)
{
farm_shake = 60
barm_shake = 80
fleg_shake = 10
}
if (statetime > 90 && statetime < 130)
{
if (farm_frame > 0)
farm_frame -= 0.1
if (barm_frame > 0)
barm_frame -= 0.1
}
if (statetime == 130)
{
farm_spr = sMOmega_FArm
barm_spr = 612
farm_frame = 0
barm_frame = 0
}
if (statetime == 110)
{
head_shake = 60
bleg_shake = 8
body_shake = 10
}
if (statetime > 110 && statetime < 190)
{
if (head_frame > 0)
head_frame -= 0.1
}
if (statetime == 190)
{
head_spr = omega_head
head_frame = 0
head_xoff = 0
head_yoff = 0
}
if (statetime < 190)
eyes_close = 2
if (statetime == 60)
{
bld = instance_create((x - (2 * facing)), (y + 15), oFXAnimSpark)
bld.sprite_index = sMGammaBlood1
bld.image_speed = 0.5
bld.image_alpha = 0.6
bld.image_xscale = facing
bld.image_yscale = -1
}
if (statetime == 70)
{
bld = instance_create((x + (6 * facing)), (y + 10), oFXAnimSpark)
bld.sprite_index = sMGammaBlood1
bld.image_speed = 0.5
bld.image_alpha = 0.6
bld.image_xscale = (-facing)
bld.image_yscale = -1
}
if (statetime == 90)
{
bld = instance_create((x + (14 * facing)), (y - 8), oFXAnimSpark)
bld.sprite_index = sMGammaBlood1
bld.image_speed = 0.5
bld.image_alpha = 0.6
bld.image_xscale = facing
bld.image_yscale = 1
bld = instance_create((x + (40 * facing)), y, oFXAnimSpark)
bld.sprite_index = sMGammaBlood1
bld.image_speed = 0.5
bld.image_alpha = 0.6
bld.image_xscale = (-facing)
bld.image_yscale = -1
}
if (statetime == 95)
{
bld = instance_create((x + (25 * facing)), (y - 2), oFXAnimSpark)
bld.sprite_index = sMGammaBlood1
bld.image_speed = 0.5
bld.image_alpha = 0.6
bld.image_xscale = facing
bld.image_yscale = -1
}
if (statetime == 100)
{
bld = instance_create((x + (34 * facing)), (y - 15), oFXAnimSpark)
bld.sprite_index = sMGammaBlood1
bld.image_speed = 0.5
bld.image_alpha = 0.6
bld.image_xscale = (-facing)
bld.image_yscale = -1
}
if (statetime == 110)
{
bld = instance_create((x + (40 * facing)), (y - 30), oFXAnimSpark)
bld.sprite_index = sMGammaBlood1
bld.image_speed = 0.5
bld.image_alpha = 0.6
bld.image_xscale = facing
}
if (statetime == 120)
{
bld = instance_create((x + (42 * facing)), (y - 26), oFXAnimSpark)
bld.sprite_index = sMGammaBlood1
bld.image_speed = 0.5
bld.image_alpha = 0.6
bld.image_xscale = (-facing)
bld = instance_create((x + (20 * facing)), (y - 10), oFXAnimSpark)
bld.sprite_index = sMGammaBlood1
bld.image_speed = 0.5
bld.image_alpha = 0.6
bld.image_xscale = facing
bld.image_yscale = -1
}
if (statetime == 135)
{
bld = instance_create((x + (40 * facing)), (y - 37), oFXAnimSpark)
bld.sprite_index = sMGammaBlood1
bld.image_speed = 0.5
bld.image_alpha = 0.6
bld.image_xscale = facing
bld.image_yscale = -1
}
if (statetime == 220)
{
body_frame = 0
head_frame = 0
body_target_angle = 0
fleg_spr = sMOmega_FLeg_Crouch
bleg_spr = 614
farm_spr = sMOmega_FArm_Slash
barm_spr = 612
head_spr = omega_head
bleg_frame = 9
fleg_frame = 9
farm_frame = 0
barm_frame = 0
yoff = 0
head_follow = 0
head_target_angle = 0
yVel = 0
tail.visible = true
with (oMOmegaTailMutate)
instance_destroy()
}
if (statetime >= 220)
{
fleg_frame = anim_frame(fleg_spr, fleg_frame, -0.25)
bleg_frame = fleg_frame
if (statetime < 260)
{
if (farm_frame < 2)
farm_frame += 0.2
if (farm_xoff < 10)
farm_xoff += 0.5
}
}
if (statetime == 260)
{
farm_frame = 3
farm_xoff = 0
proj = instance_create((((x - surf_x) + farm_x) + (14 * facing)), (((y - surf_y) + farm_y) + 38), oMOmega_Projectile)
proj.hspeed = (5 * facing)
proj.image_xscale = facing
sfx_play(sndArachnusSwipe)
}
if (statetime > 260)
{
farm_frame = anim_frame(farm_spr, farm_frame, 0.5)
if (fleg_frame > 0)
fleg_frame -= 0.25
}
if (statetime < 110)
{
if (floor(fleg_frame) == 0)
yoff = 22
if (floor(fleg_frame) == 1)
yoff = 20
if (floor(fleg_frame) == 2)
yoff = 18
if (floor(fleg_frame) == 3)
yoff = 15
}
if (statetime < 150)
{
if (floor(body_frame) == 0)
{
head_xoff = -1
head_yoff = 1
}
if (floor(body_frame) == 1)
{
head_xoff = -2
head_yoff = 2
}
if (floor(body_frame) == 2)
{
head_xoff = -3
head_yoff = 3
}
if (floor(body_frame) == 3)
{
head_xoff = -6
head_yoff = 5
}
if (floor(body_frame) == 4)
{
head_xoff = -8
head_yoff = 7
}
if (floor(body_frame) == 5)
{
head_xoff = -10
head_yoff = 8
}
if (floor(body_frame) == 6)
{
head_xoff = -11
head_yoff = 9
}
if (floor(body_frame) == 7)
{
head_xoff = -12
head_yoff = 10
}
}
if (statetime >= 220)
{
if (floor(fleg_frame) == 0)
yoff = 0
if (floor(fleg_frame) == 1)
yoff = 2
if (floor(fleg_frame) == 2)
yoff = 4
if (floor(fleg_frame) == 3)
yoff = 6
if (floor(fleg_frame) == 4)
yoff = 8
if (floor(fleg_frame) == 5)
yoff = 10
if (floor(fleg_frame) == 6)
yoff = 12
if (floor(fleg_frame) == 7)
yoff = 14
if (floor(fleg_frame) == 8)
yoff = 16
if (floor(fleg_frame) == 9)
yoff = 18
}
if (statetime > 290)
{
event_user(1)
with (oEventCamera2)
alarm[0] = 30
with (oGFTrooperYellow)
alarm[0] = 45
}
}
if (state == 100)
{
xVel = 0
if (statetime == 0)
{
body_frame = 0
body_target_angle = -35
body_spr = omega_body
farm_spr = 619
barm_spr = 612
fleg_spr = 622
bleg_spr = 614
bleg_frame = 0
fleg_frame = 0
farm_frame = 0
barm_frame = 0
yoff = 0
head_yoff = 0
head_follow = 0
head_target_angle = (-40 * facing)
head_xoff = 0
xVel = 0
yVel = 0
sfx_play(sndMOmegaDeath)
roaring = 160
eyes_close = 5000
if instance_exists(grab_obj)
{
with (grab_obj)
instance_destroy()
}
with (cam)
instance_destroy()
}
if (statetime < 30)
{
fleg_frame = anim_frame(sMZeta_FLeg_Crouch, fleg_frame, 0.5)
bleg_frame = fleg_frame
}
}
if (head_target_angle != head_angle)
{
head_angle = lerp(head_angle, head_target_angle, 0.1)
head_angle = clamp(head_angle, head_angle_min, head_angle_max)
}
if (body_target_angle != body_angle_base)
{
body_angle_base += ((body_target_angle - body_angle_base) / 10)
body_angle_base = min(body_angle_base, body_angle_max)
body_angle_base = max(body_angle_base, body_angle_min)
}
body_angle = (body_angle_base * facing)
image_angle = body_angle
body_x = (surf_x + (xoff * facing))
body_y = (surf_y + yoff)
fleg_x = (surf_x + (fleg_xoff * facing))
fleg_y = (surf_y + fleg_yoff)
bleg_x = (surf_x + (bleg_xoff * facing))
bleg_y = (surf_y + bleg_yoff)
head_x = ((body_x + lengthdir_x((head_len * facing), (body_angle + (head_dir * facing)))) + (head_xoff * facing))
head_y = ((body_y + lengthdir_y((head_len * facing), (body_angle + (head_dir * facing)))) + head_yoff)
mouth_x = (head_x + lengthdir_x((mouth_len * facing), (((body_angle + (head_dir * facing)) + (mouth_dir * facing)) + head_angle)))
mouth_y = (head_y + lengthdir_y((mouth_len * facing), (((body_angle + (head_dir * facing)) + (mouth_dir * facing)) + head_angle)))
farm_x = ((body_x + lengthdir_x((farm_len * facing), (body_angle + (farm_dir * facing)))) + (farm_xoff * facing))
farm_y = (body_y + lengthdir_y((farm_len * facing), (body_angle + (farm_dir * facing))))
barm_x = ((body_x + lengthdir_x((barm_len * facing), (body_angle + (barm_dir * facing)))) + (barm_xoff * facing))
barm_y = (body_y + lengthdir_y((barm_len * facing), (body_angle + (barm_dir * facing))))
if head_follow
{
head_target_angle = round(point_direction(((x - surf_x) + head_x), ((y - surf_y) + head_y), targetx, targety))
head_target_angle += (30 * facing)
if (facing == 1)
{
if (head_target_angle > 180)
head_target_angle -= 360
}
else
head_target_angle -= 180
}
statetime += 1
if (flashing > 0)
flashing -= 1
if (fxtimer < 5)
fxtimer += 1
else
fxtimer = 0
if (roaring > 0)
{
roaring -= 1
if (roar_frame < 2)
roar_frame += 0.25
}
else if (roar_frame > 0)
roar_frame -= 0.25
if (bleg_shake > 0)
bleg_shake -= 1
if (barm_shake > 0)
barm_shake -= 1
if (body_shake > 0)
body_shake -= 1
if (head_shake > 0)
head_shake -= 1
if (farm_shake > 0)
farm_shake -= 1
if (fleg_shake > 0)
fleg_shake -= 1
if (eyes_close > 0)
eyes_close -= 1
if (eyes_close == 0)
{
if (eyes_frame > -1)
eyes_frame -= 0.25
}
else if (eyes_frame < 4)
eyes_frame += 1
if (target_mode == 1 && distance_to_point(targetx, targety) < 32)
target_mode = 0
moveTo(xVel, yVel)