mirror of
https://github.com/bloodmc/GriefDefender.git
synced 2025-02-12 01:11:29 +01:00
1.3.4 Update
* Fix deleteChunkHash NPE. * Ignore '/claimrent' command in wilderness.
This commit is contained in:
parent
cf2d6047cb
commit
1639945a1d
@ -387,9 +387,9 @@ private void deleteChunkHashes(GDClaim claim) {
|
|||||||
Set<Claim> claimsInChunk = this.chunksToClaimsMap.get(chunkHash);
|
Set<Claim> claimsInChunk = this.chunksToClaimsMap.get(chunkHash);
|
||||||
if (claimsInChunk != null) {
|
if (claimsInChunk != null) {
|
||||||
claimsInChunk.remove(claim);
|
claimsInChunk.remove(claim);
|
||||||
}
|
if (claimsInChunk.isEmpty()) {
|
||||||
if (claimsInChunk.isEmpty()) {
|
this.chunksToClaimsMap.remove(chunkHash);
|
||||||
this.chunksToClaimsMap.remove(chunkHash);
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -110,6 +110,9 @@ public void execute(Player player, @Optional String[] args) {
|
|||||||
if (subCommand.equalsIgnoreCase("cancel")) {
|
if (subCommand.equalsIgnoreCase("cancel")) {
|
||||||
final GDPlayerData playerData = GriefDefenderPlugin.getInstance().dataStore.getOrCreatePlayerData(player.getWorld(), player.getUniqueId());
|
final GDPlayerData playerData = GriefDefenderPlugin.getInstance().dataStore.getOrCreatePlayerData(player.getWorld(), player.getUniqueId());
|
||||||
final GDClaim claim = GriefDefenderPlugin.getInstance().dataStore.getClaimAtPlayer(playerData, player.getLocation());
|
final GDClaim claim = GriefDefenderPlugin.getInstance().dataStore.getClaimAtPlayer(playerData, player.getLocation());
|
||||||
|
if (claim.isWilderness()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
boolean isRenter = false;
|
boolean isRenter = false;
|
||||||
for (UUID uuid : claim.getEconomyData().getRenters()) {
|
for (UUID uuid : claim.getEconomyData().getRenters()) {
|
||||||
if (player.getUniqueId().equals(uuid)) {
|
if (player.getUniqueId().equals(uuid)) {
|
||||||
@ -135,6 +138,9 @@ public void execute(Player player, @Optional String[] args) {
|
|||||||
|
|
||||||
final GDPlayerData playerData = GriefDefenderPlugin.getInstance().dataStore.getOrCreatePlayerData(player.getWorld(), player.getUniqueId());
|
final GDPlayerData playerData = GriefDefenderPlugin.getInstance().dataStore.getOrCreatePlayerData(player.getWorld(), player.getUniqueId());
|
||||||
final GDClaim claim = GriefDefenderPlugin.getInstance().dataStore.getClaimAtPlayer(playerData, player.getLocation());
|
final GDClaim claim = GriefDefenderPlugin.getInstance().dataStore.getClaimAtPlayer(playerData, player.getLocation());
|
||||||
|
if (claim.isWilderness()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (playerData.canIgnoreClaim(claim) || player.hasPermission(GDPermissions.COMMAND_DELETE_ADMIN_CLAIMS)) {
|
if (playerData.canIgnoreClaim(claim) || player.hasPermission(GDPermissions.COMMAND_DELETE_ADMIN_CLAIMS)) {
|
||||||
final GDPermissionUser renter = PermissionHolderCache.getInstance().getOrCreateUser(args[1]);
|
final GDPermissionUser renter = PermissionHolderCache.getInstance().getOrCreateUser(args[1]);
|
||||||
if (renter != null) {
|
if (renter != null) {
|
||||||
@ -217,6 +223,9 @@ public void execute(Player player, @Optional String[] args) {
|
|||||||
} else if (subCommand.equalsIgnoreCase("info")) {
|
} else if (subCommand.equalsIgnoreCase("info")) {
|
||||||
final GDPlayerData playerData = GriefDefenderPlugin.getInstance().dataStore.getOrCreatePlayerData(player.getWorld(), player.getUniqueId());
|
final GDPlayerData playerData = GriefDefenderPlugin.getInstance().dataStore.getOrCreatePlayerData(player.getWorld(), player.getUniqueId());
|
||||||
final GDClaim claim = GriefDefenderPlugin.getInstance().dataStore.getClaimAtPlayer(playerData, player.getLocation());
|
final GDClaim claim = GriefDefenderPlugin.getInstance().dataStore.getClaimAtPlayer(playerData, player.getLocation());
|
||||||
|
if (claim.isWilderness()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
final UUID ownerUniqueId = claim.getOwnerUniqueId();
|
final UUID ownerUniqueId = claim.getOwnerUniqueId();
|
||||||
final boolean isAdmin = player.getUniqueId().equals(ownerUniqueId) || player.hasPermission(GDPermissions.COMMAND_DELETE_ADMIN_CLAIMS) || claim.allowEdit(player) == null;
|
final boolean isAdmin = player.getUniqueId().equals(ownerUniqueId) || player.hasPermission(GDPermissions.COMMAND_DELETE_ADMIN_CLAIMS) || claim.allowEdit(player) == null;
|
||||||
List<Component> textList = new ArrayList<>();
|
List<Component> textList = new ArrayList<>();
|
||||||
|
@ -3,5 +3,5 @@ main: com.griefdefender.GDBootstrap
|
|||||||
softdepend: [dynmap, PlaceholderAPI, WorldEdit, WorldGuard, Vault]
|
softdepend: [dynmap, PlaceholderAPI, WorldEdit, WorldGuard, Vault]
|
||||||
depend: [LuckPerms]
|
depend: [LuckPerms]
|
||||||
load: STARTUP
|
load: STARTUP
|
||||||
version: '1.3.3'
|
version: '1.3.4'
|
||||||
api-version: 1.13
|
api-version: 1.13
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
name=GriefDefender
|
name=GriefDefender
|
||||||
group=com.griefdefender
|
group=com.griefdefender
|
||||||
url=https://github.com/bloodmc/GriefDefender
|
url=https://github.com/bloodmc/GriefDefender
|
||||||
version=1.3.3
|
version=1.3.4
|
||||||
apiVersion=1.0.0-20200528.202302-24
|
apiVersion=1.0.0-20200528.202302-24
|
||||||
# Bukkit
|
# Bukkit
|
||||||
adapterVersion=1.15.2-20200608.154231-14
|
adapterVersion=1.15.2-20200608.154231-14
|
||||||
|
@ -109,6 +109,9 @@ public void execute(Player player, @Optional String[] args) {
|
|||||||
if (subCommand.equalsIgnoreCase("cancel")) {
|
if (subCommand.equalsIgnoreCase("cancel")) {
|
||||||
final GDPlayerData playerData = GriefDefenderPlugin.getInstance().dataStore.getOrCreatePlayerData(player.getWorld(), player.getUniqueId());
|
final GDPlayerData playerData = GriefDefenderPlugin.getInstance().dataStore.getOrCreatePlayerData(player.getWorld(), player.getUniqueId());
|
||||||
final GDClaim claim = GriefDefenderPlugin.getInstance().dataStore.getClaimAtPlayer(playerData, player.getLocation());
|
final GDClaim claim = GriefDefenderPlugin.getInstance().dataStore.getClaimAtPlayer(playerData, player.getLocation());
|
||||||
|
if (claim.isWilderness()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
boolean isRenter = false;
|
boolean isRenter = false;
|
||||||
for (UUID uuid : claim.getEconomyData().getRenters()) {
|
for (UUID uuid : claim.getEconomyData().getRenters()) {
|
||||||
if (player.getUniqueId().equals(uuid)) {
|
if (player.getUniqueId().equals(uuid)) {
|
||||||
@ -134,6 +137,9 @@ public void execute(Player player, @Optional String[] args) {
|
|||||||
|
|
||||||
final GDPlayerData playerData = GriefDefenderPlugin.getInstance().dataStore.getOrCreatePlayerData(player.getWorld(), player.getUniqueId());
|
final GDPlayerData playerData = GriefDefenderPlugin.getInstance().dataStore.getOrCreatePlayerData(player.getWorld(), player.getUniqueId());
|
||||||
final GDClaim claim = GriefDefenderPlugin.getInstance().dataStore.getClaimAtPlayer(playerData, player.getLocation());
|
final GDClaim claim = GriefDefenderPlugin.getInstance().dataStore.getClaimAtPlayer(playerData, player.getLocation());
|
||||||
|
if (claim.isWilderness()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (playerData.canIgnoreClaim(claim) || player.hasPermission(GDPermissions.COMMAND_DELETE_ADMIN_CLAIMS)) {
|
if (playerData.canIgnoreClaim(claim) || player.hasPermission(GDPermissions.COMMAND_DELETE_ADMIN_CLAIMS)) {
|
||||||
final GDPermissionUser renter = PermissionHolderCache.getInstance().getOrCreateUser(args[1]);
|
final GDPermissionUser renter = PermissionHolderCache.getInstance().getOrCreateUser(args[1]);
|
||||||
if (renter != null) {
|
if (renter != null) {
|
||||||
@ -216,6 +222,9 @@ public void execute(Player player, @Optional String[] args) {
|
|||||||
} else if (subCommand.equalsIgnoreCase("info")) {
|
} else if (subCommand.equalsIgnoreCase("info")) {
|
||||||
final GDPlayerData playerData = GriefDefenderPlugin.getInstance().dataStore.getOrCreatePlayerData(player.getWorld(), player.getUniqueId());
|
final GDPlayerData playerData = GriefDefenderPlugin.getInstance().dataStore.getOrCreatePlayerData(player.getWorld(), player.getUniqueId());
|
||||||
final GDClaim claim = GriefDefenderPlugin.getInstance().dataStore.getClaimAtPlayer(playerData, player.getLocation());
|
final GDClaim claim = GriefDefenderPlugin.getInstance().dataStore.getClaimAtPlayer(playerData, player.getLocation());
|
||||||
|
if (claim.isWilderness()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (!claim.getEconomyData().isForRent() && !claim.getEconomyData().isRented()) {
|
if (!claim.getEconomyData().isForRent() && !claim.getEconomyData().isRented()) {
|
||||||
if (player.getUniqueId().equals(claim.getOwnerUniqueId())) {
|
if (player.getUniqueId().equals(claim.getOwnerUniqueId())) {
|
||||||
GriefDefenderPlugin.sendMessage(player, MessageCache.getInstance().ECONOMY_CLAIM_RENT_OWNER_NOT_RENTING);
|
GriefDefenderPlugin.sendMessage(player, MessageCache.getInstance().ECONOMY_CLAIM_RENT_OWNER_NOT_RENTING);
|
||||||
|
Loading…
Reference in New Issue
Block a user