// Priority: 1
/**
 * ════════════════════════════════════════════════════════════════
 *
 *                   █████╗  ██████╗ ███████╗
 *                  ██╔══██╗██╔═══██╗██╔════╝
 *                  ███████║██║   ██║█████╗
 *                  ██╔══██║██║   ██║██╔══╝
 *                  ██║  ██║╚██████╔╝██║
 *                  ╚═╝  ╚═╝ ╚═════╝ ╚═╝
 *
 *                       Age of Fate
 *                   A Minecraft Modpack
 *                      By KnightDexx
 * ════════════════════════════════════════════════════════════════
 *
 * ┌─────────────────────────────────────────────────────────┐
 * │             LOOT SYSTEM CONFIGURATION                   │
 * ├─────────────────────────────────────────────────────────┤
 * │ @file        01_config.js                               │
 * │ @copyright   KnightDexx's Modded Minecraft World        │
 * │ @modpack     Age of Fate (AOF)                          │
 * │ @author      KnightDexx                                 │
 * │ @version     1.2                                        │
 * │ @license     All Rights Reserved                        │
 * │                                                          │
 * │ Global configuration for the entire loot system.        │
 * │ Modify drop rates, currency values, and features here.  │
 * │                                                          │
 * │ PORTED: 1.20.1 → 1.21.1 NeoForge                       │
 * │ STATUS: No changes required — pure data config file.    │
 * └─────────────────────────────────────────────────────────┘
 *
**/

// ═══════════════════════════════════════════════════════════
// GLOBAL LOOT SYSTEM CONFIGURATION
// ═══════════════════════════════════════════════════════════

const AOF_LOOT_CONFIG = {

  // ─────────────────────────────────────────────────────────
  // SYSTEM INFO
  // ─────────────────────────────────────────────────────────

  VERSION: '1.2',
  AUTHOR: 'KnightDexx',
  MODPACK: 'Age of Fate',

  // ─────────────────────────────────────────────────────────
  // FEATURE TOGGLES
  // ─────────────────────────────────────────────────────────

  FEATURES: {
    CHEST_BALANCE: true,      // Enable chest loot nerfs
    MOB_CURRENCY: false,       // Enable mob money drops
    MOB_ITEMS: false,          // Enable custom mob item drops
    FISHING_LOOT: true,       // Enable fishing loot balance (Aquaculture 2)
    WATER_CREATURES: true,    // Enable water creature neptunium drops
    BLOCK_DROPS: false,       // Ore bonuses (mining is earned, not stolen!)
    BOSS_REWARDS: false        // Special boss drops
  },

  // ─────────────────────────────────────────────────────────
  // CURRENCY SYSTEM
  // ─────────────────────────────────────────────────────────

  CURRENCY: {
    NOTES: {
      N1: 'kubejs:note_1',
      N2: 'kubejs:note_2',
      N5: 'kubejs:note_5',
      N10: 'kubejs:note_10',
      N20: 'kubejs:note_20',
      N50: 'kubejs:note_50',
      N100: 'kubejs:note_100',
      N200: 'kubejs:note_200',
      N500: 'kubejs:note_500',
      N1000: 'kubejs:note_1000'
    }
  },

  // ─────────────────────────────────────────────────────────
  // FISHING LOOT CONFIGURATION
  // ─────────────────────────────────────────────────────────

  FISHING: {
    USE_CHEST_BLACKLIST: true,

    NEPTUNES_BOUNTY: {
      ENABLED: true,
      REMOVE_GEAR: true,
      KEEP_INGOTS: true,
      INCREASE_RATE: false,
    },

    WHITELIST: [
      'aquaculture:neptunium_ingot',
      'aquaculture:neptunium_nugget'
    ],

    EXTRA_BLACKLIST: [
      'aquaculture:neptunium_axe',
      'aquaculture:neptunium_pickaxe',
      'aquaculture:neptunium_shovel',
      'aquaculture:neptunium_hoe',
      'aquaculture:neptunium_sword',
      'aquaculture:neptunium_helmet',
      'aquaculture:neptunium_chestplate',
      'aquaculture:neptunium_leggings',
      'aquaculture:neptunium_boots',
      'aquaculture:neptunium_bow',
      'aquaculture:neptunium_fishing_rod',
      'aquaculture:neptunium_fillet_knife'
    ]
  },

  // ─────────────────────────────────────────────────────────
  // WATER CREATURES DROP SYSTEM
  // ─────────────────────────────────────────────────────────

  WATER_CREATURES: {
    ENABLED: true,

    DROPS: {
      BOSS: {
        NEPTUNES_BOUNTY_CHANCE: 0.07,
        NEPTUNIUM_GEAR_CHANCE: 0.15,
        NEPTUNIUM_INGOT_MIN: 1,
        NEPTUNIUM_INGOT_MAX: 3
      },
      LARGE: {
        NEPTUNES_BOUNTY_CHANCE: 0.05,
        NEPTUNIUM_GEAR_CHANCE: 0.10,
        NEPTUNIUM_INGOT_CHANCE: 0.20,
        NEPTUNIUM_INGOT_MIN: 1,
        NEPTUNIUM_INGOT_MAX: 2
      },
      MEDIUM: {
        NEPTUNIUM_INGOT_CHANCE: 0.05,
        NEPTUNIUM_NUGGET_CHANCE: 0.10,
        NEPTUNIUM_NUGGET_MIN: 1,
        NEPTUNIUM_NUGGET_MAX: 3
      },
      SMALL: {
        NEPTUNIUM_NUGGET_CHANCE: 0.03,
        NEPTUNIUM_NUGGET_MIN: 1,
        NEPTUNIUM_NUGGET_MAX: 2
      }
    },

    GEAR_POOL: [
      'aquaculture:neptunium_axe',
      'aquaculture:neptunium_pickaxe',
      'aquaculture:neptunium_shovel',
      'aquaculture:neptunium_hoe',
      'aquaculture:neptunium_sword',
      'aquaculture:neptunium_helmet',
      'aquaculture:neptunium_chestplate',
      'aquaculture:neptunium_leggings',
      'aquaculture:neptunium_boots',
      'aquaculture:neptunium_bow',
      'aquaculture:neptunium_fishing_rod',
      'aquaculture:neptunium_fillet_knife'
    ]
  },

  // ─────────────────────────────────────────────────────────
  // MOB CURRENCY DROP RATES
  // ─────────────────────────────────────────────────────────

  MOB_DROPS: {
    TIER_1: {
      N1_CHANCE: 0.35,
      N2_CHANCE: 0.20,
      N5_CHANCE: 0.10
    },
    TIER_2: {
      N5_CHANCE: 0.45,
      N10_CHANCE: 0.25,
      N20_CHANCE: 0.15
    },
    TIER_3: {
      N20_CHANCE: 0.50,
      N50_CHANCE: 0.30,
      N100_CHANCE: 0.15
    },
    TIER_4: {
      N50_CHANCE: 0.70,
      N100_CHANCE: 0.40,
      N200_CHANCE: 0.20
    }
  },

  // ─────────────────────────────────────────────────────────
  // BLACKLISTED ITEMS (Never in chest loot)
  // ─────────────────────────────────────────────────────────

  BLACKLIST: {
    MODS: [
      'allthemodium',
      'allthecompressed'
    ],

    ITEMS: [
      'minecraft:enchanted_golden_apple',
      'minecraft:netherite_ingot',
      'minecraft:netherite_scrap',
      'minecraft:elytra',
      'minecraft:shulker_box'
    ],

    PATTERNS: [
      /.*:.*_pickaxe/,
      /.*:.*_axe/,
      /.*:.*_shovel/,
      /.*:.*_hoe/,
      /.*:.*_sword/,
      /.*:.*_helmet/,
      /.*:.*_chestplate/,
      /.*:.*_leggings/,
      /.*:.*_boots/
    ]
  },

  // ─────────────────────────────────────────────────────────
  // LOGGING
  // ─────────────────────────────────────────────────────────

  DEBUG: {
    ENABLED: true,
    VERBOSE: false
  }

}

// ═══════════════════════════════════════════════════════════
// EXPORT CONFIGURATION
// ═══════════════════════════════════════════════════════════

ServerEvents.loaded(event => {
    global.AOF_LOOT = AOF_LOOT_CONFIG

    console.info('═══════════════════════════════════════════════════════')
    console.info('[AOF] Loot System Configuration Loaded')
    console.info(`[AOF] Version: ${AOF_LOOT_CONFIG.VERSION}`)
    console.info(`[AOF] Author: ${AOF_LOOT_CONFIG.AUTHOR}`)
    console.info('[AOF] Active Features:')
    Object.entries(AOF_LOOT_CONFIG.FEATURES).forEach(([key, value]) => {
        console.info(`[AOF]   ${key}: ${value ? '✓' : '✗'}`)
    })
    console.info('[AOF] MOB CURRENCY RATES: BUFFED EDITION – 65-95% DROP CHANCE!')
    console.info('═══════════════════════════════════════════════════════')
})
