package com.tiedup.remake.entities.damsel.components;

import java.util.List;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.level.Level;
import net.minecraft.world.phys.AABB;

/**
 * Interface for dialogue handler callbacks to EntityDamsel.
 * Provides access to entity state and methods needed by dialogue systems.
 *
 */
public interface IDialogueHost {
    /**
     * Get the entity's level/world.
     */
    Level level();

    /**
     * Get the entity's bounding box for radius detection.
     */
    AABB getBoundingBox();

    /**
     * Get the entity itself for dialogue source.
     */
    com.tiedup.remake.entities.EntityDamsel getEntity();

    /**
     * Get current game time for cooldown tracking.
     */
    long getGameTime();

    /**
     * Find nearby players within radius.
     */
    List<Player> findNearbyPlayers(double radius);
}
