sMZeta_Body 0 -1 0 0 <undefined> <undefined> 1 603 7 0 0 -1 2 self 0 0 1 canbeX = 0; zeta_head[0] = ds_map_find_value(global.zeta_heads, room); zeta_head[1] = asset_get_index(sprite_get_name(zeta_head[0])+"_Roar"); makeActive(); setCollisionBounds(-10, -30, 10, 43); //myhealth = 300; myhealth = global.mod_zetahealth; flashing = 0; stunned = 0; fxtimer = 0; canbehit = 1; hpush = 7; vpush = -3; //damage = 50; damage = global.mod_zetadamage; damagedealt = 0; givebackhp = 200; starthealth = myhealth; hits_taken = 0; limit_right = 544; limit_left = 112; targetx2 = 0; target_mode = 0; blur = 0; roaring = 0; noswipe = 0; swiping = 0; canswipe = 0; mask_obj = instance_create(x, y, oMZetaBodyMask); surf = surface_create(160, 128); surf_x = 80; surf_y = 80; image_speed = 0; facing = 1; state = 0; statetime = 0; xoff = 0; yoff = 0; body_obj = instance_create(x, y, oMZetaShield); body_spr = sMZeta_Body; body_frame = 0; body_x = 0; body_y = 0; body_angle = 0; body_angle_base = 0; body_target_angle = 0; body_angle_max = 25; body_angle_min = -25; head_obj = instance_create(x, y, oMZetaHead); head_spr = zeta_head[0];//sMZeta_Head; head_follow = 1; head_frame = 0; head_x = 0; head_y = 0; head_xoff = 0; head_yoff = 0; head_len = 46; head_dir = 39; head_angle = 0; head_target_angle = 0; head_angle_max = 45; head_angle_min = -45; mouth_x = 0; mouth_y = 0; mouth_len = 21; mouth_dir = -77; farm_spr = sMZeta_FArm; farm_frame = 0; farm_x = 0; farm_y = 0; farm_xoff = 0; farm_len = 28; farm_dir = 25; barm_spr = sMZeta_BArm; barm_frame = 0; barm_x = 0; barm_y = 0; barm_xoff = 0; barm_len = 32; barm_dir = 21; fleg_spr = sMZeta_FLeg; bleg_spr = sMZeta_BLeg; fleg_frame = 0; bleg_frame = 0; legx = 0; legy = 0; targetx = 0; targety = 0; alarm[3] = 1; alarm[9] = 1; scan_log(14, get_text("ScanEvents", "ScanBioform"), 180, 0); 1 603 7 0 0 -1 2 self 0 0 1 repeat (10) { expl = instance_create(x - 16 + random(32), y - 16 + random(32), oFXAnimSpark); expl.image_speed = 0.5 + random(0.5); expl.additive = 0; expl.sprite_index = sExpl1; expl.direction = random(360); expl.speed = 2 + random(1); } make_explosion4(x, y); instance_create(x, y, oScreenFlash); sfx_play(sndMAlphaExpl); sfx_play(sndMissileExpl); mus_current_fadein(); if (oControl.mod_insanitymode == 0 || (global.difficulty < 2 && oControl.mod_insanitymode == 1)) { if (damagedealt > givebackhp) damagedealt = givebackhp; monster_spawn_powerups(x, y, floor(damagedealt / 20), floor(starthealth / 10 / 2)); } instance_destroy(); 1 603 7 0 0 -1 2 self 0 0 1 expl = instance_create(x - 30 + random(60), y - 5 + random(40), oFXAnimSpark); expl.image_speed = 0.5; expl.additive = 0; expl.sprite_index = sExpl1; expl.image_xscale = 0.5; expl.image_yscale = 0.5; alarm[10] = 5; 1 603 7 0 0 -1 2 self 0 0 1 if (global.metdead[myid] > 0) { with (body_obj) instance_destroy(); with (head_obj) instance_destroy(); with (mask_obj) instance_destroy(); instance_destroy(); } 1 603 7 0 0 -1 2 self 0 0 1 if (roaring) { drl = instance_create(x - surf_x + mouth_x + random_range(-2, 2), y - surf_y + mouth_y, oMZetaDrool); drl.hspeed = 1.5 * facing; } alarm[3] = 3 + random(10); 1 603 7 0 0 -1 2 self 0 0 1 visible = true; 1 603 7 0 0 -1 2 self 0 0 1 var trail; trail = instance_create(x, y, oFXTrail); trail.sprite_index = sMZetaBlur; trail.image_alpha = 1; trail.white = 0; trail.fadespeed = 0.15; trail.depth = 10; trail.image_xscale = facing; if (blur == 1) alarm[1] = 2; 1 603 7 0 0 -1 2 self 0 0 1 var prj; prj = instance_create(x - surf_x + mouth_x, y - surf_y + mouth_y, oMZetaProj); prj.speed = 4; prj.gravity = 0.1; prj.gravity_direction = 270; prj.direction = body_angle + (head_dir + mouth_dir) * facing + head_angle; if (facing == -1) prj.direction += 180; if (state == 11 && statetime < 60) alarm[0] = 3; 1 603 7 0 0 -1 2 self 0 0 1 event_user(10); if (instance_exists(head_obj)) { head_obj.x = x - surf_x + xoff + head_x; head_obj.y = y - surf_y + yoff + head_y; head_obj.head_spr = head_spr; head_obj.head_frame = head_frame; head_obj.facing = facing; head_obj.image_angle = body_angle + head_angle; head_obj.image_xscale = facing; } if (instance_exists(body_obj)) { body_obj.x = x + xoff; body_obj.y = y + yoff; body_obj.image_angle = body_angle; body_obj.image_xscale = facing; } if (instance_exists(mask_obj)) { mask_obj.x = x + xoff; mask_obj.y = y + yoff; mask_obj.image_xscale = facing; } 1 603 7 0 0 -1 2 self 0 0 1 instance_activate_region(x - 64, y - 64, 128, 128, 1); 1 603 7 0 0 -1 2 self 0 0 1 var msl, fr_speed; if (target_mode == 0) { targetx = oCharacter.x; targety = oCharacter.y; } else if (target_mode == 1) { targetx = targetx2; targety = y; } image_xscale = facing; if (global.difficulty >= 2 || myhealth < 150) { canswipe = 1; } else canswipe = 0; if (isCollisionBottom(1) == 0) { yVel += 0.2; } else if (yVel > 0) yVel = 0; if (state == 0) { body_frame = 0; head_frame = 0; body_target_angle = 0; fleg_spr = sMZeta_FLeg; bleg_spr = sMZeta_BLeg; farm_spr = sMZeta_FArm; barm_spr = sMZeta_BArm; bleg_frame = 0; fleg_frame = 0; farm_frame = 0; barm_frame = 0; yoff = 0; head_yoff = 0; head_follow = 1; xVel = 0; 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 (state == 0) if (state == 1) { if (statetime == 0) { body_target_angle = -15; head_spr = zeta_head[1];//sMZeta_Head_Roar; fleg_spr = sMZeta_FLeg_Walk; bleg_spr = sMZeta_BLeg_Walk; farm_spr = sMZeta_FArm; barm_spr = sMZeta_BArm; bleg_frame = 0; fleg_frame = 0; farm_frame = 0; barm_frame = 0; head_frame = 0; yoff = 0; head_yoff = 0; head_follow = 1; xVel = 2 * facing; } if (targetx < x && facing == 1 || targetx > x && facing == -1) { state = 2; statetime = 0; } if (target_mode == 1 && distance_to_point(targetx, targety) < 32) target_mode = 0; if (fleg_frame >= 3 && fleg_frame < 3.25 || fleg_frame >= 14 && fleg_frame < 14.25) { sfx_play(sndMZetaFootstep); screen_shake(5, 2); } if (swiping == 0 && instance_number(oMissile) > 0 && canswipe) { msl = instance_nearest(x, y, oMissile); if ((noswipe == 0) && swiping == 0) { // if ((msl.smissile > 0 || noswipe == 0) && swiping == 0) { if (msl.x > x && facing == 1 || msl.x < x && facing == -1) { swiping = 1; noswipe = 150; farm_spr = sMZeta_FArm_Swipe; farm_frame = 8; sfx_play(sndMZetaAttack2); roaring = 30; } } } if (swiping == 0 && point_distance(x, y, oCharacter.x, y) < 70 && oCharacter.y > y + 40 && (oCharacter.x > x && facing == 1 || oCharacter.x < x && facing == -1)) { if (x > limit_left + 32 && x < limit_right - 32) { swiping = 1; noswipe = 150; farm_spr = sMZeta_FArm_Swipe; farm_frame = 8; sfx_play(sndMZetaAttack2); roaring = 30; } } if (swiping) { fr_speed = -0.5; if (farm_frame < 6.5) fr_speed = -0.25; xVel = 1.2 * facing; farm_frame = anim_frame(farm_spr, farm_frame, fr_speed); if (farm_frame >= 6 && farm_frame < 6.5) { proj = instance_create(x - surf_x + farm_x + 14 * facing, y - surf_y + farm_y + 10, oMZetaSlashProj2); proj.hspeed = 2 * facing; proj.image_xscale = facing; sfx_play(sndArachnusSwipe); } if (farm_frame < 0.5) { swiping = 0; farm_spr = sMZeta_FArm; } } else xVel = 2 * facing; if (hits_taken >= 2 && statetime > 30 && (oCharacter.x > x && facing == 1 || oCharacter.x < x && facing == -1)) { state = choose(3, 6, 8); statetime = 0; hits_taken = 0; } if (statetime == 120 && target_mode == 0) { state = choose(3, 6, 8); // PICK ATTACK statetime = 0; } if (x > limit_right && facing == 1 || x < limit_left && facing == -1) { state = 10; statetime = 0; } if (facing == 1 && isCollisionRight(1) && x < limit_right || facing == -1 && isCollisionLeft(1) && x > limit_left) { state = 3; statetime = 0; } if (facing == 1 && collision_point(x + 20, y + 45, oSolid, false, true) == noone || facing == -1 && collision_point(x - 20, y + 45, oSolid, false, true) == noone) { state = 3; statetime = 0; } fleg_frame = anim_frame_cycle(fleg_spr, fleg_frame, abs(xVel) * 0.2); bleg_frame = fleg_frame; if (floor(fleg_frame) == 0) { yoff = 0; head_yoff = 0; body_frame = 0; if (!swiping) farm_frame = 0; barm_frame = 0; } if (floor(fleg_frame) == 1) { yoff = 0; head_yoff = 0; body_frame = 0; if (!swiping) farm_frame = 0; barm_frame = 0; } if (floor(fleg_frame) == 2) { yoff = 1; head_yoff = 0; body_frame = 1; if (!swiping) farm_frame = 0; barm_frame = 0; } if (floor(fleg_frame) == 3) { yoff = 2; head_yoff = 0; body_frame = 1; if (!swiping) farm_frame = 0; barm_frame = 0; } if (floor(fleg_frame) == 4) { yoff = 3; head_yoff = 0; body_frame = 2; if (!swiping) farm_frame = 0; barm_frame = 0; } if (floor(fleg_frame) == 5) { yoff = 3; head_yoff = 0; body_frame = 2; if (!swiping) farm_frame = 0; barm_frame = 0; } if (floor(fleg_frame) == 6) { yoff = 3; head_yoff = 1; body_frame = 1; if (!swiping) farm_frame = 1; barm_frame = 1; } if (floor(fleg_frame) == 7) { yoff = 2; head_yoff = 2; body_frame = 1; if (!swiping) farm_frame = 2; barm_frame = 2; } if (floor(fleg_frame) == 8) { yoff = 2; head_yoff = 2; body_frame = 0; if (!swiping) farm_frame = 2; barm_frame = 2; } if (floor(fleg_frame) == 9) { yoff = 1; head_yoff = 1; body_frame = 0; if (!swiping) farm_frame = 1; barm_frame = 1; } if (floor(fleg_frame) == 10) { yoff = 1; head_yoff = 1; body_frame = 0; if (!swiping) farm_frame = 1; barm_frame = 1; } if (floor(fleg_frame) == 11) { yoff = 0; head_yoff = 0; body_frame = 0; if (!swiping) farm_frame = 0; barm_frame = 0; } if (floor(fleg_frame) == 12) { yoff = 0; head_yoff = 0; body_frame = 3; if (!swiping) farm_frame = 0; barm_frame = 0; } if (floor(fleg_frame) == 13) { yoff = 1; head_yoff = 0; body_frame = 3; if (!swiping) farm_frame = 0; barm_frame = 0; } if (floor(fleg_frame) == 14) { yoff = 2; head_yoff = 0; body_frame = 4; if (!swiping) farm_frame = 0; barm_frame = 0; } if (floor(fleg_frame) == 15) { yoff = 3; head_yoff = 0; body_frame = 4; if (!swiping) farm_frame = 0; barm_frame = 0; } if (floor(fleg_frame) == 16) { yoff = 3; head_yoff = 0; body_frame = 4; if (!swiping) farm_frame = 0; barm_frame = 0; } if (floor(fleg_frame) == 17) { yoff = 3; head_yoff = 1; body_frame = 3; if (!swiping) farm_frame = 1; barm_frame = 1; } if (floor(fleg_frame) == 18) { yoff = 2; head_yoff = 2; body_frame = 3; if (!swiping) farm_frame = 2; barm_frame = 2; } if (floor(fleg_frame) == 19) { yoff = 1; head_yoff = 1; body_frame = 0; if (!swiping) farm_frame = 1; barm_frame = 1; } if (floor(fleg_frame) == 20) { yoff = 1; head_yoff = 1; body_frame = 0; if (!swiping) farm_frame = 1; barm_frame = 1; } } // if (state == 1) if (state == 2) { if (statetime == 0) { head_spr = zeta_head[0];//sMZeta_Head; 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; } xVel *= 0.95; if (statetime > 0) { if (head_frame < 2.5) head_frame += 0.25; } if (statetime == 10) { body_spr = sMZeta_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 = sMZeta_Body; farm_spr = sMZeta_FArm; barm_spr = sMZeta_BArm; fleg_spr = sMZeta_FLeg; bleg_spr = sMZeta_BLeg; head_xoff = 0; if (head_frame > 0) head_frame -= 0.25; } if (statetime == 22) { state = 1; statetime = -1; } } // if (state == 2) if (state == 3) { if (statetime == 0) { body_frame = 0; body_target_angle = -20; head_spr = zeta_head[1];//sMZeta_Head_Roar; fleg_spr = sMZeta_FLeg_Crouch; bleg_spr = sMZeta_BLeg_Crouch; bleg_frame = 0; fleg_frame = 0; farm_frame = 0; barm_frame = 0; yoff = 0; head_yoff = 0; head_follow = 1; xVel = 0; yVel = 0; if (x < limit_left + 32 && x > limit_right - 32) { state = 10; statetime = 0; } } if (statetime < 30) { fleg_frame = anim_frame(sMZeta_FLeg_Crouch, fleg_frame, 0.5); bleg_frame = fleg_frame; } if (statetime == 40) { state = 4; statetime = 0; } } // if (state == 3) if (state == 4) { if (statetime == 0) { body_frame = 0; body_target_angle = 20; head_spr = zeta_head[1];//sMZeta_Head_Roar; fleg_spr = sMZeta_FLeg_Jump; bleg_spr = sMZeta_BLeg_Jump; bleg_frame = 0; fleg_frame = 0; farm_frame = 0; barm_frame = 0; yoff = 0; head_yoff = 0; yVel = -3.2; xVel = 4 * facing; sfx_play(sndMZetaJump); } if (statetime < 10) { bleg_frame = 0; fleg_frame = 0; } if (statetime >= 10) { fleg_frame = anim_frame(sMZeta_FLeg_Jump, fleg_frame, 0.2); bleg_frame = fleg_frame; } if (isCollisionBottom(1) > 0 && statetime > 10) { state = 5; statetime = 0; } } // if (state == 4) if (state == 5) { if (statetime == 0) { body_frame = 0; body_target_angle = -20; head_spr = zeta_head[1];//sMZeta_Head_Roar; fleg_spr = sMZeta_FLeg_Crouch; bleg_spr = sMZeta_BLeg_Crouch; bleg_frame = 5; fleg_frame = 5; farm_frame = 0; barm_frame = 0; yoff = 0; head_yoff = 0; xVel = 0; 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); } if (statetime < 30) { fleg_frame = anim_frame(sMZeta_FLeg_Crouch, fleg_frame, -0.5); bleg_frame = fleg_frame; } if (statetime == 20) { state = 1; statetime = -1; } } // if (state == 5) if (state == 6) { if (statetime == 0) { body_frame = 0; body_target_angle = -20; head_spr = zeta_head[1];//sMZeta_Head_Roar; fleg_spr = sMZeta_FLeg_Crouch; bleg_spr = sMZeta_BLeg_Crouch; bleg_frame = 0; fleg_frame = 0; farm_spr = sMZeta_FArm; barm_spr = sMZeta_BArm; farm_frame = 0; barm_frame = 0; yoff = 0; head_yoff = 0; head_follow = 1; xVel = 0; sfx_play(sndMZetaAttack); roaring = 30; } if (statetime < 20) { fleg_frame = anim_frame(sMZeta_FLeg_Crouch, fleg_frame, 1); bleg_frame = fleg_frame; } if (statetime == 10) { farm_spr = sMZeta_FArm_Swipe; body_frame = 3; } if (statetime > 10 && statetime < 35) farm_frame = anim_frame(sMZeta_FArm_Swipe, farm_frame, 0.5); if (statetime == 15) { body_frame = 4; head_frame = 3; } if (statetime == 25) { proj = instance_create(x - surf_x + farm_x + 14 * facing, y - surf_y + farm_y + 10, oMZetaSlashProj); proj.hspeed = 5 * facing; proj.image_xscale = facing; sfx_play(sndArachnusSwipe); } if (statetime == 30) { farm_spr = sMZeta_FArm; barm_spr = sMZeta_FArm_Swipe; body_frame = 1; head_frame = 0; } if (statetime > 30 && statetime < 50) barm_frame = anim_frame(sMZeta_FArm_Swipe, barm_frame, 0.5); if (statetime == 35) { body_frame = 2; head_frame = 1; } if (statetime == 45) { proj = instance_create(x - surf_x + barm_x + 14 * facing, y - surf_y + barm_y + 10, oMZetaSlashProj); proj.hspeed = 5 * facing; proj.image_xscale = facing; sfx_play(sndArachnusSwipe); head_frame = 0; } if (statetime == 50) barm_spr = sMZeta_BArm; if (statetime > 50) { fleg_frame = anim_frame(sMZeta_FLeg_Crouch, fleg_frame, -0.5); bleg_frame = fleg_frame; } if (statetime == 60) { state = 1; statetime = -1; } } // if (state == 6) if (state == 7) { head_target_angle = 0; if (statetime == 0) { body_frame = 0; body_target_angle = 20; yoff = 0; head_yoff = 0; head_xoff = -5; bleg_frame = 0; fleg_frame = 0; farm_frame = 0; barm_frame = 0; head_follow = 0; } if (statetime > 0 && statetime < 15) { if (head_frame < 2.5) head_frame += 0.25; if (head_xoff < 0) head_xoff += 1; } if (statetime == 20) body_target_angle = 17; if (statetime > 30) { if (head_frame > 0) head_frame -= 0.1; } if (statetime == 60) { state = 0; statetime = -1; } } // if (state == 7) if (state == 8) { if (statetime == 0) { body_frame = 0; body_target_angle = -25; fleg_spr = sMZeta_FLeg_Walk; bleg_spr = sMZeta_BLeg_Walk; bleg_frame = 0; fleg_frame = 0; farm_frame = 0; barm_frame = 0; yoff = 0; head_yoff = 0; head_follow = 0; head_target_angle = -30 * facing; xVel = 0; yVel = 0; sfx_play(sndMZetaAttack2); roaring = 30; } if (statetime < 50) fleg_frame = anim_frame_cycle(sMZeta_FLeg_Walk, fleg_frame, 1); if (statetime == 50) { state = 9; statetime = 0; } switch (fleg_frame) { case 4: make_smoke_explosion(x + 16 * facing, y + 41); sfx_play(sndMZetaCharge); break; case 6: make_smoke_explosion(x + 8 * facing, y + 41); break; case 8: make_smoke_explosion(x - 2 * facing, y + 41); break; case 10: make_smoke_explosion(x - 6 * facing, y + 41); break; case 12: make_smoke_explosion(x - 14 * facing, y + 41); break; case 14: make_smoke_explosion(x - 24 * facing, y + 41); break; } } // if (state == 8) if (state == 9) { if (statetime == 0) { body_frame = 0; body_target_angle = -30; fleg_spr = sMZeta_FLeg_Walk; bleg_spr = sMZeta_BLeg_Walk; bleg_frame = 12; fleg_frame = 15; farm_frame = 0; barm_frame = 0; yoff = 0; head_yoff = 10; head_xoff = 1; head_follow = 0; yVel = 0; xVel = 10 * facing; blur = 1; alarm[1] = 1; sfx_play(sndArachnusHomingBall); } if ((facing == 1 && collision_line(x, y + 40, x + 60, y + 40, oSolid, false, true) || facing == -1 && collision_line(x, y + 40, x - 60, y + 40, oSolid, false, true)) && statetime < 17) { statetime = 17; xVel = 0; } if (statetime > 16) { xVel *= 0.7; blur = 0; if (floor(fleg_frame) != 8) fleg_frame = anim_frame_cycle(sMZeta_FLeg_Walk, fleg_frame, 0.5); if (floor(bleg_frame) != 18) bleg_frame = anim_frame_cycle(sMZeta_BLeg_Walk, bleg_frame, 0.25); } if (statetime == 50) { state = 1; statetime = -1; } head_target_angle = -30 * facing; head_angle = -30 * facing; if (floor(fleg_frame) == 0) { yoff = 0; head_yoff = 0; body_frame = 0; if (!swiping) farm_frame = 0; barm_frame = 0; } if (floor(fleg_frame) == 1) { yoff = 0; head_yoff = 0; body_frame = 0; if (!swiping) farm_frame = 0; barm_frame = 0; } if (floor(fleg_frame) == 2) { yoff = 1; head_yoff = 0; body_frame = 1; if (!swiping) farm_frame = 0; barm_frame = 0; } if (floor(fleg_frame) == 3) { yoff = 2; head_yoff = 0; body_frame = 1; if (!swiping) farm_frame = 0; barm_frame = 0; } if (floor(fleg_frame) == 4) { yoff = 3; head_yoff = 0; body_frame = 2; if (!swiping) farm_frame = 0; barm_frame = 0; } if (floor(fleg_frame) == 5) { yoff = 3; head_yoff = 0; body_frame = 2; if (!swiping) farm_frame = 0; barm_frame = 0; } if (floor(fleg_frame) == 6) { yoff = 3; head_yoff = 1; body_frame = 1; if (!swiping) farm_frame = 1; barm_frame = 1; } if (floor(fleg_frame) == 7) { yoff = 2; head_yoff = 2; body_frame = 1; if (!swiping) farm_frame = 2; barm_frame = 2; } if (floor(fleg_frame) == 8) { yoff = 2; head_yoff = 2; body_frame = 0; if (!swiping) farm_frame = 2; barm_frame = 2; } if (floor(fleg_frame) == 9) { yoff = 1; head_yoff = 1; body_frame = 0; if (!swiping) farm_frame = 1; barm_frame = 1; } if (floor(fleg_frame) == 10) { yoff = 1; head_yoff = 1; body_frame = 0; if (!swiping) farm_frame = 1; barm_frame = 1; } if (floor(fleg_frame) == 11) { yoff = 0; head_yoff = 0; body_frame = 0; if (!swiping) farm_frame = 0; barm_frame = 0; } if (floor(fleg_frame) == 12) { yoff = 0; head_yoff = 0; body_frame = 3; if (!swiping) farm_frame = 0; barm_frame = 0; } if (floor(fleg_frame) == 13) { yoff = 1; head_yoff = 0; body_frame = 3; if (!swiping) farm_frame = 0; barm_frame = 0; } if (floor(fleg_frame) == 14) { yoff = 2; head_yoff = 0; body_frame = 4; if (!swiping) farm_frame = 0; barm_frame = 0; } if (floor(fleg_frame) == 15) { yoff = 3; head_yoff = 0; body_frame = 4; if (!swiping) farm_frame = 0; barm_frame = 0; } if (floor(fleg_frame) == 16) { yoff = 3; head_yoff = 0; body_frame = 4; if (!swiping) farm_frame = 0; barm_frame = 0; } if (floor(fleg_frame) == 17) { yoff = 3; head_yoff = 1; body_frame = 3; if (!swiping) farm_frame = 1; barm_frame = 1; } if (floor(fleg_frame) == 18) { yoff = 2; head_yoff = 2; body_frame = 3; if (!swiping) farm_frame = 2; barm_frame = 2; } if (floor(fleg_frame) == 19) { yoff = 1; head_yoff = 1; body_frame = 0; if (!swiping) farm_frame = 1; barm_frame = 1; } if (floor(fleg_frame) == 20) { yoff = 1; head_yoff = 1; body_frame = 0; if (!swiping) farm_frame = 1; barm_frame = 1; } } // if (state == 9) if (state == 10) { if (statetime == 0) { body_frame = 0; body_target_angle = 15; fleg_spr = sMZeta_FLeg_Walk; bleg_spr = sMZeta_BLeg_Jump; bleg_frame = 1; fleg_frame = 3; farm_frame = 0; barm_frame = 0; yoff = 0; head_yoff = 0; head_xoff = 0; head_follow = 1; yVel = -2; xVel = -5 * facing; sfx_play(sndMZetaAttack2); sfx_play(sndMZetaJump); roaring = 20; } if (isCollisionBottom(1) > 0 && statetime > 10) { state = 11; statetime = 0; sfx_play(sndMZetaLand); screen_shake(8, 3); make_smoke_explosion(x, y + 41); make_smoke_explosion(x + 10, y + 41); make_smoke_explosion(x - 10, y + 41); } } // if (state == 10) if (state == 11) { if (statetime == 0) { body_frame = 0; body_target_angle = -20; fleg_spr = sMZeta_FLeg_Crouch; bleg_spr = sMZeta_BLeg_Crouch; bleg_frame = 0; fleg_frame = 0; farm_spr = sMZeta_FArm; barm_spr = sMZeta_BArm; farm_frame = 0; barm_frame = 0; yoff = 0; head_spr = zeta_head[1];//sMZeta_Head_Roar; head_yoff = 0; head_follow = 0; xVel = 0; head_target_angle = -10 * facing; alarm[0] = 30; } if (statetime < 30) { fleg_frame = anim_frame(sMZeta_FLeg_Crouch, fleg_frame, 0.5); bleg_frame = fleg_frame; } if (statetime == 10) mask_index = sMZetaMask2; if (statetime == 30) { head_target_angle = 30 * facing; body_target_angle = 10; sfx_play(sndMZetaAcid); } if (statetime > 20 && statetime < 60) roaring = 1; if (statetime > 90) { fleg_frame = anim_frame(sMZeta_FLeg_Crouch, fleg_frame, -0.5); bleg_frame = fleg_frame; } if (statetime == 100) { mask_index = sprite_index; state = 1; statetime = -1; target_mode = 1; targetx2 = x + -300 * facing; } } // if (state == 11) if (state == 50) { if (statetime == 0) { body_spr = sMZeta_Body2; body_frame = 1; body_target_angle = -32; image_angle = -32; fleg_spr = sMZeta_FLeg_Crouch; bleg_spr = sMZeta_BLeg_Crouch; bleg_frame = 5; fleg_frame = 5; farm_frame = 0; barm_frame = 0; yoff = 0; head_xoff = -13; head_yoff = 23; head_follow = 0; head_target_angle = -40 * facing; head_angle = -40 * facing; } if (statetime > 30 && statetime < 120) { if (collision_line(x, y, x, y + 43, oSolid, false, true)) y -= 0.5; } if (statetime > 70) { fleg_frame = anim_frame(sMZeta_FLeg_Crouch, fleg_frame, -0.25); bleg_frame = fleg_frame; } if (statetime > 50) { head_xoff = lerp(head_xoff, 0, 0.05); head_yoff = lerp(head_yoff, 0, 0.05); body_target_angle = lerp(body_target_angle, 0, 0.02); } if (statetime > 85) head_target_angle = lerp(head_target_angle, 0, 0.05); if (statetime == 90) { fleg_spr = sMZeta_FLeg; bleg_spr = sMZeta_BLeg; bleg_frame = 0; fleg_frame = 0; yoff = 0; } if (statetime == 95) body_frame = 0; if (statetime == 100) { body_spr = sMZeta_Body; body_frame = 2; } if (statetime > 100) body_frame = anim_frame(sMZeta_Body, body_frame, -0.2); if (statetime == 200) { event_user(1); statetime = -1; with (oEventCamera2) alarm[0] = 20; } } // if (state == 50) if (state == 100) { xVel = 0; if (statetime == 0) { body_frame = 0; body_target_angle = -30; fleg_spr = sMZeta_FLeg_Crouch; bleg_spr = sMZeta_BLeg_Crouch; bleg_frame = 0; fleg_frame = 0; farm_frame = 0; barm_frame = 0; yoff = 0; head_yoff = 0; head_follow = 0; head_target_angle = -30 * facing; xVel = 0; yVel = 0; blur = 0; sfx_play(sndMZetaDeath); roaring = 100; with (cam) instance_destroy(); } if (statetime < 30) { fleg_frame = anim_frame(sMZeta_FLeg_Crouch, fleg_frame, 0.5); bleg_frame = fleg_frame; } } // if (state == 100) if (fleg_spr == sMZeta_FLeg_Crouch) { if (floor(fleg_frame) == 0) yoff = 1; 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 (body_spr == sMZeta_Body) { if (body_frame == 0) { farm_xoff = 0; barm_xoff = 0; } if (body_frame == 1) { farm_xoff = -1; barm_xoff = 1; } if (body_frame == 2) { farm_xoff = -2; barm_xoff = 2; } if (body_frame == 3) { farm_xoff = 1; barm_xoff = -1; } if (body_frame == 4) { farm_xoff = 2; barm_xoff = -2; } } 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; 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; } if (head_spr == zeta_head[1]/*sMZeta_Head_Roar*/) { if (roaring > 0) { head_frame = anim_frame(zeta_head[1]/*sMZeta_Head_Roar*/, head_frame, 0.25); } else head_frame = anim_frame(zeta_head[1]/*sMZeta_Head_Roar*/, head_frame, -0.25); } with (oCharacter) if (state == 41) { if (facing == LEFT) { xVel = 4; } else xVel = -4; if (statetime == 1) yVel = -4; } statetime += 1; if (flashing > 0) flashing -= 1; if (fxtimer < 5) { fxtimer += 1; } else fxtimer = 0; if (noswipe > 0) noswipe -= 1; if (roaring > 0) roaring -= 1; moveTo(xVel, yVel); 1 603 7 0 0 -1 2 self 0 0 1 if (myhealth > 0) { if (flashing == 0) { event_user(0); with (other) event_user(0); } else with (other) event_user(1); } 1 603 7 0 0 -1 2 self 0 0 1 if (oBeam.chargebeam && !oBeam.ibeam && !oBeam.wbeam && !oBeam.pbeam && !oBeam.sbeam && global.missiles == 0 && global.smissiles == 0) { if (myhealth > 0) { if (flashing == 0) { event_user(0); with (other) event_user(0); with (other) instance_destroy(); } else with (other) event_user(1); } } else { with (other) { event_user(1); instance_destroy(); } } 1 603 7 0 0 -1 2 self 0 0 1 if (surface_exists(surf)) { surface_set_target(surf); draw_clear_alpha(c_black, 0); if (blur == 0) { if (bleg_spr != -4) draw_sprite_ext(bleg_spr, bleg_frame, body_x, surf_y, facing, 1, 0, -1, 1); if (barm_spr != -4) draw_sprite_ext(barm_spr, barm_frame, barm_x, barm_y, facing, 1, 0, -1, 1); if (body_spr != -4) draw_sprite_ext(body_spr, body_frame, body_x, body_y, facing, 1, body_angle, -1, 1); if (head_spr != -4) draw_sprite_ext(head_spr, head_frame, head_x, head_y, facing, 1, body_angle + head_angle, -1, 1); if (farm_spr != -4) draw_sprite_ext(farm_spr, farm_frame, farm_x, farm_y, facing, 1, 0, -1, 1); if (fleg_spr != -4) draw_sprite_ext(fleg_spr, fleg_frame, body_x, surf_y, facing, 1, 0, -1, 1); } else { draw_sprite_ext(sMZetaBlur, -1, body_x, body_y, facing, 1, 0, -1, 1); } surface_reset_target(); } 1 603 7 0 0 -1 2 self 0 0 1 state = 1; statetime = 0; sfx_play(sndMZetaIntro); roaring = 120; mus_zeta_monster(); myposx = floor(x / 320); myposy = floor((y - 8) / 240); mapposx = myposx + global.mapoffsetx; mapposy = myposy + global.mapoffsety; global.dmap[mapposx, mapposy] = 10; with (oControl) event_user(2); cam = instance_create(x, y, oObjectCamera); cam.target_obj = id; 1 603 7 0 0 -1 2 self 0 0 1 var dmg, flashtime; dmg = 10; flashtime = 20; if (other.smissile == 1) { dmg = 50; flashtime = 60; } myhealth -= dmg; flashing = flashtime; canbehit = 0; //noswipe = 0; hits_taken += 1; if (myhealth <= 0) { state = 100; statetime = 0; alarm[10] = 1; alarm[11] = 160; with (body_obj) instance_destroy(); with (head_obj) instance_destroy(); with (mask_obj) instance_destroy(); mus_fadeout(musZetaFight); oMusicV2.bossbgm = sndJump; global.metdead[myid] = 1; global.monstersleft -= 1; global.monstersarea -= 1; check_areaclear(); global.dmap[mapposx, mapposy] = 11; with (oControl) event_user(2); } if (myhealth > 0) { PlaySoundMono(sndMZetaHit); roaring = 15; } 1 603 7 0 0 -1 2 self 0 0 1 if (global.ingame == 1 && state != 0) { mus_stop(musZetaFight); with (oMusicV2) { alarm[3] = -1; bossbgm = sndJump; } mus_current_fadein(); } 1 603 7 0 0 -1 2 self 0 0 1 if(oControl.mod_fusion == 1 || oControl.MonsterPalettesFusionOnly == 0) { pal_swap_set(oControl.ZetaPalette, 1, false); } if (surface_exists(surf)) { if (!flashing) { draw_surface_ext(surf, x - surf_x, y - surf_y, 1, 1, 0, image_blend, 1); } else { draw_surface_ext(surf, x - surf_x, y - surf_y, 1, 1, 0, make_color_rgb(255 - fxtimer * 63, 255 - fxtimer * 63, 255 - fxtimer * 63), 1); draw_set_blend_mode(bm_add); repeat (2) draw_surface_ext(surf, x - surf_x, y - surf_y, 1, 1, 0, -1, 1 - fxtimer * 0.25); draw_set_blend_mode(bm_normal); } } else { surface_free(surf); surf = surface_create(160, 128); event_user(10); } shader_reset(); 0 0 0 0.5 0.100000001490116 0 0.100000001490116 0.100000001490116 0.200000002980232 -1 -1