Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- dir = sign(image_xscale)
- onground = (place_meeting(x,y+1,o_wall)) && sign(vsp) = 1
- bump_wall = (place_meeting(x*dir + 10,y,o_wall))
- scr_collide()
- if damage_frames <0 damage_frames = 0;
- switch (state)
- {
- case enemy_state.idling:
- hit = false
- sprite_index = spr_enemy_idle
- idling_wait++
- if idling_wait >= 60
- {
- turn = turn * -1
- turn_around = true
- state = enemy_state.patrol
- }; break;
- case enemy_state.patrol:
- hit = false
- hsp = 0
- sprite_index = spr_enemy;
- idling_wait = 0;
- if bump_wall
- {
- if turn_around = false
- {
- state = enemy_state.idling
- }
- turn_around = false
- }
- else hsp = turn * walksp
- break;
- case enemy_state.damage:
- sprite_index = spr_enemy_pain
- if hit = false
- {
- if !onground {hsp = 7 * -dir;}
- vsp = -10
- hit = true
- }
- damage_frames --;
- if damage_frames <= 0 state = enemy_state.idling; break;
- case enemy_state.dead:
- instance_destroy(); break
- }
- if hit_points = 0 state = enemy_state.dead
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement