9
0
mirror of https://github.com/HibiscusMC/HMCCosmetics.git synced 2025-12-30 20:39:13 +00:00

move wardrobe to a manager

This commit is contained in:
LoJoSho
2023-02-07 14:55:54 -06:00
parent bdb52c0a32
commit 2e32b8d9d5
2 changed files with 17 additions and 17 deletions

View File

@@ -13,6 +13,7 @@ import com.hibiscusmc.hmccosmetics.cosmetic.types.CosmeticMainhandType;
import com.hibiscusmc.hmccosmetics.user.manager.UserBackpackManager;
import com.hibiscusmc.hmccosmetics.user.manager.UserBalloonManager;
import com.hibiscusmc.hmccosmetics.nms.NMSHandlers;
import com.hibiscusmc.hmccosmetics.user.manager.UserWardrobeManager;
import com.hibiscusmc.hmccosmetics.util.InventoryUtils;
import com.hibiscusmc.hmccosmetics.util.MessagesUtil;
import com.hibiscusmc.hmccosmetics.util.PlayerUtils;
@@ -21,8 +22,6 @@ import org.bukkit.Bukkit;
import org.bukkit.Color;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.entity.ArmorStand;
import org.bukkit.entity.Entity;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.*;
@@ -36,7 +35,7 @@ public class CosmeticUser {
private UUID uniqueId;
private int taskId;
private HashMap<CosmeticSlot, Cosmetic> playerCosmetics = new HashMap<>();
private Wardrobe wardrobe;
private UserWardrobeManager userWardrobeManager;
private UserBalloonManager userBalloonManager;
private UserBackpackManager userBackpackManager;
@@ -233,14 +232,14 @@ public class CosmeticUser {
return;
}
if (wardrobe == null) {
wardrobe = new Wardrobe(this, exitLocation, viewingLocation, npcLocation);
wardrobe.start();
if (userWardrobeManager == null) {
userWardrobeManager = new UserWardrobeManager(this, exitLocation, viewingLocation, npcLocation);
userWardrobeManager.start();
}
}
public Wardrobe getWardrobe() {
return wardrobe;
public UserWardrobeManager getWardrobe() {
return userWardrobeManager;
}
public void leaveWardrobe() {
@@ -249,9 +248,9 @@ public class CosmeticUser {
if (event.isCancelled()) {
return;
}
if (!getWardrobe().getWardrobeStatus().equals(Wardrobe.WardrobeStatus.RUNNING)) return;
if (!getWardrobe().getWardrobeStatus().equals(UserWardrobeManager.WardrobeStatus.RUNNING)) return;
getWardrobe().setWardrobeStatus(Wardrobe.WardrobeStatus.STOPPING);
getWardrobe().setWardrobeStatus(UserWardrobeManager.WardrobeStatus.STOPPING);
if (WardrobeSettings.isEnabledTransition()) {
MessagesUtil.sendTitle(
@@ -262,14 +261,14 @@ public class CosmeticUser {
WardrobeSettings.getTransitionFadeOut()
);
Bukkit.getScheduler().runTaskLater(HMCCosmeticsPlugin.getInstance(), () -> {
wardrobe.end();
wardrobe = null;
userWardrobeManager.end();
userWardrobeManager = null;
}, WardrobeSettings.getTransitionDelay());
}
}
public boolean isInWardrobe() {
if (wardrobe == null) return false;
if (userWardrobeManager == null) return false;
return true;
}

View File

@@ -1,10 +1,11 @@
package com.hibiscusmc.hmccosmetics.user;
package com.hibiscusmc.hmccosmetics.user.manager;
import com.hibiscusmc.hmccosmetics.HMCCosmeticsPlugin;
import com.hibiscusmc.hmccosmetics.config.Settings;
import com.hibiscusmc.hmccosmetics.config.WardrobeSettings;
import com.hibiscusmc.hmccosmetics.cosmetic.CosmeticSlot;
import com.hibiscusmc.hmccosmetics.nms.NMSHandlers;
import com.hibiscusmc.hmccosmetics.user.CosmeticUser;
import com.hibiscusmc.hmccosmetics.util.MessagesUtil;
import com.hibiscusmc.hmccosmetics.util.ServerUtils;
import com.hibiscusmc.hmccosmetics.util.packets.PacketManager;
@@ -26,7 +27,7 @@ import java.util.List;
import java.util.UUID;
import java.util.concurrent.atomic.AtomicInteger;
public class Wardrobe {
public class UserWardrobeManager {
private int NPC_ID;
private String npcName;
@@ -41,7 +42,7 @@ public class Wardrobe {
private boolean active;
private WardrobeStatus wardrobeStatus;
public Wardrobe(CosmeticUser user) {
public UserWardrobeManager(CosmeticUser user) {
NPC_ID = NMSHandlers.getHandler().getNextEntityId();
ARMORSTAND_ID = NMSHandlers.getHandler().getNextEntityId();
WARDROBE_UUID = UUID.randomUUID();
@@ -54,7 +55,7 @@ public class Wardrobe {
wardrobeStatus = WardrobeStatus.SETUP;
}
public Wardrobe(CosmeticUser user, Location exitLocation, Location viewingLocation, Location npcLocation) {
public UserWardrobeManager(CosmeticUser user, Location exitLocation, Location viewingLocation, Location npcLocation) {
NPC_ID = NMSHandlers.getHandler().getNextEntityId();
ARMORSTAND_ID = NMSHandlers.getHandler().getNextEntityId();
WARDROBE_UUID = UUID.randomUUID();