package com.zombie.game.ecs.components;

import lombok.Data;

/** Component storing player input state for movement and aiming / 存储玩家移动和瞄准输入状态的组件 */
@Data
public class PlayerInput {
    // Movement direction X component / 移动方向X分量
    private float dx;
    // Movement direction Y component / 移动方向Y分量
    private float dy;
    // Aim target X coordinate / 瞄准目标X坐标
    private float aimX;
    // Aim target Y coordinate / 瞄准目标Y坐标
    private float aimY;
    // Input sequence number for ordering / 用于排序的输入序列号
    private int seq;

    // Default constructor initializing all values to zero / 默认构造函数，将所有值初始化为零
    public PlayerInput() {
        this.dx = 0;
        this.dy = 0;
        this.aimX = 0;
        this.aimY = 0;
        this.seq = 0;
    }
}
