package com.zombie.game.ecs.components;

import lombok.Data;

/** Zombie AI component storing pathfinding target and state / 僵尸AI组件，存储寻路目标和状态 */
@Data
public class ZombieAI {
    /** Current movement target X / 当前移动目标X */
    private float targetX;
    /** Current movement target Y / 当前移动目标Y */
    private float targetY;
    /** Whether zombie has an active target / 是否有活跃目标 */
    private boolean hasTarget;
    /** Reserved grid X to prevent overlap / 预留网格X防止重叠 */
    private int reservedGridX = -1;
    /** Reserved grid Y to prevent overlap / 预留网格Y防止重叠 */
    private int reservedGridY = -1;
    /** Whether zombie holds a grid reservation / 是否持有网格预留 */
    private boolean reservation;

    public ZombieAI() {
        this.targetX = 0;
        this.targetY = 0;
        this.hasTarget = false;
    }
}
