mirror of
https://github.com/HibiscusMC/HMCCosmetics.git
synced 2025-12-19 15:09:19 +00:00
Add hidden reason to internal code
This commit is contained in:
@@ -8,10 +8,12 @@ import org.bukkit.event.HandlerList;
|
||||
public class PlayerCosmeticHideEvent extends Event implements Cancellable {
|
||||
|
||||
private CosmeticUser user;
|
||||
private CosmeticUser.HiddenReason reason;
|
||||
private boolean isCancelled;
|
||||
|
||||
public PlayerCosmeticHideEvent(CosmeticUser user) {
|
||||
public PlayerCosmeticHideEvent(CosmeticUser user, CosmeticUser.HiddenReason reason) {
|
||||
this.user = user;
|
||||
this.reason = reason;
|
||||
this.isCancelled = false;
|
||||
}
|
||||
|
||||
@@ -39,4 +41,7 @@ public class PlayerCosmeticHideEvent extends Event implements Cancellable {
|
||||
public CosmeticUser getUser() {
|
||||
return user;
|
||||
}
|
||||
public CosmeticUser.HiddenReason getReason() {
|
||||
return reason;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -326,9 +326,8 @@ public class CosmeticCommand implements CommandExecutor {
|
||||
}
|
||||
|
||||
CosmeticUser user = CosmeticUsers.getUser(player);
|
||||
|
||||
MessagesUtil.sendMessage(sender, "hide-cosmetic");
|
||||
user.hideCosmetics();
|
||||
user.hideCosmetics(CosmeticUser.HiddenReason.PLUGIN);
|
||||
return true;
|
||||
}
|
||||
case ("show") -> {
|
||||
|
||||
@@ -30,7 +30,7 @@ public class WGListener implements Listener {
|
||||
}
|
||||
for (ProtectedRegion protectedRegion : set.getRegions()) {
|
||||
if (protectedRegion.getFlags().containsKey(WGHook.getCosmeticEnableFlag())) {
|
||||
user.hideCosmetics();
|
||||
user.hideCosmetics(CosmeticUser.HiddenReason.WORLDGUARD);
|
||||
return;
|
||||
}
|
||||
if (protectedRegion.getFlags().containsKey(WGHook.getCosmeticWardrobeFlag())) {
|
||||
|
||||
@@ -42,6 +42,7 @@ public class CosmeticUser {
|
||||
// Cosmetic Settings/Toggles
|
||||
private boolean hideBackpack;
|
||||
private boolean hideCosmetics;
|
||||
private HiddenReason hiddenReason;
|
||||
private HashMap<CosmeticSlot, Color> colors = new HashMap<>();
|
||||
|
||||
public CosmeticUser() {
|
||||
@@ -400,15 +401,16 @@ public class CosmeticUser {
|
||||
}
|
||||
}
|
||||
|
||||
public void hideCosmetics() {
|
||||
public void hideCosmetics(HiddenReason reason) {
|
||||
if (hideCosmetics == true) return;
|
||||
PlayerCosmeticHideEvent event = new PlayerCosmeticHideEvent(this);
|
||||
PlayerCosmeticHideEvent event = new PlayerCosmeticHideEvent(this, reason);
|
||||
Bukkit.getPluginManager().callEvent(event);
|
||||
if (event.isCancelled()) {
|
||||
return;
|
||||
}
|
||||
|
||||
hideCosmetics = true;
|
||||
hiddenReason = reason;
|
||||
if (hasCosmeticInSlot(CosmeticSlot.BALLOON)) {
|
||||
getBalloonEntity().removePlayerFromModel(getPlayer());
|
||||
List<Player> viewer = PlayerUtils.getNearbyPlayers(getPlayer());
|
||||
@@ -429,7 +431,9 @@ public class CosmeticUser {
|
||||
if (event.isCancelled()) {
|
||||
return;
|
||||
}
|
||||
|
||||
hideCosmetics = false;
|
||||
hiddenReason = HiddenReason.NONE;
|
||||
if (hasCosmeticInSlot(CosmeticSlot.BALLOON)) {
|
||||
CosmeticBalloonType balloonType = (CosmeticBalloonType) getCosmetic(CosmeticSlot.BALLOON);
|
||||
getBalloonEntity().addPlayerToModel(getPlayer(), balloonType);
|
||||
@@ -448,4 +452,14 @@ public class CosmeticUser {
|
||||
public boolean getHidden() {
|
||||
return this.hideCosmetics;
|
||||
}
|
||||
|
||||
public HiddenReason getHiddenReason() {
|
||||
return hiddenReason;
|
||||
}
|
||||
|
||||
public enum HiddenReason {
|
||||
NONE,
|
||||
WORLDGUARD,
|
||||
PLUGIN
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user