From 80131ea2d96828d520a7277fc74ff4c025a69d2c Mon Sep 17 00:00:00 2001 From: EtienneDx Date: Thu, 14 May 2020 19:17:13 +0200 Subject: [PATCH] Permissions fixed for rents and allowed admins to use exit offers (#9 and #19) --- src/me/EtienneDx/RealEstate/RealEstate.java | 3 ++- src/me/EtienneDx/RealEstate/Transactions/ClaimRent.java | 4 ++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/me/EtienneDx/RealEstate/RealEstate.java b/src/me/EtienneDx/RealEstate/RealEstate.java index e33cd35..082623d 100644 --- a/src/me/EtienneDx/RealEstate/RealEstate.java +++ b/src/me/EtienneDx/RealEstate/RealEstate.java @@ -164,7 +164,8 @@ public class RealEstate extends JavaPlugin throw new ConditionFailedException("This command only applies to rented or leased claims!"); } if((((BoughtTransaction)tr).buyer != null && ((BoughtTransaction)tr).buyer.equals(context.getIssuer().getPlayer().getUniqueId())) || - (tr.getOwner() != null && tr.getOwner().equals(context.getIssuer().getPlayer().getUniqueId()))) + (tr.getOwner() != null && (tr.getOwner().equals(context.getIssuer().getPlayer().getUniqueId()))) || + (c.isAdminClaim() && RealEstate.perms.has(context.getIssuer().getPlayer(), "realestate.admin"))) { return; } diff --git a/src/me/EtienneDx/RealEstate/Transactions/ClaimRent.java b/src/me/EtienneDx/RealEstate/Transactions/ClaimRent.java index 1254030..a674778 100644 --- a/src/me/EtienneDx/RealEstate/Transactions/ClaimRent.java +++ b/src/me/EtienneDx/RealEstate/Transactions/ClaimRent.java @@ -126,6 +126,8 @@ public class ClaimRent extends BoughtTransaction { Claim claim = GriefPrevention.instance.dataStore.getClaimAt(sign, false, null); claim.dropPermission(buyer.toString()); + claim.managers.remove(buyer.toString()); + claim.setSubclaimRestrictions(false); GriefPrevention.instance.dataStore.saveClaim(claim); if(msgBuyer && Bukkit.getOfflinePlayer(buyer).isOnline() && RealEstate.instance.config.cfgMessageBuyer) { @@ -287,6 +289,8 @@ public class ClaimRent extends BoughtTransaction autoRenew = false; claim.setPermission(buyer.toString(), ClaimPermission.Build); claim.allowGrantPermission(player); + claim.managers.add(player.getUniqueId().toString()); + claim.setSubclaimRestrictions(true); GriefPrevention.instance.dataStore.saveClaim(claim); update(); RealEstate.transactionsStore.saveData();