Compare commits
2 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
7256494df3 | ||
|
1fbaa5b2a9 |
@@ -40,6 +40,7 @@ public class OpenEnderPluginCommand implements CommandExecutor {
|
||||
this.plugin = plugin;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
|
||||
if (!(sender instanceof Player)) {
|
||||
sender.sendMessage(ChatColor.RED + "You can't use this from the console.");
|
||||
@@ -72,6 +73,7 @@ public class OpenEnderPluginCommand implements CommandExecutor {
|
||||
}
|
||||
|
||||
new BukkitRunnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
List<Player> matches = Bukkit.matchPlayer(name);
|
||||
final OfflinePlayer offlinePlayer;
|
||||
@@ -83,11 +85,12 @@ public class OpenEnderPluginCommand implements CommandExecutor {
|
||||
if (!player.isOnline()) {
|
||||
return;
|
||||
}
|
||||
if (offlinePlayer == null || !offlinePlayer.hasPlayedBefore()) {
|
||||
if (offlinePlayer == null || !offlinePlayer.hasPlayedBefore() && !offlinePlayer.isOnline()) {
|
||||
player.sendMessage(ChatColor.RED + "Player not found!");
|
||||
return;
|
||||
}
|
||||
new BukkitRunnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
if (!player.isOnline()) {
|
||||
return;
|
||||
|
@@ -40,6 +40,7 @@ public class OpenInvPluginCommand implements CommandExecutor {
|
||||
this.plugin = plugin;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
|
||||
if (!(sender instanceof Player)) {
|
||||
sender.sendMessage(ChatColor.RED + "You can't use this from the console.");
|
||||
@@ -72,6 +73,7 @@ public class OpenInvPluginCommand implements CommandExecutor {
|
||||
}
|
||||
|
||||
new BukkitRunnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
List<Player> matches = Bukkit.matchPlayer(name);
|
||||
final OfflinePlayer offlinePlayer;
|
||||
@@ -83,11 +85,12 @@ public class OpenInvPluginCommand implements CommandExecutor {
|
||||
if (!player.isOnline()) {
|
||||
return;
|
||||
}
|
||||
if (offlinePlayer == null || !offlinePlayer.hasPlayedBefore()) {
|
||||
if (offlinePlayer == null || !offlinePlayer.hasPlayedBefore() && !offlinePlayer.isOnline()) {
|
||||
player.sendMessage(ChatColor.RED + "Player not found!");
|
||||
return;
|
||||
}
|
||||
new BukkitRunnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
if (!player.isOnline()) {
|
||||
return;
|
||||
|
@@ -23,9 +23,9 @@ public interface ISpecialEnderChest {
|
||||
|
||||
public Inventory getBukkitInventory();
|
||||
|
||||
public boolean inventoryRemovalCheck();
|
||||
public boolean inventoryRemovalCheck(boolean save);
|
||||
|
||||
public void setPlayerOnline(Player p);
|
||||
public void setPlayerOnline(Player player);
|
||||
|
||||
/**
|
||||
* Sets the Player associated with this ISpecialEnderChest offline.
|
||||
|
@@ -41,7 +41,7 @@ import org.bukkit.craftbukkit.v1_4_5.inventory.CraftInventory;
|
||||
public class SpecialEnderChest extends InventorySubcontainer implements IInventory, ISpecialEnderChest {
|
||||
public List<HumanEntity> transaction = new ArrayList<HumanEntity>();
|
||||
public boolean playerOnline = false;
|
||||
private final CraftPlayer owner;
|
||||
private CraftPlayer owner;
|
||||
private final InventoryEnderChest enderChest;
|
||||
private int maxStack = MAX_STACK;
|
||||
private final CraftInventory inventory = new CraftInventory(this);
|
||||
@@ -60,22 +60,25 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean inventoryRemovalCheck() {
|
||||
owner.saveData();
|
||||
return transaction.isEmpty() && !playerOnline;
|
||||
public boolean inventoryRemovalCheck(boolean save) {
|
||||
boolean offline = transaction.isEmpty() && !playerOnline;
|
||||
if (offline && save) {
|
||||
owner.saveData();
|
||||
}
|
||||
return offline;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setPlayerOnline(Player p) {
|
||||
public void setPlayerOnline(Player player) {
|
||||
if (!playerOnline) {
|
||||
try {
|
||||
InventoryEnderChest playerEnderChest = ((CraftPlayer) p).getHandle().getEnderChest();
|
||||
owner = (CraftPlayer) player;
|
||||
InventoryEnderChest playerEnderChest = owner.getHandle().getEnderChest();
|
||||
Field field = playerEnderChest.getClass().getField("items");
|
||||
field.setAccessible(true);
|
||||
field.set(playerEnderChest, this.items);
|
||||
}
|
||||
catch (Exception e) {}
|
||||
p.saveData();
|
||||
playerOnline = true;
|
||||
}
|
||||
}
|
||||
@@ -83,7 +86,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public boolean setPlayerOffline() {
|
||||
playerOnline = false;
|
||||
return this.inventoryRemovalCheck();
|
||||
return inventoryRemovalCheck(false);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -99,7 +102,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public void onClose(CraftHumanEntity who) {
|
||||
transaction.remove(who);
|
||||
this.inventoryRemovalCheck();
|
||||
this.inventoryRemovalCheck(true);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -41,7 +41,7 @@ import org.bukkit.craftbukkit.v1_4_6.inventory.CraftInventory;
|
||||
public class SpecialEnderChest extends InventorySubcontainer implements IInventory, ISpecialEnderChest {
|
||||
public List<HumanEntity> transaction = new ArrayList<HumanEntity>();
|
||||
public boolean playerOnline = false;
|
||||
private final CraftPlayer owner;
|
||||
private CraftPlayer owner;
|
||||
private final InventoryEnderChest enderChest;
|
||||
private int maxStack = MAX_STACK;
|
||||
private final CraftInventory inventory = new CraftInventory(this);
|
||||
@@ -60,22 +60,25 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean inventoryRemovalCheck() {
|
||||
owner.saveData();
|
||||
return transaction.isEmpty() && !playerOnline;
|
||||
public boolean inventoryRemovalCheck(boolean save) {
|
||||
boolean offline = transaction.isEmpty() && !playerOnline;
|
||||
if (offline && save) {
|
||||
owner.saveData();
|
||||
}
|
||||
return offline;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setPlayerOnline(Player p) {
|
||||
public void setPlayerOnline(Player player) {
|
||||
if (!playerOnline) {
|
||||
try {
|
||||
InventoryEnderChest playerEnderChest = ((CraftPlayer) p).getHandle().getEnderChest();
|
||||
owner = (CraftPlayer) player;
|
||||
InventoryEnderChest playerEnderChest = owner.getHandle().getEnderChest();
|
||||
Field field = playerEnderChest.getClass().getField("items");
|
||||
field.setAccessible(true);
|
||||
field.set(playerEnderChest, this.items);
|
||||
}
|
||||
catch (Exception e) {}
|
||||
p.saveData();
|
||||
playerOnline = true;
|
||||
}
|
||||
}
|
||||
@@ -83,7 +86,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public boolean setPlayerOffline() {
|
||||
playerOnline = false;
|
||||
return inventoryRemovalCheck();
|
||||
return inventoryRemovalCheck(false);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -99,7 +102,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public void onClose(CraftHumanEntity who) {
|
||||
transaction.remove(who);
|
||||
this.inventoryRemovalCheck();
|
||||
this.inventoryRemovalCheck(true);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -41,7 +41,7 @@ import org.bukkit.craftbukkit.v1_4_R1.inventory.CraftInventory;
|
||||
public class SpecialEnderChest extends InventorySubcontainer implements IInventory, ISpecialEnderChest {
|
||||
public List<HumanEntity> transaction = new ArrayList<HumanEntity>();
|
||||
public boolean playerOnline = false;
|
||||
private final CraftPlayer owner;
|
||||
private CraftPlayer owner;
|
||||
private final InventoryEnderChest enderChest;
|
||||
private int maxStack = MAX_STACK;
|
||||
private final CraftInventory inventory = new CraftInventory(this);
|
||||
@@ -60,22 +60,25 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean inventoryRemovalCheck() {
|
||||
owner.saveData();
|
||||
return transaction.isEmpty() && !playerOnline;
|
||||
public boolean inventoryRemovalCheck(boolean save) {
|
||||
boolean offline = transaction.isEmpty() && !playerOnline;
|
||||
if (offline && save) {
|
||||
owner.saveData();
|
||||
}
|
||||
return offline;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setPlayerOnline(Player p) {
|
||||
public void setPlayerOnline(Player player) {
|
||||
if (!playerOnline) {
|
||||
try {
|
||||
InventoryEnderChest playerEnderChest = ((CraftPlayer) p).getHandle().getEnderChest();
|
||||
owner = (CraftPlayer) player;
|
||||
InventoryEnderChest playerEnderChest = owner.getHandle().getEnderChest();
|
||||
Field field = playerEnderChest.getClass().getField("items");
|
||||
field.setAccessible(true);
|
||||
field.set(playerEnderChest, this.items);
|
||||
}
|
||||
catch (Exception e) {}
|
||||
p.saveData();
|
||||
playerOnline = true;
|
||||
}
|
||||
}
|
||||
@@ -83,7 +86,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public boolean setPlayerOffline() {
|
||||
playerOnline = false;
|
||||
return inventoryRemovalCheck();
|
||||
return inventoryRemovalCheck(false);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -99,7 +102,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public void onClose(CraftHumanEntity who) {
|
||||
transaction.remove(who);
|
||||
this.inventoryRemovalCheck();
|
||||
this.inventoryRemovalCheck(true);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -41,7 +41,7 @@ import org.bukkit.craftbukkit.v1_5_R2.inventory.CraftInventory;
|
||||
public class SpecialEnderChest extends InventorySubcontainer implements IInventory, ISpecialEnderChest {
|
||||
public List<HumanEntity> transaction = new ArrayList<HumanEntity>();
|
||||
public boolean playerOnline = false;
|
||||
private final CraftPlayer owner;
|
||||
private CraftPlayer owner;
|
||||
private final InventoryEnderChest enderChest;
|
||||
private int maxStack = MAX_STACK;
|
||||
private final CraftInventory inventory = new CraftInventory(this);
|
||||
@@ -60,22 +60,25 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean inventoryRemovalCheck() {
|
||||
owner.saveData();
|
||||
return transaction.isEmpty() && !playerOnline;
|
||||
public boolean inventoryRemovalCheck(boolean save) {
|
||||
boolean offline = transaction.isEmpty() && !playerOnline;
|
||||
if (offline && save) {
|
||||
owner.saveData();
|
||||
}
|
||||
return offline;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setPlayerOnline(Player p) {
|
||||
public void setPlayerOnline(Player player) {
|
||||
if (!playerOnline) {
|
||||
try {
|
||||
InventoryEnderChest playerEnderChest = ((CraftPlayer) p).getHandle().getEnderChest();
|
||||
owner = (CraftPlayer) player;
|
||||
InventoryEnderChest playerEnderChest = owner.getHandle().getEnderChest();
|
||||
Field field = playerEnderChest.getClass().getField("items");
|
||||
field.setAccessible(true);
|
||||
field.set(playerEnderChest, this.items);
|
||||
}
|
||||
catch (Exception e) {}
|
||||
p.saveData();
|
||||
playerOnline = true;
|
||||
}
|
||||
}
|
||||
@@ -83,7 +86,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public boolean setPlayerOffline() {
|
||||
playerOnline = false;
|
||||
return inventoryRemovalCheck();
|
||||
return inventoryRemovalCheck(false);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -99,7 +102,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public void onClose(CraftHumanEntity who) {
|
||||
transaction.remove(who);
|
||||
this.inventoryRemovalCheck();
|
||||
this.inventoryRemovalCheck(true);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -41,7 +41,7 @@ import org.bukkit.craftbukkit.v1_5_R3.inventory.CraftInventory;
|
||||
public class SpecialEnderChest extends InventorySubcontainer implements IInventory, ISpecialEnderChest {
|
||||
public List<HumanEntity> transaction = new ArrayList<HumanEntity>();
|
||||
public boolean playerOnline = false;
|
||||
private final CraftPlayer owner;
|
||||
private CraftPlayer owner;
|
||||
private final InventoryEnderChest enderChest;
|
||||
private int maxStack = MAX_STACK;
|
||||
private final CraftInventory inventory = new CraftInventory(this);
|
||||
@@ -60,22 +60,25 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean inventoryRemovalCheck() {
|
||||
owner.saveData();
|
||||
return transaction.isEmpty() && !playerOnline;
|
||||
public boolean inventoryRemovalCheck(boolean save) {
|
||||
boolean offline = transaction.isEmpty() && !playerOnline;
|
||||
if (offline && save) {
|
||||
owner.saveData();
|
||||
}
|
||||
return offline;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setPlayerOnline(Player p) {
|
||||
public void setPlayerOnline(Player player) {
|
||||
if (!playerOnline) {
|
||||
try {
|
||||
InventoryEnderChest playerEnderChest = ((CraftPlayer) p).getHandle().getEnderChest();
|
||||
owner = (CraftPlayer) player;
|
||||
InventoryEnderChest playerEnderChest = owner.getHandle().getEnderChest();
|
||||
Field field = playerEnderChest.getClass().getField("items");
|
||||
field.setAccessible(true);
|
||||
field.set(playerEnderChest, this.items);
|
||||
}
|
||||
catch (Exception e) {}
|
||||
p.saveData();
|
||||
playerOnline = true;
|
||||
}
|
||||
}
|
||||
@@ -83,7 +86,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public boolean setPlayerOffline() {
|
||||
playerOnline = false;
|
||||
return inventoryRemovalCheck();
|
||||
return inventoryRemovalCheck(false);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -99,7 +102,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public void onClose(CraftHumanEntity who) {
|
||||
transaction.remove(who);
|
||||
this.inventoryRemovalCheck();
|
||||
this.inventoryRemovalCheck(true);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -41,7 +41,7 @@ import org.bukkit.craftbukkit.v1_6_R1.inventory.CraftInventory;
|
||||
public class SpecialEnderChest extends InventorySubcontainer implements IInventory, ISpecialEnderChest {
|
||||
public List<HumanEntity> transaction = new ArrayList<HumanEntity>();
|
||||
public boolean playerOnline = false;
|
||||
private final CraftPlayer owner;
|
||||
private CraftPlayer owner;
|
||||
private final InventoryEnderChest enderChest;
|
||||
private int maxStack = MAX_STACK;
|
||||
private final CraftInventory inventory = new CraftInventory(this);
|
||||
@@ -60,22 +60,25 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean inventoryRemovalCheck() {
|
||||
owner.saveData();
|
||||
return transaction.isEmpty() && !playerOnline;
|
||||
public boolean inventoryRemovalCheck(boolean save) {
|
||||
boolean offline = transaction.isEmpty() && !playerOnline;
|
||||
if (offline && save) {
|
||||
owner.saveData();
|
||||
}
|
||||
return offline;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setPlayerOnline(Player p) {
|
||||
public void setPlayerOnline(Player player) {
|
||||
if (!playerOnline) {
|
||||
try {
|
||||
InventoryEnderChest playerEnderChest = ((CraftPlayer) p).getHandle().getEnderChest();
|
||||
owner = (CraftPlayer) player;
|
||||
InventoryEnderChest playerEnderChest = owner.getHandle().getEnderChest();
|
||||
Field field = playerEnderChest.getClass().getField("items");
|
||||
field.setAccessible(true);
|
||||
field.set(playerEnderChest, this.items);
|
||||
}
|
||||
catch (Exception e) {}
|
||||
p.saveData();
|
||||
playerOnline = true;
|
||||
}
|
||||
}
|
||||
@@ -83,7 +86,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public boolean setPlayerOffline() {
|
||||
playerOnline = false;
|
||||
return inventoryRemovalCheck();
|
||||
return inventoryRemovalCheck(false);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -99,7 +102,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public void onClose(CraftHumanEntity who) {
|
||||
transaction.remove(who);
|
||||
this.inventoryRemovalCheck();
|
||||
this.inventoryRemovalCheck(true);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -41,7 +41,7 @@ import org.bukkit.craftbukkit.v1_6_R2.inventory.CraftInventory;
|
||||
public class SpecialEnderChest extends InventorySubcontainer implements IInventory, ISpecialEnderChest {
|
||||
public List<HumanEntity> transaction = new ArrayList<HumanEntity>();
|
||||
public boolean playerOnline = false;
|
||||
private final CraftPlayer owner;
|
||||
private CraftPlayer owner;
|
||||
private final InventoryEnderChest enderChest;
|
||||
private int maxStack = MAX_STACK;
|
||||
private final CraftInventory inventory = new CraftInventory(this);
|
||||
@@ -60,22 +60,25 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean inventoryRemovalCheck() {
|
||||
owner.saveData();
|
||||
return transaction.isEmpty() && !playerOnline;
|
||||
public boolean inventoryRemovalCheck(boolean save) {
|
||||
boolean offline = transaction.isEmpty() && !playerOnline;
|
||||
if (offline && save) {
|
||||
owner.saveData();
|
||||
}
|
||||
return offline;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setPlayerOnline(Player p) {
|
||||
public void setPlayerOnline(Player player) {
|
||||
if (!playerOnline) {
|
||||
try {
|
||||
InventoryEnderChest playerEnderChest = ((CraftPlayer) p).getHandle().getEnderChest();
|
||||
owner = (CraftPlayer) player;
|
||||
InventoryEnderChest playerEnderChest = owner.getHandle().getEnderChest();
|
||||
Field field = playerEnderChest.getClass().getField("items");
|
||||
field.setAccessible(true);
|
||||
field.set(playerEnderChest, this.items);
|
||||
}
|
||||
catch (Exception e) {}
|
||||
p.saveData();
|
||||
playerOnline = true;
|
||||
}
|
||||
}
|
||||
@@ -83,7 +86,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public boolean setPlayerOffline() {
|
||||
playerOnline = false;
|
||||
return inventoryRemovalCheck();
|
||||
return inventoryRemovalCheck(false);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -99,7 +102,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public void onClose(CraftHumanEntity who) {
|
||||
transaction.remove(who);
|
||||
this.inventoryRemovalCheck();
|
||||
this.inventoryRemovalCheck(true);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -41,7 +41,7 @@ import org.bukkit.craftbukkit.v1_6_R3.inventory.CraftInventory;
|
||||
public class SpecialEnderChest extends InventorySubcontainer implements IInventory, ISpecialEnderChest {
|
||||
public List<HumanEntity> transaction = new ArrayList<HumanEntity>();
|
||||
public boolean playerOnline = false;
|
||||
private final CraftPlayer owner;
|
||||
private CraftPlayer owner;
|
||||
private final InventoryEnderChest enderChest;
|
||||
private int maxStack = MAX_STACK;
|
||||
private final CraftInventory inventory = new CraftInventory(this);
|
||||
@@ -60,22 +60,25 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean inventoryRemovalCheck() {
|
||||
owner.saveData();
|
||||
return transaction.isEmpty() && !playerOnline;
|
||||
public boolean inventoryRemovalCheck(boolean save) {
|
||||
boolean offline = transaction.isEmpty() && !playerOnline;
|
||||
if (offline && save) {
|
||||
owner.saveData();
|
||||
}
|
||||
return offline;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setPlayerOnline(Player p) {
|
||||
public void setPlayerOnline(Player player) {
|
||||
if (!playerOnline) {
|
||||
try {
|
||||
InventoryEnderChest playerEnderChest = ((CraftPlayer) p).getHandle().getEnderChest();
|
||||
owner = (CraftPlayer) player;
|
||||
InventoryEnderChest playerEnderChest = owner.getHandle().getEnderChest();
|
||||
Field field = playerEnderChest.getClass().getField("items");
|
||||
field.setAccessible(true);
|
||||
field.set(playerEnderChest, this.items);
|
||||
}
|
||||
catch (Exception e) {}
|
||||
p.saveData();
|
||||
playerOnline = true;
|
||||
}
|
||||
}
|
||||
@@ -83,7 +86,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public boolean setPlayerOffline() {
|
||||
playerOnline = false;
|
||||
return inventoryRemovalCheck();
|
||||
return inventoryRemovalCheck(false);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -99,7 +102,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public void onClose(CraftHumanEntity who) {
|
||||
transaction.remove(who);
|
||||
this.inventoryRemovalCheck();
|
||||
this.inventoryRemovalCheck(true);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -41,7 +41,7 @@ import org.bukkit.craftbukkit.v1_7_R1.inventory.CraftInventory;
|
||||
public class SpecialEnderChest extends InventorySubcontainer implements IInventory, ISpecialEnderChest {
|
||||
public List<HumanEntity> transaction = new ArrayList<HumanEntity>();
|
||||
public boolean playerOnline = false;
|
||||
private final CraftPlayer owner;
|
||||
private CraftPlayer owner;
|
||||
private final InventoryEnderChest enderChest;
|
||||
private int maxStack = MAX_STACK;
|
||||
private final CraftInventory inventory = new CraftInventory(this);
|
||||
@@ -60,22 +60,25 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean inventoryRemovalCheck() {
|
||||
owner.saveData();
|
||||
return transaction.isEmpty() && !playerOnline;
|
||||
public boolean inventoryRemovalCheck(boolean save) {
|
||||
boolean offline = transaction.isEmpty() && !playerOnline;
|
||||
if (offline && save) {
|
||||
owner.saveData();
|
||||
}
|
||||
return offline;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setPlayerOnline(Player p) {
|
||||
public void setPlayerOnline(Player player) {
|
||||
if (!playerOnline) {
|
||||
try {
|
||||
InventoryEnderChest playerEnderChest = ((CraftPlayer) p).getHandle().getEnderChest();
|
||||
owner = (CraftPlayer) player;
|
||||
InventoryEnderChest playerEnderChest = owner.getHandle().getEnderChest();
|
||||
Field field = playerEnderChest.getClass().getField("items");
|
||||
field.setAccessible(true);
|
||||
field.set(playerEnderChest, this.items);
|
||||
}
|
||||
catch (Exception e) {}
|
||||
p.saveData();
|
||||
playerOnline = true;
|
||||
}
|
||||
}
|
||||
@@ -83,7 +86,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public boolean setPlayerOffline() {
|
||||
playerOnline = false;
|
||||
return inventoryRemovalCheck();
|
||||
return inventoryRemovalCheck(false);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -99,7 +102,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public void onClose(CraftHumanEntity who) {
|
||||
transaction.remove(who);
|
||||
this.inventoryRemovalCheck();
|
||||
this.inventoryRemovalCheck(true);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -41,7 +41,7 @@ import org.bukkit.craftbukkit.v1_7_R2.inventory.CraftInventory;
|
||||
public class SpecialEnderChest extends InventorySubcontainer implements IInventory, ISpecialEnderChest {
|
||||
public List<HumanEntity> transaction = new ArrayList<HumanEntity>();
|
||||
public boolean playerOnline = false;
|
||||
private final CraftPlayer owner;
|
||||
private CraftPlayer owner;
|
||||
private final InventoryEnderChest enderChest;
|
||||
private int maxStack = MAX_STACK;
|
||||
private final CraftInventory inventory = new CraftInventory(this);
|
||||
@@ -60,22 +60,25 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean inventoryRemovalCheck() {
|
||||
owner.saveData();
|
||||
return transaction.isEmpty() && !playerOnline;
|
||||
public boolean inventoryRemovalCheck(boolean save) {
|
||||
boolean offline = transaction.isEmpty() && !playerOnline;
|
||||
if (offline && save) {
|
||||
owner.saveData();
|
||||
}
|
||||
return offline;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setPlayerOnline(Player p) {
|
||||
public void setPlayerOnline(Player player) {
|
||||
if (!playerOnline) {
|
||||
try {
|
||||
InventoryEnderChest playerEnderChest = ((CraftPlayer) p).getHandle().getEnderChest();
|
||||
owner = (CraftPlayer) player;
|
||||
InventoryEnderChest playerEnderChest = owner.getHandle().getEnderChest();
|
||||
Field field = playerEnderChest.getClass().getField("items");
|
||||
field.setAccessible(true);
|
||||
field.set(playerEnderChest, this.items);
|
||||
}
|
||||
catch (Exception e) {}
|
||||
p.saveData();
|
||||
playerOnline = true;
|
||||
}
|
||||
}
|
||||
@@ -83,7 +86,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public boolean setPlayerOffline() {
|
||||
playerOnline = false;
|
||||
return inventoryRemovalCheck();
|
||||
return inventoryRemovalCheck(false);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -99,7 +102,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public void onClose(CraftHumanEntity who) {
|
||||
transaction.remove(who);
|
||||
this.inventoryRemovalCheck();
|
||||
this.inventoryRemovalCheck(true);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -41,7 +41,7 @@ import org.bukkit.craftbukkit.v1_7_R3.inventory.CraftInventory;
|
||||
public class SpecialEnderChest extends InventorySubcontainer implements IInventory, ISpecialEnderChest {
|
||||
public List<HumanEntity> transaction = new ArrayList<HumanEntity>();
|
||||
public boolean playerOnline = false;
|
||||
private final CraftPlayer owner;
|
||||
private CraftPlayer owner;
|
||||
private final InventoryEnderChest enderChest;
|
||||
private int maxStack = MAX_STACK;
|
||||
private final CraftInventory inventory = new CraftInventory(this);
|
||||
@@ -60,22 +60,25 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean inventoryRemovalCheck() {
|
||||
owner.saveData();
|
||||
return transaction.isEmpty() && !playerOnline;
|
||||
public boolean inventoryRemovalCheck(boolean save) {
|
||||
boolean offline = transaction.isEmpty() && !playerOnline;
|
||||
if (offline && save) {
|
||||
owner.saveData();
|
||||
}
|
||||
return offline;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setPlayerOnline(Player p) {
|
||||
public void setPlayerOnline(Player player) {
|
||||
if (!playerOnline) {
|
||||
try {
|
||||
InventoryEnderChest playerEnderChest = ((CraftPlayer) p).getHandle().getEnderChest();
|
||||
owner = (CraftPlayer) player;
|
||||
InventoryEnderChest playerEnderChest = owner.getHandle().getEnderChest();
|
||||
Field field = playerEnderChest.getClass().getField("items");
|
||||
field.setAccessible(true);
|
||||
field.set(playerEnderChest, this.items);
|
||||
}
|
||||
catch (Exception e) {}
|
||||
p.saveData();
|
||||
playerOnline = true;
|
||||
}
|
||||
}
|
||||
@@ -83,7 +86,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public boolean setPlayerOffline() {
|
||||
playerOnline = false;
|
||||
return inventoryRemovalCheck();
|
||||
return inventoryRemovalCheck(false);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -99,7 +102,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public void onClose(CraftHumanEntity who) {
|
||||
transaction.remove(who);
|
||||
this.inventoryRemovalCheck();
|
||||
this.inventoryRemovalCheck(true);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -41,7 +41,7 @@ import org.bukkit.craftbukkit.v1_7_R4.inventory.CraftInventory;
|
||||
public class SpecialEnderChest extends InventorySubcontainer implements IInventory, ISpecialEnderChest {
|
||||
public List<HumanEntity> transaction = new ArrayList<HumanEntity>();
|
||||
public boolean playerOnline = false;
|
||||
private final CraftPlayer owner;
|
||||
private CraftPlayer owner;
|
||||
private final InventoryEnderChest enderChest;
|
||||
private int maxStack = MAX_STACK;
|
||||
private final CraftInventory inventory = new CraftInventory(this);
|
||||
@@ -60,22 +60,25 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean inventoryRemovalCheck() {
|
||||
owner.saveData();
|
||||
return transaction.isEmpty() && !playerOnline;
|
||||
public boolean inventoryRemovalCheck(boolean save) {
|
||||
boolean offline = transaction.isEmpty() && !playerOnline;
|
||||
if (offline && save) {
|
||||
owner.saveData();
|
||||
}
|
||||
return offline;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setPlayerOnline(Player p) {
|
||||
public void setPlayerOnline(Player player) {
|
||||
if (!playerOnline) {
|
||||
try {
|
||||
InventoryEnderChest playerEnderChest = ((CraftPlayer) p).getHandle().getEnderChest();
|
||||
owner = (CraftPlayer) player;
|
||||
InventoryEnderChest playerEnderChest = owner.getHandle().getEnderChest();
|
||||
Field field = playerEnderChest.getClass().getField("items");
|
||||
field.setAccessible(true);
|
||||
field.set(playerEnderChest, this.items);
|
||||
}
|
||||
catch (Exception e) {}
|
||||
p.saveData();
|
||||
playerOnline = true;
|
||||
}
|
||||
}
|
||||
@@ -83,7 +86,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public boolean setPlayerOffline() {
|
||||
playerOnline = false;
|
||||
return inventoryRemovalCheck();
|
||||
return inventoryRemovalCheck(false);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -99,7 +102,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public void onClose(CraftHumanEntity who) {
|
||||
transaction.remove(who);
|
||||
this.inventoryRemovalCheck();
|
||||
this.inventoryRemovalCheck(true);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -41,7 +41,7 @@ import org.bukkit.craftbukkit.v1_8_R1.inventory.CraftInventory;
|
||||
public class SpecialEnderChest extends InventorySubcontainer implements IInventory, ISpecialEnderChest {
|
||||
public List<HumanEntity> transaction = new ArrayList<HumanEntity>();
|
||||
public boolean playerOnline = false;
|
||||
private final CraftPlayer owner;
|
||||
private CraftPlayer owner;
|
||||
private final InventoryEnderChest enderChest;
|
||||
private int maxStack = MAX_STACK;
|
||||
private final CraftInventory inventory = new CraftInventory(this);
|
||||
@@ -60,22 +60,25 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean inventoryRemovalCheck() {
|
||||
owner.saveData();
|
||||
return transaction.isEmpty() && !playerOnline;
|
||||
public boolean inventoryRemovalCheck(boolean save) {
|
||||
boolean offline = transaction.isEmpty() && !playerOnline;
|
||||
if (offline && save) {
|
||||
owner.saveData();
|
||||
}
|
||||
return offline;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setPlayerOnline(Player p) {
|
||||
public void setPlayerOnline(Player player) {
|
||||
if (!playerOnline) {
|
||||
try {
|
||||
InventoryEnderChest playerEnderChest = ((CraftPlayer) p).getHandle().getEnderChest();
|
||||
owner = (CraftPlayer) player;
|
||||
InventoryEnderChest playerEnderChest = owner.getHandle().getEnderChest();
|
||||
Field field = playerEnderChest.getClass().getField("items");
|
||||
field.setAccessible(true);
|
||||
field.set(playerEnderChest, this.items);
|
||||
}
|
||||
catch (Exception e) {}
|
||||
p.saveData();
|
||||
playerOnline = true;
|
||||
}
|
||||
}
|
||||
@@ -83,7 +86,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public boolean setPlayerOffline() {
|
||||
playerOnline = false;
|
||||
return this.inventoryRemovalCheck();
|
||||
return inventoryRemovalCheck(false);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -99,7 +102,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public void onClose(CraftHumanEntity who) {
|
||||
transaction.remove(who);
|
||||
this.inventoryRemovalCheck();
|
||||
this.inventoryRemovalCheck(true);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -41,7 +41,7 @@ import org.bukkit.craftbukkit.v1_8_R2.inventory.CraftInventory;
|
||||
public class SpecialEnderChest extends InventorySubcontainer implements IInventory, ISpecialEnderChest {
|
||||
public List<HumanEntity> transaction = new ArrayList<HumanEntity>();
|
||||
public boolean playerOnline = false;
|
||||
private final CraftPlayer owner;
|
||||
private CraftPlayer owner;
|
||||
private final InventoryEnderChest enderChest;
|
||||
private int maxStack = MAX_STACK;
|
||||
private final CraftInventory inventory = new CraftInventory(this);
|
||||
@@ -60,22 +60,25 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean inventoryRemovalCheck() {
|
||||
owner.saveData();
|
||||
return transaction.isEmpty() && !playerOnline;
|
||||
public boolean inventoryRemovalCheck(boolean save) {
|
||||
boolean offline = transaction.isEmpty() && !playerOnline;
|
||||
if (offline && save) {
|
||||
owner.saveData();
|
||||
}
|
||||
return offline;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setPlayerOnline(Player p) {
|
||||
public void setPlayerOnline(Player player) {
|
||||
if (!playerOnline) {
|
||||
try {
|
||||
InventoryEnderChest playerEnderChest = ((CraftPlayer) p).getHandle().getEnderChest();
|
||||
owner = (CraftPlayer) player;
|
||||
InventoryEnderChest playerEnderChest = owner.getHandle().getEnderChest();
|
||||
Field field = playerEnderChest.getClass().getField("items");
|
||||
field.setAccessible(true);
|
||||
field.set(playerEnderChest, this.items);
|
||||
}
|
||||
catch (Exception e) {}
|
||||
p.saveData();
|
||||
playerOnline = true;
|
||||
}
|
||||
}
|
||||
@@ -83,7 +86,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public boolean setPlayerOffline() {
|
||||
playerOnline = false;
|
||||
return inventoryRemovalCheck();
|
||||
return inventoryRemovalCheck(false);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -99,7 +102,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public void onClose(CraftHumanEntity who) {
|
||||
transaction.remove(who);
|
||||
this.inventoryRemovalCheck();
|
||||
this.inventoryRemovalCheck(true);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -41,7 +41,7 @@ import org.bukkit.craftbukkit.v1_8_R3.inventory.CraftInventory;
|
||||
public class SpecialEnderChest extends InventorySubcontainer implements IInventory, ISpecialEnderChest {
|
||||
public List<HumanEntity> transaction = new ArrayList<HumanEntity>();
|
||||
public boolean playerOnline = false;
|
||||
private final CraftPlayer owner;
|
||||
private CraftPlayer owner;
|
||||
private final InventoryEnderChest enderChest;
|
||||
private int maxStack = MAX_STACK;
|
||||
private final CraftInventory inventory = new CraftInventory(this);
|
||||
@@ -60,22 +60,25 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean inventoryRemovalCheck() {
|
||||
owner.saveData();
|
||||
return transaction.isEmpty() && !playerOnline;
|
||||
public boolean inventoryRemovalCheck(boolean save) {
|
||||
boolean offline = transaction.isEmpty() && !playerOnline;
|
||||
if (offline && save) {
|
||||
owner.saveData();
|
||||
}
|
||||
return offline;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setPlayerOnline(Player p) {
|
||||
public void setPlayerOnline(Player player) {
|
||||
if (!playerOnline) {
|
||||
try {
|
||||
InventoryEnderChest playerEnderChest = ((CraftPlayer) p).getHandle().getEnderChest();
|
||||
owner = (CraftPlayer) player;
|
||||
InventoryEnderChest playerEnderChest = owner.getHandle().getEnderChest();
|
||||
Field field = playerEnderChest.getClass().getField("items");
|
||||
field.setAccessible(true);
|
||||
field.set(playerEnderChest, this.items);
|
||||
}
|
||||
catch (Exception e) {}
|
||||
p.saveData();
|
||||
playerOnline = true;
|
||||
}
|
||||
}
|
||||
@@ -83,7 +86,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public boolean setPlayerOffline() {
|
||||
playerOnline = false;
|
||||
return inventoryRemovalCheck();
|
||||
return inventoryRemovalCheck(false);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -99,7 +102,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public void onClose(CraftHumanEntity who) {
|
||||
transaction.remove(who);
|
||||
this.inventoryRemovalCheck();
|
||||
this.inventoryRemovalCheck(true);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -41,7 +41,7 @@ import org.bukkit.craftbukkit.v1_9_R1.inventory.CraftInventory;
|
||||
public class SpecialEnderChest extends InventorySubcontainer implements IInventory, ISpecialEnderChest {
|
||||
public List<HumanEntity> transaction = new ArrayList<HumanEntity>();
|
||||
public boolean playerOnline = false;
|
||||
private final CraftPlayer owner;
|
||||
private CraftPlayer owner;
|
||||
private final InventoryEnderChest enderChest;
|
||||
private int maxStack = MAX_STACK;
|
||||
private final CraftInventory inventory = new CraftInventory(this);
|
||||
@@ -60,22 +60,25 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean inventoryRemovalCheck() {
|
||||
owner.saveData();
|
||||
return transaction.isEmpty() && !playerOnline;
|
||||
public boolean inventoryRemovalCheck(boolean save) {
|
||||
boolean offline = transaction.isEmpty() && !playerOnline;
|
||||
if (offline && save) {
|
||||
owner.saveData();
|
||||
}
|
||||
return offline;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void setPlayerOnline(Player p) {
|
||||
public void setPlayerOnline(Player player) {
|
||||
if (!playerOnline) {
|
||||
try {
|
||||
InventoryEnderChest playerEnderChest = ((CraftPlayer) p).getHandle().getEnderChest();
|
||||
owner = (CraftPlayer) player;
|
||||
InventoryEnderChest playerEnderChest = owner.getHandle().getEnderChest();
|
||||
Field field = playerEnderChest.getClass().getField("items");
|
||||
field.setAccessible(true);
|
||||
field.set(playerEnderChest, this.items);
|
||||
}
|
||||
catch (Exception e) {}
|
||||
p.saveData();
|
||||
playerOnline = true;
|
||||
}
|
||||
}
|
||||
@@ -83,7 +86,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public boolean setPlayerOffline() {
|
||||
playerOnline = false;
|
||||
return inventoryRemovalCheck();
|
||||
return inventoryRemovalCheck(false);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -99,7 +102,7 @@ public class SpecialEnderChest extends InventorySubcontainer implements IInvento
|
||||
@Override
|
||||
public void onClose(CraftHumanEntity who) {
|
||||
transaction.remove(who);
|
||||
this.inventoryRemovalCheck();
|
||||
this.inventoryRemovalCheck(true);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -1,6 +1,6 @@
|
||||
name: OpenInv
|
||||
main: com.lishid.openinv.OpenInv
|
||||
version: 2.4.1
|
||||
version: 2.4.3
|
||||
author: lishid
|
||||
authors: [Jikoo]
|
||||
description: >
|
||||
|
Reference in New Issue
Block a user