import { NewItemDamage } from "./dataClass.js"
import { fromPercent, fromSecond } from "./utils/helpers.js";
import {
  netheriteSwordSpecialOnuse, flameSwordSpecialOnuse, dragonSwordSpecialOnuse,
  divineSwordSpecialOnuse, demonicSwordSpecialOnuse, sculkSwordSpecialOnuse,
  cryoSwordSpecialOnuse, emeraldSwordSpecialOnuse, goldSwordSpecialOnuse,
  amethystSwordSpecialOnuse, lapisSwordSpecialOnuse, uraniumSwordSpecialOnuse,
  rubySwordSpecialOnuse, platinumSwordSpecialOnuse, diamondSwordSpecialOnuse,
  sapphireSwordSpecialOnuse, woodSwordSpecialOnuse, stoneSwordSpecialOnuse,
  ironSwordSpecialOnuse, bedrockSwordSpecialOnuse, obsidianSwordSpecialOnuse,
  woodBowSpecialOnuse, netheriteBowSpecialOnuse
} from "./weaponEffectHandler"

const ONE_SECOND_AS_TICK = 20;

export const THROWING_STAR_DAMAGE = {
  "4ks_wp:platinum_throwing_star": 4 + 1,
  "4ks_wp:stone_throwing_star": 2 + 1,
  "4ks_wp:obsidian_throwing_star": 4 + 1,
  "4ks_wp:divine_throwing_star": 7 + 1,
  "4ks_wp:cryo_throwing_star": 5 + 1,
  "4ks_wp:copper_throwing_star": 2 + 1,
  "4ks_wp:netherite_throwing_star": 5 + 1,
  "4ks_wp:diamond_throwing_star": 4 + 1,
  "4ks_wp:ruby_throwing_star": 4 + 1,
  "4ks_wp:iron_throwing_star": 3 + 1,
  "4ks_wp:sapphire_throwing_star": 4 + 1,
  "4ks_wp:flame_throwing_star": 5 + 1,
  "4ks_wp:bedrock_throwing_star": 6 + 1,
  "4ks_wp:emerald_throwing_star": 4 + 1,
  "4ks_wp:sculk_throwing_star": 6 + 1,
  "4ks_wp:amethyst_throwing_star": 2 + 1,
  "4ks_wp:lapis_throwing_star": 2 + 1,
  "4ks_wp:dragon_throwing_star": 7 + 1,
  "4ks_wp:wood_throwing_star": 1 + 1,
  "4ks_wp:gold_throwing_star": 1 + 1,
  "4ks_wp:steel_throwing_star": 3 + 1,
  "4ks_wp:demon_throwing_star": 10 + 1,
}

export const SPECIAL_SWORD_FUNCTION = {
  "4ks_wp:ruby_sword_special": rubySwordSpecialOnuse,
  "4ks_wp:sapphire_sword_special": sapphireSwordSpecialOnuse,
  "4ks_wp:diamond_sword_special": diamondSwordSpecialOnuse,
  "4ks_wp:platinum_sword_special": platinumSwordSpecialOnuse,
  "4ks_wp:netherite_sword_special": netheriteSwordSpecialOnuse,
  "4ks_wp:cryo_sword_special": cryoSwordSpecialOnuse,
  "4ks_wp:flame_sword_special": flameSwordSpecialOnuse,
  "4ks_wp:dragon_sword_special": dragonSwordSpecialOnuse,
  "4ks_wp:emerald_sword_special": emeraldSwordSpecialOnuse,
  "4ks_wp:lapis_sword_special": lapisSwordSpecialOnuse,
  "4ks_wp:divine_sword_special": divineSwordSpecialOnuse,
  "4ks_wp:demonic_sword_special": demonicSwordSpecialOnuse,
  "4ks_wp:amethyst_sword_special": amethystSwordSpecialOnuse,
  "4ks_wp:uranium_ball": uraniumSwordSpecialOnuse,
  "4ks_wp:wood_sword_special": woodSwordSpecialOnuse,
  "4ks_wp:stone_sword_special": stoneSwordSpecialOnuse,
  "4ks_wp:iron_sword_special": ironSwordSpecialOnuse,
  "4ks_wp:gold_sword_special": goldSwordSpecialOnuse,
  "4ks_wp:bedrock_sword_special": bedrockSwordSpecialOnuse,
  "4ks_wp:obsidian_sword_special": obsidianSwordSpecialOnuse,
  "4ks_wp:sculk_sword_special": sculkSwordSpecialOnuse,
  "4ks_wp:wood_bow_special": woodBowSpecialOnuse,
  "4ks_wp:netherite_bow_special": netheriteBowSpecialOnuse
}

export const SPECIAL_BLASTER_SWORD = [
  "4ks_wp:ruby_sword_special",
  "4ks_wp:sapphire_sword_special",
  "4ks_wp:diamond_sword_special",
  "4ks_wp:platinum_sword_special",
  "4ks_wp:amethyst_sword_special",
  "4ks_wp:obsidian_sword_special",
  "4ks_wp:wood_bow_special",
  "4ks_wp:netherite_bow_special"
]

export const DEFENSE_POINT = {
  turtle_helmet: 2,
  leather_helmet: 1,
  leather_chestplate: 3,
  leather_leggings: 2,
  leather_boots: 1,

  golden_helmet: 2,
  golden_chestplate: 5,
  golden_leggings: 3,
  golden_boots: 1,

  chainmail_helmet: 2,
  chainmail_chestplate: 5,
  chainmail_leggings: 4,
  chainmail_boots: 1,

  iron_helmet: 2,
  iron_chestplate: 6,
  iron_leggings: 5,
  iron_boots: 2,

  diamond_helmet: 3,
  diamond_chestplate: 8,
  diamond_leggings: 6,
  diamond_boots: 3,

  netherite_helmet: 3,
  netherite_chestplate: 8,
  netherite_leggings: 6,
  netherite_boots: 3,
  amethyst_boots: 1,
  amethyst_chestplate: 5,
  amethyst_helmet: 2,
  amethyst_leggings: 4,
  bedrock_boots: 4,
  bedrock_chestplate: 9,
  bedrock_helmet: 3,
  bedrock_leggings: 7,
  copper_boots: 2,
  copper_chestplate: 6,
  copper_helmet: 2,
  copper_leggings: 6,
  cryo_boots: 2,
  cryo_chestplate: 6,
  cryo_helmet: 3,
  cryo_leggings: 6,
  demonic_boots: 5,
  demonic_chestplate: 10,
  demonic_helmet: 5,
  demonic_leggings: 10,
  divine_boots: 4,
  divine_chestplate: 9,
  divine_helmet: 4,
  divine_leggings: 8,
  dragon_boots: 3,
  dragon_chestplate: 9,
  dragon_helmet: 3,
  dragon_leggings: 7,
  emerald_boots: 2,
  emerald_chestplate: 7,
  emerald_helmet: 3,
  emerald_leggings: 6,
  flame_boots: 2,
  flame_chestplate: 6,
  flame_helmet: 3,
  flame_leggings: 6,
  lapis_boots: 2,
  lapis_chestplate: 7,
  lapis_helmet: 3,
  lapis_leggings: 6,
  platinum_boots: 3,
  platinum_chestplate: 8,
  platinum_helmet: 3,
  platinum_leggings: 6,
  ruby_boots: 3,
  ruby_chestplate: 8,
  ruby_helmet: 3,
  ruby_leggings: 6,
  sapphire_boots: 3,
  sapphire_chestplate: 8,
  sapphire_helmet: 3,
  sapphire_leggings: 6,
  steel_boots: 2,
  steel_chestplate: 6,
  steel_helmet: 3,
  steel_leggings: 6
}



//we using sword for all base damage, so once this change, all others will be updated.
export const BASE_DAMAGE = {
  amethyst_sword: 6,
  bedrock_sword: 10,
  copper_sword: 6,
  cryo_sword: 9,
  demonic_sword: 14,
  diamond_sword: 8,
  divine_sword: 11,
  dragon_sword: 10,
  emerald_sword: 8,
  flame_sword: 9,
  iron_sword: 7,
  gold_sword: 5,
  lapis_sword: 6,
  netherite_sword: 9,
  platinum_sword: 8,
  ruby_sword: 8,
  sapphire_sword: 8,
  steel_sword: 7,
  platinum_sword: 8,
  stone_sword: 6,
  glowstone_sword: 5,
  wood_sword: 5,

  obsidian_sword: 8,
  sculk_sword: 10,

  diamond_bow: 1,
  cryo_diamond_bow: 1,
  flame_diamond_bow: 1,
  netherite_bow: 2,
  flame_netherite_bow: 2,
  cryo_netherite_bow: 2,

  normal_long_bow: (5 + 6) - 8,
  flame_long_bow: (5 + 6) - 8,
  cryo_long_bow: (5 + 6) - 8,
  sculk_long_bow: (6 + 6) - 8,
  diamond_long_bow: (6 + 6) - 8,
  flame_diamond_long_bow: (6 + 6) - 8,
  cryo_diamond_long_bow: (6 + 6) - 8,
  flame_netherite_long_bow: (8 + 6) - 8,
  cryo_netherite_long_bow: (8 + 6) - 8,
  netherite_long_bow: (8 + 6) - 8,

  cryo_crossbow_piercing: 0,
  flame_crossbow_piercing: 0,
  diamond_crossbow_piercing: 1,
  cryo_diamond_crossbow_piercing: 1,
  flame_diamond_crossbow_piercing: 1,
  netherite_crossbow_piercing: 2,
  flame_netherite_crossbow_piercing: 2,
  cryo_netherite_crossbow_piercing: 2,
  tnt_crossbow_piercing: 0,
  dragon_crossbow_piercing: 1,
  divine_crossbow_piercing: 3,
  demon_crossbow_piercing: 4,
  scatter_crossbow_piercing: 1,
  ender_crossbow_piercing: 1,
  wither_crossbow_piercing: 1,

  vanilla_crossbow: 8 - 8,
  cryo_crossbow: 8 - 8,
  flame_crossbow: 8 - 8,
  diamond_crossbow: 9 - 8,
  cryo_diamond_crossbow: 9 - 8,
  flame_diamond_crossbow: 9 - 8,
  netherite_crossbow: 10 - 8,
  flame_netherite_crossbow: 10 - 8,
  cryo_netherite_crossbow: 10 - 8,
  tnt_crossbow: 0,
  dragon_crossbow: 9 - 8,
  divine_crossbow: 11 - 8,
  demon_crossbow: 12 - 8,
  scatter_crossbow: 9 - 8,
  ender_crossbow: 9 - 8,
  wither_crossbow: 9 - 8,

  flame_bow: 0,
  cryo_bow: 0,

  amethyst_bow_special: 6,
  bedrock_bow_special: 6,
  copper_bow_special: 6,
  cryo_bow_special: 6,
  demon_bow_special: 6,
  diamond_bow_special: 6,
  divine_bow_special: 6,
  dragon_bow_special: 6,
  emerald_bow_special: 6,
  flame_bow_special: 6,
  gold_bow_special: 6,
  iron_bow_special: 6,
  lapis_bow_special: 6,
  netherite_bow_special: 6,
  obsidian_bow_special: 6,
  platinum_bow_special: 6,
  ruby_bow_special: 6,
  sapphire_bow_special: 6,
  sculk_bow_special: 6,
  steel_bow_special: 6,
  wood_bow_special: 6,

  //to generalise the damage different between 'the item' with sword
  general_axe_damage: -1,
  general_shovel_damage: -3,
  general_pickaxe_damage: -2,
  general_hoe_damage: -2,
  general_sword_special_damage: 3,
  general_battleaxe_damage: 1,
  general_club_damage: 0,
  general_cutlass_damage: 0,
  general_dagger_damage: -2,
  general_gladius_damage: 1,
  general_greatsword_damage: 2,
  general_halberd_damage: 3,
  general_khopesh_damage: 0,
  general_club_damage: 0,
  general_spear_damage: 1,
  general_mace_damage: 0,
  general_javelin_damage: +1,
}

//formula for other items damage.
export const OTHER_DAMAGE = {
  /* 
    do not touch this one, just a formula to add between base sword damage and the general damage.
    axe_damage = base_damage_sword + general_axe_damage
  */

  amethyst: new NewItemDamage(BASE_DAMAGE.amethyst_sword),
  bedrock: new NewItemDamage(BASE_DAMAGE.bedrock_sword),
  copper: new NewItemDamage(BASE_DAMAGE.copper_sword + 1),
  cryo: new NewItemDamage(BASE_DAMAGE.cryo_sword - 1),
  demonic: new NewItemDamage(BASE_DAMAGE.demonic_sword),
  diamond: new NewItemDamage(BASE_DAMAGE.diamond_sword),
  divine: new NewItemDamage(BASE_DAMAGE.divine_sword),
  dragon: new NewItemDamage(BASE_DAMAGE.dragon_sword),
  emerald: new NewItemDamage(BASE_DAMAGE.emerald_sword),
  flame: new NewItemDamage(BASE_DAMAGE.flame_sword - 1),
  iron: new NewItemDamage(BASE_DAMAGE.iron_sword),
  gold: new NewItemDamage(BASE_DAMAGE.gold_sword),
  lapis: new NewItemDamage(BASE_DAMAGE.lapis_sword + 1),
  netherite: new NewItemDamage(BASE_DAMAGE.netherite_sword),
  platinum: new NewItemDamage(BASE_DAMAGE.platinum_sword),
  ruby: new NewItemDamage(BASE_DAMAGE.ruby_sword),
  sapphire: new NewItemDamage(BASE_DAMAGE.sapphire_sword),
  steel: new NewItemDamage(BASE_DAMAGE.steel_sword),
  stone: new NewItemDamage(BASE_DAMAGE.stone_sword),
  wood: new NewItemDamage(BASE_DAMAGE.wood_sword),
  glowstone: new NewItemDamage(BASE_DAMAGE.glowstone_sword),


  obsidian: new NewItemDamage(BASE_DAMAGE.obsidian_sword),
  sculk: new NewItemDamage(BASE_DAMAGE.sculk_sword),

}

export const blacklistedEnemy = [
  "minecraft:npc", "minecraft:armor_stand", "minecraft:item",
  "minecraft:agent", "minecraft:chest", "minecraft:boat",
  "minecraft:tnt", "minecraft:ender_chest", "minecraft:minecart",
  "minecraft:chest_minecart", "minecraft:tnt_minecart", "minecraft:hopper_minecart",
  "minecraft:command_block_minecart", "minecraft:decorated_pot", "minecraft:dragon_fireball",
  "minecraft:snowball", "minecraft:egg", "minecraft:ender_crystal",
  "minecraft:ender_eye", "minecraft:ender_pearl", "minecraft:xp_orb", "minecraft:xp_bottle",
  "minecraft:fireball", "minecraft:fireworks_rocket", "minecraft:fishing_hook",
  "minecraft:leash_knot", "minecraft:lingering_potion", "minecraft:shulker_bullet",
  "minecraft:skull", "minecraft:small_fireball", "minecraft:splash_potion", "minecraft:thrown_trident",
  "minecraft:wither_skull", "minecraft:wither_skull_dangerous", "4ks_wp:amethyst_seeker",
  "4ks_wp:burn_projectile", "4ks_wp:diamond_projectile", "4ks_wp:ruby_projectile", "4ks_wp:platinum_projectile",
  "4ks_wp:divine_beam", "4ks_wp:dragon_lingering_checker", "4ks_wp:dragon_sword_projectile", "4ks_wp:invisible_hitter",
  "4ks_wp:item_checker", "4ks_wp:lapis_wave", "4ks_wp:player_netherite_explode", "4ks_wp:uranium_projectile",
  "4ks_wp:uranium_tnt",
];

//ability delay or shooting delay
export const ABILITY_DELAY_TICK = {
  diamond_sword_cd: fromSecond(1.25),
  netherite_sword_cd: fromSecond(2.5), //or simply put '50' (2.5 * 20)
  cryo_sword_cd: fromSecond(2.5),
  amethyst_cooldown: fromSecond(3),
  flame_sword_cd: fromSecond(2.5),
  emerald_sword_cd: fromSecond(2.5),
  divine_sword_cd: fromSecond(5),
  demonic_sword_cd: fromSecond(3),
  sapphire_beam_delay: fromSecond(0.5),
  amethyst_sword_cd_per_shoot: fromSecond(1),
  lapis_sword_cd_per_shoot: fromSecond(0.5),
  ruby_sword_cd_per_shoot: fromSecond(0.05),
  platinum_sword_cd_per_shoot: fromSecond(0.25),
  diamond_sword_cd_per_shoot: fromSecond(1.25),
}

//armor wear effect
export const ARMOR_EFFECT_STATS = {
  cryo_armor_water_breathing_hide_particle_effect: true,
  cryo_armor_water_breathing_level: 0,
  cryo_armor_water_breathing_duration: 9999999,

  cryo_armor_slowness_hide_particle_effect: true,
  cryo_armor_slowness_level: 2, // ingame level = level - 1 (0 = level 1)
  cryo_armor_slowness_duration: 5,

  flame_armor_fire_resistance_hide_particle_effect: true,
  flame_armor_fire_resistance_level: 0,
  flame_armor_fire_resistance_duration: 9999999,

  demonic_armor_sword_strength_duration: 9999999,
  demonic_armor_sword_strength_level: 1,
  demonic_armor_sword_strength_hide_effect: true,

  demonic_armor_sword_speed_duration: 9999999,
  demonic_armor_sword_speed_level: 1,
  demonic_armor_sword_speed_hide_effect: true,

  demonic_armor_tools_haste_duration: 9999999,
  demonic_armor_tools_haste_level: 1,
  demonic_armor_tools_haste_hide_effect: true,

  divine_armor_sword_strength_duration: 9999999,
  divine_armor_sword_strength_level: 0,
  divine_armor_sword_strength_hide_effect: true,

  divine_armor_sword_speed_duration: 9999999,
  divine_armor_sword_speed_level: 0,
  divine_armor_sword_speed_hide_effect: true,

  divine_armor_tools_haste_duration: 9999999,
  divine_armor_tools_haste_level: 0,
  divine_armor_tools_haste_hide_effect: true
}

//item hold/ability/hit effect
export const WEAPON_EFFECT_STATS = {
  emerald_sword_hit_levitation_strength: 1.5,
  emerald_sword_ability_radius: 12,
  emerald_sword_ability_levitation_strength: 2.0,

  cryo_sword_damage: 8,
  cryo_sword_radius: 12,
  cryo_sword_freeze_duration: fromSecond(10),
  cryo_sword_hide_freeze_effect: true,

  netherite_sword_leap_and_explosion_count: 5,
  netherite_sword_leap_strength: { horizontal: 0.75, vertical: 0.15 },
  netherite_sword_delay_per_leap_and_explosion: 1, //tick, smoothest.

  flame_sword_blast_radius: 12,
  flame_sword_blast_damage: 4,
  flame_sword_knockback_strength: { horizontal: 0.5, vertical: 0.18 },

  dragon_sword_projectile_speed: 2, //travel speed 
  dragon_sword_projectile_alive_time: fromSecond(3),
  dragon_sword_lingering_alive_time: 10,
  dragon_sword_lingering_radius: 6,
  dragon_sword_lingering_damage_per_sec: 5,

  lapis_sword_wave_speed: 1, //travel speed
  lapis_sword_projectile_alive_time: fromSecond(5.0),
  lapis_sword_wave_damage: 5,
  lapis_sword_wave_radius: 3,
  lapis_sword_wave_knockback_strength: { horizontal: 0.3, vertical: 0.35 },

  //how far player can point crosshair for it success to spawn the beam
  divine_sword_beam_pointing_range: 64, //if theres no entity pointed, it will be point to block max 2x far away, if no block hit then it wont success.
  divine_sword_beam_damage_per_tick: 8,

  demonic_sword_levitation_level: 1,
  demonic_sword_levitation_length: 10, //already in second
  demonic_sword_explosion_damage: 8,
  demonic_sword_explosion_interval: fromSecond(1), //explode per 1s
  demonic_sword_invisible_entity_range: 64,
  demonic_sword_radius: 7,
  demonic_sword_invisible_beam_entity_count: 999, //use to set limit to affected mobs, 999 for unlimited.

  ruby_sword_projectile_damage: 6,
  ruby_sword_projectile_speed: 2,
  ruby_sword_projectile_alive_time: fromSecond(8),
  ruby_sword_projectile_remove_on_hit: true,

  platinum_sword_projectile_damage: 6,
  platinum_sword_explosion_radius: 6,
  platinum_sword_projectile_speed: 2,
  platinum_sword_projectile_alive_time: fromSecond(8),
  platinum_sword_knockback_strength: { horizontal: 0.3, vertical: 0.3 },
  platinum_sword_projectile_remove_on_hit: true,
  platinum_sword_lingering_time: 15,

  diamond_sword_projectile_count: 5,
  diamond_sword_projectile_damage: 6,
  diamond_sword_explosion_radius: 6,
  diamond_sword_projectile_speed: 2,
  diamond_sword_projectile_alive_time: fromSecond(8),
  diamond_sword_projectile_remove_on_hit: true,
  diamond_sword_projectile_spread: {
    horizontal: { min: -3.75, max: 3.75 },
    vertical: { min: -0.3, max: 1.85 },
  },

  electric_ball_speed: 0.2,
  electric_ball_projectile_alive_time: 10 * ONE_SECOND_AS_TICK,
  uranium_ball_speed: 2,
  uranium_ball_projectile_alive_time: 5 * ONE_SECOND_AS_TICK,
  uranium_ball_projectile_damage: 5,
  uranium_ball_knockback_strength: { horizontal: 0.3, vertical: 0.3 },
  uranium_ball_explosion_radius: 8,
  uranium_ball_projectile_remove_on_hit: true,

  club_knockback_strength: { horizontal: 2.1, vertical: 0.75 },

  halberd_spear_range: 5,
  sapphire_beam_range: 24,
  sapphire_beam_damage: 1,


  flame_bows_fire_duration: 5,
  cryo_bows_slowness_duration: 5,
  cryo_bows_slowness_level: 2,

  ender_crossbow_teleport_height: 7,
  wither_bow_wither_duration: 10,
  wither_bow_wither_level: 1,

  gold_sword_ray_distance: 16,

  nether_portal_fire_duration: 5,
  nether_portal_xz_distance: 20,

  cryo_bow_slowness_radius: 4,
  cryo_bow_slowness_time: 3,

  amethyst_bow_chain_attack_damage: 7

}

//other data
export const OTHER_DATA = {
  tnt_explosion_radius: 4, //used to check tnt explosive radius to replace obsidian->divine->demonic around
  diamond_block_to_divine_chance: 0.1, //10%
  divine_to_demonic_chance: fromPercent(10), //up to you which easier to use, fromPercent(10) or just '0.1'

  //drop chance
  ruby_drop: fromPercent(10),
  sapphire_drop: fromPercent(18),
  cryo_ice_drop: fromPercent(20),
  cryo_blue_ice_drop: fromPercent(100),
  flame_drop: fromPercent(5),
  dragon_drop: fromPercent(15),
}

/*-- NO TOUCH --*/
export const DYNAMIC_PROPERTY = {
  diamond_sword_cd: "4ks_wp:diamond_sword_cd",
  amethyst_cooldown: "4ks_wp:amethyst_cooldown",
  netherite_sword_cd: "4ks_wp:netherite_special_cd",
  cryo_sword_cd: "4ks_wp:cryo_special_cd",
  emerald_sword_cd: "4ks_wp:emerald_special_cd",
  flame_sword_cd: "4ks_wp:flame_special_cd",
  amethyst_sword_cd_per_shoot: "4ks_wp:amethyst_sword_cd_per_shoot",
  divine_sword_cd: "4ks_wp:divine_special_cd",
  demonic_sword_cd: "4ks_wp:demonic_special_cd",
  lapis_sword_cd_per_shoot: "4ks_wp:lapis_special_cd",
  ruby_sword_cd_per_shoot: "4ks_wp:ruby_sword_shoot_cd",
  platinum_sword_cd_per_shoot: "4ks_wp:platinum_sword_shoot_cd",
  diamond_sword_cd_per_shoot: "4ks_wp:diamond_sword_shoot_cd",
  sapphire_beam_sound_delay: "4ks_wp:sapphire_beam_sound_delay",
  sapphire_beam_delay: "4ks_wp:sapphire_beam_delay",
  sculk_delay: "4ks_wp:sculk_delay",
  sculk_message_time: "4ks_wp:sculk_message_time",
  sculk_xray_scanning: "4ks_wp:sculk_xray_scanning",
  arrow_mainhand: "4ks_wp:arrow_mainhand",
  obsidian_sword_spawned: "4ks_wp:obsidian_sword_spawned",
}

export const TAGS = {
  BEDROCK_ARMOR: "4kswpbedrockarmor",
  DRAGON_ARMOR: "4kswpdragonarmor",
  SCULK_ARMOR: "4kswpsculkarmor",
  USE_ITEM: "4ksmouseitem",
  HAS_CUSTOM_ARMOR: "4ksmoarmor",
  CRYO_ARMOR: "4kscryoarm",
  FLAME_ARMOR: "4ksflamearm",
  DIVINE_ARMOR: "4ksdivinearm",
  DEMONIC_ARMOR: "4ksdemonicarm",
  CUSTOM_MAIN_HAND_SWORD: "4ksmhsword",
  CUSTOM_MAIN_HAND_TOOLS: "4ksmhtools"
}