@EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true)
public void onBucketFill(final PlayerBucketFillEvent event) {
final PlayerStat stat = PlayerStat.BUCKETS_FILLED;
// Get player
final Player player = event.getPlayer();
// Do general check
if (!plugin.doGeneralCheck(player, stat))
return;
// Update value to new stat.
plugin.getDataManager().setPlayerInfo(player.getUniqueId(), stat, StatzUtil.makeQuery("uuid",
player.getUniqueId().toString(), "value", 1, "world", player.getWorld().getName()));
}
java类org.bukkit.event.player.PlayerBucketFillEvent的实例源码
BucketsFilledListener.java 文件源码
项目:Statz
阅读 22
收藏 0
点赞 0
评论 0
AchieveMilkLavaWaterListener.java 文件源码
项目:AdvancedAchievements
阅读 23
收藏 0
点赞 0
评论 0
@EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true)
public void onPlayerBucketFill(PlayerBucketFillEvent event) {
Player player = event.getPlayer();
Material resultBucket = event.getItemStack().getType();
NormalAchievements category = getCategory(resultBucket);
if (plugin.getDisabledCategorySet().contains(category.toString())) {
return;
}
if (!shouldIncreaseBeTakenIntoAccount(player, category)
|| isInCooldownPeriod(player, category.toString(), false, category)) {
return;
}
updateStatisticAndAwardAchievementsIfAvailable(player, category, 1);
}
RPGlobalListener.java 文件源码
项目:RedProtect
阅读 29
收藏 0
点赞 0
评论 0
@EventHandler
public void onBucketFill(PlayerBucketFillEvent e){
if (e.isCancelled()) {
return;
}
Location l = e.getBlockClicked().getLocation();
Region r = RedProtect.get().rm.getTopRegion(l);
if (r != null){
return;
}
if (!RPUtil.canBuildNear(e.getPlayer(), l)){
e.setCancelled(true);
return;
}
if (!bypassBuild(e.getPlayer(), null, 0)) {
e.setCancelled(true);
}
}
PluginBlockListener.java 文件源码
项目:AncientGates
阅读 22
收藏 0
点赞 0
评论 0
@EventHandler(priority = EventPriority.HIGH)
public void onPlayerBucketFill(final PlayerBucketFillEvent event) {
if (event.isCancelled())
return;
final Block block = event.getBlockClicked();
final Block blockUp = block.getRelative(BlockFace.UP);
// Ok so a player fills a bucket on a portal block
// Find the nearest gate!
final WorldCoord blockCoord = new WorldCoord(block);
final WorldCoord blockCoordUp = new WorldCoord(blockUp);
final Gate nearestGate = Gates.gateFromPortal(blockCoord);
final Gate nearestGateUp = Gates.gateFromPortal(blockCoordUp);
if (nearestGate != null || nearestGateUp != null) {
event.setCancelled(true);
}
}
AcidInventory.java 文件源码
项目:acidisland
阅读 22
收藏 0
点赞 0
评论 0
/**
* If the player filled up the bucket themselves
*
* @param e
*/
@EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true)
public void onBucketFill(PlayerBucketFillEvent e) {
if (DEBUG)
plugin.getLogger().info("Player filled the bucket");
if (e.getPlayer().getWorld().getName().equalsIgnoreCase(Settings.worldName)) {
if (DEBUG)
plugin.getLogger().info("Correct world");
if (Settings.acidDamage > 0D && Settings.acidBottle) {
ItemStack item = e.getItemStack();
if (item.getType().equals(Material.WATER_BUCKET) || item.getType().equals(Material.POTION)) {
ItemMeta meta = item.getItemMeta();
meta.setDisplayName(plugin.myLocale(e.getPlayer().getUniqueId()).acidBucket);
lore = Arrays.asList(plugin.myLocale(e.getPlayer().getUniqueId()).acidLore.split("\n"));
meta.setLore(lore);
item.setItemMeta(meta);
}
}
}
}
PlayerListener.java 文件源码
项目:Factoid
阅读 29
收藏 0
点赞 0
评论 0
/**
* On player bucket fill.
*
* @param event
* the event
*/
@EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true)
public void onPlayerBucketFill(PlayerBucketFillEvent event) {
if (!playerConf.get(event.getPlayer()).isAdminMod()) {
IDummyLand land = Factoid.getThisPlugin().iLands().getLandOrOutsideArea(
event.getBlockClicked().getLocation());
Material mt = event.getBlockClicked().getType();
if ((land instanceof ILand && ((ILand) land).isBanned(event
.getPlayer()))
|| (mt == Material.LAVA_BUCKET && !checkPermission(land,
event.getPlayer(),
PermissionList.BUCKET_LAVA.getPermissionType()))
|| (mt == Material.WATER_BUCKET && !checkPermission(land,
event.getPlayer(),
PermissionList.BUCKET_WATER.getPermissionType()))) {
messagePermission(event.getPlayer());
event.setCancelled(true);
}
}
}
AcidInventory.java 文件源码
项目:askyblock
阅读 29
收藏 0
点赞 0
评论 0
/**
* If the player filled up the bucket themselves
*
* @param e
*/
@EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true)
public void onBucketFill(PlayerBucketFillEvent e) {
if (DEBUG)
plugin.getLogger().info("Player filled the bucket");
if (e.getPlayer().getWorld().getName().equalsIgnoreCase(Settings.worldName)) {
if (DEBUG)
plugin.getLogger().info("Correct world");
if (Settings.acidDamage > 0D && Settings.acidBottle) {
ItemStack item = e.getItemStack();
if (item.getType().equals(Material.WATER_BUCKET) || item.getType().equals(Material.POTION)) {
ItemMeta meta = item.getItemMeta();
meta.setDisplayName(plugin.myLocale(e.getPlayer().getUniqueId()).acidBucket);
lore = Arrays.asList(plugin.myLocale(e.getPlayer().getUniqueId()).acidLore.split("\n"));
meta.setLore(lore);
item.setItemMeta(meta);
}
}
}
}
ListenerBucket.java 文件源码
项目:modules-extra
阅读 27
收藏 0
点赞 0
评论 0
@EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true)
public void onPlayerBucketFill(final PlayerBucketFillEvent event)
{
BlockState oldState = event.getBlockClicked().getRelative(event.getBlockFace()).getState();
if (oldState.getType() == WATER || oldState.getType() == STATIONARY_WATER || oldState.getType() == LAVA
|| oldState.getType() == STATIONARY_LAVA)
{
this.setAndLog(BucketFill.class, event.getPlayer(), oldState, AIR);
}
else // TODO better check
{
// milk
BucketMilk action = this.newAction(BucketMilk.class, event.getPlayer().getWorld());
if (action != null)
{
action.setPlayer(event.getPlayer());
action.setLocation(oldState.getLocation());
this.logAction(action);
}
}
}
PlayerListener.java 文件源码
项目:TCMinigames
阅读 24
收藏 0
点赞 0
评论 0
@EventHandler
public void onBucketFill(PlayerBucketFillEvent event){
if(Minigame.getCurrentMinigame()!=null){
switch(Minigame.getCurrentMinigame().getMap().getType()){
case CIRCLE_OF_BOOM:
event.setCancelled(true);
break;
case KEY_QUEST:
break;
case WATER_THE_MONUMENT:
break;
default:
break;
}
}
}
EnvironmentManager.java 文件源码
项目:ZentrelaRPG
阅读 22
收藏 0
点赞 0
评论 0
@EventHandler
public void onBucketFill(PlayerBucketFillEvent event) {
PlayerDataRPG pd = plugin.getPD(event.getPlayer());
if (pd == null)
event.setCancelled(true);
if (event.getPlayer().getGameMode() != GameMode.CREATIVE)
event.setCancelled(true);
if (!canBuild(pd))
event.setCancelled(true);
event.getPlayer().updateInventory();
}
IslandGuard.java 文件源码
项目:bskyblock
阅读 24
收藏 0
点赞 0
评论 0
@EventHandler(priority = EventPriority.LOW)
public void onBucketFill(final PlayerBucketFillEvent e) {
if (DEBUG) {
plugin.getLogger().info(e.getEventName());
}
if (Util.inWorld(e.getPlayer())) {
// This permission bypasses protection
if (VaultHelper.hasPerm(e.getPlayer(), Settings.PERMPREFIX + "mod.bypassprotect")) {
return;
}
Island island = plugin.getIslands().getProtectedIslandAt(e.getBlockClicked().getLocation());
if (island != null) {
if (island.getMembers().contains(e.getPlayer().getUniqueId())) {
return;
}
if (island.getFlag(SettingsFlag.COLLECT_LAVA) && e.getItemStack().getType().equals(Material.LAVA_BUCKET)) {
return;
}
if (island.getFlag(SettingsFlag.COLLECT_WATER) && e.getItemStack().getType().equals(Material.WATER_BUCKET)) {
return;
}
if (island.getFlag(SettingsFlag.MILKING) && e.getItemStack().getType().equals(Material.MILK_BUCKET)) {
return;
}
if (island.getFlag(SettingsFlag.BUCKET)) {
return;
}
} else {
// Null
if (Settings.defaultWorldSettings.get(SettingsFlag.BUCKET)) {
return;
}
}
// Not allowed
Util.sendMessage(e.getPlayer(), plugin.getLocale(e.getPlayer().getUniqueId()).get("island.protected"));
e.setCancelled(true);
}
}
BlockTransformEvent.java 文件源码
项目:ProjectAres
阅读 20
收藏 0
点赞 0
评论 0
/**
* Return true if the block transformation was performed "by hand".
*
* Handled:
* - place
* - mine
* - bucket fill/empty
* - flint & steel fire/tnt
*
* Not handled:
* - bonemeal
* - probably lots of other things
*/
public boolean isManual() {
final Event event = getCause();
if(Types.instanceOfAny(
event,
BlockPlaceEvent.class,
BlockBreakEvent.class,
PlayerBucketEmptyEvent.class,
PlayerBucketFillEvent.class
)) return true;
if(event instanceof BlockIgniteEvent) {
BlockIgniteEvent igniteEvent = (BlockIgniteEvent) event;
if(igniteEvent.getCause() == BlockIgniteEvent.IgniteCause.FLINT_AND_STEEL && igniteEvent.getIgnitingEntity() != null) {
return true;
}
}
if(event instanceof ExplosionPrimeByEntityEvent && ((ExplosionPrimeByEntityEvent) event).getPrimer() instanceof Player) {
return true;
}
return false;
}
LobbyModule.java 文件源码
项目:OpenUHC
阅读 34
收藏 0
点赞 0
评论 0
/**
* Prevents lobby players from interacting in the world.
*
* @param event The event
*/
@EventHandler
public void onBucketFill(final PlayerBucketFillEvent event) {
if (event.getBlockClicked().getWorld().equals(world)) {
event.setCancelled(true);
}
}
BorderListener.java 文件源码
项目:HCFCore
阅读 24
收藏 0
点赞 0
评论 0
@EventHandler(ignoreCancelled = true, priority = EventPriority.HIGH)
public void onBucketEmpty(final PlayerBucketFillEvent event) {
if (!isWithinBorder(event.getBlockClicked().getLocation())) {
event.setCancelled(true);
event.getPlayer().sendMessage(ChatColor.RED + "You cannot fill buckets past the border.");
}
}
BorderListener.java 文件源码
项目:HCFCore
阅读 20
收藏 0
点赞 0
评论 0
@EventHandler(ignoreCancelled = true, priority = EventPriority.HIGH)
public void onBucketEmpty(final PlayerBucketFillEvent event) {
if (!isWithinBorder(event.getBlockClicked().getLocation())) {
event.setCancelled(true);
event.getPlayer().sendMessage(ChatColor.RED + "You cannot fill buckets past the border.");
}
}
BuildHeightModule.java 文件源码
项目:GamePlate
阅读 21
收藏 0
点赞 0
评论 0
@EventHandler
public void onFillBucket(PlayerBucketFillEvent event) {
Block toEmpty = event.getBlockClicked().getRelative(event.getBlockFace());
if (toEmpty.getY() >= height && !event.isCancelled()) {
event.setCancelled(true);
ChatUtil.sendWarningMessage(event.getPlayer(), ChatConstant.ERROR_BUILD_HEIGHT, ChatUtil.HIGHLIGHT.toString() + height + ChatColor.GRAY.toString());
}
}
BlockBreakListener.java 文件源码
项目:AthenaGM
阅读 33
收藏 0
点赞 0
评论 0
/**
* Prevents buckets from being filled
*/
@EventHandler
public void onBucketFill(PlayerBucketFillEvent event) {
CuboidRegion region = regionHandler.getApplicableRegion(event.getBlockClicked().getLocation());
if (!event.isCancelled() && region != null && !region.allows("destroy")) {
event.setCancelled(true);
warnPlayer(event.getPlayer());
}
}
PlaceBreakListener.java 文件源码
项目:CommunityDrivenPlugin
阅读 28
收藏 0
点赞 0
评论 0
public void onFill(PlayerBucketFillEvent e) {
Player p = e.getPlayer();
int prot = plugin.getSettings().getProtectedSpawnRadius();
if (p.getWorld().getSpawnLocation().distance(p.getLocation()) < prot) {
e.setCancelled(true);
p.sendMessage(ColoringUtil.colorText("&cNie mozesz ingerowac w bloki na spawnie!"));
}
}
BlockTransformListeners.java 文件源码
项目:Arcade2
阅读 25
收藏 0
点赞 0
评论 0
@EventHandler(ignoreCancelled = true)
public void onPlayerBucketFill(PlayerBucketFillEvent event) {
Block block = event.getBlockClicked().getRelative(event.getBlockFace());
this.post(event,
block.getState(),
this.applyAir(block),
event.getPlayer());
}
AppliedModule.java 文件源码
项目:Cardinal
阅读 21
收藏 0
点赞 0
评论 0
/**
* Filters PlayerBucketFillEvent (removing a block of liquid).
*
* <p>Applies to: block and block break.<p/>
*/
@EventHandler(priority = EventPriority.HIGH, ignoreCancelled = true)
public void onBucketFill(PlayerBucketFillEvent event) {
Match match = Cardinal.getMatch(event.getPlayer());
if (match == null || !match.hasPlayer(event.getPlayer())) {
return;
}
for (AppliedRegion reg : get(match, ApplyType.BLOCK, ApplyType.BLOCK_BREAK)) {
Block evaluating = event.getBlockClicked();
if (apply(reg, evaluating.getLocation(), event.getPlayer(), event, event, evaluating, event.getPlayer())) {
break;
}
}
}
ExileListener.java 文件源码
项目:ExilePearl
阅读 31
收藏 0
点赞 0
评论 0
/**
* Prevent exiled players from using buckets
* @param e The event
*/
@EventHandler(priority = EventPriority.HIGH, ignoreCancelled = true)
public void onPlayerFillBucket(PlayerBucketFillEvent e) {
if (e.getItemStack() != null && Material.MILK_BUCKET.equals(e.getItemStack().getType())) {
checkAndCancelRule(ExileRule.MILK_COWS, e, e.getPlayer());
} else {
checkAndCancelRule(ExileRule.FILL_BUCKET, e, e.getPlayer());
}
}
BuildHeight.java 文件源码
项目:Cardinal-Plus
阅读 26
收藏 0
点赞 0
评论 0
@EventHandler
public void onFillBucket(PlayerBucketFillEvent event) {
if (TeamUtils.getTeamByPlayer(event.getPlayer()).isObserver() || match.getState() != MatchState.PLAYING)
return;
Block toEmpty = event.getBlockClicked().getRelative(event.getBlockFace());
if (toEmpty.getY() >= height && !event.isCancelled()) {
event.setCancelled(true);
ChatUtils.sendWarningMessage(event.getPlayer(), "You have reached the maximum build height! " + ChatColor.GRAY + "(" + height + " blocks)");
}
}
BlockBreakRegion.java 文件源码
项目:Cardinal-Plus
阅读 26
收藏 0
点赞 0
评论 0
@EventHandler
public void onBucketFill(PlayerBucketFillEvent event) {
if (!event.isCancelled() && region.contains(new BlockRegion(null, event.getBlockClicked().getRelative(event.getBlockFace()).getLocation().toVector())) && filter.evaluate(event.getPlayer(), event.getBlockClicked().getRelative(event.getBlockFace()), event).equals(FilterState.DENY)) {
event.setCancelled(true);
ChatUtils.sendWarningMessage(event.getPlayer(), message);
}
}
BlockEventRegion.java 文件源码
项目:Cardinal-Plus
阅读 37
收藏 0
点赞 0
评论 0
public void onBucketFill(PlayerBucketFillEvent event) {
if (!event.isCancelled() && filter.evaluate(event.getPlayer(), event.getBlockClicked().getRelative(event.getBlockFace()), event).equals(FilterState.DENY)
&& region.contains(new BlockRegion(null, event.getBlockClicked().getRelative(event.getBlockFace()).getLocation().toVector()))) {
event.setCancelled(true);
ChatUtils.sendWarningMessage(event.getPlayer(), message);
}
}
PlayerBucketListeners.java 文件源码
项目:SurvivalCG
阅读 27
收藏 0
点赞 0
评论 0
@EventHandler
public void onBucketTake(PlayerBucketFillEvent e) {
if(e.getPlayer().hasPermission("scg.cuboid.bypassplace")) {
return;
}
Player p = e.getPlayer();
User user = plugin.getManager().getUserManager().getUsers().get(p.getName());
Guild guild = user.getGuild();
Cuboid cuboid = user.getCurrentCuboid();
if (cuboid != null) {
if (guild != null) {
if (!user.getGuild().equals(cuboid.getGuild())) {
p.sendMessage(plugin.getManager().getMsgManager().getMsg("enemyguildblockplace"));
e.setCancelled(true);
}
} else {
p.sendMessage(plugin.getManager().getMsgManager().getMsg("enemyguildblockplace"));
e.setCancelled(true);
}
//Bukkit.broadcastMessage("Gracz "+p.getName()+" robi cos na cuboidzie "+cuboid.getGuild().getGuildTag());
} else {
if (p.getLocation().distance(p.getWorld().getSpawnLocation()) <= plugin.getManager().getSettingsManager().getProtectedSpawnRadius()) {
p.sendMessage(plugin.getManager().getMsgManager().getMsg("spawnplacecantbreak"));
}
}
}
RPPlayerListener.java 文件源码
项目:RedProtect
阅读 27
收藏 0
点赞 0
评论 0
@EventHandler
public void onBucketFill(PlayerBucketFillEvent e){
if (e.isCancelled()) {
return;
}
Player p = e.getPlayer();
Location l = e.getBlockClicked().getLocation();
Region r = RedProtect.get().rm.getTopRegion(l);
if (r != null && !r.canBuild(p) && (p.getItemInHand().getType().name().contains("BUCKET"))) {
e.setCancelled(true);
}
}
LotsListener.java 文件源码
项目:Peacecraft
阅读 23
收藏 0
点赞 0
评论 0
@EventHandler
public void onPlayerBucketFill(PlayerBucketFillEvent event) {
Block block = event.getBlockClicked();
Lot lot = this.module.getLotManager().getLot(block.getLocation());
Town town = this.module.getLotManager().getTown(block.getLocation());
if(((lot != null && !lot.canBuild(event.getPlayer())) || (lot == null && town != null)) && !event.getPlayer().hasPermission(LotPermissions.BUILD_ANYWHERE)) {
sendMessage(event.getPlayer(), "lots.cannot-do");
event.setCancelled(true);
}
}
IslandGuard.java 文件源码
项目:acidisland
阅读 25
收藏 0
点赞 0
评论 0
@EventHandler(priority = EventPriority.LOW)
public void onBucketFill(final PlayerBucketFillEvent e) {
if (DEBUG) {
plugin.getLogger().info(e.getEventName());
}
if (inWorld(e.getPlayer())) {
// This permission bypasses protection
if (VaultHelper.checkPerm(e.getPlayer(), Settings.PERMPREFIX + "mod.bypassprotect")) {
return;
}
Island island = plugin.getGrid().getProtectedIslandAt(e.getBlockClicked().getLocation());
if (island != null) {
if (island.getMembers().contains(e.getPlayer().getUniqueId())) {
return;
}
if (island.getIgsFlag(SettingsFlag.COLLECT_LAVA) && e.getItemStack().getType().equals(Material.LAVA_BUCKET)) {
return;
}
if (island.getIgsFlag(SettingsFlag.COLLECT_WATER) && e.getItemStack().getType().equals(Material.WATER_BUCKET)) {
return;
}
if (island.getIgsFlag(SettingsFlag.MILKING) && e.getItemStack().getType().equals(Material.MILK_BUCKET)) {
return;
}
if (island.getIgsFlag(SettingsFlag.BUCKET)) {
return;
}
} else {
// Null
if (Settings.defaultWorldSettings.get(SettingsFlag.BUCKET)) {
return;
}
}
// Not allowed
Util.sendMessage(e.getPlayer(), ChatColor.RED + plugin.myLocale(e.getPlayer().getUniqueId()).islandProtected);
e.setCancelled(true);
}
}
PlayerListener.java 文件源码
项目:UltimateSurvivalGames
阅读 38
收藏 0
点赞 0
评论 0
@EventHandler
public void onPlayerWaterPlace(PlayerBucketFillEvent event) {
for(Game game : SurvivalGames.gameManager.getGames()) {
for(Arena arena : game.getArenas()) {
if(arena.containsBlock(event.getBlockClicked().getLocation()))
event.setCancelled(true);
}
}
}
IslandGuard.java 文件源码
项目:askyblock
阅读 23
收藏 0
点赞 0
评论 0
@EventHandler(priority = EventPriority.LOW)
public void onBucketFill(final PlayerBucketFillEvent e) {
if (DEBUG) {
plugin.getLogger().info(e.getEventName());
}
if (inWorld(e.getPlayer())) {
// This permission bypasses protection
if (VaultHelper.checkPerm(e.getPlayer(), Settings.PERMPREFIX + "mod.bypassprotect")) {
return;
}
Island island = plugin.getGrid().getProtectedIslandAt(e.getBlockClicked().getLocation());
if (island != null) {
if (island.getMembers().contains(e.getPlayer().getUniqueId())) {
return;
}
if (island.getIgsFlag(SettingsFlag.COLLECT_LAVA) && e.getItemStack().getType().equals(Material.LAVA_BUCKET)) {
return;
}
if (island.getIgsFlag(SettingsFlag.COLLECT_WATER) && e.getItemStack().getType().equals(Material.WATER_BUCKET)) {
return;
}
if (island.getIgsFlag(SettingsFlag.MILKING) && e.getItemStack().getType().equals(Material.MILK_BUCKET)) {
return;
}
if (island.getIgsFlag(SettingsFlag.BUCKET)) {
return;
}
} else {
// Null
if (Settings.defaultWorldSettings.get(SettingsFlag.BUCKET)) {
return;
}
}
// Not allowed
Util.sendMessage(e.getPlayer(), ChatColor.RED + plugin.myLocale(e.getPlayer().getUniqueId()).islandProtected);
e.setCancelled(true);
}
}