package com.tiedup.remake.entities.kidnapper.hosts;

import com.tiedup.remake.entities.EntityKidnapper;
import com.tiedup.remake.entities.ai.kidnapper.KidnapperState;
import com.tiedup.remake.entities.kidnapper.components.IAlertHost;
import net.minecraft.world.level.Level;
import net.minecraft.world.phys.AABB;

/**
 * Host implementation for KidnapperAlertManager callbacks.
 * Provides access to entity properties needed for the alert system.
 */
public class AlertHost implements IAlertHost {

    private final EntityKidnapper entity;

    public AlertHost(EntityKidnapper entity) {
        this.entity = entity;
    }

    @Override
    public Level level() {
        return entity.level();
    }

    @Override
    public AABB getBoundingBox() {
        return entity.getBoundingBox();
    }

    @Override
    public KidnapperState getCurrentState() {
        return entity.getCurrentState();
    }

    @Override
    public void setCurrentState(KidnapperState state) {
        entity.setCurrentState(state);
    }

    @Override
    public boolean hasCaptives() {
        return entity.hasCaptives();
    }

    @Override
    public boolean isTiedUp() {
        return entity.isTiedUp();
    }

    @Override
    public String getNpcName() {
        return entity.getNpcName();
    }
}
