import 'package:wolf_3d_dart/wolf_3d_entities.dart';

/// A pure, framework-agnostic snapshot of the player's intended actions for a single frame.
class EngineInput {
  final bool isMovingForward;
  final bool isMovingBackward;
  final bool isTurningLeft;
  final bool isTurningRight;
  final bool isFiring;
  final bool isInteracting;
  final bool isBack;
  final double? menuTapX;
  final double? menuTapY;
  final WeaponType? requestedWeapon;

  const EngineInput({
    this.isMovingForward = false,
    this.isMovingBackward = false,
    this.isTurningLeft = false,
    this.isTurningRight = false,
    this.isFiring = false,
    this.isInteracting = false,
    this.isBack = false,
    this.menuTapX,
    this.menuTapY,
    this.requestedWeapon,
  });
}
