function init(hero) {
    hero.setName("White Queen");
    hero.setTier(6);

    hero.setHelmet("item.superhero_armor.piece.helmet");
    hero.setChestplate("item.superhero_armor.piece.chestplate");
    hero.setLeggings("item.superhero_armor.piece.leggings");
    hero.setBoots("item.superhero_armor.piece.boots");   
    
	hero.addPowers("fiskheroes:steel_transformation","pack:telepathy", "pack:umbrakinesis");
     hero.addAttribute("WEAPON_DAMAGE", 2.5, 0);
   hero.addAttribute("PUNCH_DAMAGE", 7, 0); 
    hero.addAttribute("FALL_RESISTANCE", 10.0, 0); 
    hero.addAttribute("JUMP_HEIGHT", 0.5, 1);  
    hero.addAttribute("SPRINT_SPEED", 0.35, 1);	
    hero.addAttribute("STEP_HEIGHT", 0.5, 1);	 
	       
    hero.addKeyBind("SLOW_MOTION", "Telepathic Freeze", 3);
    hero.addKeyBind("SPELL_MENU", "Telepathy Menu", 2);
    hero.addKeyBind("CHARGED_BEAM", "Telepathic Bolt", 4);
    hero.addKeyBind("SHADOWDOME", "Telepathic Blindzone", 5);
  hero.addKeyBind("STEEL_TRANSFORM", "Diamond Transform", 1);
    
    hero.addAttributeProfile("STEEL", steelProfile);
    hero.setAttributeProfile(getAttributeProfile);
    hero.setModifierEnabled(isModifierEnabled);
    hero.setTierOverride(getTierOverride);
    hero.setKeyBindEnabled(isKeyBindEnabled);
}


function getTierOverride(entity) {
    return entity.getData("fiskheroes:dyn/steeled") ? 8 : 6;
}

function steelProfile(profile) {
	     profile.addAttribute("WEAPON_DAMAGE", 10.5, 0);
    profile.addAttribute("PUNCH_DAMAGE", 16.0, 0);
    profile.addAttribute("JUMP_HEIGHT", 0.75, 0);
    profile.addAttribute("FALL_RESISTANCE", 100.0, 0);
    profile.addAttribute("SPRINT_SPEED", 0.10, 1);
}

function getAttributeProfile(entity) {
    return entity.getData("fiskheroes:dyn/steeled") ? "STEEL" : null;
}

function isModifierEnabled(entity, modifier) {
    return modifier.name() == "fiskheroes:transformation" || modifier.name() == "fiskheroes:cooldown" || entity.getData("fiskheroes:dyn/steeled");
}
function isModifierEnabled(entity, modifier) {
    switch (modifier.name()) {
    case "fiskheroes:steel_transformation":
        return entity.getHeldItem().isEmpty() && !entity.getData("fiskheroes:shadowform") && !entity.getData("fiskheroes:lightsout");
    default:
        return true;
    }
}


function isKeyBindEnabled(entity, keyBind) {
    switch (keyBind) {
    case "SLOW_MOTION":
        return !entity.getData("fiskheroes:dyn/steeled");
    case "SPELL_MENU":
                      return !entity.getData("fiskheroes:dyn/steeled");
    case "SHADOWDOME":
                       return !entity.getData("fiskheroes:dyn/steeled");
		 case "CHARGED_BEAM":
                    return !entity.getData("fiskheroes:dyn/steeled");  
    default:
        return true;
    }
}