import 'package:flutter/material.dart';
import '../enums.dart';

class AnimationConfig {
  // Durations
  static const Duration floatingTextDuration = Duration(milliseconds: 1000);
  static const Duration floatingEffectDuration = Duration(milliseconds: 800);
  static const Duration fadeDuration = Duration(milliseconds: 200);

  // Attack Animations
  static const Duration attackSafe = Duration(milliseconds: 500);
  static const Duration attackNormal = Duration(milliseconds: 400);
  static const Duration attackRiskyTotal = Duration(milliseconds: 1100);
  static const Duration attackRiskyScale = Duration(milliseconds: 600);
  static const Duration attackRiskyDash = Duration(milliseconds: 500);

  // Curves
  static const Curve floatingTextCurve = Curves.easeOut;
  static const Curve floatingEffectScaleCurve = Curves.elasticOut;
  static const Curve attackSafeCurve = Curves.easeOutQuad;
  static const Curve attackNormalCurve = Curves.easeOutQuad;
  static const Curve attackRiskyDashCurve = Curves.easeInExpo;

  static Duration getAttackDuration(RiskLevel risk) {
    switch (risk) {
      case RiskLevel.safe:
        return attackSafe;
      case RiskLevel.normal:
        return attackNormal;
      case RiskLevel.risky:
        return attackRiskyTotal;
    }
  }
}
