Fix inventory quirk (#419)
This commit is contained in:
@@ -24,6 +24,7 @@ import com.drtshock.playervaults.vaultmanagement.VaultManager;
|
||||
import com.drtshock.playervaults.vaultmanagement.VaultViewInfo;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.entity.HumanEntity;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.EventPriority;
|
||||
@@ -38,6 +39,8 @@ import org.bukkit.event.player.PlayerTeleportEvent;
|
||||
import org.bukkit.inventory.Inventory;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public class Listeners implements Listener {
|
||||
|
||||
public final PlayerVaults plugin;
|
||||
@@ -53,10 +56,14 @@ public class Listeners implements Listener {
|
||||
Inventory inv = Bukkit.createInventory(null, 6 * 9);
|
||||
inv.setContents(inventory.getContents().clone());
|
||||
|
||||
if (inventory.getViewers().size() == 1) {
|
||||
PlayerVaults.debug(inventory.getType() + " " + inventory.getClass().getSimpleName());
|
||||
if (inventory.getViewers().size() <= 1) {
|
||||
PlayerVaults.debug("Saving!");
|
||||
VaultViewInfo info = plugin.getInVault().get(player.getUniqueId().toString());
|
||||
vaultManager.saveVault(inv, info.getVaultName(), info.getNumber());
|
||||
plugin.getOpenInventories().remove(info.toString());
|
||||
} else {
|
||||
PlayerVaults.debug("Other viewers found, not saving! " + inventory.getViewers().stream().map(HumanEntity::getName).collect(Collectors.joining(" ")));
|
||||
}
|
||||
|
||||
plugin.getInVault().remove(player.getUniqueId().toString());
|
||||
|
||||
Reference in New Issue
Block a user