/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package pw.hwk.tutorial.data; import java.util.UUID; import org.bukkit.GameMode; import org.bukkit.OfflinePlayer; import org.bukkit.entity.Player; import org.bukkit.inventory.Inventory; import org.bukkit.inventory.ItemStack; import pw.hwk.tutorial.ServerTutorial; import pw.hwk.tutorial.util.Base64Serialize; /** * * @author Frostalf */ public class TempPlayerData { private OfflinePlayer player; private UUID playerUUID; private Inventory inventory; private GameMode gameMode; private ItemStack[] armorItemStack; private static ServerTutorial plugin = ServerTutorial.getInstance(); public TempPlayerData(UUID playerUUID) { this.playerUUID = playerUUID; this.player = plugin.getServer().getOfflinePlayer(playerUUID); getTempPlayerData(); } private void getTempPlayerData() { this.inventory = Base64Serialize.fromBase64(DataLoading.getDataLoading().getTempData().getString("players." + this.playerUUID + ".inventory")); this.gameMode = GameMode.valueOf(DataLoading.getDataLoading().getTempData().getString("players." + this.playerUUID + ".gamemode")); this.armorItemStack = Base64Serialize.itemStackArrayFromBase64(DataLoading.getDataLoading().getTempData().getString("players." + this.playerUUID + ".armor")); } public Inventory getPlayerInventory() { return this.inventory; } public ItemStack[] getPlayerArmor() { return this.armorItemStack; } public GameMode getPlayerGameMode() { return this.gameMode; } public void restorePlayer() { if (player.isOnline()) { Player onlinePlayer = (Player)player; onlinePlayer.getInventory().setContents(getPlayerInventory().getContents()); onlinePlayer.getInventory().setArmorContents(getPlayerArmor()); onlinePlayer.setGameMode(getPlayerGameMode()); } } }