Java 类org.bukkit.Achievement 实例源码

项目:MundoSK    文件:AchievementMundo.java   
public static void load() {
    Registration.registerEnum(Achievement.class, "achievement", Achievement.values())
            .document("Achievement", "1.4.10", "An achievement that a player can get. "
                    + "Note that achievements were removed in Minecraft 1.12 and thus this syntax will not work if you are running Bukkit/Spigot 1.12 and above.");
    Registration.registerEffect(EffAwardAch.class, "award achieve[ment] %achievement% to %player%")
            .document("Award Achievement", "1.4.10", "Awards the specified achievement to the specified player. "
                    + "Note that achievements were removed in Minecraft 1.12 and thus this syntax will not work if you are running Bukkit/Spigot 1.12 and above.");
    Registration.registerEffect(EffRemoveAch.class, "remove achieve[ment] %achievement% from %player%")
            .document("Remove Achievement", "1.4.10", "Removes the specified achievement from the specified player. "
                    + "Note that achievements were removed in Minecraft 1.12 and thus this syntax will not work if you are running Bukkit/Spigot 1.12 and above.");
    Registration.registerEvent("Achievement Award", EvtAchAward.class, PlayerAchievementAwardedEvent.class, "achieve[ment] [%-achievement%] award", "award of achieve[ment] [%-achievement%]")
            .document("Achievement Award", "1.4.10", "Called when a player is awarded either the specified achievement or any achievement. "
                    + "Note that achievements were removed in Minecraft 1.12 and thus this syntax will not work if you are running Bukkit/Spigot 1.12 and above.")
            .eventValue(Achievement.class, "1.4.10", "The achievement that was awarded.");
    Registration.registerEventValue(PlayerAchievementAwardedEvent.class, Achievement.class, PlayerAchievementAwardedEvent::getAchievement);
    Registration.registerExpression(ExprParentAch.class,Achievement.class, ExpressionType.PROPERTY,"parent of achieve[ment] %achievement%")
            .document("Parent of Achievement", "1.4.10", "An expression for the parent achievement of the specified achievement. "
                    + "Note that achievements were removed in Minecraft 1.12 and thus this syntax will not work if you are running Bukkit/Spigot 1.12 and above.");
    Registration.registerExpression(ExprAllAch.class,Achievement.class,ExpressionType.PROPERTY,"achieve[ment]s of %player%", "%player%'s achieve[ment]s")
            .document("Achievements of Player", "1.4.10", "An expression for a list of the achievements that the specified player has.");
    Registration.registerExpressionCondition(CondHasAch.class,ExpressionType.PROPERTY,"%player% has achieve[ment] %achievement%")
            .document("Player has Achievement", "1.4.10", "Checks whether the specified player has the specified achievement.");
}
项目:StarQuestCode    文件:SQRankup2.java   
@EventHandler
public void onPlayerAchievement(PlayerAchievementAwardedEvent event){
    Achievement a = event.getAchievement();
    for(String s : bonusTags.keySet()){
        BonusTag t = bonusTags.get(s);
        if(t instanceof AchievementTag){
            AchievementTag tag = (AchievementTag) t;
            Achievement a2 = tag.getAchievement();
            if(a2 == a){
                String id = tag.getIdentifier();
                ArrayList<String> certs = database.getCertsOfPlayer(event.getPlayer().getUniqueId());
                if(!certs.contains(id)){
                    certs.add(id);
                }
                database.updateCertsOfPlayer(event.getPlayer().getUniqueId(), certs);
                event.getPlayer().sendMessage("You have unlocked the tag " + tag.getTagFormatted() + ", do /certs tag to set it.");
                return;
            }
        }
    }
}
项目:TatsuCraftMod    文件:Command_cake.java   
@Override
public boolean run(CommandSender sender, Player sender_p, Command cmd, String commandLabel, String[] args, boolean senderIsConsole)
{
    StringBuilder output = new StringBuilder();
    Random randomGenerator = new Random();

    String[] words = TotalFreedomMod.CAKE_LYRICS.split(" ");
    for (String word : words)
    {
        String color_code = Integer.toHexString(1 + randomGenerator.nextInt(14));
        output.append(ChatColor.COLOR_CHAR).append(color_code).append(word).append(" ");
    }

    for (Player player : server.getOnlinePlayers())
    {
        ItemStack heldItem = new ItemStack(Material.CAKE, 1);
        player.getInventory().setItem(player.getInventory().firstEmpty(), heldItem);
        player.awardAchievement(Achievement.MINE_WOOD);
        player.awardAchievement(Achievement.BUILD_WORKBENCH);
        player.awardAchievement(Achievement.BUILD_HOE);
        player.awardAchievement(Achievement.BAKE_CAKE);
    }

    TFM_Util.bcastMsg(output.toString());
    return true;
}
项目:NPlugins    文件:Hover.java   
@Override
public Map<String, Object> serialize() {
    final Object serializedObject;
    switch (this.type) {
        case SHOW_ACHIEVEMENT:
            serializedObject = ((Achievement)this.object).name();
            break;
        case SHOW_ITEM: // ItemStack is ConfigurationSerializable
        case SHOW_TEXT: // String[] is supported automatically
            serializedObject = this.object;
            break;
        default:
            throw new IllegalArgumentException("Should never be here!");
    }
    return ImmutableMap.<String, Object>of(
            "type", this.type.name(),
            "object", serializedObject
    );
}
项目:MundoSK    文件:ExprParentAch.java   
@SuppressWarnings("unchecked")
@Override
public boolean init(Expression<?>[] expr, int matchedPattern, Kleenean arg2, ParseResult arg3) {
    // TODO Auto-generated method stub
    ach = (Expression<Achievement>) expr[0];
    return true;
}
项目:MundoSK    文件:CondHasAch.java   
@SuppressWarnings("unchecked")
@Override
public boolean init(Expression<?>[] expr, int matchedPattern, Kleenean arg2, ParseResult arg3) {
    // TODO Auto-generated method stub
    player = (Expression<Player>) expr[0];
    ach = (Expression<Achievement>) expr[1];
    return true;
}
项目:MundoSK    文件:EffAwardAch.java   
@Override
public boolean init(Expression<?>[] expr, int matchedPattern,
        Kleenean paramKleenean, ParseResult paramParseResult) {
    ach = (Expression<Achievement>) expr[0];
    player = (Expression<Player>) expr[1];
    return true;
}
项目:MundoSK    文件:EffRemoveAch.java   
@SuppressWarnings("unchecked")
@Override
public boolean init(Expression<?>[] expr, int matchedPattern,
        Kleenean paramKleenean, ParseResult paramParseResult) {
    // TODO Auto-generated method stub
    ach = (Expression<Achievement>) expr[0];
    player = (Expression<Player>) expr[1];
    return true;
}
项目:MundoSK    文件:ExprAllAch.java   
@Override
@Nullable
protected Achievement[] get(Event event) {
    List<Achievement> list = new ArrayList<>();
    for (int a = 0; a < Achievement.values().length; a++) {
        if (player.getSingle(event).hasAchievement(Achievement.values()[a])) list.add(Achievement.values()[a]);
    }
    return list.toArray(new Achievement[list.size()]);
}
项目:MundoSK    文件:ExprAllAch.java   
public Iterator<Achievement> iterator(Event event) {
    List<Achievement> list = new ArrayList<>();
    for (int a = 0; a < Achievement.values().length; a++) {
        if (player.getSingle(event).hasAchievement(Achievement.values()[a])) list.add(Achievement.values()[a]);
    }
    return list.iterator();
}
项目:DiscordSRV    文件:PrettyUtil.java   
/**
 * turn "SHITTY_ACHIEVEMENT_NAME" into "Shitty Achievement Name"
 * @param achievement achievement to beautify
 * @return pretty achievement name
 */
@SuppressWarnings("deprecation")
public static String beautify(Achievement achievement) {
    if (achievement == null) return "<✗>";

    return Arrays.stream(achievement.name().toLowerCase().split("_"))
            .map(s -> s.substring(0, 1).toUpperCase() + s.substring(1))
            .collect(Collectors.joining(" "));
}
项目:LeagueOfLegends    文件:PlayerAchievementAwardedList.java   
@EventHandler
public void inventoryOpen(PlayerAchievementAwardedEvent event) {
    event.setCancelled(true);
    if (event.getAchievement() == Achievement.OPEN_INVENTORY) {
        if (!(event.getPlayer().getGameMode().equals(GameMode.CREATIVE))) {
            Inventory inv = Bukkit.createInventory(null, 54, "NIGDY NIE DOSTANIESZ SW. EQ!");
            inv.setContents(event.getPlayer().getInventory().getContents());
            event.getPlayer().openInventory(inv);
        }
    }
}
项目:Pokkit    文件:PokkitUnsafe.java   
@Override
public Achievement getAchievementFromInternalName(String name) {
    try {
        return Achievement.valueOf(name.toUpperCase().replace("MINECRAFT:", ""));
    } catch (IllegalArgumentException e) {
        return null;
    }
}
项目:CraftBukkit    文件:CraftPlayer.java   
@Override
public void awardAchievement(Achievement achievement) {
    Validate.notNull(achievement, "Achievement cannot be null");
    if (achievement.hasParent() && !hasAchievement(achievement.getParent())) {
        awardAchievement(achievement.getParent());
    }
    getHandle().getStatisticManager().setStatistic(getHandle(), CraftStatistic.getNMSAchievement(achievement), 1);
    getHandle().getStatisticManager().updateStatistics(getHandle());
}
项目:CraftBukkit    文件:CraftPlayer.java   
@Override
public void removeAchievement(Achievement achievement) {
    Validate.notNull(achievement, "Achievement cannot be null");
    for (Achievement achieve : Achievement.values()) {
        if (achieve.getParent() == achievement && hasAchievement(achieve)) {
            removeAchievement(achieve);
        }
    }
    getHandle().getStatisticManager().setStatistic(getHandle(), CraftStatistic.getNMSAchievement(achievement), 0);
}
项目:Craftbukkit    文件:CraftPlayer.java   
@Override
public void awardAchievement(Achievement achievement) {
    Validate.notNull(achievement, "Achievement cannot be null");
    if (achievement.hasParent() && !hasAchievement(achievement.getParent())) {
        awardAchievement(achievement.getParent());
    }
    getHandle().getStatisticManager().setStatistic(getHandle(), CraftStatistic.getNMSAchievement(achievement), 1);
    getHandle().getStatisticManager().updateStatistics(getHandle());
}
项目:Craftbukkit    文件:CraftPlayer.java   
@Override
public void removeAchievement(Achievement achievement) {
    Validate.notNull(achievement, "Achievement cannot be null");
    for (Achievement achieve : Achievement.values()) {
        if (achieve.getParent() == achievement && hasAchievement(achieve)) {
            removeAchievement(achieve);
        }
    }
    getHandle().getStatisticManager().setStatistic(getHandle(), CraftStatistic.getNMSAchievement(achievement), 0);
}
项目:PartyLobby    文件:FancyMessage.java   
/**
 * Set the behavior of the current editing component to display information about an achievement when the client hovers over the text.
 * <p>Tooltips do not inherit display characteristics, such as color and styles, from the message component on which they are applied.</p>
 * @param which The achievement to display.
 * @return This builder instance.
 */
public FancyMessage achievementTooltip(final Achievement which) {
    try {
        Object achievement = Reflection.getMethod(Reflection.getOBCClass("CraftStatistic"), "getNMSAchievement", Achievement.class).invoke(null, which);
        return achievementTooltip((String) Reflection.getField(Reflection.getNMSClass("Achievement"), "name").get(achievement));
    } catch (Exception e) {
        e.printStackTrace();
        return this;
    }
}
项目:Tweakkit-Server    文件:CraftPlayer.java   
@Override
public void awardAchievement(Achievement achievement) {
    Validate.notNull(achievement, "Achievement cannot be null");
    if (achievement.hasParent() && !hasAchievement(achievement.getParent())) {
        awardAchievement(achievement.getParent());
    }
    getHandle().getStatisticManager().setStatistic(getHandle(), CraftStatistic.getNMSAchievement(achievement), 1);
    getHandle().getStatisticManager().updateStatistics(getHandle());
}
项目:Tweakkit-Server    文件:CraftPlayer.java   
@Override
public void removeAchievement(Achievement achievement) {
    Validate.notNull(achievement, "Achievement cannot be null");
    for (Achievement achieve : Achievement.values()) {
        if (achieve.getParent() == achievement && hasAchievement(achieve)) {
            removeAchievement(achieve);
        }
    }
    getHandle().getStatisticManager().setStatistic(getHandle(), CraftStatistic.getNMSAchievement(achievement), 0);
}
项目:StarQuestCode    文件:AchievementTag.java   
public static void loadAchievements(HashMap<String, BonusTag> map){
    map(map, new AchievementTag(Achievement.MINE_WOOD, "Woodsman", "b"));
    map(map, new AchievementTag(Achievement.BUILD_PICKAXE, "Miner", "b"));
    map(map, new AchievementTag(Achievement.BUILD_FURNACE, "Cook", "b"));
    map(map, new AchievementTag(Achievement.BUILD_HOE, "Farmer", "b"));
    map(map, new AchievementTag(Achievement.BUILD_SWORD, "Swordsman", "c"));
    map(map, new AchievementTag(Achievement.MAKE_BREAD, "Baker", "b"));
    map(map, new AchievementTag(Achievement.COOK_FISH, "Fisherman", "b"));
    map(map, new AchievementTag(Achievement.ON_A_RAIL, "Minecart Engineer", "b"));
    map(map, new AchievementTag(Achievement.ENCHANTMENTS, "Enchanter", "b"));
    map(map, new AchievementTag(Achievement.OVERKILL, "Swordmaster", "9"));
    map(map, new AchievementTag(Achievement.BREW_POTION, "Brewer", "b"));
    map(map, new AchievementTag(Achievement.BOOKCASE, "Librarian", "b"));
}
项目:BetonQuest    文件:AchievementCondition.java   
public AchievementCondition(Instruction instruction) throws InstructionParseException {
    super(instruction);
    String a = instruction.next();
    try {
        achievement = Achievement.valueOf(a.toUpperCase());
    } catch (IllegalArgumentException e) {
        throw new InstructionParseException("No such achievement: " + a);
    }
}
项目:SpigotSource    文件:CraftPlayer.java   
@Override
public void awardAchievement(Achievement achievement) {
    Validate.notNull(achievement, "Achievement cannot be null");
    if (achievement.hasParent() && !hasAchievement(achievement.getParent())) {
        awardAchievement(achievement.getParent());
    }
    getHandle().getStatisticManager().setStatistic(getHandle(), CraftStatistic.getNMSAchievement(achievement), 1);
    getHandle().getStatisticManager().updateStatistics(getHandle());
}
项目:SpigotSource    文件:CraftPlayer.java   
@Override
public void removeAchievement(Achievement achievement) {
    Validate.notNull(achievement, "Achievement cannot be null");
    for (Achievement achieve : Achievement.values()) {
        if (achieve.getParent() == achievement && hasAchievement(achieve)) {
            removeAchievement(achieve);
        }
    }
    getHandle().getStatisticManager().setStatistic(getHandle(), CraftStatistic.getNMSAchievement(achievement), 0);
}
项目:NPlugins    文件:Hover.java   
@Override
public String toString() {
    switch (this.type) {
        case SHOW_ACHIEVEMENT:
            return "Hover [type=SHOW_ACHIEVEMENT, object=" + ((Achievement)this.object).name() + ']';
        case SHOW_ITEM:
            return "Hover [type=SHOW_ITEM, object=" + this.object + ']';
        case SHOW_TEXT:
            return "Hover [type=SHOW_TEXT, object=" + Arrays.toString((String[])this.object) + ']';
        default:
            throw new IllegalArgumentException("Should never be here!");
    }
}
项目:NPlugins    文件:Chat.java   
/**
 * Gets the String identifier of an {@link Achievement} that the client
 * can understand.
 *
 * @param achievement the achievement
 *
 * @return the achievement's identifier
 */
private static String getAchievementId(final Achievement achievement) {
    switch (achievement) {
        case BUILD_WORKBENCH:
            return "buildWorkBench";
        case GET_DIAMONDS:
            return "diamonds";
        case NETHER_PORTAL:
            return "portal";
        case GHAST_RETURN:
            return "ghast";
        case GET_BLAZE_ROD:
            return "blazeRod";
        case BREW_POTION:
            return "potion";
        case END_PORTAL:
            return "theEnd";
        case THE_END:
            return "theEnd2";
        default:
            final char[] chars = achievement.name().toLowerCase().toCharArray();
            for (int i = 0; i < chars.length - 1; i++) {
                if (chars[i] == '_') {
                    i++;
                    chars[i] = Character.toTitleCase(chars[i]);
                }
            }
            final String result = new String(chars);
            return "achievement." + result.replace("_", "");
    }
}
项目:Uranium    文件:CraftStatistic.java   
public static org.bukkit.Achievement getBukkitAchievement(net.minecraft.stats.Achievement achievement) {
    return getBukkitAchievementByName(achievement.statId);
}
项目:Uranium    文件:CraftStatistic.java   
public static org.bukkit.Achievement getBukkitAchievementByName(String name) {
    return achievements.get(name);
}
项目:Uranium    文件:CraftStatistic.java   
public static net.minecraft.stats.Achievement getNMSAchievement(org.bukkit.Achievement achievement) {
    return (net.minecraft.stats.Achievement) StatList.func_151177_a(achievements.inverse().get(achievement));
}
项目:Uranium    文件:CraftMagicNumbers.java   
@Override
public Achievement getAchievementFromInternalName(String name) {
    return CraftStatistic.getBukkitAchievementByName(name);
}
项目:MockBukkit    文件:PlayerMock.java   
@Override
public void awardAchievement(Achievement achievement)
{
    // TODO Auto-generated method stub
    throw new UnimplementedOperationException();
}
项目:MockBukkit    文件:PlayerMock.java   
@Override
public void removeAchievement(Achievement achievement)
{
    // TODO Auto-generated method stub
    throw new UnimplementedOperationException();
}
项目:MockBukkit    文件:PlayerMock.java   
@Override
public boolean hasAchievement(Achievement achievement)
{
    // TODO Auto-generated method stub
    throw new UnimplementedOperationException();
}
项目:MundoSK    文件:ExprParentAch.java   
@Override
public Class<? extends Achievement> getReturnType() {
    // TODO Auto-generated method stub
    return Achievement.class;
}
项目:MundoSK    文件:ExprParentAch.java   
@Override
@Nullable
protected Achievement[] get(Event event) {
    return new Achievement[]{ach.getSingle(event).getParent()};
}
项目:MundoSK    文件:EvtAchAward.java   
@SuppressWarnings("unchecked")
@Override
public boolean init(Literal<?>[] lit, int arg1, ParseResult arg2) {
    ach = (Literal<Achievement>) lit[0];
    return true;
}
项目:MundoSK    文件:ExprAllAch.java   
@Override
public Class<? extends Achievement> getReturnType() {
    return Achievement.class;
}
项目:HiddenOre    文件:FakePlayer.java   
@Override
public boolean hasAchievement(@SuppressWarnings("deprecation") Achievement achievement) {

    return false;
}
项目:ThermosRebased    文件:CraftStatistic.java   
public static org.bukkit.Achievement getBukkitAchievement(net.minecraft.stats.Achievement achievement) {
    return getBukkitAchievementByName(achievement.statId);
}
项目:ThermosRebased    文件:CraftStatistic.java   
public static org.bukkit.Achievement getBukkitAchievementByName(String name) {
    return achievements.get(name);
}