package me.earthme.luminol.config.modules.optimizations;

import java.util.List;
import me.earthme.luminol.config.IConfigModule;
import me.earthme.luminol.config.flags.ConfigClassInfo;
import me.earthme.luminol.config.flags.ConfigInfo;
import me.earthme.luminol.enums.EnumConfigCategory;

@ConfigClassInfo(category = EnumConfigCategory.OPTIMIZATIONS, name = "mob_ai_reducer")
public class MobAiReducerConfig implements IConfigModule {
    @ConfigInfo(name = "enabled")
    public static boolean enabled = true;

    @ConfigInfo(name = "animals")
    public static boolean animals = true;

    @ConfigInfo(name = "monsters")
    public static boolean monsters = false;

    @ConfigInfo(name = "villagers")
    public static boolean villagers = false;

    @ConfigInfo(name = "disable_collides")
    public static boolean disableCollides = false;

    @ConfigInfo(name = "silent")
    public static boolean silent = false;

    @ConfigInfo(name = "keep_dedicated")
    public static boolean keepDedicated = true;

    @ConfigInfo(name = "ai_list_mode")
    public static boolean aiListMode = false;

    @ConfigInfo(name = "ai_goal_list")
    public static List<String> aiGoalList = List.of("RandomLookAroundGoal", "FloatGoal");

    @ConfigInfo(name = "breed_enabled")
    public static boolean breedEnabled = true;

    @ConfigInfo(name = "breed_range")
    public static double breedRange = 8.0;

    @ConfigInfo(name = "tempt_enabled")
    public static boolean temptEnabled = true;

    @ConfigInfo(name = "tempt_range")
    public static double temptRange = 10.0;

    @ConfigInfo(name = "tempt_trigger_both_hands")
    public static boolean temptTriggerBothHands = true;
}
