diff --git a/1_4_5/src/main/java/com/lishid/openinv/internal/v1_4_5/AnySilentContainer.java b/1_4_5/src/main/java/com/lishid/openinv/internal/v1_4_5/AnySilentContainer.java
index f084a76..3032f6f 100644
--- a/1_4_5/src/main/java/com/lishid/openinv/internal/v1_4_5/AnySilentContainer.java
+++ b/1_4_5/src/main/java/com/lishid/openinv/internal/v1_4_5/AnySilentContainer.java
@@ -16,8 +16,6 @@
package com.lishid.openinv.internal.v1_4_5;
-import java.lang.reflect.Field;
-
import com.lishid.openinv.internal.IAnySilentContainer;
import org.bukkit.ChatColor;
@@ -142,15 +140,7 @@ public class AnySilentContainer implements IAnySilentContainer {
returnValue = true;
} else {
try {
- int windowId = 0;
- try {
- Field windowID = player.getClass().getDeclaredField("containerCounter");
- windowID.setAccessible(true);
- windowId = windowID.getInt(player);
- windowId = windowId % 100 + 1;
- windowID.setInt(player, windowId);
- } catch (NoSuchFieldException e) {}
-
+ int windowId = player.nextContainerCounter();
player.netServerHandler.sendPacket(new Packet100OpenWindow(windowId, 0, ((IInventory) tile).getName(), ((IInventory) tile).getSize()));
player.activeContainer = new SilentContainerChest(player.inventory, ((IInventory) tile));
player.activeContainer.windowId = windowId;
diff --git a/1_4_6/src/main/java/com/lishid/openinv/internal/v1_4_6/AnySilentContainer.java b/1_4_6/src/main/java/com/lishid/openinv/internal/v1_4_6/AnySilentContainer.java
index 9e899a2..e0f7696 100644
--- a/1_4_6/src/main/java/com/lishid/openinv/internal/v1_4_6/AnySilentContainer.java
+++ b/1_4_6/src/main/java/com/lishid/openinv/internal/v1_4_6/AnySilentContainer.java
@@ -16,8 +16,6 @@
package com.lishid.openinv.internal.v1_4_6;
-import java.lang.reflect.Field;
-
import com.lishid.openinv.internal.IAnySilentContainer;
import org.bukkit.ChatColor;
@@ -142,15 +140,7 @@ public class AnySilentContainer implements IAnySilentContainer {
returnValue = true;
} else {
try {
- int windowId = 0;
- try {
- Field windowID = player.getClass().getDeclaredField("containerCounter");
- windowID.setAccessible(true);
- windowId = windowID.getInt(player);
- windowId = windowId % 100 + 1;
- windowID.setInt(player, windowId);
- } catch (NoSuchFieldException e) {}
-
+ int windowId = player.nextContainerCounter();
player.playerConnection.sendPacket(new Packet100OpenWindow(windowId, 0, ((IInventory) tile).getName(), ((IInventory) tile).getSize()));
player.activeContainer = new SilentContainerChest(player.inventory, ((IInventory) tile));
player.activeContainer.windowId = windowId;
diff --git a/pom.xml b/pom.xml
index 8bd49bd..8ca9425 100644
--- a/pom.xml
+++ b/pom.xml
@@ -10,7 +10,7 @@
UTF-8
- 3.0.1
+ 3.0.1-SNAPSHOT
diff --git a/v1_4_R1/src/main/java/com/lishid/openinv/internal/v1_4_R1/AnySilentContainer.java b/v1_4_R1/src/main/java/com/lishid/openinv/internal/v1_4_R1/AnySilentContainer.java
index 1d0bee0..b08e28d 100644
--- a/v1_4_R1/src/main/java/com/lishid/openinv/internal/v1_4_R1/AnySilentContainer.java
+++ b/v1_4_R1/src/main/java/com/lishid/openinv/internal/v1_4_R1/AnySilentContainer.java
@@ -16,8 +16,6 @@
package com.lishid.openinv.internal.v1_4_R1;
-import java.lang.reflect.Field;
-
import com.lishid.openinv.internal.IAnySilentContainer;
import org.bukkit.ChatColor;
@@ -142,15 +140,7 @@ public class AnySilentContainer implements IAnySilentContainer {
returnValue = true;
} else {
try {
- int windowId = 0;
- try {
- Field windowID = player.getClass().getDeclaredField("containerCounter");
- windowID.setAccessible(true);
- windowId = windowID.getInt(player);
- windowId = windowId % 100 + 1;
- windowID.setInt(player, windowId);
- } catch (NoSuchFieldException e) {}
-
+ int windowId = player.nextContainerCounter();
player.playerConnection.sendPacket(new Packet100OpenWindow(windowId, 0, ((IInventory) tile).getName(), ((IInventory) tile).getSize()));
player.activeContainer = new SilentContainerChest(player.inventory, ((IInventory) tile));
player.activeContainer.windowId = windowId;
diff --git a/v1_5_R2/src/main/java/com/lishid/openinv/internal/v1_5_R2/AnySilentContainer.java b/v1_5_R2/src/main/java/com/lishid/openinv/internal/v1_5_R2/AnySilentContainer.java
index d9137be..c08b41c 100644
--- a/v1_5_R2/src/main/java/com/lishid/openinv/internal/v1_5_R2/AnySilentContainer.java
+++ b/v1_5_R2/src/main/java/com/lishid/openinv/internal/v1_5_R2/AnySilentContainer.java
@@ -16,8 +16,6 @@
package com.lishid.openinv.internal.v1_5_R2;
-import java.lang.reflect.Field;
-
import com.lishid.openinv.internal.IAnySilentContainer;
import org.bukkit.ChatColor;
@@ -142,15 +140,7 @@ public class AnySilentContainer implements IAnySilentContainer {
returnValue = true;
} else {
try {
- int windowId = 0;
- try {
- Field windowID = player.getClass().getDeclaredField("containerCounter");
- windowID.setAccessible(true);
- windowId = windowID.getInt(player);
- windowId = windowId % 100 + 1;
- windowID.setInt(player, windowId);
- } catch (NoSuchFieldException e) {}
-
+ int windowId = player.nextContainerCounter();
player.playerConnection.sendPacket(new Packet100OpenWindow(windowId, 0, ((IInventory) tile).getName(), ((IInventory) tile).getSize(), true));
player.activeContainer = new SilentContainerChest(player.inventory, ((IInventory) tile));
player.activeContainer.windowId = windowId;
diff --git a/v1_5_R3/src/main/java/com/lishid/openinv/internal/v1_5_R3/AnySilentContainer.java b/v1_5_R3/src/main/java/com/lishid/openinv/internal/v1_5_R3/AnySilentContainer.java
index ccc0490..ee10a6f 100644
--- a/v1_5_R3/src/main/java/com/lishid/openinv/internal/v1_5_R3/AnySilentContainer.java
+++ b/v1_5_R3/src/main/java/com/lishid/openinv/internal/v1_5_R3/AnySilentContainer.java
@@ -16,8 +16,6 @@
package com.lishid.openinv.internal.v1_5_R3;
-import java.lang.reflect.Field;
-
import com.lishid.openinv.internal.IAnySilentContainer;
import org.bukkit.ChatColor;
@@ -142,15 +140,7 @@ public class AnySilentContainer implements IAnySilentContainer {
returnValue = true;
} else {
try {
- int windowId = 0;
- try {
- Field windowID = player.getClass().getDeclaredField("containerCounter");
- windowID.setAccessible(true);
- windowId = windowID.getInt(player);
- windowId = windowId % 100 + 1;
- windowID.setInt(player, windowId);
- } catch (NoSuchFieldException e) {}
-
+ int windowId = player.nextContainerCounter();
player.playerConnection.sendPacket(new Packet100OpenWindow(windowId, 0, ((IInventory) tile).getName(), ((IInventory) tile).getSize(), true));
player.activeContainer = new SilentContainerChest(player.inventory, ((IInventory) tile));
player.activeContainer.windowId = windowId;
diff --git a/v1_6_R1/src/main/java/com/lishid/openinv/internal/v1_6_R1/AnySilentContainer.java b/v1_6_R1/src/main/java/com/lishid/openinv/internal/v1_6_R1/AnySilentContainer.java
index f685648..87c46d6 100644
--- a/v1_6_R1/src/main/java/com/lishid/openinv/internal/v1_6_R1/AnySilentContainer.java
+++ b/v1_6_R1/src/main/java/com/lishid/openinv/internal/v1_6_R1/AnySilentContainer.java
@@ -16,8 +16,6 @@
package com.lishid.openinv.internal.v1_6_R1;
-import java.lang.reflect.Field;
-
import com.lishid.openinv.internal.IAnySilentContainer;
import org.bukkit.ChatColor;
@@ -142,15 +140,7 @@ public class AnySilentContainer implements IAnySilentContainer {
returnValue = true;
} else {
try {
- int windowId = 0;
- try {
- Field windowID = player.getClass().getDeclaredField("containerCounter");
- windowID.setAccessible(true);
- windowId = windowID.getInt(player);
- windowId = windowId % 100 + 1;
- windowID.setInt(player, windowId);
- } catch (NoSuchFieldException e) {}
-
+ int windowId = player.nextContainerCounter();
player.playerConnection.sendPacket(new Packet100OpenWindow(windowId, 0, ((IInventory) tile).getName(), ((IInventory) tile).getSize(), true));
player.activeContainer = new SilentContainerChest(player.inventory, ((IInventory) tile));
player.activeContainer.windowId = windowId;
diff --git a/v1_6_R2/src/main/java/com/lishid/openinv/internal/v1_6_R2/AnySilentContainer.java b/v1_6_R2/src/main/java/com/lishid/openinv/internal/v1_6_R2/AnySilentContainer.java
index d39d49e..acdef19 100644
--- a/v1_6_R2/src/main/java/com/lishid/openinv/internal/v1_6_R2/AnySilentContainer.java
+++ b/v1_6_R2/src/main/java/com/lishid/openinv/internal/v1_6_R2/AnySilentContainer.java
@@ -16,8 +16,6 @@
package com.lishid.openinv.internal.v1_6_R2;
-import java.lang.reflect.Field;
-
import com.lishid.openinv.internal.IAnySilentContainer;
import org.bukkit.ChatColor;
@@ -142,15 +140,7 @@ public class AnySilentContainer implements IAnySilentContainer {
returnValue = true;
} else {
try {
- int windowId = 0;
- try {
- Field windowID = player.getClass().getDeclaredField("containerCounter");
- windowID.setAccessible(true);
- windowId = windowID.getInt(player);
- windowId = windowId % 100 + 1;
- windowID.setInt(player, windowId);
- } catch (NoSuchFieldException e) {}
-
+ int windowId = player.nextContainerCounter();
player.playerConnection.sendPacket(new Packet100OpenWindow(windowId, 0, ((IInventory) tile).getName(), ((IInventory) tile).getSize(), true));
player.activeContainer = new SilentContainerChest(player.inventory, ((IInventory) tile));
player.activeContainer.windowId = windowId;
diff --git a/v1_6_R3/src/main/java/com/lishid/openinv/internal/v1_6_R3/AnySilentContainer.java b/v1_6_R3/src/main/java/com/lishid/openinv/internal/v1_6_R3/AnySilentContainer.java
index 2f9455e..ce37031 100644
--- a/v1_6_R3/src/main/java/com/lishid/openinv/internal/v1_6_R3/AnySilentContainer.java
+++ b/v1_6_R3/src/main/java/com/lishid/openinv/internal/v1_6_R3/AnySilentContainer.java
@@ -16,8 +16,6 @@
package com.lishid.openinv.internal.v1_6_R3;
-import java.lang.reflect.Field;
-
import com.lishid.openinv.internal.IAnySilentContainer;
import org.bukkit.ChatColor;
@@ -142,15 +140,7 @@ public class AnySilentContainer implements IAnySilentContainer {
returnValue = true;
} else {
try {
- int windowId = 0;
- try {
- Field windowID = player.getClass().getDeclaredField("containerCounter");
- windowID.setAccessible(true);
- windowId = windowID.getInt(player);
- windowId = windowId % 100 + 1;
- windowID.setInt(player, windowId);
- } catch (NoSuchFieldException e) {}
-
+ int windowId = player.nextContainerCounter();
player.playerConnection.sendPacket(new Packet100OpenWindow(windowId, 0, ((IInventory) tile).getName(), ((IInventory) tile).getSize(), true));
player.activeContainer = new SilentContainerChest(player.inventory, ((IInventory) tile));
player.activeContainer.windowId = windowId;
diff --git a/v1_7_R1/src/main/java/com/lishid/openinv/internal/v1_7_R1/AnySilentContainer.java b/v1_7_R1/src/main/java/com/lishid/openinv/internal/v1_7_R1/AnySilentContainer.java
index 94a2046..33d70e7 100644
--- a/v1_7_R1/src/main/java/com/lishid/openinv/internal/v1_7_R1/AnySilentContainer.java
+++ b/v1_7_R1/src/main/java/com/lishid/openinv/internal/v1_7_R1/AnySilentContainer.java
@@ -16,8 +16,6 @@
package com.lishid.openinv.internal.v1_7_R1;
-import java.lang.reflect.Field;
-
import com.lishid.openinv.internal.IAnySilentContainer;
import org.bukkit.ChatColor;
@@ -143,15 +141,7 @@ public class AnySilentContainer implements IAnySilentContainer {
returnValue = true;
} else {
try {
- int windowId = 0;
- try {
- Field windowID = player.getClass().getDeclaredField("containerCounter");
- windowID.setAccessible(true);
- windowId = windowID.getInt(player);
- windowId = windowId % 100 + 1;
- windowID.setInt(player, windowId);
- } catch (NoSuchFieldException e) {}
-
+ int windowId = player.nextContainerCounter();
player.playerConnection.sendPacket(new PacketPlayOutOpenWindow(windowId, 0, ((IInventory) tile).getInventoryName(), ((IInventory) tile).getSize(), true));
player.activeContainer = new SilentContainerChest(player.inventory, ((IInventory) tile));
player.activeContainer.windowId = windowId;
diff --git a/v1_7_R2/src/main/java/com/lishid/openinv/internal/v1_7_R2/AnySilentContainer.java b/v1_7_R2/src/main/java/com/lishid/openinv/internal/v1_7_R2/AnySilentContainer.java
index d894316..886fa11 100644
--- a/v1_7_R2/src/main/java/com/lishid/openinv/internal/v1_7_R2/AnySilentContainer.java
+++ b/v1_7_R2/src/main/java/com/lishid/openinv/internal/v1_7_R2/AnySilentContainer.java
@@ -16,8 +16,6 @@
package com.lishid.openinv.internal.v1_7_R2;
-import java.lang.reflect.Field;
-
import com.lishid.openinv.internal.IAnySilentContainer;
import org.bukkit.ChatColor;
@@ -143,15 +141,7 @@ public class AnySilentContainer implements IAnySilentContainer {
returnValue = true;
} else {
try {
- int windowId = 0;
- try {
- Field windowID = player.getClass().getDeclaredField("containerCounter");
- windowID.setAccessible(true);
- windowId = windowID.getInt(player);
- windowId = windowId % 100 + 1;
- windowID.setInt(player, windowId);
- } catch (NoSuchFieldException e) {}
-
+ int windowId = player.nextContainerCounter();
player.playerConnection.sendPacket(new PacketPlayOutOpenWindow(windowId, 0, ((IInventory) tile).getInventoryName(), ((IInventory) tile).getSize(), true));
player.activeContainer = new SilentContainerChest(player.inventory, ((IInventory) tile));
player.activeContainer.windowId = windowId;
diff --git a/v1_7_R3/src/main/java/com/lishid/openinv/internal/v1_7_R3/AnySilentContainer.java b/v1_7_R3/src/main/java/com/lishid/openinv/internal/v1_7_R3/AnySilentContainer.java
index 173c8da..3b9c651 100644
--- a/v1_7_R3/src/main/java/com/lishid/openinv/internal/v1_7_R3/AnySilentContainer.java
+++ b/v1_7_R3/src/main/java/com/lishid/openinv/internal/v1_7_R3/AnySilentContainer.java
@@ -16,8 +16,6 @@
package com.lishid.openinv.internal.v1_7_R3;
-import java.lang.reflect.Field;
-
import com.lishid.openinv.internal.IAnySilentContainer;
import org.bukkit.ChatColor;
@@ -143,15 +141,7 @@ public class AnySilentContainer implements IAnySilentContainer {
returnValue = true;
} else {
try {
- int windowId = 0;
- try {
- Field windowID = player.getClass().getDeclaredField("containerCounter");
- windowID.setAccessible(true);
- windowId = windowID.getInt(player);
- windowId = windowId % 100 + 1;
- windowID.setInt(player, windowId);
- } catch (NoSuchFieldException e) {}
-
+ int windowId = player.nextContainerCounter();
player.playerConnection.sendPacket(new PacketPlayOutOpenWindow(windowId, 0, ((IInventory) tile).getInventoryName(), ((IInventory) tile).getSize(), true));
player.activeContainer = new SilentContainerChest(player.inventory, ((IInventory) tile));
player.activeContainer.windowId = windowId;
diff --git a/v1_7_R4/src/main/java/com/lishid/openinv/internal/v1_7_R4/AnySilentContainer.java b/v1_7_R4/src/main/java/com/lishid/openinv/internal/v1_7_R4/AnySilentContainer.java
index cf86d73..7f804ed 100644
--- a/v1_7_R4/src/main/java/com/lishid/openinv/internal/v1_7_R4/AnySilentContainer.java
+++ b/v1_7_R4/src/main/java/com/lishid/openinv/internal/v1_7_R4/AnySilentContainer.java
@@ -16,8 +16,6 @@
package com.lishid.openinv.internal.v1_7_R4;
-import java.lang.reflect.Field;
-
import com.lishid.openinv.internal.IAnySilentContainer;
import org.bukkit.ChatColor;
@@ -143,15 +141,7 @@ public class AnySilentContainer implements IAnySilentContainer {
returnValue = true;
} else {
try {
- int windowId = 0;
- try {
- Field windowID = player.getClass().getDeclaredField("containerCounter");
- windowID.setAccessible(true);
- windowId = windowID.getInt(player);
- windowId = windowId % 100 + 1;
- windowID.setInt(player, windowId);
- } catch (NoSuchFieldException e) {}
-
+ int windowId = player.nextContainerCounter();
player.playerConnection.sendPacket(new PacketPlayOutOpenWindow(windowId, 0, ((IInventory) tile).getInventoryName(), ((IInventory) tile).getSize(), true));
player.activeContainer = new SilentContainerChest(player.inventory, ((IInventory) tile));
player.activeContainer.windowId = windowId;