RegionBoardEventListener.java 文件源码

java
阅读 25 收藏 0 点赞 0 评论 0

项目:regionboard 作者:
@EventHandler(priority=EventPriority.MONITOR, ignoreCancelled=true)
public void onPlayerStatisticIncrementEvent(PlayerStatisticIncrementEvent event) {

    Statistic stat = event.getStatistic();

    if (! RegionBoardPlugin.isStatTracked(stat)) {
        return;
    }

    Player player = event.getPlayer();

    if (! plugin.getPlayerPositionMonitor().isPlayerInAnyRegion(player)) {
        return;
    }

    List<Region> regions;
    try {
        regions = plugin.getRegionMap().getRegionsByLocation(player.getLocation());

        if (! regions.isEmpty()) {

            Region firstRegion = regions.get(0);

            boolean isMatched = firstRegion.matchStatistic(stat, event.getMaterial(), event.getEntityType()); 

            if (isMatched) {

                ScoreboardController scoreboardController = plugin.getScoreboardController();
                scoreboardController.updateScoreForPlayer(player, firstRegion, event.getNewValue() - event.getPreviousValue());                 

            }

        }

    } catch (MissingDBService e) {
        e.printStackTrace();
    }

}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号