5
5
import me .flame .menus .items .MenuItem ;
6
6
import me .flame .menus .menu .iterator .PageIterator ;
7
7
8
+ import org .bukkit .inventory .Inventory ;
8
9
import org .bukkit .inventory .ItemStack ;
9
10
import org .jetbrains .annotations .Contract ;
10
11
import org .jetbrains .annotations .NotNull ;
@@ -153,9 +154,16 @@ public void removeItem(MenuItem... items) {
153
154
Set <MenuItem > slots = ImmutableSet .copyOf (items );
154
155
155
156
int size = itemMap .size ();
157
+ Inventory inventory = holder .getInventory ();
156
158
for (int i = 0 ; i < size ; i ++) {
157
159
MenuItem item = itemMap .get (i );
158
- if (item != null && slots .contains (item )) itemMap .remove (i );
160
+ if (item == null ) continue ;
161
+
162
+ ItemStack itemStack = item .getItemStack ();
163
+ if (slots .contains (item )) {
164
+ itemMap .remove (i );
165
+ inventory .remove (itemStack );
166
+ }
159
167
}
160
168
}
161
169
@@ -167,9 +175,16 @@ public void removeItem(ItemStack... items) {
167
175
Set <ItemStack > slots = ImmutableSet .copyOf (items );
168
176
169
177
int size = itemMap .size ();
178
+ Inventory inventory = holder .getInventory ();
170
179
for (int i = 0 ; i < size ; i ++) {
171
180
MenuItem item = itemMap .get (i );
172
- if (item != null && slots .contains (item .getItemStack ())) itemMap .remove (i );
181
+ if (item == null ) continue ;
182
+
183
+ ItemStack itemStack = item .getItemStack ();
184
+ if (slots .contains (itemStack )) {
185
+ itemMap .remove (i );
186
+ inventory .remove (itemStack );
187
+ }
173
188
}
174
189
}
175
190
@@ -366,4 +381,4 @@ public boolean hasItem(Slot slot) {
366
381
if (!slot .isSlot ()) return false ;
367
382
return itemMap .get (slot .slot ) != null ;
368
383
}
369
- }
384
+ }
0 commit comments