org.bukkit.event.entity.EntityTameEvent#getOwner ( )源码实例Demo

下面列出了org.bukkit.event.entity.EntityTameEvent#getOwner ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: Quests   文件: TamingTaskType.java
@EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true)
public void onTame(EntityTameEvent event) {
    if (!(event.getOwner() instanceof Player)) {
        return;
    }

    Player player = (Player) event.getOwner();

    QPlayer qPlayer = QuestsAPI.getPlayerManager().getPlayer(player.getUniqueId(), true);
    QuestProgressFile questProgressFile = qPlayer.getQuestProgressFile();

    for (Quest quest : super.getRegisteredQuests()) {
        if (questProgressFile.hasStartedQuest(quest)) {
            QuestProgress questProgress = questProgressFile.getQuestProgress(quest);

            for (Task task : quest.getTasksOfType(super.getType())) {
                TaskProgress taskProgress = questProgress.getTaskProgress(task.getId());

                if (taskProgress.isCompleted()) {
                    continue;
                }

                int tamesNeeded = (int) task.getConfigValue("amount");

                int progressTamed;
                if (taskProgress.getProgress() == null) {
                    progressTamed = 0;
                } else {
                    progressTamed = (int) taskProgress.getProgress();
                }

                taskProgress.setProgress(progressTamed + 1);

                if (((int) taskProgress.getProgress()) >= tamesNeeded) {
                    taskProgress.setCompleted(true);
                }
            }
        }
    }
}
 
源代码2 项目: BetonQuest   文件: TameObjective.java
@EventHandler(ignoreCancelled = true)
public void onTaming(EntityTameEvent event) {
    if (event.getOwner() instanceof Player) {
        String playerID = PlayerConverter.getID((Player) event.getOwner());
        if (!dataMap.containsKey(playerID)) {
            return;
        }
        LivingEntity entity = event.getEntity();
        TameData playerData = (TameData) dataMap.get(playerID);
        switch (type) {
            case WOLF:
                if (entity.getType().equals(EntityType.WOLF) && checkConditions(playerID)) {
                    playerData.subtract();
                }
                break;
            case OCELOT:
                if (entity.getType().equals(EntityType.OCELOT) && checkConditions(playerID)) {
                    playerData.subtract();
                }
                break;
            case HORSE:
                if (entity.getType().equals(EntityType.HORSE) && checkConditions(playerID)) {
                    playerData.subtract();
                }
                break;
            default:
                break;
        }
        if (playerData.isZero()) {
            completeObjective(playerID);
        }
    }
}
 
 同类方法