simpleAttackMelee method

void simpleAttackMelee({
  1. required double damage,
  2. required Vector2 size,
  3. int? id,
  4. int interval = 1000,
  5. bool withPush = false,
  6. double? sizePush,
  7. Direction? direction,
  8. Future<SpriteAnimation>? animationRight,
  9. Future<SpriteAnimation>? animationDown,
  10. Future<SpriteAnimation>? animationLeft,
  11. Future<SpriteAnimation>? animationUp,
  12. VoidCallback? execute,
})

Execute simple attack melee using animation

Implementation

void simpleAttackMelee({
  required double damage,
  required Vector2 size,
  int? id,
  int interval = 1000,
  bool withPush = false,
  double? sizePush,
  Direction? direction,
  Future<SpriteAnimation>? animationRight,
  Future<SpriteAnimation>? animationDown,
  Future<SpriteAnimation>? animationLeft,
  Future<SpriteAnimation>? animationUp,
  VoidCallback? execute,
}) {
  if (!this.checkInterval('attackMelee', interval, dtUpdate)) return;

  if (isDead) return;

  Direction direct = direction ?? getComponentDirectionFromMe(gameRef.player);

  this.simpleAttackMeleeByDirection(
    damage: damage,
    direction: direct,
    size: size,
    id: id,
    withPush: withPush,
    sizePush: sizePush,
    animationUp: animationUp,
    animationDown: animationDown,
    animationLeft: animationLeft,
    animationRight: animationRight,
    attackFrom: AttackFromEnum.ENEMY,
  );

  execute?.call();
}