mirror of
https://github.com/Xiao-MoMi/Custom-Crops.git
synced 2025-12-22 16:39:36 +00:00
2.0.12
This commit is contained in:
@@ -4,7 +4,7 @@ plugins {
|
|||||||
}
|
}
|
||||||
|
|
||||||
group = 'net.momirealms'
|
group = 'net.momirealms'
|
||||||
version = '2.0.11-hotfix'
|
version = '2.0.12'
|
||||||
|
|
||||||
repositories {
|
repositories {
|
||||||
mavenCentral()
|
mavenCentral()
|
||||||
|
|||||||
@@ -78,6 +78,7 @@ public class ItemsAdderFrameHandler extends ItemsAdderHandler {
|
|||||||
if (!AntiGrief.testBreak(player, entity.getLocation())) return;
|
if (!AntiGrief.testBreak(player, entity.getLocation())) return;
|
||||||
if (!canProceedAction(player, entity.getLocation())) return;
|
if (!canProceedAction(player, entity.getLocation())) return;
|
||||||
CustomFurniture.remove(entity, false);
|
CustomFurniture.remove(entity, false);
|
||||||
|
if (entity.isValid()) entity.remove();
|
||||||
this.onInteractRipeCrop(location, namespacedID, player);
|
this.onInteractRipeCrop(location, namespacedID, player);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -229,6 +230,7 @@ public class ItemsAdderFrameHandler extends ItemsAdderHandler {
|
|||||||
String seedID = customFurniture.getNamespacedID();
|
String seedID = customFurniture.getNamespacedID();
|
||||||
if (seedID.contains("_stage_")) {
|
if (seedID.contains("_stage_")) {
|
||||||
CustomFurniture.remove(itemFrame, false);
|
CustomFurniture.remove(itemFrame, false);
|
||||||
|
if (itemFrame.isValid()) itemFrame.remove();
|
||||||
if (seedID.equals(BasicItemConfig.deadCrop)) return;
|
if (seedID.equals(BasicItemConfig.deadCrop)) return;
|
||||||
if (hasNextStage(seedID)) {
|
if (hasNextStage(seedID)) {
|
||||||
super.onBreakUnripeCrop(location);
|
super.onBreakUnripeCrop(location);
|
||||||
|
|||||||
@@ -21,6 +21,7 @@ import com.sk89q.worldedit.bukkit.BukkitAdapter;
|
|||||||
import com.sk89q.worldedit.math.BlockVector3;
|
import com.sk89q.worldedit.math.BlockVector3;
|
||||||
import com.sk89q.worldedit.world.World;
|
import com.sk89q.worldedit.world.World;
|
||||||
import com.sk89q.worldguard.LocalPlayer;
|
import com.sk89q.worldguard.LocalPlayer;
|
||||||
|
import com.sk89q.worldguard.WorldGuard;
|
||||||
import com.sk89q.worldguard.bukkit.WorldGuardPlugin;
|
import com.sk89q.worldguard.bukkit.WorldGuardPlugin;
|
||||||
import com.sk89q.worldguard.internal.platform.WorldGuardPlatform;
|
import com.sk89q.worldguard.internal.platform.WorldGuardPlatform;
|
||||||
import com.sk89q.worldguard.protection.flags.Flags;
|
import com.sk89q.worldguard.protection.flags.Flags;
|
||||||
@@ -37,10 +38,10 @@ public class WorldGuardHook implements AntiGrief {
|
|||||||
public boolean canPlace(Location location, Player player) {
|
public boolean canPlace(Location location, Player player) {
|
||||||
LocalPlayer localPlayer = WorldGuardPlugin.inst().wrapPlayer(player);
|
LocalPlayer localPlayer = WorldGuardPlugin.inst().wrapPlayer(player);
|
||||||
World world = BukkitAdapter.adapt(location.getWorld());
|
World world = BukkitAdapter.adapt(location.getWorld());
|
||||||
WorldGuardPlatform platform = com.sk89q.worldguard.WorldGuard.getInstance().getPlatform();
|
WorldGuardPlatform platform = WorldGuard.getInstance().getPlatform();
|
||||||
if (hasRegion(world, BukkitAdapter.asBlockVector(location))){
|
if (hasRegion(world, BukkitAdapter.asBlockVector(location))){
|
||||||
RegionQuery query = platform.getRegionContainer().createQuery();
|
RegionQuery query = platform.getRegionContainer().createQuery();
|
||||||
return query.testBuild(BukkitAdapter.adapt(location), localPlayer, Flags.BUILD);
|
return query.testState(BukkitAdapter.adapt(location), localPlayer, Flags.BUILD);
|
||||||
}
|
}
|
||||||
else return true;
|
else return true;
|
||||||
}
|
}
|
||||||
@@ -49,16 +50,16 @@ public class WorldGuardHook implements AntiGrief {
|
|||||||
public boolean canBreak(Location location, Player player) {
|
public boolean canBreak(Location location, Player player) {
|
||||||
LocalPlayer localPlayer = WorldGuardPlugin.inst().wrapPlayer(player);
|
LocalPlayer localPlayer = WorldGuardPlugin.inst().wrapPlayer(player);
|
||||||
World world = BukkitAdapter.adapt(location.getWorld());
|
World world = BukkitAdapter.adapt(location.getWorld());
|
||||||
WorldGuardPlatform platform = com.sk89q.worldguard.WorldGuard.getInstance().getPlatform();
|
WorldGuardPlatform platform = WorldGuard.getInstance().getPlatform();
|
||||||
if (hasRegion(world, BukkitAdapter.asBlockVector(location))){
|
if (hasRegion(world, BukkitAdapter.asBlockVector(location))){
|
||||||
RegionQuery query = platform.getRegionContainer().createQuery();
|
RegionQuery query = platform.getRegionContainer().createQuery();
|
||||||
return query.testBuild(BukkitAdapter.adapt(location), localPlayer, Flags.BLOCK_BREAK);
|
return query.testState(BukkitAdapter.adapt(location), localPlayer, Flags.BLOCK_BREAK);
|
||||||
}
|
}
|
||||||
else return true;
|
else return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean hasRegion(World world, BlockVector3 vector){
|
private boolean hasRegion(World world, BlockVector3 vector){
|
||||||
RegionContainer container = com.sk89q.worldguard.WorldGuard.getInstance().getPlatform().getRegionContainer();
|
RegionContainer container = WorldGuard.getInstance().getPlatform().getRegionContainer();
|
||||||
RegionManager regionManager = container.get(world);
|
RegionManager regionManager = container.get(world);
|
||||||
if (regionManager == null) return true;
|
if (regionManager == null) return true;
|
||||||
return regionManager.getApplicableRegions(vector).size() > 0;
|
return regionManager.getApplicableRegions(vector).size() > 0;
|
||||||
|
|||||||
Reference in New Issue
Block a user