Simplify book deduplication
This commit is contained in:
parent
d86344f309
commit
c684cccf74
|
|
@ -1,6 +1,5 @@
|
||||||
package org.embeddedt.modernfix.mixin.perf.patchouli_deduplicate_books;
|
package org.embeddedt.modernfix.mixin.perf.patchouli_deduplicate_books;
|
||||||
|
|
||||||
import net.minecraft.nbt.CompoundTag;
|
|
||||||
import net.minecraft.world.item.ItemStack;
|
import net.minecraft.world.item.ItemStack;
|
||||||
import net.minecraft.world.item.Items;
|
import net.minecraft.world.item.Items;
|
||||||
import net.minecraftforge.fml.common.ObfuscationReflectionHelper;
|
import net.minecraftforge.fml.common.ObfuscationReflectionHelper;
|
||||||
|
|
@ -20,7 +19,6 @@ import vazkii.patchouli.common.book.Book;
|
||||||
import vazkii.patchouli.common.book.BookRegistry;
|
import vazkii.patchouli.common.book.BookRegistry;
|
||||||
|
|
||||||
import java.lang.reflect.Field;
|
import java.lang.reflect.Field;
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@Mixin(ClientBookRegistry.class)
|
@Mixin(ClientBookRegistry.class)
|
||||||
|
|
@ -42,16 +40,9 @@ public class ClientBookRegistryMixin {
|
||||||
for(TemplateComponent component : components) {
|
for(TemplateComponent component : components) {
|
||||||
if(component instanceof ComponentItemStack) {
|
if(component instanceof ComponentItemStack) {
|
||||||
ItemStack[] items = (ItemStack[])itemsField.get(component);
|
ItemStack[] items = (ItemStack[])itemsField.get(component);
|
||||||
for(ItemStack item : items) {
|
for(int i = 0; i < items.length; i++) {
|
||||||
if(item.getItem() == Items.AIR) {
|
if(items[i] != null && items[i].getItem() == Items.AIR) {
|
||||||
// remove any NBT
|
items[i] = ItemStack.EMPTY;
|
||||||
CompoundTag tag = item.getTag();
|
|
||||||
if(tag != null) {
|
|
||||||
numItemsCleared++;
|
|
||||||
List<String> keys = new ArrayList<>(tag.getAllKeys());
|
|
||||||
for(String key : keys)
|
|
||||||
item.removeTagKey(key);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user