mirror of
https://github.com/mcMMO-Dev/mcMMO.git
synced 2025-06-25 02:04:44 +02:00
update UserBlockTracker API
This commit is contained in:
@ -4,7 +4,6 @@ import com.gmail.nossr50.config.LegacyConfigLoader;
|
||||
import com.gmail.nossr50.datatypes.skills.alchemy.AlchemyPotion;
|
||||
import com.gmail.nossr50.mcMMO;
|
||||
import com.gmail.nossr50.util.ItemUtils;
|
||||
import com.gmail.nossr50.util.PotionUtil;
|
||||
import org.bukkit.ChatColor;
|
||||
import org.bukkit.Color;
|
||||
import org.bukkit.Material;
|
||||
|
@ -1,7 +1,6 @@
|
||||
package com.gmail.nossr50.datatypes.skills.alchemy;
|
||||
|
||||
import com.gmail.nossr50.util.PotionUtil;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.inventory.meta.PotionMeta;
|
||||
import org.bukkit.potion.PotionEffect;
|
||||
|
||||
|
@ -310,7 +310,7 @@ public class BlockListener implements Listener {
|
||||
|
||||
// Minecraft is dumb, the events still throw when a plant "grows" higher than the max block height. Even though no new block is created
|
||||
if (BlockUtils.isWithinWorldBounds(block)) {
|
||||
mcMMO.getPlaceStore().setFalse(block);
|
||||
mcMMO.getPlaceStore().setEligible(block);
|
||||
}
|
||||
}
|
||||
|
||||
@ -400,14 +400,14 @@ public class BlockListener implements Listener {
|
||||
else if (BlockUtils.affectedBySuperBreaker(blockState)
|
||||
&& (ItemUtils.isPickaxe(heldItem) || ItemUtils.isHoe(heldItem))
|
||||
&& mcMMO.p.getSkillTools().doesPlayerHaveSkillPermission(player, PrimarySkillType.MINING)
|
||||
&& !mcMMO.getPlaceStore().isTrue(blockState)) {
|
||||
&& !mcMMO.getPlaceStore().isIneligible(blockState)) {
|
||||
MiningManager miningManager = mcMMOPlayer.getMiningManager();
|
||||
miningManager.miningBlockCheck(blockState);
|
||||
}
|
||||
|
||||
/* WOOD CUTTING */
|
||||
else if (BlockUtils.hasWoodcuttingXP(blockState) && ItemUtils.isAxe(heldItem)
|
||||
&& mcMMO.p.getSkillTools().doesPlayerHaveSkillPermission(player, PrimarySkillType.WOODCUTTING) && !mcMMO.getPlaceStore().isTrue(blockState)) {
|
||||
&& mcMMO.p.getSkillTools().doesPlayerHaveSkillPermission(player, PrimarySkillType.WOODCUTTING) && !mcMMO.getPlaceStore().isIneligible(blockState)) {
|
||||
WoodcuttingManager woodcuttingManager = mcMMOPlayer.getWoodcuttingManager();
|
||||
if (woodcuttingManager.canUseTreeFeller(heldItem)) {
|
||||
woodcuttingManager.processTreeFeller(blockState);
|
||||
@ -422,7 +422,7 @@ public class BlockListener implements Listener {
|
||||
}
|
||||
|
||||
/* EXCAVATION */
|
||||
else if (BlockUtils.affectedByGigaDrillBreaker(blockState) && ItemUtils.isShovel(heldItem) && mcMMO.p.getSkillTools().doesPlayerHaveSkillPermission(player, PrimarySkillType.EXCAVATION) && !mcMMO.getPlaceStore().isTrue(blockState)) {
|
||||
else if (BlockUtils.affectedByGigaDrillBreaker(blockState) && ItemUtils.isShovel(heldItem) && mcMMO.p.getSkillTools().doesPlayerHaveSkillPermission(player, PrimarySkillType.EXCAVATION) && !mcMMO.getPlaceStore().isIneligible(blockState)) {
|
||||
ExcavationManager excavationManager = mcMMOPlayer.getExcavationManager();
|
||||
excavationManager.excavationBlockCheck(blockState);
|
||||
|
||||
@ -687,7 +687,7 @@ public class BlockListener implements Listener {
|
||||
|
||||
if (UserManager.getPlayer(player).isDebugMode())
|
||||
{
|
||||
if (mcMMO.getPlaceStore().isTrue(blockState))
|
||||
if (mcMMO.getPlaceStore().isIneligible(blockState))
|
||||
player.sendMessage("[mcMMO DEBUG] This block is not natural and does not reward treasures/XP");
|
||||
else
|
||||
{
|
||||
|
@ -44,7 +44,6 @@ import org.bukkit.metadata.FixedMetadataValue;
|
||||
import org.bukkit.potion.PotionEffect;
|
||||
import org.bukkit.potion.PotionEffectType;
|
||||
import org.bukkit.projectiles.ProjectileSource;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import static com.gmail.nossr50.util.MobMetadataUtils.*;
|
||||
|
||||
@ -207,8 +206,8 @@ public class EntityListener implements Listener {
|
||||
if (entity instanceof FallingBlock || entity instanceof Enderman) {
|
||||
boolean isTracked = entity.hasMetadata(MetadataConstants.METADATA_KEY_TRAVELING_BLOCK);
|
||||
|
||||
if (mcMMO.getPlaceStore().isTrue(block) && !isTracked) {
|
||||
mcMMO.getPlaceStore().setFalse(block);
|
||||
if (mcMMO.getPlaceStore().isIneligible(block) && !isTracked) {
|
||||
mcMMO.getPlaceStore().setEligible(block);
|
||||
|
||||
entity.setMetadata(MetadataConstants.METADATA_KEY_TRAVELING_BLOCK, MetadataConstants.MCMMO_METADATA_VALUE);
|
||||
TravelingBlockMetaCleanup metaCleanupTask = new TravelingBlockMetaCleanup(entity, pluginRef);
|
||||
@ -222,8 +221,8 @@ public class EntityListener implements Listener {
|
||||
//Redstone ore fire this event and should be ignored
|
||||
}
|
||||
else {
|
||||
if (mcMMO.getPlaceStore().isTrue(block)) {
|
||||
mcMMO.getPlaceStore().setFalse(block);
|
||||
if (mcMMO.getPlaceStore().isIneligible(block)) {
|
||||
mcMMO.getPlaceStore().setEligible(block);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -852,7 +852,7 @@ public class PlayerListener implements Listener {
|
||||
case "NETHER_WART_BLOCK":
|
||||
case "POTATO":
|
||||
case "MANGROVE_PROPAGULE":
|
||||
mcMMO.getPlaceStore().setFalse(blockState);
|
||||
mcMMO.getPlaceStore().setEligible(blockState);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -32,7 +32,7 @@ public class WorldListener implements Listener {
|
||||
// Using 50 ms later as I do not know of a way to run one tick later (safely)
|
||||
plugin.getFoliaLib().getImpl().runLater(() -> {
|
||||
for (BlockState blockState : event.getBlocks()) {
|
||||
mcMMO.getPlaceStore().setFalse(blockState);
|
||||
mcMMO.getPlaceStore().setEligible(blockState);
|
||||
}
|
||||
}, 1);
|
||||
}
|
||||
|
@ -1,47 +0,0 @@
|
||||
package com.gmail.nossr50.runnables;
|
||||
|
||||
import com.gmail.nossr50.mcMMO;
|
||||
import com.gmail.nossr50.util.BlockUtils;
|
||||
import com.gmail.nossr50.util.CancellableRunnable;
|
||||
import com.gmail.nossr50.util.MetadataConstants;
|
||||
import org.bukkit.block.Block;
|
||||
import org.bukkit.block.BlockFace;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class PistonTrackerTask extends CancellableRunnable {
|
||||
private final List<Block> blocks;
|
||||
private final BlockFace direction;
|
||||
private final Block futureEmptyBlock;
|
||||
|
||||
public PistonTrackerTask(List<Block> blocks, BlockFace direction, Block futureEmptyBlock) {
|
||||
this.blocks = blocks;
|
||||
this.direction = direction;
|
||||
this.futureEmptyBlock = futureEmptyBlock;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
// Check to see if futureEmptyBlock is empty - if it isn't; the blocks didn't move
|
||||
if (!BlockUtils.isPistonPiece(futureEmptyBlock.getState())) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (mcMMO.getPlaceStore().isTrue(futureEmptyBlock)) {
|
||||
mcMMO.getPlaceStore().setFalse(futureEmptyBlock);
|
||||
}
|
||||
|
||||
for (Block b : blocks) {
|
||||
Block nextBlock = b.getRelative(direction);
|
||||
|
||||
if (nextBlock.hasMetadata(MetadataConstants.METADATA_KEY_PISTON_TRACKING)) {
|
||||
BlockUtils.setUnnaturalBlock(nextBlock);
|
||||
nextBlock.removeMetadata(MetadataConstants.METADATA_KEY_PISTON_TRACKING, mcMMO.p);
|
||||
}
|
||||
else if (mcMMO.getPlaceStore().isTrue(nextBlock)) {
|
||||
// Block doesn't have metadatakey but isTrue - set it to false
|
||||
mcMMO.getPlaceStore().setFalse(nextBlock);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -19,7 +19,7 @@ public class StickyPistonTrackerTask extends CancellableRunnable {
|
||||
|
||||
@Override
|
||||
public void run() {
|
||||
if (!mcMMO.getPlaceStore().isTrue(movedBlock.getRelative(direction))) {
|
||||
if (!mcMMO.getPlaceStore().isIneligible(movedBlock.getRelative(direction))) {
|
||||
return;
|
||||
}
|
||||
|
||||
@ -29,7 +29,7 @@ public class StickyPistonTrackerTask extends CancellableRunnable {
|
||||
}
|
||||
|
||||
// The sticky piston actually pulled the block so move the PlaceStore data
|
||||
mcMMO.getPlaceStore().setFalse(movedBlock.getRelative(direction));
|
||||
mcMMO.getPlaceStore().setEligible(movedBlock.getRelative(direction));
|
||||
BlockUtils.setUnnaturalBlock(movedBlock);
|
||||
}
|
||||
}
|
||||
|
@ -2,7 +2,6 @@ package com.gmail.nossr50.runnables.skills;
|
||||
|
||||
import com.gmail.nossr50.datatypes.player.McMMOPlayer;
|
||||
import com.gmail.nossr50.skills.alchemy.Alchemy;
|
||||
import com.gmail.nossr50.skills.alchemy.AlchemyPotionBrewer;
|
||||
import com.gmail.nossr50.util.CancellableRunnable;
|
||||
import com.gmail.nossr50.util.ContainerMetadataUtils;
|
||||
import com.gmail.nossr50.util.player.UserManager;
|
||||
@ -17,7 +16,6 @@ import org.jetbrains.annotations.Nullable;
|
||||
import java.util.Arrays;
|
||||
|
||||
import static com.gmail.nossr50.skills.alchemy.AlchemyPotionBrewer.isValidBrew;
|
||||
import static com.gmail.nossr50.util.EventUtils.getMcMMOPlayer;
|
||||
|
||||
public class AlchemyBrewCheckTask extends CancellableRunnable {
|
||||
private final BrewingStand brewingStand;
|
||||
|
@ -282,7 +282,7 @@ public class HerbalismManager extends SkillManager {
|
||||
if (brokenPlant.getLocation().equals(originalBreak.getBlock().getLocation())) {
|
||||
//If its the same block as the original, we are going to directly check it for being a valid XP gain and add it to the nonChorusBlocks list even if its a chorus block
|
||||
//This stops a delay from happening when bringing up the XP bar for chorus trees
|
||||
if (!mcMMO.getPlaceStore().isTrue(originalBreak)) {
|
||||
if (!mcMMO.getPlaceStore().isIneligible(originalBreak)) {
|
||||
//Even if its a chorus block, the original break will be moved to nonChorusBlocks for immediate XP rewards
|
||||
noDelayPlantBlocks.add(brokenPlant);
|
||||
} else {
|
||||
@ -335,7 +335,7 @@ public class HerbalismManager extends SkillManager {
|
||||
BlockData plantData = brokenPlantState.getBlockData();
|
||||
|
||||
//Check for double drops
|
||||
if (!mcMMO.getPlaceStore().isTrue(brokenPlant)) {
|
||||
if (!mcMMO.getPlaceStore().isIneligible(brokenPlant)) {
|
||||
|
||||
/*
|
||||
*
|
||||
@ -413,7 +413,7 @@ public class HerbalismManager extends SkillManager {
|
||||
BlockState brokenBlockNewState = brokenPlantBlock.getState();
|
||||
BlockData plantData = brokenBlockNewState.getBlockData();
|
||||
|
||||
if (mcMMO.getPlaceStore().isTrue(brokenBlockNewState)) {
|
||||
if (mcMMO.getPlaceStore().isIneligible(brokenBlockNewState)) {
|
||||
/*
|
||||
*
|
||||
* Unnatural Blocks
|
||||
@ -427,7 +427,7 @@ public class HerbalismManager extends SkillManager {
|
||||
}
|
||||
|
||||
//Mark it as natural again as it is being broken
|
||||
mcMMO.getPlaceStore().setFalse(brokenBlockNewState);
|
||||
mcMMO.getPlaceStore().setEligible(brokenBlockNewState);
|
||||
} else {
|
||||
/*
|
||||
*
|
||||
@ -489,9 +489,9 @@ public class HerbalismManager extends SkillManager {
|
||||
continue;
|
||||
}
|
||||
|
||||
if (mcMMO.getPlaceStore().isTrue(brokenBlockNewState)) {
|
||||
if (mcMMO.getPlaceStore().isIneligible(brokenBlockNewState)) {
|
||||
//Mark it as natural again as it is being broken
|
||||
mcMMO.getPlaceStore().setFalse(brokenBlockNewState);
|
||||
mcMMO.getPlaceStore().setEligible(brokenBlockNewState);
|
||||
} else {
|
||||
//TODO: Do we care about chorus flower age?
|
||||
//Calculate XP for the old type
|
||||
|
@ -181,7 +181,7 @@ public class MiningManager extends SkillManager {
|
||||
//Containers usually have 0 XP unless someone edited their config in a very strange way
|
||||
if (ExperienceConfig.getInstance().getXp(PrimarySkillType.MINING, targetBlock) != 0
|
||||
&& !(targetBlock instanceof Container)
|
||||
&& !mcMMO.getPlaceStore().isTrue(targetBlock)) {
|
||||
&& !mcMMO.getPlaceStore().isIneligible(targetBlock)) {
|
||||
if (BlockUtils.isOre(blockState)) {
|
||||
ores.add(blockState);
|
||||
} else {
|
||||
@ -216,7 +216,7 @@ public class MiningManager extends SkillManager {
|
||||
|
||||
Misc.spawnItem(getPlayer(), Misc.getBlockCenter(blockState), new ItemStack(blockState.getType()), ItemSpawnReason.BLAST_MINING_ORES); // Initial block that would have been dropped
|
||||
|
||||
if (mcMMO.p.getAdvancedConfig().isBlastMiningBonusDropsEnabled() && !mcMMO.getPlaceStore().isTrue(blockState)) {
|
||||
if (mcMMO.p.getAdvancedConfig().isBlastMiningBonusDropsEnabled() && !mcMMO.getPlaceStore().isIneligible(blockState)) {
|
||||
for (int i = 1; i < dropMultiplier; i++) {
|
||||
// Bukkit.broadcastMessage("Bonus Drop on Ore: "+blockState.getType().toString());
|
||||
Misc.spawnItem(getPlayer(), Misc.getBlockCenter(blockState), new ItemStack(blockState.getType()), ItemSpawnReason.BLAST_MINING_ORES_BONUS_DROP); // Initial block that would have been dropped
|
||||
|
@ -113,7 +113,7 @@ public class WoodcuttingManager extends SkillManager {
|
||||
}
|
||||
|
||||
public void processWoodcuttingBlockXP(@NotNull BlockState blockState) {
|
||||
if (mcMMO.getPlaceStore().isTrue(blockState))
|
||||
if (mcMMO.getPlaceStore().isIneligible(blockState))
|
||||
return;
|
||||
|
||||
int xp = getExperienceFromLog(blockState);
|
||||
@ -269,7 +269,7 @@ public class WoodcuttingManager extends SkillManager {
|
||||
* in treeFellerBlocks.
|
||||
*/
|
||||
private boolean processTreeFellerTargetBlock(@NotNull BlockState blockState, @NotNull List<BlockState> futureCenterBlocks, @NotNull Set<BlockState> treeFellerBlocks) {
|
||||
if (treeFellerBlocks.contains(blockState) || mcMMO.getPlaceStore().isTrue(blockState)) {
|
||||
if (treeFellerBlocks.contains(blockState) || mcMMO.getPlaceStore().isIneligible(blockState)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -373,7 +373,7 @@ public class WoodcuttingManager extends SkillManager {
|
||||
* @return Amount of experience
|
||||
*/
|
||||
private static int processTreeFellerXPGains(BlockState blockState, int woodCount) {
|
||||
if (mcMMO.getPlaceStore().isTrue(blockState))
|
||||
if (mcMMO.getPlaceStore().isIneligible(blockState))
|
||||
return 0;
|
||||
|
||||
int rawXP = ExperienceConfig.getInstance().getXp(PrimarySkillType.WOODCUTTING, blockState.getType());
|
||||
|
@ -65,7 +65,7 @@ public final class BlockUtils {
|
||||
* @param block target block
|
||||
*/
|
||||
public static void setUnnaturalBlock(@NotNull Block block) {
|
||||
mcMMO.getPlaceStore().setTrue(block);
|
||||
mcMMO.getPlaceStore().setIneligible(block);
|
||||
|
||||
// Failsafe against lingering metadata
|
||||
if (block.hasMetadata(MetadataConstants.METADATA_KEY_BONUS_DROPS))
|
||||
@ -82,7 +82,7 @@ public final class BlockUtils {
|
||||
block.removeMetadata(MetadataConstants.METADATA_KEY_REPLANT, mcMMO.p);
|
||||
}
|
||||
|
||||
mcMMO.getPlaceStore().setFalse(block);
|
||||
mcMMO.getPlaceStore().setEligible(block);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -1,7 +1,6 @@
|
||||
package com.gmail.nossr50.util;
|
||||
|
||||
import com.gmail.nossr50.datatypes.skills.subskills.taming.CallOfTheWildType;
|
||||
import com.gmail.nossr50.mcMMO;
|
||||
import com.gmail.nossr50.skills.taming.TrackedTamingEntity;
|
||||
import com.gmail.nossr50.util.player.NotificationManager;
|
||||
import com.gmail.nossr50.util.skills.ParticleEffectUtils;
|
||||
|
@ -152,7 +152,7 @@ public class HashChunkManager implements ChunkManager {
|
||||
}
|
||||
}
|
||||
|
||||
private synchronized boolean isTrue(int x, int y, int z, @NotNull World world) {
|
||||
private synchronized boolean isIneligible(int x, int y, int z, @NotNull World world) {
|
||||
CoordinateKey chunkKey = blockCoordinateToChunkKey(world.getUID(), x, y, z);
|
||||
|
||||
// Get chunk, load from file if necessary
|
||||
@ -178,32 +178,42 @@ public class HashChunkManager implements ChunkManager {
|
||||
}
|
||||
|
||||
@Override
|
||||
public synchronized boolean isTrue(@NotNull Block block) {
|
||||
return isTrue(block.getX(), block.getY(), block.getZ(), block.getWorld());
|
||||
public synchronized boolean isIneligible(@NotNull Block block) {
|
||||
return isIneligible(block.getX(), block.getY(), block.getZ(), block.getWorld());
|
||||
}
|
||||
|
||||
@Override
|
||||
public synchronized boolean isTrue(@NotNull BlockState blockState) {
|
||||
return isTrue(blockState.getX(), blockState.getY(), blockState.getZ(), blockState.getWorld());
|
||||
public synchronized boolean isIneligible(@NotNull BlockState blockState) {
|
||||
return isIneligible(blockState.getX(), blockState.getY(), blockState.getZ(), blockState.getWorld());
|
||||
}
|
||||
|
||||
@Override
|
||||
public synchronized void setTrue(@NotNull Block block) {
|
||||
public synchronized boolean isEligible(@NotNull Block block) {
|
||||
return !isIneligible(block);
|
||||
}
|
||||
|
||||
@Override
|
||||
public synchronized boolean isEligible(@NotNull BlockState blockState) {
|
||||
return !isIneligible(blockState);
|
||||
}
|
||||
|
||||
@Override
|
||||
public synchronized void setIneligible(@NotNull Block block) {
|
||||
set(block.getX(), block.getY(), block.getZ(), block.getWorld(), true);
|
||||
}
|
||||
|
||||
@Override
|
||||
public synchronized void setTrue(@NotNull BlockState blockState) {
|
||||
public synchronized void setIneligible(@NotNull BlockState blockState) {
|
||||
set(blockState.getX(), blockState.getY(), blockState.getZ(), blockState.getWorld(), true);
|
||||
}
|
||||
|
||||
@Override
|
||||
public synchronized void setFalse(@NotNull Block block) {
|
||||
public synchronized void setEligible(@NotNull Block block) {
|
||||
set(block.getX(), block.getY(), block.getZ(), block.getWorld(), false);
|
||||
}
|
||||
|
||||
@Override
|
||||
public synchronized void setFalse(@NotNull BlockState blockState) {
|
||||
public synchronized void setEligible(@NotNull BlockState blockState) {
|
||||
set(blockState.getX(), blockState.getY(), blockState.getZ(), blockState.getWorld(), false);
|
||||
}
|
||||
|
||||
|
@ -17,24 +17,34 @@ public class NullChunkManager implements ChunkManager {
|
||||
public void unloadWorld(@NotNull World world) {}
|
||||
|
||||
@Override
|
||||
public boolean isTrue(@NotNull Block block) {
|
||||
public boolean isIneligible(@NotNull Block block) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isTrue(@NotNull BlockState blockState) {
|
||||
public boolean isIneligible(@NotNull BlockState blockState) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setTrue(@NotNull Block block) {}
|
||||
public boolean isEligible(@NotNull Block block) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setTrue(@NotNull BlockState blockState) {}
|
||||
public boolean isEligible(@NotNull BlockState blockState) {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setFalse(@NotNull Block block) {}
|
||||
public void setIneligible(@NotNull Block block) {}
|
||||
|
||||
@Override
|
||||
public void setFalse(@NotNull BlockState blockState) {}
|
||||
public void setIneligible(@NotNull BlockState blockState) {}
|
||||
|
||||
@Override
|
||||
public void setEligible(@NotNull Block block) {}
|
||||
|
||||
@Override
|
||||
public void setEligible(@NotNull BlockState blockState) {}
|
||||
}
|
||||
|
@ -11,46 +11,136 @@ import org.jetbrains.annotations.NotNull;
|
||||
*/
|
||||
public interface UserBlockTracker {
|
||||
/**
|
||||
* Check to see if a given block location is set to true
|
||||
* Check to see if a given {@link Block} is ineligible for rewards.
|
||||
* This is a location-based lookup, and the other properties of the {@link Block} do not matter.
|
||||
*
|
||||
* @param block Block location to check
|
||||
* @return true if the given block location is set to true, false if otherwise
|
||||
* @param block Block to check
|
||||
* @return true if the given block should not give rewards, false if otherwise
|
||||
*/
|
||||
boolean isTrue(@NotNull Block block);
|
||||
boolean isIneligible(@NotNull Block block);
|
||||
|
||||
/**
|
||||
* Check to see if a given BlockState location is set to true
|
||||
* Check to see if a given {@link Block} is eligible for rewards.
|
||||
* This is a location-based lookup, and the other properties of the {@link Block} do not matter.
|
||||
*
|
||||
* @param block Block to check
|
||||
* @return true if the given block should give rewards, false if otherwise
|
||||
*/
|
||||
boolean isEligible(@NotNull Block block);
|
||||
|
||||
/**
|
||||
* Check to see if a given {@link BlockState} is eligible for rewards.
|
||||
* This is a location-based lookup, and the other properties of the {@link BlockState} do not matter.
|
||||
*
|
||||
* @param blockState BlockState to check
|
||||
* @return true if the given BlockState location is set to true, false if otherwise
|
||||
*/
|
||||
boolean isTrue(@NotNull BlockState blockState);
|
||||
boolean isEligible(@NotNull BlockState blockState);
|
||||
|
||||
/**
|
||||
* Set a given block location to true
|
||||
* Check to see if a given {@link BlockState} is ineligible for rewards.
|
||||
* This is a location-based lookup, and the other properties of the {@link BlockState} do not matter.
|
||||
*
|
||||
* @param block Block location to set
|
||||
* @param blockState BlockState to check
|
||||
* @return true if the given BlockState location is set to true, false if otherwise
|
||||
*/
|
||||
void setTrue(@NotNull Block block);
|
||||
boolean isIneligible(@NotNull BlockState blockState);
|
||||
|
||||
/**
|
||||
* Set a given {@link Block} as ineligible for rewards.
|
||||
* This is a location-based lookup, and the other properties of the {@link Block} do not matter.
|
||||
*
|
||||
* @param block block whose location to set as ineligible
|
||||
*/
|
||||
void setIneligible(@NotNull Block block);
|
||||
|
||||
/**
|
||||
* Set a given BlockState location to true
|
||||
*
|
||||
* @param blockState BlockState location to set
|
||||
*/
|
||||
void setTrue(@NotNull BlockState blockState);
|
||||
void setIneligible(@NotNull BlockState blockState);
|
||||
|
||||
/**
|
||||
* Set a given block location to false
|
||||
* Set a given {@link Block} as eligible for rewards.
|
||||
* This is a location-based lookup, and the other properties of the {@link Block} do not matter.
|
||||
*
|
||||
* @param block Block location to set
|
||||
* @param block block whose location to set as eligible
|
||||
*/
|
||||
void setFalse(@NotNull Block block);
|
||||
void setEligible(@NotNull Block block);
|
||||
|
||||
/**
|
||||
* Set a given BlockState location to false
|
||||
*
|
||||
* @param blockState BlockState location to set
|
||||
*/
|
||||
void setFalse(@NotNull BlockState blockState);
|
||||
void setEligible(@NotNull BlockState blockState);
|
||||
|
||||
/**
|
||||
* Check to see if a given block location is set to true
|
||||
*
|
||||
* @param block Block location to check
|
||||
* @return true if the given block location is set to true, false if otherwise
|
||||
* @deprecated Use {@link #isIneligible(Block)} instead
|
||||
*/
|
||||
@Deprecated(since = "2.2.013")
|
||||
default boolean isTrue(@NotNull Block block) {
|
||||
return isIneligible(block);
|
||||
}
|
||||
|
||||
/**
|
||||
* Check to see if a given BlockState location is set to true
|
||||
*
|
||||
* @param blockState BlockState to check
|
||||
* @return true if the given BlockState location is set to true, false if otherwise
|
||||
* @deprecated Use {@link #isIneligible(BlockState)} instead
|
||||
*/
|
||||
@Deprecated(since = "2.2.013")
|
||||
default boolean isTrue(@NotNull BlockState blockState) {
|
||||
return isIneligible(blockState);
|
||||
}
|
||||
|
||||
/**
|
||||
* Set a given block location to true
|
||||
*
|
||||
* @param block Block location to set
|
||||
* @deprecated Use {@link #setIneligible(Block)} instead
|
||||
*/
|
||||
@Deprecated(since = "2.2.013")
|
||||
default void setTrue(@NotNull Block block) {
|
||||
setIneligible(block);
|
||||
}
|
||||
|
||||
/**
|
||||
* Set a given BlockState location to true
|
||||
*
|
||||
* @param blockState BlockState location to set
|
||||
* @deprecated Use {@link #setIneligible(BlockState)} instead
|
||||
*/
|
||||
@Deprecated(since = "2.2.013")
|
||||
default void setTrue(@NotNull BlockState blockState) {
|
||||
setIneligible(blockState);
|
||||
}
|
||||
|
||||
/**
|
||||
* Set a given block location to false
|
||||
*
|
||||
* @param block Block location to set
|
||||
* @deprecated Use {@link #setEligible(Block)} instead
|
||||
*/
|
||||
@Deprecated(since = "2.2.013")
|
||||
default void setFalse(@NotNull Block block) {
|
||||
setEligible(block);
|
||||
}
|
||||
|
||||
/**
|
||||
* Set a given BlockState location to false
|
||||
*
|
||||
* @param blockState BlockState location to set
|
||||
* @deprecated Use {@link #setEligible(BlockState)} instead
|
||||
*/
|
||||
@Deprecated(since = "2.2.013")
|
||||
default void setFalse(@NotNull BlockState blockState) {
|
||||
setEligible(blockState);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user