/** * Copyright (c) Lambda Innovation, 2013-2016 * This file is part of the AcademyCraft mod. * https://github.com/LambdaInnovation/AcademyCraft * Licensed under GPLv3, see project root for more information. */ package cn.academy.ability.develop.condition; import cn.academy.ability.api.Skill; import cn.academy.ability.api.data.AbilityData; import cn.academy.ability.develop.IDeveloper; import net.minecraft.util.ResourceLocation; /** * @author WeAthFolD */ public class DevConditionDep implements IDevCondition { public final Skill dependency; public final float requiredExp; public DevConditionDep(Skill _dep) { this(_dep, 0.0f); } public DevConditionDep(Skill _dep, float _requiredExp) { dependency = _dep; requiredExp = _requiredExp; } @Override public boolean accepts(AbilityData data, IDeveloper developer, Skill skill) { return data.isSkillLearned(dependency) && data.getSkillExp(dependency) >= requiredExp; } @Override public ResourceLocation getIcon() { return dependency.getHintIcon(); } @Override public String getHintText() { return dependency.getDisplayName() + String.format(": %.0f%%", requiredExp * 100); } }