DummyAI.gml 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. function enemy_dummy_ai()
  2. {
  3. x_spd = 0;
  4. y_spd = 0;
  5. switch(state)
  6. {
  7. case "IDLE":
  8. if hitstun_timer == hitstun_max
  9. {
  10. if facing_y == -1
  11. {
  12. state = "COUNTER_UP";
  13. set_sprite(sEnemyDummyCounter);
  14. var _indi = icl(oEnemyDummyIndicator, x, y - 192);
  15. _indi.image_angle = 90;
  16. }
  17. else
  18. {
  19. state = "COUNTER_VER";
  20. set_sprite(sEnemyDummyCounter);
  21. var _indi = icl(oEnemyDummyIndicator, x, y - 96);
  22. _indi.image_xscale = facing_x;
  23. }
  24. }
  25. facing_x = sign(global.player.x - x);
  26. facing_y = sign(global.player.y + sprite_height - y);
  27. break;
  28. case "COUNTER_UP":
  29. if animation_end()
  30. {
  31. var _hb = enemy_create_hitboxBC(144, 384, 0, -192, 10);
  32. //_hb.damage = 2;
  33. state = "ATTACK";
  34. set_sprite(sEnemyDummyAttack);
  35. }
  36. break;
  37. case "COUNTER_VER":
  38. if animation_end()
  39. {
  40. var _hb = enemy_create_hitboxML(384, 144, 0, -96, 10);
  41. //_hb.damage = 2;
  42. state = "ATTACK";
  43. set_sprite(sEnemyDummyAttack);
  44. }
  45. break;
  46. case "ATTACK":
  47. if animation_end()
  48. {
  49. state = "IDLE";
  50. set_sprite(sEnemyDummyIdle);
  51. }
  52. break;
  53. }
  54. }