From ce28c5794d99a2812bd8cfa4255cb873ab3fe7b5 Mon Sep 17 00:00:00 2001 From: LexManos Date: Wed, 10 Jul 2019 17:39:19 -0700 Subject: [PATCH] Cleanup Forge's Access Transformer, and add ATs for Block.Properties#noDrop, and AxeItem/PickaxeItem. Closes #5866 and Closes #5921 --- build.gradle | 50 ++ .../net/minecraft/block/Block.java.patch | 2 +- .../net/minecraft/item/AxeItem.java.patch | 2 +- .../net/minecraft/item/PickaxeItem.java.patch | 2 +- .../resources/META-INF/accesstransformer.cfg | 506 ++++-------------- 5 files changed, 158 insertions(+), 404 deletions(-) diff --git a/build.gradle b/build.gradle index 8cced208d..6cfecc797 100644 --- a/build.gradle +++ b/build.gradle @@ -7,6 +7,7 @@ buildscript { } dependencies { classpath 'net.minecraftforge.gradle:ForgeGradle:3.+' + classpath 'org.ow2.asm:asm:7.1' } } import groovy.json.JsonSlurper @@ -25,6 +26,7 @@ import net.minecraftforge.gradle.userdev.tasks.RenameJar import org.apache.tools.ant.filters.ReplaceTokens import de.undercouch.gradle.tasks.download.Download import org.gradle.plugins.ide.eclipse.model.SourceFolder +import org.objectweb.asm.ClassReader import java.util.stream.Collectors @@ -516,6 +518,54 @@ project(':forge') { } } } + task checkATs(dependsOn: genJoinedBinPatches) { + inputs.file { genJoinedBinPatches.cleanJar } + inputs.files patcher.accessTransformers + doLast { + def vanilla = [:] + def zip = new java.util.zip.ZipFile(genJoinedBinPatches.cleanJar) + zip.entries().findAll { !it.directory && it.name.endsWith('.class') }.each { entry -> + new ClassReader(zip.getInputStream(entry)).accept(new org.objectweb.asm.ClassVisitor(org.objectweb.asm.Opcodes.ASM7) { + String name + void visit(int version, int access, String name, String sig, String superName, String[] interfaces) { + this.name = name + vanilla[name] = access + } + org.objectweb.asm.FieldVisitor visitField(int access, String name, String desc, String sig, Object value) { + vanilla[this.name + ' ' + name] = access + return null + } + org.objectweb.asm.MethodVisitor visitMethod(int access, String name, String desc, String sig, String[] excs) { + vanilla[this.name + ' ' + name + desc] = access + return null + } + }, ClassReader.SKIP_CODE | ClassReader.SKIP_DEBUG | ClassReader.SKIP_FRAMES) + } + patcher.accessTransformers.each { f -> + TreeMap lines = [:] + f.eachLine { line -> + def idx = line.indexOf('#') + if (idx == 0 || line.isEmpty()) return + def comment = idx == -1 ? null : line.substring(idx) + if (idx != -1) line = line.substring(0, idx - 1) + def (modifier, cls, desc) = (line.trim() + ' ').split(' ', -1) + def key = cls + (desc.isEmpty() ? '' : ' ' + desc) + def access = vanilla[key.replace('.', '/')] + if (access == null) { + if ((desc.equals('*') || desc.equals('*()')) && vanilla[cls.replace('.', '/')] != null) + println('Warning: ' + line) + else { + println('Invalid: ' + line) + return + } + } + //TODO: Check access actually changes, and expand inheretence? + lines[key] = [modifier: modifier, comment: comment] + } + f.text = lines.collect{ it.value.modifier + ' ' + it.key + (it.value.comment == null ? '' : ' ' + it.value.comment) }.join('\n') + } + } + } task launcherJson(dependsOn: ['signUniversalJar', 'signLauncherJar']) { inputs.file universalJar.archivePath diff --git a/patches/minecraft/net/minecraft/block/Block.java.patch b/patches/minecraft/net/minecraft/block/Block.java.patch index e5d8d0d37..adad82b67 100644 --- a/patches/minecraft/net/minecraft/block/Block.java.patch +++ b/patches/minecraft/net/minecraft/block/Block.java.patch @@ -247,6 +247,6 @@ + return this; + } + - protected Block.Properties func_222380_e() { + public Block.Properties func_222380_e() { this.field_222381_j = LootTables.field_186419_a; return this; diff --git a/patches/minecraft/net/minecraft/item/AxeItem.java.patch b/patches/minecraft/net/minecraft/item/AxeItem.java.patch index 3558efd57..b8e2616ec 100644 --- a/patches/minecraft/net/minecraft/item/AxeItem.java.patch +++ b/patches/minecraft/net/minecraft/item/AxeItem.java.patch @@ -3,7 +3,7 @@ @@ -21,7 +21,7 @@ protected static final Map field_203176_a = (new Builder()).put(Blocks.field_196626_Q, Blocks.field_209389_ab).put(Blocks.field_196617_K, Blocks.field_203204_R).put(Blocks.field_196639_V, Blocks.field_209394_ag).put(Blocks.field_196623_P, Blocks.field_203209_W).put(Blocks.field_196637_U, Blocks.field_209393_af).put(Blocks.field_196621_O, Blocks.field_203208_V).put(Blocks.field_196631_S, Blocks.field_209391_ad).put(Blocks.field_196619_M, Blocks.field_203206_T).put(Blocks.field_196634_T, Blocks.field_209392_ae).put(Blocks.field_196620_N, Blocks.field_203207_U).put(Blocks.field_196629_R, Blocks.field_209390_ac).put(Blocks.field_196618_L, Blocks.field_203205_S).build(); - protected AxeItem(IItemTier p_i48530_1_, float p_i48530_2_, float p_i48530_3_, Item.Properties p_i48530_4_) { + public AxeItem(IItemTier p_i48530_1_, float p_i48530_2_, float p_i48530_3_, Item.Properties p_i48530_4_) { - super(p_i48530_2_, p_i48530_3_, p_i48530_1_, field_150917_c, p_i48530_4_); + super(p_i48530_2_, p_i48530_3_, p_i48530_1_, field_150917_c, p_i48530_4_.addToolType(net.minecraftforge.common.ToolType.AXE, p_i48530_1_.func_200925_d())); } diff --git a/patches/minecraft/net/minecraft/item/PickaxeItem.java.patch b/patches/minecraft/net/minecraft/item/PickaxeItem.java.patch index 8dae82bc1..9df23559a 100644 --- a/patches/minecraft/net/minecraft/item/PickaxeItem.java.patch +++ b/patches/minecraft/net/minecraft/item/PickaxeItem.java.patch @@ -3,7 +3,7 @@ @@ -11,24 +11,17 @@ private static final Set field_150915_c = ImmutableSet.of(Blocks.field_150408_cc, Blocks.field_150365_q, Blocks.field_150347_e, Blocks.field_150319_E, Blocks.field_150484_ah, Blocks.field_150482_ag, Blocks.field_196552_aC, Blocks.field_150340_R, Blocks.field_150352_o, Blocks.field_150432_aD, Blocks.field_150339_S, Blocks.field_150366_p, Blocks.field_150368_y, Blocks.field_150369_x, Blocks.field_150341_Y, Blocks.field_150424_aL, Blocks.field_150403_cj, Blocks.field_205164_gk, Blocks.field_150448_aq, Blocks.field_150450_ax, Blocks.field_150322_A, Blocks.field_196583_aj, Blocks.field_196585_ak, Blocks.field_196798_hA, Blocks.field_196799_hB, Blocks.field_180395_cM, Blocks.field_150348_b, Blocks.field_196650_c, Blocks.field_196652_d, Blocks.field_196654_e, Blocks.field_196655_f, Blocks.field_196656_g, Blocks.field_196657_h, Blocks.field_150333_U, Blocks.field_222401_hJ, Blocks.field_196640_bx, Blocks.field_196643_by, Blocks.field_196646_bz, Blocks.field_196571_bA, Blocks.field_196573_bB, Blocks.field_196575_bC, Blocks.field_196576_bD, Blocks.field_196578_bE, Blocks.field_185771_cX, Blocks.field_196581_bI, Blocks.field_196582_bJ, Blocks.field_196580_bH, Blocks.field_196579_bG, Blocks.field_150430_aB, Blocks.field_150456_au, Blocks.field_222446_lj, Blocks.field_222447_lk, Blocks.field_222448_ll, Blocks.field_222449_lm, Blocks.field_222450_ln, Blocks.field_222451_lo, Blocks.field_222452_lp, Blocks.field_222453_lq, Blocks.field_222454_lr, Blocks.field_222455_ls, Blocks.field_222456_lt, Blocks.field_222457_lu, Blocks.field_222458_lv, Blocks.field_204409_il, Blocks.field_190975_dA, Blocks.field_190988_dw, Blocks.field_190989_dx, Blocks.field_190986_du, Blocks.field_190984_ds, Blocks.field_190990_dy, Blocks.field_190980_do, Blocks.field_196875_ie, Blocks.field_190982_dq, Blocks.field_190979_dn, Blocks.field_190978_dm, Blocks.field_190983_dr, Blocks.field_190987_dv, Blocks.field_190991_dz, Blocks.field_190977_dl, Blocks.field_190981_dp); - protected PickaxeItem(IItemTier p_i48478_1_, int p_i48478_2_, float p_i48478_3_, Item.Properties p_i48478_4_) { + public PickaxeItem(IItemTier p_i48478_1_, int p_i48478_2_, float p_i48478_3_, Item.Properties p_i48478_4_) { - super((float)p_i48478_2_, p_i48478_3_, p_i48478_1_, field_150915_c, p_i48478_4_); + super((float)p_i48478_2_, p_i48478_3_, p_i48478_1_, field_150915_c, p_i48478_4_.addToolType(net.minecraftforge.common.ToolType.PICKAXE, p_i48478_1_.func_200925_d())); } diff --git a/src/main/resources/META-INF/accesstransformer.cfg b/src/main/resources/META-INF/accesstransformer.cfg index 5bb8d57ad..fd9d713a4 100644 --- a/src/main/resources/META-INF/accesstransformer.cfg +++ b/src/main/resources/META-INF/accesstransformer.cfg @@ -1,423 +1,127 @@ -#Main Forge Access Transformer configuration file -# SoundEngine -public net.minecraft.client.audio.SoundEngine field_148622_c #sndHandler -# Block -public net.minecraft.block.Block (Lnet/minecraft/block/material/Material;)V -public net.minecraft.block.Block func_149752_b(F)Lnet.minecraft.block.Block; #setResistance -public net.minecraft.block.Block func_149711_c(F)Lnet.minecraft.block.Block; #setHardness -public net.minecraft.block.Block func_149713_g(I)Lnet.minecraft.block.Block; #setLightOpacity -public net.minecraft.block.Block func_149715_a(F)Lnet.minecraft.block.Block; #setLightValue -public net.minecraft.block.Block func_149722_s()Lnet.minecraft.block.Block; #setBlockUnbreakable -public net.minecraft.block.Block func_149675_a(Z)Lnet.minecraft.block.Block; #setTickRandomly +public net.minecraft.advancements.CriteriaTriggers func_192118_a(Lnet/minecraft/advancements/ICriterionTrigger;)Lnet/minecraft/advancements/ICriterionTrigger; # register public net.minecraft.block.Block func_180637_b(Lnet/minecraft/world/World;Lnet/minecraft/util/math/BlockPos;I)V # dropXpOnBlockBreak -public net.minecraft.block.Block func_193384_b(Lnet/minecraft/block/Block;)Z # isExceptionBlockForAttaching -# FireBlock -public net.minecraft.block.FireBlock func_176532_c(Lnet/minecraft/block/Block;)I # getFireSpreadSpeed -public net.minecraft.block.FireBlock func_176534_d(Lnet/minecraft/block/Block;)I # getFireSpreadSpeed -# Item -public net.minecraft.item.Item func_77656_e(I)Lnet.minecraft.item.Item; #setMaxDamage -public net.minecraft.item.Item func_77627_a(Z)Lnet.minecraft.item.Item; #setHasSubtypes -public net.minecraft.item.Item field_185051_m # properties -public-f net.minecraft.item.ItemGroup field_78032_a # group array -# BowItem -protected net.minecraft.item.BowItem func_185060_a(Lnet/minecraft/entity/player/PlayerEntity;)Lnet/minecraft/item/ItemStack; # findAmmo -# Fluid -public net.minecraft.fluid.Fluid func_180664_k()Lnet/minecraft/util/BlockRenderLayer; # getRenderLayer -# Entity -public net.minecraft.entity.Entity func_70022_Q()Ljava/lang/String; # getEntityString -# PlayerEntity -public net.minecraft.entity.player.PlayerEntity func_71053_j()V #closeScreen -# EntityTrackerEntry -public net.minecraft.entity.EntityTrackerEntry field_73134_o # trackingPlayers -# Save Location -public net.minecraft.world.chunk.storage.AnvilChunkLoader field_75825_d # chunkSaveLocation -public net.minecraft.world.chunk.ServerChunkProvider field_73247_e # currentChunkLoader -private-f net.minecraft.world.chunk.ChunkHolder field_219320_o # block update location -# World -public-f net.minecraft.world.World field_72982_D #villageCollectionObj -# Map Gen Biome Lists -public+f net.minecraft.world.gen.structure.MapGenStronghold field_151546_e -# MapGenVillage -public-f net.minecraft.world.gen.structure.MapGenVillage field_75055_e #villageSpawnBiomes -# LayerUtil -public net.minecraft.world.gen.layer.LayerUtil func_202829_a(JLnet/minecraft/world/gen/layer/traits/IAreaTransformer1;Lnet/minecraft/world/gen/area/IAreaFactory;ILjava/util/function/LongFunction;)Lnet/minecraft/world/gen/area/IAreaFactory; # repeat -# ShapedRecipes -public+f net.minecraft.item.crafting.ShapedRecipes field_77574_d #recipeItems -public+f net.minecraft.item.crafting.ShapedRecipes field_77576_b #recipeWidth -public+f net.minecraft.item.crafting.ShapedRecipes field_77577_c #recipeHeight -# ShapelessRecipes -public net.minecraft.item.crafting.ShapelessRecipes field_77579_b #recipeItems -# ContainerType -public net.minecraft.inventory.container.ContainerType (Lnet/minecraft/inventory/container/ContainerType$IFactory;)V -public net.minecraft.inventory.container.ContainerType$IFactory -# RepairContainer -public net.minecraft.inventory.container.RepairContainer field_82856_l #RepairContainer/stackSizeToBeUsedInRepair -# BiomeDecorator -public net.minecraft.world.biome.BiomeDecorator * -# CreativeTabs -public-f net.minecraft.creativetab.CreativeTabs field_78032_a # creativeTabArray non-final -# World stuff -public net.minecraft.world.World field_73003_n #prevRainingStrength -public net.minecraft.world.World field_73004_o #rainingStrength -public net.minecraft.world.World field_73017_q #thunderingStrength -public net.minecraft.world.World field_73018_p #prevThunderingStrength -public net.minecraft.world.World func_72923_a(Lnet/minecraft/entity/Entity;)V #onEntityAdded -public net.minecraft.world.World func_72847_b(Lnet/minecraft/entity/Entity;)V #onEntityRemoved -public net.minecraft.world.ServerWorld func_72923_a(Lnet/minecraft/entity/Entity;)V #onEntityAdded -public net.minecraft.world.ServerWorld func_72847_b(Lnet/minecraft/entity/Entity;)V #onEntityRemoved -public net.minecraft.client.world.ClientWorld func_72923_a(Lnet/minecraft/entity/Entity;)V #onEntityAdded -public net.minecraft.client.world.ClientWorld func_72847_b(Lnet/minecraft/entity/Entity;)V #onEntityRemoved -public net.minecraft.world.World func_175701_a(Lnet/minecraft/util/math/BlockPos;)Z # isValid -public net.minecraft.world.World func_189509_E(Lnet/minecraft/util/math/BlockPos;)Z # isOutsideBuildHeight -# IngameGui +public net.minecraft.block.Block$Properties func_200943_b(F)Lnet/minecraft/block/Block$Properties; # hardnessAndResistance +public net.minecraft.block.Block$Properties func_200944_c()Lnet/minecraft/block/Block$Properties; # needsRandomTick +public net.minecraft.block.Block$Properties func_200947_a(Lnet/minecraft/block/SoundType;)Lnet/minecraft/block/Block$Properties; # sound +public net.minecraft.block.Block$Properties func_200951_a(I)Lnet/minecraft/block/Block$Properties; # lightValue +public net.minecraft.block.Block$Properties func_208770_d()Lnet/minecraft/block/Block$Properties; # variableOpacity +public net.minecraft.block.Block$Properties func_222380_e()Lnet/minecraft/block/Block$Properties; # noDrops +public net.minecraft.client.Minecraft field_71446_o # textureManager +public net.minecraft.client.Minecraft func_184119_a(Lnet/minecraft/item/ItemStack;Lnet/minecraft/tileentity/TileEntity;)Lnet/minecraft/item/ItemStack; # storeTEInStack +public net.minecraft.client.Minecraft func_193986_ar()V # populateSearchTreeManager +public net.minecraft.client.audio.SoundEngine field_148622_c #sndHandler protected net.minecraft.client.gui.IngameGui * protected net.minecraft.client.gui.IngameGui func_194798_c()V # renderAttackIndicator -protected net.minecraft.client.gui.IngameGui func_194800_d(F)V -protected net.minecraft.client.gui.IngameGui func_194805_e(F)V -protected net.minecraft.client.gui.IngameGui func_212303_b(Lnet/minecraft/entity/Entity;)V -protected net.minecraft.client.gui.IngameGui func_194808_p()V protected net.minecraft.client.gui.IngameGui func_194802_a(Lnet/minecraft/scoreboard/ScoreObjective;)V -# ItemStack -default net.minecraft.item.ItemStack field_77991_e -# MapGenStructureIO -public net.minecraft.world.gen.structure.MapGenStructureIO func_143034_b(Ljava/lang/Class;Ljava/lang/String;)V # registerStart -public net.minecraft.world.gen.structure.MapGenStructureIO func_143031_a(Ljava/lang/Class;Ljava/lang/String;)V # registerPiece -# Stronghold -public net.minecraft.world.gen.structure.StructureStrongholdPieces$Stronghold -# Packets -public net.minecraft.network.play.server.SChangeBlockPacket field_148883_d # blockState -# WorldType -public-f net.minecraft.world.WorldType field_77139_a #worldTypes -# DamageSource -public net.minecraft.util.DamageSource *() #All methods public, most are already -# GoalSelector -public net.minecraft.entity.ai.goal.GoalSelector field_75782_a # taskEntries -public net.minecraft.entity.ai.goal.GoalSelector$EntityAITaskEntry -# MemoryModuleType -public net.minecraft.entity.ai.brain.memory.MemoryModuleType (Ljava/util/Optional;)V -# SensorType -public net.minecraft.entity.ai.brain.sensor.SensorType (Ljava/util/function/Supplier;)V -# Activity -public net.minecraft.entity.ai.brain.schedule.Activity (Ljava/lang/String;)V -# ExperienceOrbEntity -public net.minecraft.entity.item.ExperienceOrbEntity field_70530_e # xpValue -# Village -public net.minecraft.world.gen.structure.StructureVillagePieces$Village -# RenderItem -public net.minecraft.client.renderer.ItemRenderer func_191970_a(Lnet/minecraft/client/renderer/BufferBuilder;Ljava/util/List;ILnet/minecraft/item/ItemStack;)V # renderQuads -# ServerChunkProvider -public net.minecraft.world.chunk.ServerChunkProvider field_186029_c # chunkGenerator -public net.minecraft.world.chunk.ServerChunkProvider field_73244_f # loadedChunkHashMap -#public net.minecraft.world.chunk.ServerChunkProvider field_73245_g # loadedChunks -public net.minecraft.world.chunk.ServerChunkProvider field_73251_h # worldObj -# ChunkStatus -public net.minecraft.world.chunk.ChunkStatus (Ljava/lang/String;Lnet/minecraft/world/chunk/ChunkStatus;ILjava/util/EnumSet;Lnet/minecraft/world/chunk/ChunkStatus$Type;Lnet/minecraft/world/chunk/ChunkStatus$IGenerationWorker;Lnet/minecraft/world/chunk/ChunkStatus$ILoadingWorker;)V - -# ItemRenderer -protected net.minecraft.client.renderer.entity.ItemRenderer func_177078_a(Lnet/minecraft/item/ItemStack;)I # getMiniItemCount - -public net.minecraft.client.renderer.entity.EntityRendererManager func_217782_a(Ljava/lang/Class;Lnet/minecraft/client/renderer/entity/EntityRenderer;)V # addRenderer - -public net.minecraft.item.crafting.TippedArrowRecipe -public net.minecraft.item.crafting.ShieldRecipes$Decoration -public net.minecraft.item.crafting.RecipesBanners$RecipeAddPattern -public net.minecraft.item.crafting.RecipesBanners$RecipeDuplicatePattern -public net.minecraft.block.state.BlockStateContainer$StateImplementation -protected net.minecraft.block.state.BlockStateContainer$StateImplementation (Lnet/minecraft/block/Block;Lcom/google/common/collect/ImmutableMap;)V -protected net.minecraft.block.state.BlockStateContainer$StateImplementation field_177238_c # propertyValueTable - -# BlockModel -public net.minecraft.client.renderer.model.BlockModel field_178318_c # textures -public net.minecraft.client.renderer.model.BlockModel field_178315_d # parent -public net.minecraft.client.renderer.model.BlockModel field_178322_i # ambientOcclusion -public net.minecraft.client.renderer.model.BlockModel func_209568_a(Lnet/minecraft/client/renderer/model/BlockModel;Ljava/util/function/Function;Ljava/util/function/Function;)Lnet/minecraft/client/renderer/model/ItemOverrideList; # getOverrides -public net.minecraft.client.renderer.model.BlockModel func_187966_f()Ljava/util/List; # getOverrides - -# ModelBakery -public net.minecraft.client.renderer.model.ModelBakery field_177604_a # MODEL_MISSING -protected net.minecraft.client.renderer.model.ModelBakery field_177602_b # LOCATIONS_BUILTIN_TEXTURES -protected net.minecraft.client.renderer.model.ModelBakery field_177598_f # resourceManager -protected net.minecraft.client.renderer.model.ModelBakery field_177599_g # sprites -protected net.minecraft.client.renderer.model.ModelBakery field_177609_j # textureMap -protected net.minecraft.client.renderer.model.ModelBakery field_177610_k # blockModelShapes -protected net.minecraft.client.renderer.model.ModelBakery field_177605_n # bakedRegistry -protected net.minecraft.client.renderer.model.ModelBakery field_177606_o # MODEL_GENERATED -protected net.minecraft.client.renderer.model.ModelBakery field_177616_r # MODEL_ENTITY -protected net.minecraft.client.renderer.model.ModelBakery func_177569_a(Lnet/minecraft/client/renderer/model/BlockModelDefinition;Lnet/minecraft/client/renderer/model/ModelResourceLocation;)V # registerVariant -protected net.minecraft.client.renderer.model.ModelBakery func_177586_a(Lnet/minecraft/util/ResourceLocation;)Lnet/minecraft/client/renderer/model/BlockModelDefinition; # getBlockModelDefinition -protected net.minecraft.client.renderer.model.ModelBakery func_177594_c(Lnet/minecraft/util/ResourceLocation;)Lnet/minecraft/client/renderer/model/BlockModel; # loadModel -protected net.minecraft.client.renderer.model.ModelBakery func_177592_e()V # registerVariantNames -protected net.minecraft.client.renderer.model.ModelBakery func_177596_a(Lnet/minecraft/item/Item;)Ljava/util/List; # getVariantNames -protected net.minecraft.client.renderer.model.ModelBakery func_177583_a(Ljava/lang/String;)Lnet/minecraft/util/ResourceLocation; # getItemLocation -protected net.minecraft.client.renderer.model.ModelBakery func_177585_a(Lnet/minecraft/client/renderer/model/BlockModel;)Ljava/util/Set; # getTextureLocations -protected net.minecraft.client.renderer.model.ModelBakery func_177581_b(Lnet/minecraft/client/renderer/model/BlockModel;)Z # hasItemModel -protected net.minecraft.client.renderer.model.ModelBakery func_177587_c(Lnet/minecraft/client/renderer/model/BlockModel;)Z # isCustomRenderer -protected net.minecraft.client.renderer.model.ModelBakery func_177582_d(Lnet/minecraft/client/renderer/model/BlockModel;)Lnet/minecraft/client/renderer/model/BlockModel; # makeItemModel -protected net.minecraft.client.renderer.model.ModelBakery func_177580_d(Lnet/minecraft/util/ResourceLocation;)Lnet/minecraft/util/ResourceLocation; # getModelLocation -protected net.minecraft.client.renderer.model.ModelBakery func_188640_b()V # loadBlocks -protected net.minecraft.client.renderer.model.ModelBakery func_177577_b()V # loadVariantItemModels -protected net.minecraft.client.renderer.model.ModelBakery func_177590_d()V # loadItemModels -protected net.minecraft.client.renderer.model.ModelBakery func_177595_c()V # loadVariantModels -protected net.minecraft.client.renderer.model.ModelBakery func_188637_e()V # loadMultipartVariantModels -protected net.minecraft.client.renderer.model.ModelBakery func_188638_a(Lnet/minecraft/client/renderer/model/ModelResourceLocation;Lnet/minecraft/client/renderer/model/VariantList;)V # loadVariantList - -# ItemModelMesher -# This field is public and uses int IDs, so we hide it and expose ItemModelMesherForge methods instead -private net.minecraft.client.renderer.ItemModelMesher field_199313_a - -# ItemOverrideList -protected net.minecraft.client.renderer.model.ItemOverrideList ()V - -# BufferBuilder -public net.minecraft.client.renderer.BufferBuilder func_78909_a(I)I # getColorIndex -public net.minecraft.client.renderer.BufferBuilder func_178972_a(IIII)V # putColorRGB -- Add A? - -# S00PacketServerInfo -public net.minecraft.network.status.server.SServerInfoPacket field_149297_a # GSON - -# Resource Packs -public net.minecraft.resources.FallbackResourceManager field_199023_a # resourcePacks -public net.minecraft.resources.ResourcePack field_195771_a # file - -#Main FML Access Transformer configuration file -# EntityRendererManager -public net.minecraft.client.renderer.entity.EntityRendererManager field_78729_o #renderers -# TileEntityRendererDispatcher -public net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher field_147557_n # fontRenderer - needed for rendering text in TESR items before entering world -private-f net.minecraft.client.renderer.tileentity.PistonTileEntityRenderer field_178462_c # blockRenderer - it's static so we need to un-finalize in case this class loads to early. -# GameRenderer -public net.minecraft.client.renderer.GameRenderer func_175069_a(Lnet/minecraft/util/ResourceLocation;)V #loadShader -# WeightedRandomItem -public net.minecraft.util.WeightedRandom$Item field_76292_a #probability -# PlayerEntity -public net.minecraft.entity.player.PlayerEntity func_184816_a(Lnet/minecraft/entity/item/ItemEntity;)Lnet/minecraft/item/ItemStack; # dropItemAndGetStack -protected net.minecraft.entity.player.PlayerEntity field_71077_c # spawnPos -protected net.minecraft.entity.player.PlayerEntity field_82248_d # spawnForced -# ClientPlayerEntity -public net.minecraft.client.entity.ClientPlayerEntity func_184816_a(Lnet/minecraft/entity/item/ItemEntity;)Lnet/minecraft/item/ItemStack; # dropItemAndGetStack -# ServerPlayerEntity getNextWindowId -public net.minecraft.entity.player.ServerPlayerEntity func_71117_bO()V -public net.minecraft.entity.player.ServerPlayerEntity field_71139_cq -# MobEntity -public net.minecraft.entity.MobEntity field_70714_bg #tasks -public net.minecraft.entity.MobEntity field_70715_bh #targetTasks -# ContainerMinecartEntity -public net.minecraft.entity.item.ContainerMinecartEntity field_94112_b #dropContentsWhenDead -# ScreenManager +protected net.minecraft.client.gui.IngameGui func_194805_e(F)V +protected net.minecraft.client.gui.IngameGui func_194808_p()V +protected net.minecraft.client.gui.IngameGui func_212303_b(Lnet/minecraft/entity/Entity;)V public net.minecraft.client.gui.ScreenManager func_216911_a(Lnet/minecraft/inventory/container/ContainerType;Lnet/minecraft/client/gui/ScreenManager$IScreenFactory;)V # registerFactory public net.minecraft.client.gui.ScreenManager$IScreenFactory -# Screen -public net.minecraft.client.gui.screen.Screen field_146297_k # minecraft instance - public because gui's outside access it -# Minecraft -public net.minecraft.client.Minecraft field_71446_o # textureManager -public net.minecraft.client.Minecraft field_110450_ap # mcDefaultResourcePack -public net.minecraft.client.Minecraft func_71370_a(II)V # resize -public net.minecraft.client.Minecraft func_180510_a(Lnet/minecraft/client/renderer/texture/TextureManager;)V # drawSplashScreen -public net.minecraft.client.Minecraft func_184119_a(Lnet/minecraft/item/ItemStack;Lnet/minecraft/tileentity/TileEntity;)Lnet/minecraft/item/ItemStack; # storeTEInStack -# MinecraftServer -protected net.minecraft.server.MinecraftServer field_211151_aa # serverTime -# DedicatedServer -public net.minecraft.server.dedicated.DedicatedServer field_71341_l # pendingCommandList -# SaveFormatOld -public net.minecraft.world.storage.SaveFormatOld field_75808_a # savesDirectory - -protected net.minecraft.util.ObjectIntIdentityMap field_148749_a # internal map -protected net.minecraft.util.ObjectIntIdentityMap field_148748_b # internal index list -protected net.minecraft.util.ObjectIntIdentityMap field_195868_a # nextId - -protected net.minecraft.client.gui.widget.list.AbstractList$AbstractListEntry list # list -# Button -public net.minecraft.client.gui.widget.button.Button field_146120_f # width - needed for config GUI stuff -public net.minecraft.client.gui.widget.button.Button field_146121_g # height - needed for config GUI stuff -# TextFieldWidget -public-f net.minecraft.client.gui.widget.TextFieldWidget field_146218_h # width - needed for config GUI stuff -public-f net.minecraft.client.gui.widget.TextFieldWidget field_146219_i # height - needed for config GUI stuff -# SlotGui -public net.minecraft.client.gui.SlotGui field_148149_f # slotHeight - needed for config GUI stuff -public net.minecraft.client.gui.SlotGui field_148151_d # right - needed for config GUI stuff -public net.minecraft.client.gui.SlotGui field_148152_e # left - needed for config GUI stuff -public net.minecraft.client.gui.SlotGui field_148153_b # top - needed for config GUI stuff -public net.minecraft.client.gui.SlotGui field_148154_c # bottom - needed for config GUI stuff -public net.minecraft.client.gui.SlotGui field_148155_a # width - needed for config GUI stuff -public net.minecraft.client.gui.SlotGui field_148158_l # height - needed for config GUI stuff -public net.minecraft.client.gui.SlotGui field_148160_j # headerPadding - needed for config GUI stuff - -# VillagerProfession -public net.minecraft.entity.merchant.villager.VillagerProfession (Ljava/lang/String;Lnet/minecraft/village/PointOfInterestType;Lcom/google/common/collect/ImmutableSet;Lcom/google/common/collect/ImmutableSet;)V -# PointOFInterestType -public net.minecraft.village.PointOfInterestType (Ljava/lang/String;Ljava/util/Set;ILnet/minecraft/util/SoundEvent;Ljava/util/function/Predicate;)V -public net.minecraft.village.PointOfInterestType (Ljava/lang/String;Ljava/util/Set;ILnet/minecraft/util/SoundEvent;)V - -# Villager Traid Classes -public net.minecraft.entity.passive.VillagerEntity$EmeraldForItems -public net.minecraft.entity.passive.VillagerEntity$ITradeList -public net.minecraft.entity.passive.VillagerEntity$ItemAndEmeraldToItem -public net.minecraft.entity.passive.VillagerEntity$ListEnchantedBookForEmeralds -public net.minecraft.entity.passive.VillagerEntity$ListEnchantedItemForEmeralds -public net.minecraft.entity.passive.VillagerEntity$ListItemForEmeralds -public net.minecraft.entity.passive.VillagerEntity$PriceInfo - -# Font renderer -protected net.minecraft.client.gui.FontRenderer field_78286_d # charWidth -protected net.minecraft.client.gui.FontRenderer field_78287_e # glyphWidth -protected net.minecraft.client.gui.FontRenderer field_111273_g # locationFontTexture -protected net.minecraft.client.gui.FontRenderer field_78295_j # posX -protected net.minecraft.client.gui.FontRenderer field_78296_k # posY -protected net.minecraft.client.gui.FontRenderer func_78266_a(IZ)F # renderDefaultChar -protected net.minecraft.client.gui.FontRenderer func_78277_a(CZ)F # renderUnicodeChar - -# EndChunkGenerator -private-f net.minecraft.world.gen.EndChunkGenerator field_185969_i #lperlin1 -private-f net.minecraft.world.gen.EndChunkGenerator field_185970_j #lperlin2 -private-f net.minecraft.world.gen.EndChunkGenerator field_185971_k #perlin -private-f net.minecraft.world.gen.EndChunkGenerator field_185973_o #island -private-f net.minecraft.world.gen.EndChunkGenerator field_185972_n #endCityGen - -# OverworldChunkGenerator -private-f net.minecraft.world.gen.OverworldChunkGenerator field_185991_j #lperlin1 -private-f net.minecraft.world.gen.OverworldChunkGenerator field_185992_k #lperlin2 -private-f net.minecraft.world.gen.OverworldChunkGenerator field_185993_l #perlin -private-f net.minecraft.world.gen.OverworldChunkGenerator field_185994_m #surface -private-f net.minecraft.world.gen.OverworldChunkGenerator field_185979_A #ravineGenerator -private-f net.minecraft.world.gen.OverworldChunkGenerator field_185980_B #oceanMonumentGenerator -private-f net.minecraft.world.gen.OverworldChunkGenerator field_186003_v #caveGenerator -private-f net.minecraft.world.gen.OverworldChunkGenerator field_186004_w #strongholdGenerator -private-f net.minecraft.world.gen.OverworldChunkGenerator field_186005_x #villageGenerator -private-f net.minecraft.world.gen.OverworldChunkGenerator field_186006_y #mineshaftGenerator -private-f net.minecraft.world.gen.OverworldChunkGenerator field_186007_z #scatteredFeatureGenerator -private-f net.minecraft.world.gen.OverworldChunkGenerator field_191060_C #woodlandMansionGenerator - -# NetherChunkGenerator -private-f net.minecraft.world.gen.NetherChunkGenerator field_185957_u #lperlin1 -private-f net.minecraft.world.gen.NetherChunkGenerator field_185958_v #lperlin2 -private-f net.minecraft.world.gen.NetherChunkGenerator field_185959_w #perlin -private-f net.minecraft.world.gen.NetherChunkGenerator field_73177_m #perlin2 -private-f net.minecraft.world.gen.NetherChunkGenerator field_73174_n #perlin3 -public-f net.minecraft.world.gen.NetherChunkGenerator field_185946_g #scale -public-f net.minecraft.world.gen.NetherChunkGenerator field_185947_h #depth -private-f net.minecraft.world.gen.NetherChunkGenerator field_185939_I #netherCaveGenerator -private-f net.minecraft.world.gen.NetherChunkGenerator field_73172_c #netherBridgeGenerator - -# PlayerManager -private-f net.minecraft.server.management.PlayerChunkMapEntry field_187285_e # field_187285_e - -# LivingRenderer -public net.minecraft.client.renderer.entity.LivingRenderer func_177094_a(Lnet/minecraft/client/renderer/entity/layers/LayerRenderer;)Z # addLayer -#public net.minecraft.client.renderer.entity.LivingRenderer func_177089_b(Lnet/minecraft/client/renderer/entity/layers/LayerRenderer;)Z # removeLayer - -# LootTable Stuff -private-f net.minecraft.world.storage.loot.LootPool field_186455_c # rolls -private-f net.minecraft.world.storage.loot.LootPool field_186456_d # bonusRolls - -#NumberNBT -public net.minecraft.nbt.NumberNBT - -#overlay.DebugOverlayGui -public net.minecraft.client.gui.overlay.DebugOverlayGui func_181554_e()V # renderLagometer protected net.minecraft.client.gui.overlay.DebugOverlayGui field_211537_g # rayTraceBlock protected net.minecraft.client.gui.overlay.DebugOverlayGui field_211538_h # rayTraceFluid - -# Expose vanilla brewing recipe system -public net.minecraft.potion.PotionHelper func_193355_a(Lnet/minecraft/item/PotionItem;Lnet/minecraft/item/Item;Lnet/minecraft/item/PotionItem;)V # registerPotionItemConversion -public net.minecraft.potion.PotionHelper func_193354_a(Lnet/minecraft/item/PotionItem;)V # registerPotionItem -public net.minecraft.potion.PotionHelper func_193357_a(Lnet/minecraft/potion/PotionType;Lnet/minecraft/item/Item;Lnet/minecraft/potion/PotionType;)V # registerPotionTypeConversion -public net.minecraft.potion.PotionHelper func_193356_a(Lnet/minecraft/potion/PotionType;Lnet/minecraft/item/crafting/Ingredient;Lnet/minecraft/potion/PotionType;)V # registerPotionTypeConversion - -# TileEntity -public net.minecraft.tileentity.TileEntity func_190560_a(Ljava/lang/String;Ljava/lang/Class;)V # register - -# HopperTileEntity -public net.minecraft.tileentity.HopperTileEntity func_174914_o()Z # mayTransfer -public net.minecraft.tileentity.HopperTileEntity func_145896_c(I)V # setTransferCooldown -protected net.minecraft.tileentity.HopperTileEntity func_145887_i()Z # updateHopper - -# DataFixer -public net.minecraft.util.datafix.DataFixer field_188262_d # version - -# Data Entry Point +protected net.minecraft.client.gui.widget.list.AbstractList$AbstractListEntry list # list +public net.minecraft.client.particle.ParticleManager func_199283_a(Lnet/minecraft/particles/ParticleType;Lnet/minecraft/client/particle/IParticleFactory;)V # registerFactory +public net.minecraft.client.particle.ParticleManager func_215234_a(Lnet/minecraft/particles/ParticleType;Lnet/minecraft/client/particle/ParticleManager$IParticleMetaFactory;)V # registerFactory +public net.minecraft.client.renderer.BufferBuilder func_178972_a(IIII)V # putColorRGB -- Add A? +public net.minecraft.client.renderer.BufferBuilder func_78909_a(I)I # getColorIndex +public net.minecraft.client.renderer.GameRenderer func_175069_a(Lnet/minecraft/util/ResourceLocation;)V #loadShader +private net.minecraft.client.renderer.ItemModelMesher field_199313_a +public net.minecraft.client.renderer.ItemRenderer func_191970_a(Lnet/minecraft/client/renderer/BufferBuilder;Ljava/util/List;ILnet/minecraft/item/ItemStack;)V # renderQuads +public net.minecraft.client.renderer.entity.EntityRendererManager field_78729_o #renderers +public net.minecraft.client.renderer.entity.EntityRendererManager func_217782_a(Ljava/lang/Class;Lnet/minecraft/client/renderer/entity/EntityRenderer;)V # addRenderer +protected net.minecraft.client.renderer.entity.ItemRenderer func_177078_a(Lnet/minecraft/item/ItemStack;)I # getMiniItemCount +public net.minecraft.client.renderer.entity.LivingRenderer func_177094_a(Lnet/minecraft/client/renderer/entity/layers/LayerRenderer;)Z # addLayer +public net.minecraft.client.renderer.model.BlockModel field_178315_d # parent +public net.minecraft.client.renderer.model.BlockModel field_178318_c # textures +public net.minecraft.client.renderer.model.BlockModel field_178322_i # ambientOcclusion +public net.minecraft.client.renderer.model.BlockModel func_187966_f()Ljava/util/List; # getOverrides +protected net.minecraft.client.renderer.model.ItemOverrideList ()V +protected net.minecraft.client.renderer.model.ModelBakery field_177598_f # resourceManager +protected net.minecraft.client.renderer.model.ModelBakery field_177602_b # LOCATIONS_BUILTIN_TEXTURES +public net.minecraft.client.renderer.model.ModelBakery field_177604_a # MODEL_MISSING +protected net.minecraft.client.renderer.model.ModelBakery field_177606_o # MODEL_GENERATED +protected net.minecraft.client.renderer.model.ModelBakery field_177609_j # textureMap +protected net.minecraft.client.renderer.model.ModelBakery field_177616_r # MODEL_ENTITY +protected net.minecraft.client.renderer.model.ModelBakery func_177594_c(Lnet/minecraft/util/ResourceLocation;)Lnet/minecraft/client/renderer/model/BlockModel; # loadModel +private-f net.minecraft.client.renderer.tileentity.PistonTileEntityRenderer field_178462_c # blockRenderer - it's static so we need to un-finalize in case this class loads to early. +public net.minecraft.client.renderer.tileentity.TileEntityRendererDispatcher field_147557_n # fontRenderer - needed for rendering text in TESR items before entering world +public net.minecraft.command.arguments.EntityOptions func_202024_a(Ljava/lang/String;Lnet/minecraft/command/arguments/EntityOptions$IFilter;Ljava/util/function/Predicate;Lnet/minecraft/util/text/ITextComponent;)V # register +public net.minecraft.command.arguments.EntitySelectorParser func_197396_n()V # updateFilter +public net.minecraft.command.arguments.EntitySelectorParser func_197404_d()V # parseArguments protected net.minecraft.data.RecipeProvider func_200404_a(Ljava/util/function/Consumer;)V # registerRecipes protected net.minecraft.data.RecipeProvider func_208310_b(Lnet/minecraft/data/DirectoryCache;Lcom/google/gson/JsonObject;Ljava/nio/file/Path;)V # saveRecipeAdvancement public net.minecraft.data.ShapedRecipeBuilder$Result - -# ThreadTaskExecutor -public net.minecraft.util.concurrent.ThreadTaskExecutor func_213165_a(Ljava/lang/Runnable;)Ljava/util/concurrent/CompletableFuture; # func_213165_a - -# AbstractSkeletonEntity +public net.minecraft.entity.Entity func_70022_Q()Ljava/lang/String; # getEntityString +public net.minecraft.entity.MobEntity field_70714_bg #tasks +public net.minecraft.entity.MobEntity field_70715_bh #targetTasks +public net.minecraft.entity.ai.brain.memory.MemoryModuleType (Ljava/util/Optional;)V +public net.minecraft.entity.ai.brain.schedule.Activity (Ljava/lang/String;)V +public net.minecraft.entity.ai.brain.sensor.SensorType (Ljava/util/function/Supplier;)V +public net.minecraft.entity.item.ExperienceOrbEntity field_70530_e # xpValue +public net.minecraft.entity.merchant.villager.VillagerProfession (Ljava/lang/String;Lnet/minecraft/village/PointOfInterestType;Lcom/google/common/collect/ImmutableSet;Lcom/google/common/collect/ImmutableSet;)V protected net.minecraft.entity.monster.AbstractSkeletonEntity func_190727_o()Lnet/minecraft/util/SoundEvent; # getStepSound - make AbstractSkeletonEntity implementable - -# WitherSkeletonEntity -protected net.minecraft.entity.monster.WitherSkeletonEntity func_190727_o()Lnet/minecraft/util/SoundEvent; # getStepSound - make AbstractSkeletonEntity implementable - -# StrayEntity -protected net.minecraft.entity.monster.StrayEntity func_190727_o()Lnet/minecraft/util/SoundEvent; # getStepSound - make AbstractSkeletonEntity implementable - -# SkeletonEntity protected net.minecraft.entity.monster.SkeletonEntity func_190727_o()Lnet/minecraft/util/SoundEvent; # getStepSound - make AbstractSkeletonEntity implementable - -# EntitySelectorParser -public net.minecraft.command.arguments.EntitySelectorParser func_197396_n()V # updateFilter -public net.minecraft.command.arguments.EntitySelectorParser func_197404_d()V # parseArguments - -# EntityOptions -public net.minecraft.command.arguments.EntityOptions func_202024_a(Ljava/lang/String;Lnet/minecraft/command/arguments/EntityOptions$IFilter;Ljava/util/function/Predicate;Lnet/minecraft/util/text/ITextComponent;)V # register - -# Teleporter -protected net.minecraft.world.Teleporter field_85192_a # world -protected net.minecraft.world.Teleporter field_77187_a # random -protected net.minecraft.world.Teleporter field_85191_c # destinationCoordinateCache - -public net.minecraft.util.ResourceLocation func_177516_a(Ljava/lang/String;)[Ljava/lang/String; # splitObjectName - -# Ingredient +protected net.minecraft.entity.monster.StrayEntity func_190727_o()Lnet/minecraft/util/SoundEvent; # getStepSound - make AbstractSkeletonEntity implementable +protected net.minecraft.entity.monster.WitherSkeletonEntity func_190727_o()Lnet/minecraft/util/SoundEvent; # getStepSound - make AbstractSkeletonEntity implementable +protected net.minecraft.entity.player.PlayerEntity field_71077_c # spawnPos +protected net.minecraft.entity.player.PlayerEntity field_82248_d # spawnForced +public net.minecraft.entity.player.PlayerEntity func_71053_j()V #closeScreen +public net.minecraft.entity.player.ServerPlayerEntity field_71139_cq +public net.minecraft.entity.player.ServerPlayerEntity func_71117_bO()V +public net.minecraft.fluid.Fluid func_180664_k()Lnet/minecraft/util/BlockRenderLayer; # getRenderLayer +public net.minecraft.inventory.container.ContainerType (Lnet/minecraft/inventory/container/ContainerType$IFactory;)V +public net.minecraft.inventory.container.ContainerType$IFactory +public net.minecraft.inventory.container.RepairContainer field_82856_l #RepairContainer/stackSizeToBeUsedInRepair +public net.minecraft.item.AxeItem (Lnet/minecraft/item/IItemTier;FFLnet/minecraft/item/Item$Properties;)V +public net.minecraft.item.Item field_185051_m # properties +public-f net.minecraft.item.ItemGroup field_78032_a # group array +public net.minecraft.item.PickaxeItem (Lnet/minecraft/item/IItemTier;IFLnet/minecraft/item/Item$Properties;)V public-f net.minecraft.item.crafting.Ingredient protected net.minecraft.item.crafting.Ingredient (Ljava/util/stream/Stream;)V -public net.minecraft.item.crafting.Ingredient func_209357_a(Ljava/util/stream/Stream;)Lnet/minecraft/item/crafting/Ingredient; public+f net.minecraft.item.crafting.Ingredient func_199564_a(Lnet/minecraft/network/PacketBuffer;)V +public net.minecraft.item.crafting.Ingredient func_209357_a(Ljava/util/stream/Stream;)Lnet/minecraft/item/crafting/Ingredient; public net.minecraft.item.crafting.Ingredient$IItemList public net.minecraft.item.crafting.Ingredient$SingleItemList public net.minecraft.item.crafting.Ingredient$SingleItemList (Lnet/minecraft/item/ItemStack;)V public net.minecraft.item.crafting.Ingredient$TagList public net.minecraft.item.crafting.Ingredient$TagList (Lnet/minecraft/tags/Tag;)V - -# Crafting -public net.minecraft.client.Minecraft func_193986_ar()V # populateSearchTreeManager - -# Advancements -public net.minecraft.advancements.AdvancementManager func_195439_b(Lnet/minecraft/resources/IResourceManager;)Ljava/util/Map; # loadCustomAdvancements -public net.minecraft.advancements.CriteriaTriggers func_192118_a(Lnet/minecraft/advancements/ICriterionTrigger;)Lnet/minecraft/advancements/ICriterionTrigger; # register - -# BiomeProvider -public net.minecraft.world.biome.provider.BiomeProvider field_201540_a # BIOMES_TO_SPAWN_IN - -# BlockTags.Wrapper -public net.minecraft.tags.BlockTags$Wrapper - -#SaveHandler -public net.minecraft.world.storage.SaveHandler field_75771_c # playersDirectory - -#BlockItemUseContext -public net.minecraft.item.BlockItemUseContext (Lnet/minecraft/world/World;Lnet/minecraft/entity/player/PlayerEntity;Lnet/minecraft/item/ItemStack;Lnet/minecraft/util/math/BlockPos;Lnet/minecraft/util/EnumFacing;FFF)V - -#EntitySpawnPlacementRegistry -public net.minecraft.entity.EntitySpawnPlacementRegistry func_209343_a(Lnet/minecraft/entity/EntityType;Lnet/minecraft/entity/EntitySpawnPlacementRegistry$PlacementType;Lnet/minecraft/world/gen/Heightmap$Type;)V # register - -# Block$Properties -public net.minecraft.block.Block$Properties func_200947_a(Lnet/minecraft/block/SoundType;)Lnet/minecraft/block/Block$Properties; # sound -public net.minecraft.block.Block$Properties func_200951_a(I)Lnet/minecraft/block/Block$Properties; # lightValue -public net.minecraft.block.Block$Properties func_200944_c()Lnet/minecraft/block/Block$Properties; # needsRandomTick -public net.minecraft.block.Block$Properties func_208770_d()Lnet/minecraft/block/Block$Properties; # variableOpacity -public net.minecraft.block.Block$Properties func_200943_b(F)Lnet/minecraft/block/Block$Properties; # hardnessAndResistance - -#ChunkGeneratorType -public net.minecraft.world.gen.ChunkGeneratorType$Settings - -#IChunkGeneratorFactory -public net.minecraft.world.gen.IChunkGeneratorFactory - -#ParticleType ctors -public net.minecraft.particles.ParticleType (ZLnet/minecraft/particles/IParticleData$IDeserializer;)V +public net.minecraft.item.crafting.TippedArrowRecipe +public net.minecraft.nbt.NumberNBT +public net.minecraft.network.status.server.SServerInfoPacket field_149297_a # GSON public net.minecraft.particles.BasicParticleType (Z)V - -# ParticleManager -public net.minecraft.client.particle.ParticleManager func_199283_a(Lnet/minecraft/particles/ParticleType;Lnet/minecraft/client/particle/IParticleFactory;)V # registerFactory -public net.minecraft.client.particle.ParticleManager func_215234_a(Lnet/minecraft/particles/ParticleType;Lnet/minecraft/client/particle/ParticleManager$IParticleMetaFactory;)V # registerFactory \ No newline at end of file +public net.minecraft.particles.ParticleType (ZLnet/minecraft/particles/IParticleData$IDeserializer;)V +public net.minecraft.resources.FallbackResourceManager field_199023_a # resourcePacks +public net.minecraft.resources.ResourcePack field_195771_a # file +protected net.minecraft.server.MinecraftServer field_211151_aa # serverTime +public net.minecraft.server.dedicated.DedicatedServer field_71341_l # pendingCommandList +public net.minecraft.tags.BlockTags$Wrapper +public net.minecraft.tileentity.HopperTileEntity func_145896_c(I)V # setTransferCooldown +public net.minecraft.tileentity.HopperTileEntity func_174914_o()Z # mayTransfer +public net.minecraft.util.DamageSource *() #All methods public, most are already +protected net.minecraft.util.ObjectIntIdentityMap field_148748_b # internal index list +protected net.minecraft.util.ObjectIntIdentityMap field_148749_a # internal map +protected net.minecraft.util.ObjectIntIdentityMap field_195868_a # nextId +public net.minecraft.util.WeightedRandom$Item field_76292_a #probability +public net.minecraft.util.concurrent.ThreadTaskExecutor func_213165_a(Ljava/lang/Runnable;)Ljava/util/concurrent/CompletableFuture; # func_213165_a +public net.minecraft.village.PointOfInterestType (Ljava/lang/String;Ljava/util/Set;ILnet/minecraft/util/SoundEvent;)V +public net.minecraft.village.PointOfInterestType (Ljava/lang/String;Ljava/util/Set;ILnet/minecraft/util/SoundEvent;Ljava/util/function/Predicate;)V +protected net.minecraft.world.Teleporter field_77187_a # random +protected net.minecraft.world.Teleporter field_85191_c # destinationCoordinateCache +protected net.minecraft.world.Teleporter field_85192_a # world +public net.minecraft.world.World field_73003_n #prevRainingStrength +public net.minecraft.world.World field_73004_o #rainingStrength +public net.minecraft.world.World field_73017_q #thunderingStrength +public net.minecraft.world.World field_73018_p #prevThunderingStrength +public net.minecraft.world.World func_175701_a(Lnet/minecraft/util/math/BlockPos;)Z # isValid +public net.minecraft.world.World func_189509_E(Lnet/minecraft/util/math/BlockPos;)Z # isOutsideBuildHeight +public-f net.minecraft.world.WorldType field_77139_a #worldTypes +public net.minecraft.world.biome.provider.BiomeProvider field_201540_a # BIOMES_TO_SPAWN_IN +private-f net.minecraft.world.chunk.ChunkHolder field_219320_o # block update location +public net.minecraft.world.chunk.ChunkStatus (Ljava/lang/String;Lnet/minecraft/world/chunk/ChunkStatus;ILjava/util/EnumSet;Lnet/minecraft/world/chunk/ChunkStatus$Type;Lnet/minecraft/world/chunk/ChunkStatus$IGenerationWorker;Lnet/minecraft/world/chunk/ChunkStatus$ILoadingWorker;)V +public net.minecraft.world.chunk.ServerChunkProvider field_186029_c # chunkGenerator +public net.minecraft.world.chunk.ServerChunkProvider field_73251_h # worldObj +public net.minecraft.world.gen.IChunkGeneratorFactory +public net.minecraft.world.gen.layer.LayerUtil func_202829_a(JLnet/minecraft/world/gen/layer/traits/IAreaTransformer1;Lnet/minecraft/world/gen/area/IAreaFactory;ILjava/util/function/LongFunction;)Lnet/minecraft/world/gen/area/IAreaFactory; # repeat +private-f net.minecraft.world.storage.loot.LootPool field_186455_c # rolls +private-f net.minecraft.world.storage.loot.LootPool field_186456_d # bonusRolls \ No newline at end of file