function init(hero) {

    hero.setName("Black Adam");

    hero.setVersion("\u00A79\u00A7lDCEU\u00A7r");

    hero.setTier(9);

    

    hero.setChestplate("Chestplate");

    hero.setLeggings("Pants");

    hero.setBoots("Boots");

    

    hero.addPowers("ahhp:kahndaq_king");

    hero.addAttribute("PUNCH_DAMAGE", 10.5, 0);

    hero.addAttribute("WEAPON_DAMAGE", 1.5, 0);

    hero.addAttribute("KNOCKBACK", 1.5, 0);

    hero.addAttribute("FALL_RESISTANCE", 1.0, 1);

    hero.addAttribute("SPRINT_SPEED", 0.7, 1);

    hero.addAttribute("BASE_SPEED_LEVELS", 2.0, 0);

    

    hero.addKeyBind("SUPER_SPEED", "Speed Up", 1);

    hero.addKeyBind("SLOW_MOTION", "Slow Down", 2);

    hero.addKeyBind("GROUND_SMASH", "Ground Smash", 3);



    hero.setDefaultScale(1.1);

    hero.setModifierEnabled(isModifierEnabled);

    hero.setKeyBindEnabled(isKeyBindEnabled);

    hero.setHasProperty(hasProperty);



    hero.setDamageProfile(getDamageProfile);

    hero.addDamageProfile("PUNCH", {

        "types": {

            "BLUNT": 1.0,

            "MAGIC": 0.7

        }

    });

}



function getDamageProfile(entity) {

    return !entity.getHeldItem().isWeapon() ? "PUNCH" : null;

}



function hasProperty(entity, property) {

    return property == "BREATHE_SPACE";

}



function isModifierEnabled(entity, modifier) {

    return modifier.name() == "fiskheroes:eternium_weakness" || !entity.hasStatusEffect("fiskheroes:eternium");

}



function isKeyBindEnabled(entity, keyBind) {

    switch (keyBind) {

        case "GROUND_SMASH":

            return (entity.getData("fiskheroes:flight_timer") == 0);

        default:

            return true;

    }

}