当前位置: 首页>>代码示例>>Java>>正文


Java SkillType.isChildSkill方法代码示例

本文整理汇总了Java中com.gmail.nossr50.datatypes.skills.SkillType.isChildSkill方法的典型用法代码示例。如果您正苦于以下问题:Java SkillType.isChildSkill方法的具体用法?Java SkillType.isChildSkill怎么用?Java SkillType.isChildSkill使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.gmail.nossr50.datatypes.skills.SkillType的用法示例。


在下文中一共展示了SkillType.isChildSkill方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: addLevelOffline

import com.gmail.nossr50.datatypes.skills.SkillType; //导入方法依赖的package包/类
/**
 * Add levels to a skill for an offline player.
 * </br>
 * This function is designed for API usage.
 *
 * @param playerName The player to add levels to
 * @param skillType Type of skill to add levels to
 * @param levels Number of levels to add
 *
 * @throws InvalidSkillException if the given skill is not valid
 * @throws InvalidPlayerException if the given player does not exist in the database
 */
@Deprecated
public static void addLevelOffline(String playerName, String skillType, int levels) {
    PlayerProfile profile = getOfflineProfile(playerName);
    SkillType skill = getSkillType(skillType);

    if (skill.isChildSkill()) {
        Set<SkillType> parentSkills = FamilyTree.getParents(skill);

        for (SkillType parentSkill : parentSkills) {
            profile.addLevels(parentSkill, (levels / parentSkills.size()));
        }

        profile.scheduleAsyncSave();
        return;
    }

    profile.addLevels(skill, levels);
    profile.scheduleAsyncSave();
}
 
开发者ID:Pershonkey,项目名称:McMMOPlus,代码行数:32,代码来源:ExperienceAPI.java

示例2: applyXpGain

import com.gmail.nossr50.datatypes.skills.SkillType; //导入方法依赖的package包/类
/**
 * Applies an experience gain
 *
 * @param skillType Skill being used
 * @param xp Experience amount to add
 */
public void applyXpGain(SkillType skillType, float xp, XPGainReason xpGainReason) {
    if (!skillType.getPermissions(player)) {
        return;
    }

    if (skillType.isChildSkill()) {
        Set<SkillType> parentSkills = FamilyTree.getParents(skillType);

        for (SkillType parentSkill : parentSkills) {
            applyXpGain(parentSkill, xp / parentSkills.size(), xpGainReason);
        }

        return;
    }

    if (!EventUtils.handleXpGainEvent(player, skillType, xp, xpGainReason)) {
        return;
    }

    isUsingUnarmed = (skillType == SkillType.UNARMED);
    checkXp(skillType, xpGainReason);
}
 
开发者ID:Pershonkey,项目名称:McMMOPlus,代码行数:29,代码来源:McMMOPlayer.java

示例3: addXp

import com.gmail.nossr50.datatypes.skills.SkillType; //导入方法依赖的package包/类
/**
 * Add Experience to a skill.
 *
 * @param skill Type of skill to add experience to
 * @param xp Number of experience to add
 */
public void addXp(SkillType skill, float xp) {
    changed = true;

    if (skill.isChildSkill()) {
        Set<SkillType> parentSkills = FamilyTree.getParents(skill);
        float dividedXP = (xp / parentSkills.size());

        for (SkillType parentSkill : parentSkills) {
            skillsXp.put(parentSkill, skillsXp.get(parentSkill) + dividedXP);
        }
    }
    else {
        skillsXp.put(skill, skillsXp.get(skill) + xp);
    }
}
 
开发者ID:Pershonkey,项目名称:McMMOPlus,代码行数:22,代码来源:PlayerProfile.java

示例4: getNonChildSkillType

import com.gmail.nossr50.datatypes.skills.SkillType; //导入方法依赖的package包/类
private static SkillType getNonChildSkillType(String skillType) throws InvalidSkillException, UnsupportedOperationException {
    SkillType skill = getSkillType(skillType);

    if (skill.isChildSkill()) {
        throw new UnsupportedOperationException("Child skills do not have XP");
    }

    return skill;
}
 
开发者ID:Pershonkey,项目名称:McMMOPlus,代码行数:10,代码来源:ExperienceAPI.java

示例5: beginXpGain

import com.gmail.nossr50.datatypes.skills.SkillType; //导入方法依赖的package包/类
/**
 * Begins an experience gain. The amount will be affected by skill modifiers, global rate, perks, and may be shared with the party
 *
 * @param skill Skill being used
 * @param xp Experience amount to process
 */
public void beginXpGain(SkillType skill, float xp, XPGainReason xpGainReason) {
    Validate.isTrue(xp >= 0.0, "XP gained should be greater than or equal to zero.");

    if (xp <= 0.0) {
        return;
    }

    if (skill.isChildSkill()) {
        Set<SkillType> parentSkills = FamilyTree.getParents(skill);
        float splitXp = xp / parentSkills.size();

        for (SkillType parentSkill : parentSkills) {
            if (parentSkill.getPermissions(player)) {
                beginXpGain(parentSkill, splitXp, xpGainReason);
            }
        }

        return;
    }

    // Return if the experience has been shared
    if (party != null && ShareHandler.handleXpShare(xp, this, skill, ShareHandler.getSharedXpGainReason(xpGainReason))) {
        return;
    }

    beginUnsharedXpGain(skill, xp, xpGainReason);
}
 
开发者ID:Pershonkey,项目名称:McMMOPlus,代码行数:34,代码来源:McMMOPlayer.java

示例6: setSkillXpLevel

import com.gmail.nossr50.datatypes.skills.SkillType; //导入方法依赖的package包/类
public void setSkillXpLevel(SkillType skill, float xpLevel) {
    if (skill.isChildSkill()) {
        return;
    }

    changed = true;

    skillsXp.put(skill, xpLevel);
}
 
开发者ID:Pershonkey,项目名称:McMMOPlus,代码行数:10,代码来源:PlayerProfile.java

示例7: removeXp

import com.gmail.nossr50.datatypes.skills.SkillType; //导入方法依赖的package包/类
/**
 * Remove Xp from a skill.
 *
 * @param skill Type of skill to modify
 * @param xp Amount of xp to remove
 */
public void removeXp(SkillType skill, int xp) {
    if (skill.isChildSkill()) {
        return;
    }

    changed = true;

    skillsXp.put(skill, skillsXp.get(skill) - xp);
}
 
开发者ID:Pershonkey,项目名称:McMMOPlus,代码行数:16,代码来源:PlayerProfile.java

示例8: modifySkill

import com.gmail.nossr50.datatypes.skills.SkillType; //导入方法依赖的package包/类
/**
 * Modify a skill level.
 *
 * @param skill Type of skill to modify
 * @param level New level value for the skill
 */
public void modifySkill(SkillType skill, int level) {
    if (skill.isChildSkill()) {
        return;
    }

    changed = true;

    skills.put(skill, level);
    skillsXp.put(skill, 0F);
}
 
开发者ID:Pershonkey,项目名称:McMMOPlus,代码行数:17,代码来源:PlayerProfile.java

示例9: isChildSkill

import com.gmail.nossr50.datatypes.skills.SkillType; //导入方法依赖的package包/类
public static boolean isChildSkill(CommandSender sender, SkillType skill) {
    if (skill == null || !skill.isChildSkill()) {
        return false;
    }

    sender.sendMessage("Child skills are not supported by this command."); // TODO: Localize this
    return true;
}
 
开发者ID:Pershonkey,项目名称:McMMOPlus,代码行数:9,代码来源:CommandUtils.java

示例10: displaySkill

import com.gmail.nossr50.datatypes.skills.SkillType; //导入方法依赖的package包/类
public static String displaySkill(PlayerProfile profile, SkillType skill) {
    if (skill.isChildSkill()) {
        return LocaleLoader.getString("Skills.ChildStats", LocaleLoader.getString(StringUtils.getCapitalized(skill.toString()) + ".Listener") + " ", profile.getSkillLevel(skill));
    }

    return LocaleLoader.getString("Skills.Stats", LocaleLoader.getString(StringUtils.getCapitalized(skill.toString()) + ".Listener") + " ", profile.getSkillLevel(skill), profile.getSkillXpLevel(skill), profile.getXpToLevel(skill));
}
 
开发者ID:Pershonkey,项目名称:McMMOPlus,代码行数:8,代码来源:CommandUtils.java

示例11: loadMessages

import com.gmail.nossr50.datatypes.skills.SkillType; //导入方法依赖的package包/类
private void loadMessages(ConfigurationSection config) {
    messages.addAll(loadingByIdentifier());

    for (SkillType skillType : SkillType.values()) {
        if (!skillType.isChildSkill()) {
            String messageKey = StringUtils.getCapitalized(skillType.toString()) + ".Skillup";
            String localizedMessage = getLocalizedMessage(messageKey);
            addOrRemove(messages, localizedMessage, config.getBoolean("ignore.levelup"));
        }

        AbilityType ability = skillType.getAbility();
        if (ability != null) {
            String abilityOn = ChatColor.stripColor(ability.getAbilityOn());
            String abilityOff = ChatColor.stripColor(ability.getAbilityOff());
            addOrRemove(messages, abilityOn, config.getBoolean("ignore.ability"));
            addOrRemove(messages, abilityOff, config.getBoolean("ignore.ability"));
        }

        ToolType tool = skillType.getTool();
        if (tool != null) {
            addOrRemove(messages, ChatColor.stripColor(tool.getRaiseTool()), config.getBoolean("ignore.tool"));
            addOrRemove(messages, ChatColor.stripColor(tool.getLowerTool()), config.getBoolean("ignore.tool"));
        }
    }

    //messages that cannot be retrieved dynamically because the message key isn't in (or equal as)
    //the enum getSkillAbilities() - SecondaryAbilities
    messages.add(getLocalizedMessage("Axes.Combat.SS.Struck"));

    messages.add(getLocalizedMessage("Axes.Combat.CriticalHit"));
    messages.add(getLocalizedMessage("Axes.Combat.CritStruck"));

    messages.add(getLocalizedMessage("Swords.Combat.Counter.Hit"));
    messages.add(getLocalizedMessage("Swords.Combat.Bleeding"));
    messages.add(getLocalizedMessage("Swords.Combat.Bleeding.Started"));
    messages.add(getLocalizedMessage("Swords.Combat.Bleeding.Stopped"));

    messages.add(getLocalizedMessage("Party.LevelUp"));

    //hardcore messages
    boolean hardcoreIgnore = config.getBoolean("ignore.hardcore");
    addOrRemove(messages, getLocalizedMessage("Hardcore.DeathStatLoss.PlayerDeath"), hardcoreIgnore);
    addOrRemove(messages, getLocalizedMessage("Hardcore.Vampirism.Killer.Failure"), hardcoreIgnore);
    addOrRemove(messages, getLocalizedMessage("Hardcore.Vampirism.Killer.Success"), hardcoreIgnore);
    addOrRemove(messages, getLocalizedMessage("Hardcore.Vampirism.Victim.Failure"), hardcoreIgnore);
    addOrRemove(messages, getLocalizedMessage("Hardcore.Vampirism.Victim.Success"), hardcoreIgnore);

    //general message
    addOrRemove(messages, getLocalizedMessage("Skills.TooTired"), config.getBoolean("ignore.tooTired"));

    //explicit added messages
    messages.addAll(config.getStringList("others").stream()
            .map(this::getLocalizedMessage).collect(Collectors.toList()));

    //explicit ignored messages
    config.getStringList("ignore.others").stream().map(this::getLocalizedMessage).forEach(messages::remove);
}
 
开发者ID:games647,项目名称:mcMMOAction,代码行数:58,代码来源:Configuration.java

示例12: getSkillLevel

import com.gmail.nossr50.datatypes.skills.SkillType; //导入方法依赖的package包/类
public int getSkillLevel(SkillType skill) {
    return skill.isChildSkill() ? getChildSkillLevel(skill) : skills.get(skill);
}
 
开发者ID:Pershonkey,项目名称:McMMOPlus,代码行数:4,代码来源:PlayerProfile.java

示例13: enforceChildSkill

import com.gmail.nossr50.datatypes.skills.SkillType; //导入方法依赖的package包/类
protected static void enforceChildSkill(SkillType skill) {
    if (!skill.isChildSkill()) {
        throw new IllegalArgumentException(skill.name() + " is not a child skill!");
    }
}
 
开发者ID:Pershonkey,项目名称:McMMOPlus,代码行数:6,代码来源:FamilyTree.java

示例14: enforceNotChildSkill

import com.gmail.nossr50.datatypes.skills.SkillType; //导入方法依赖的package包/类
protected static void enforceNotChildSkill(SkillType skill) {
    if (skill.isChildSkill()) {
        throw new IllegalArgumentException(skill.name() + " is a child skill!");
    }
}
 
开发者ID:Pershonkey,项目名称:McMMOPlus,代码行数:6,代码来源:FamilyTree.java

示例15: isNonChildSkill

import com.gmail.nossr50.datatypes.skills.SkillType; //导入方法依赖的package包/类
/**
 * Returns whether the given skill type string is both valid and not a
 * child skill. (Child skills have no XP of their own, and their level is
 * derived from the parent(s).)
 * </br>
 * This function is designed for API usage.
 *
 * @param skillType the skill to check
 * @return true if this is a valid, non-child mcMMO skill
 */
public static boolean isNonChildSkill(String skillType) {
    SkillType skill = SkillType.getSkill(skillType);

    return skill != null && !skill.isChildSkill();
}
 
开发者ID:Pershonkey,项目名称:McMMOPlus,代码行数:16,代码来源:ExperienceAPI.java


注:本文中的com.gmail.nossr50.datatypes.skills.SkillType.isChildSkill方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。