function init(hero) {
    hero.setName("Star Lord/Peter Quill");
    hero.setTier(6);
    
    hero.setHelmet("Mask");
    hero.setChestplate("Chestplate");
    hero.setLeggings("Pants");
    hero.setBoots("Boots");
    
    hero.addPowers("tgheroes:element_gun", "tgheroes:jet_boot");
    hero.addAttribute("PUNCH_DAMAGE", 4.0, 0);
    hero.addAttribute("WEAPON_DAMAGE", 2.0, 0);
    hero.addAttribute("SPRINT_SPEED", 0.25, 1);
    hero.addAttribute("JUMP_HEIGHT", 2.0, 0);
    hero.addAttribute("FALL_RESISTANCE", 7.0, 0);

	hero.addKeyBind("BLASTER", "Element Gun", 1);	
    hero.addKeyBind("AIM", "key.aim", 2);
	
	hero.setKeyBindEnabled(isKeyBindEnabled);
    hero.supplyFunction("canAim", canAim);
	hero.setHasProperty(hasProperty);
	hero.setTickHandler((entity, manager) => {
        if (!entity.getHeldItem().isEmpty()&& entity.getData("tgheroes:dyn/element_gun") ){
		 manager.setData(entity, "tgheroes:dyn/element_gun", false);}		
		 manager.incrementData(entity, "fiskheroes:dyn/booster_timer", 2, entity.getData("fiskheroes:flying"));
    });
}



function canAim(entity) {
    return entity.getHeldItem().isEmpty();
}


function isKeyBindEnabled(entity, keyBind) {
    switch (keyBind) {
        case "AIM":
            return entity.getData("tgheroes:dyn/element_gun")
	default:
        return true;
    }
}

function hasProperty(entity, property) {
    return property == "MASK_TOGGLE" || property == "BREATHE_SPACE" && !entity.getData("fiskheroes:mask_open");
}