├── .github ├── DISCUSSION_TEMPLATE │ └── draft.yml ├── ISSUE_TEMPLATE │ ├── 000-report-bug.yml │ └── config.yml └── workflows │ ├── BuildAndRelease.yml │ ├── BuildTest.yml │ ├── EventHandler.yml │ ├── Publish.yml │ ├── Release.yml │ └── WindowsTest.yml ├── .gitignore ├── CFP_GUIDELINES.md ├── FIXED_UPSTREAM_ISSUES.md ├── LICENSE ├── README.md ├── build.gradle ├── buildSrc ├── build.gradle └── src │ └── main │ └── groovy │ └── com │ └── cleanroommc │ └── gradle │ └── helpers │ └── tasks │ ├── BytecodeFinder.groovy │ ├── CheckAccessTransformers.groovy │ ├── CheckExcs.groovy │ ├── CheckPatches.groovy │ ├── CheckSAS.groovy │ ├── ClosureHelper.groovy │ ├── CrowdinTask.groovy │ ├── DownloadLibrariesTask.groovy │ ├── FieldCompareFinder.groovy │ ├── ObjectTarget.groovy │ └── Util.groovy ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── icon.ico ├── images └── catroom.png ├── patches └── minecraft │ └── net │ └── minecraft │ ├── advancements │ ├── Advancement.java.patch │ ├── AdvancementManager.java.patch │ ├── AdvancementRewards.java.patch │ ├── DisplayInfo.java.patch │ ├── FunctionManager.java.patch │ ├── PlayerAdvancements.java.patch │ └── critereon │ │ └── ItemPredicate.java.patch │ ├── block │ ├── Block.java.patch │ ├── BlockBanner.java.patch │ ├── BlockBasePressurePlate.java.patch │ ├── BlockBed.java.patch │ ├── BlockBush.java.patch │ ├── BlockButton.java.patch │ ├── BlockCactus.java.patch │ ├── BlockCake.java.patch │ ├── BlockCauldron.java.patch │ ├── BlockChest.java.patch │ ├── BlockChorusFlower.java.patch │ ├── BlockCocoa.java.patch │ ├── BlockCommandBlock.java.patch │ ├── BlockConcretePowder.java.patch │ ├── BlockCrops.java.patch │ ├── BlockDaylightDetector.java.patch │ ├── BlockDeadBush.java.patch │ ├── BlockDispenser.java.patch │ ├── BlockDoor.java.patch │ ├── BlockDoublePlant.java.patch │ ├── BlockDragonEgg.java.patch │ ├── BlockDropper.java.patch │ ├── BlockDynamicLiquid.java.patch │ ├── BlockEnchantmentTable.java.patch │ ├── BlockEndPortal.java.patch │ ├── BlockEnderChest.java.patch │ ├── BlockFalling.java.patch │ ├── BlockFarmland.java.patch │ ├── BlockFence.java.patch │ ├── BlockFenceGate.java.patch │ ├── BlockFire.java.patch │ ├── BlockFlowerPot.java.patch │ ├── BlockGrass.java.patch │ ├── BlockHugeMushroom.java.patch │ ├── BlockIce.java.patch │ ├── BlockJukebox.java.patch │ ├── BlockLadder.java.patch │ ├── BlockLeaves.java.patch │ ├── BlockLever.java.patch │ ├── BlockLilyPad.java.patch │ ├── BlockLiquid.java.patch │ ├── BlockLog.java.patch │ ├── BlockMagma.java.patch │ ├── BlockMobSpawner.java.patch │ ├── BlockMushroom.java.patch │ ├── BlockMycelium.java.patch │ ├── BlockNetherWart.java.patch │ ├── BlockNewLeaf.java.patch │ ├── BlockNote.java.patch │ ├── BlockObserver.java.patch │ ├── BlockOldLeaf.java.patch │ ├── BlockOre.java.patch │ ├── BlockPane.java.patch │ ├── BlockPistonBase.java.patch │ ├── BlockPistonMoving.java.patch │ ├── BlockPortal.java.patch │ ├── BlockPotato.java.patch │ ├── BlockPressurePlate.java.patch │ ├── BlockPressurePlateWeighted.java.patch │ ├── BlockPumpkin.java.patch │ ├── BlockQuartz.java.patch │ ├── BlockRailBase.java.patch │ ├── BlockRailDetector.java.patch │ ├── BlockRailPowered.java.patch │ ├── BlockRedstoneComparator.java.patch │ ├── BlockRedstoneDiode.java.patch │ ├── BlockRedstoneLight.java.patch │ ├── BlockRedstoneOre.java.patch │ ├── BlockRedstoneTorch.java.patch │ ├── BlockRedstoneWire.java.patch │ ├── BlockReed.java.patch │ ├── BlockRotatedPillar.java.patch │ ├── BlockSapling.java.patch │ ├── BlockShulkerBox.java.patch │ ├── BlockSilverfish.java.patch │ ├── BlockSkull.java.patch │ ├── BlockSlab.java.patch │ ├── BlockSnow.java.patch │ ├── BlockSnowBlock.java.patch │ ├── BlockStairs.java.patch │ ├── BlockStaticLiquid.java.patch │ ├── BlockStem.java.patch │ ├── BlockTNT.java.patch │ ├── BlockTallGrass.java.patch │ ├── BlockTorch.java.patch │ ├── BlockTrapDoor.java.patch │ ├── BlockTripWire.java.patch │ ├── BlockTripWireHook.java.patch │ ├── BlockVine.java.patch │ ├── BlockWall.java.patch │ ├── BlockWeb.java.patch │ ├── SoundType.java.patch │ └── state │ │ ├── BlockPistonStructureHelper.java.patch │ │ ├── BlockStateBase.java.patch │ │ ├── BlockStateContainer.java.patch │ │ └── IBlockProperties.java.patch │ ├── client │ ├── ClientBrandRetriever.java.patch │ ├── LoadingScreenRenderer.java.patch │ ├── Minecraft.java.patch │ ├── audio │ │ ├── SoundHandler.java.patch │ │ └── SoundManager.java.patch │ ├── entity │ │ ├── AbstractClientPlayer.java.patch │ │ ├── EntityOtherPlayerMP.java.patch │ │ └── EntityPlayerSP.java.patch │ ├── gui │ │ ├── FontRenderer.java.patch │ │ ├── GuiBossOverlay.java.patch │ │ ├── GuiButton.java.patch │ │ ├── GuiControls.java.patch │ │ ├── GuiCreateWorld.java.patch │ │ ├── GuiEnchantment.java.patch │ │ ├── GuiIngame.java.patch │ │ ├── GuiIngameMenu.java.patch │ │ ├── GuiKeyBindingList.java.patch │ │ ├── GuiLanguage.java.patch │ │ ├── GuiListWorldSelectionEntry.java.patch │ │ ├── GuiMainMenu.java.patch │ │ ├── GuiMultiplayer.java.patch │ │ ├── GuiOverlayDebug.java.patch │ │ ├── GuiScreen.java.patch │ │ ├── GuiScreenBook.java.patch │ │ ├── GuiScreenDemo.java.patch │ │ ├── GuiSleepMP.java.patch │ │ ├── GuiSlot.java.patch │ │ ├── GuiSpectator.java.patch │ │ ├── GuiUtilRenderComponents.java.patch │ │ ├── GuiVideoSettings.java.patch │ │ ├── MapItemRenderer.java.patch │ │ ├── ServerListEntryNormal.java.patch │ │ ├── advancements │ │ │ ├── GuiAdvancementTab.java.patch │ │ │ └── GuiScreenAdvancements.java.patch │ │ ├── inventory │ │ │ ├── GuiContainer.java.patch │ │ │ └── GuiContainerCreative.java.patch │ │ ├── recipebook │ │ │ ├── GuiRecipeBook.java.patch │ │ │ └── GuiRecipeOverlay.java.patch │ │ └── toasts │ │ │ └── RecipeToast.java.patch │ ├── model │ │ ├── ModelBase.java.patch │ │ ├── ModelBox.java.patch │ │ ├── ModelRenderer.java.patch │ │ ├── ModelSkeleton.java.patch │ │ ├── PositionTextureVertex.java.patch │ │ └── TexturedQuad.java.patch │ ├── multiplayer │ │ ├── ChunkProviderClient.java.patch │ │ ├── GuiConnecting.java.patch │ │ ├── PlayerControllerMP.java.patch │ │ └── WorldClient.java.patch │ ├── network │ │ ├── NetHandlerHandshakeMemory.java.patch │ │ ├── NetHandlerLoginClient.java.patch │ │ ├── NetHandlerPlayClient.java.patch │ │ └── ServerPinger.java.patch │ ├── particle │ │ ├── Particle.java.patch │ │ └── ParticleManager.java.patch │ ├── renderer │ │ ├── ActiveRenderInfo.java.patch │ │ ├── BlockFluidRenderer.java.patch │ │ ├── BlockModelRenderer.java.patch │ │ ├── BlockModelShapes.java.patch │ │ ├── BlockRendererDispatcher.java.patch │ │ ├── BufferBuilder.java.patch │ │ ├── ChestRenderer.java.patch │ │ ├── EntityRenderer.java.patch │ │ ├── InventoryEffectRenderer.java.patch │ │ ├── ItemModelMesher.java.patch │ │ ├── ItemRenderer.java.patch │ │ ├── OpenGlHelper.java.patch │ │ ├── RenderGlobal.java.patch │ │ ├── RenderItem.java.patch │ │ ├── WorldVertexBufferUploader.java.patch │ │ ├── block │ │ │ ├── model │ │ │ │ ├── BakedQuad.java.patch │ │ │ │ ├── BakedQuadRetextured.java.patch │ │ │ │ ├── FaceBakery.java.patch │ │ │ │ ├── IBakedModel.java.patch │ │ │ │ ├── ItemCameraTransforms.java.patch │ │ │ │ ├── ItemOverrideList.java.patch │ │ │ │ ├── ItemTransformVec3f.java.patch │ │ │ │ ├── ModelBakery.java.patch │ │ │ │ ├── ModelBlockDefinition.java.patch │ │ │ │ ├── ModelManager.java.patch │ │ │ │ ├── ModelResourceLocation.java.patch │ │ │ │ ├── ModelRotation.java.patch │ │ │ │ ├── SimpleBakedModel.java.patch │ │ │ │ ├── Variant.java.patch │ │ │ │ ├── WeightedBakedModel.java.patch │ │ │ │ └── multipart │ │ │ │ │ ├── Multipart.java.patch │ │ │ │ │ └── Selector.java.patch │ │ │ └── statemap │ │ │ │ └── StateMap.java.patch │ │ ├── chunk │ │ │ ├── ChunkRenderDispatcher.java.patch │ │ │ ├── ChunkRenderWorker.java.patch │ │ │ └── RenderChunk.java.patch │ │ ├── color │ │ │ ├── BlockColors.java.patch │ │ │ └── ItemColors.java.patch │ │ ├── entity │ │ │ ├── RenderEntityItem.java.patch │ │ │ ├── RenderFish.java.patch │ │ │ ├── RenderItemFrame.java.patch │ │ │ ├── RenderLivingBase.java.patch │ │ │ ├── RenderManager.java.patch │ │ │ ├── RenderPlayer.java.patch │ │ │ ├── RenderVillager.java.patch │ │ │ ├── RenderZombieVillager.java.patch │ │ │ └── layers │ │ │ │ ├── LayerArmorBase.java.patch │ │ │ │ ├── LayerArrow.java.patch │ │ │ │ ├── LayerBipedArmor.java.patch │ │ │ │ ├── LayerCape.java.patch │ │ │ │ ├── LayerCustomHead.java.patch │ │ │ │ ├── LayerHeldItem.java.patch │ │ │ │ └── LayerHeldItemWitch.java.patch │ │ ├── texture │ │ │ ├── LayeredColorMaskTexture.java.patch │ │ │ ├── Stitcher.java.patch │ │ │ ├── TextureAtlasSprite.java.patch │ │ │ ├── TextureManager.java.patch │ │ │ ├── TextureMap.java.patch │ │ │ └── TextureUtil.java.patch │ │ ├── tileentity │ │ │ ├── TileEntityItemStackRenderer.java.patch │ │ │ ├── TileEntityPistonRenderer.java.patch │ │ │ ├── TileEntityRendererDispatcher.java.patch │ │ │ └── TileEntitySpecialRenderer.java.patch │ │ └── vertex │ │ │ ├── VertexFormat.java.patch │ │ │ └── VertexFormatElement.java.patch │ ├── resources │ │ ├── FallbackResourceManager.java.patch │ │ ├── FileResourcePack.java.patch │ │ ├── IResourceManagerReloadListener.java.patch │ │ ├── Language.java.patch │ │ ├── Locale.java.patch │ │ ├── ResourcePackRepository.java.patch │ │ └── SimpleReloadableResourceManager.java.patch │ ├── settings │ │ ├── GameSettings.java.patch │ │ └── KeyBinding.java.patch │ ├── shader │ │ ├── Framebuffer.java.patch │ │ ├── ShaderGroup.java.patch │ │ ├── ShaderLoader.java.patch │ │ └── ShaderManager.java.patch │ └── util │ │ ├── RecipeBookClient.java.patch │ │ └── RecipeItemHelper.java.patch │ ├── command │ ├── CommandBase.java.patch │ ├── CommandDebug.java.patch │ ├── CommandExecuteAt.java.patch │ ├── CommandFill.java.patch │ ├── CommandGameMode.java.patch │ ├── CommandGameRule.java.patch │ ├── CommandHandler.java.patch │ ├── CommandSenderWrapper.java.patch │ ├── CommandSpreadPlayers.java.patch │ ├── CommandTP.java.patch │ ├── CommandTrigger.java.patch │ ├── EntitySelector.java.patch │ ├── FunctionObject.java.patch │ ├── ServerCommandManager.java.patch │ └── server │ │ ├── CommandSetBlock.java.patch │ │ └── CommandWhitelist.java.patch │ ├── crash │ ├── CrashReport.java.patch │ └── CrashReportCategory.java.patch │ ├── creativetab │ └── CreativeTabs.java.patch │ ├── dispenser │ ├── BehaviorDefaultDispenseItem.java.patch │ └── BehaviorProjectileDispense.java.patch │ ├── enchantment │ ├── Enchantment.java.patch │ ├── EnchantmentFrostWalker.java.patch │ ├── EnchantmentHelper.java.patch │ ├── EnchantmentThorns.java.patch │ └── EnumEnchantmentType.java.patch │ ├── entity │ ├── Entity.java.patch │ ├── EntityAgeable.java.patch │ ├── EntityAreaEffectCloud.java.patch │ ├── EntityCreature.java.patch │ ├── EntityFlying.java.patch │ ├── EntityHanging.java.patch │ ├── EntityLeashKnot.java.patch │ ├── EntityList.java.patch │ ├── EntityLiving.java.patch │ ├── EntityLivingBase.java.patch │ ├── EntitySpawnPlacementRegistry.java.patch │ ├── EntityTracker.java.patch │ ├── EntityTrackerEntry.java.patch │ ├── NpcMerchant.java.patch │ ├── SharedMonsterAttributes.java.patch │ ├── ai │ │ ├── EntityAIAttackMelee.java.patch │ │ ├── EntityAIAttackRangedBow.java.patch │ │ ├── EntityAIBreakDoor.java.patch │ │ ├── EntityAIDefendVillage.java.patch │ │ ├── EntityAIEatGrass.java.patch │ │ ├── EntityAIFindEntityNearest.java.patch │ │ ├── EntityAIFindEntityNearestPlayer.java.patch │ │ ├── EntityAIFollowOwner.java.patch │ │ ├── EntityAIHarvestFarmland.java.patch │ │ ├── EntityAIHurtByTarget.java.patch │ │ ├── EntityAIMate.java.patch │ │ ├── EntityAIPanic.java.patch │ │ ├── EntityAIRunAroundLikeCrazy.java.patch │ │ ├── EntityAISit.java.patch │ │ ├── EntityAISkeletonRiders.java.patch │ │ ├── EntityAITarget.java.patch │ │ ├── EntityAITempt.java.patch │ │ ├── EntityAIVillagerMate.java.patch │ │ └── attributes │ │ │ └── RangedAttribute.java.patch │ ├── boss │ │ ├── EntityDragon.java.patch │ │ ├── EntityWither.java.patch │ │ └── dragon │ │ │ └── phase │ │ │ ├── PhaseManager.java.patch │ │ │ └── PhaseSittingFlaming.java.patch │ ├── effect │ │ └── EntityLightningBolt.java.patch │ ├── item │ │ ├── EntityArmorStand.java.patch │ │ ├── EntityBoat.java.patch │ │ ├── EntityEnderCrystal.java.patch │ │ ├── EntityEnderEye.java.patch │ │ ├── EntityEnderPearl.java.patch │ │ ├── EntityExpBottle.java.patch │ │ ├── EntityFallingBlock.java.patch │ │ ├── EntityFireworkRocket.java.patch │ │ ├── EntityItem.java.patch │ │ ├── EntityItemFrame.java.patch │ │ ├── EntityMinecart.java.patch │ │ ├── EntityMinecartCommandBlock.java.patch │ │ ├── EntityMinecartContainer.java.patch │ │ ├── EntityMinecartEmpty.java.patch │ │ ├── EntityMinecartFurnace.java.patch │ │ ├── EntityMinecartHopper.java.patch │ │ ├── EntityMinecartMobSpawner.java.patch │ │ ├── EntityPainting.java.patch │ │ ├── EntityTNTPrimed.java.patch │ │ └── EntityXPOrb.java.patch │ ├── monster │ │ ├── AbstractSkeleton.java.patch │ │ ├── EntityCreeper.java.patch │ │ ├── EntityEnderman.java.patch │ │ ├── EntityEvoker.java.patch │ │ ├── EntityGhast.java.patch │ │ ├── EntityGolem.java.patch │ │ ├── EntityIllusionIllager.java.patch │ │ ├── EntityIronGolem.java.patch │ │ ├── EntityMagmaCube.java.patch │ │ ├── EntityMob.java.patch │ │ ├── EntityPigZombie.java.patch │ │ ├── EntityShulker.java.patch │ │ ├── EntitySilverfish.java.patch │ │ ├── EntitySkeleton.java.patch │ │ ├── EntitySlime.java.patch │ │ ├── EntitySnowman.java.patch │ │ ├── EntitySpellcasterIllager.java.patch │ │ ├── EntitySpider.java.patch │ │ ├── EntityVex.java.patch │ │ ├── EntityWitherSkeleton.java.patch │ │ ├── EntityZombie.java.patch │ │ └── EntityZombieVillager.java.patch │ ├── passive │ │ ├── AbstractChestHorse.java.patch │ │ ├── AbstractHorse.java.patch │ │ ├── EntityAnimal.java.patch │ │ ├── EntityBat.java.patch │ │ ├── EntityChicken.java.patch │ │ ├── EntityCow.java.patch │ │ ├── EntityHorse.java.patch │ │ ├── EntityLlama.java.patch │ │ ├── EntityMooshroom.java.patch │ │ ├── EntityOcelot.java.patch │ │ ├── EntityParrot.java.patch │ │ ├── EntityPig.java.patch │ │ ├── EntityRabbit.java.patch │ │ ├── EntitySheep.java.patch │ │ ├── EntitySquid.java.patch │ │ ├── EntityTameable.java.patch │ │ ├── EntityVillager.java.patch │ │ ├── EntityWaterMob.java.patch │ │ ├── EntityWolf.java.patch │ │ └── HorseArmorType.java.patch │ ├── player │ │ ├── EntityPlayer.java.patch │ │ ├── EntityPlayerMP.java.patch │ │ ├── InventoryPlayer.java.patch │ │ └── PlayerCapabilities.java.patch │ └── projectile │ │ ├── EntityArrow.java.patch │ │ ├── EntityEgg.java.patch │ │ ├── EntityEvokerFangs.java.patch │ │ ├── EntityFireball.java.patch │ │ ├── EntityFishHook.java.patch │ │ ├── EntityLargeFireball.java.patch │ │ ├── EntityLlamaSpit.java.patch │ │ ├── EntityPotion.java.patch │ │ ├── EntityShulkerBullet.java.patch │ │ ├── EntitySmallFireball.java.patch │ │ ├── EntitySpectralArrow.java.patch │ │ ├── EntityThrowable.java.patch │ │ ├── EntityTippedArrow.java.patch │ │ └── EntityWitherSkull.java.patch │ ├── init │ └── Bootstrap.java.patch │ ├── inventory │ ├── Container.java.patch │ ├── ContainerBeacon.java.patch │ ├── ContainerBrewingStand.java.patch │ ├── ContainerChest.java.patch │ ├── ContainerDispenser.java.patch │ ├── ContainerEnchantment.java.patch │ ├── ContainerFurnace.java.patch │ ├── ContainerHopper.java.patch │ ├── ContainerHorseChest.java.patch │ ├── ContainerHorseInventory.java.patch │ ├── ContainerMerchant.java.patch │ ├── ContainerPlayer.java.patch │ ├── ContainerRepair.java.patch │ ├── ContainerShulkerBox.java.patch │ ├── ContainerWorkbench.java.patch │ ├── IInventory.java.patch │ ├── InventoryBasic.java.patch │ ├── InventoryCraftResult.java.patch │ ├── InventoryCrafting.java.patch │ ├── InventoryEnderChest.java.patch │ ├── InventoryLargeChest.java.patch │ ├── InventoryMerchant.java.patch │ ├── Slot.java.patch │ ├── SlotCrafting.java.patch │ └── SlotFurnaceOutput.java.patch │ ├── item │ ├── EnumRarity.java.patch │ ├── Item.java.patch │ ├── ItemArmor.java.patch │ ├── ItemArrow.java.patch │ ├── ItemAxe.java.patch │ ├── ItemBed.java.patch │ ├── ItemBlock.java.patch │ ├── ItemBlockSpecial.java.patch │ ├── ItemBoat.java.patch │ ├── ItemBow.java.patch │ ├── ItemBucket.java.patch │ ├── ItemBucketMilk.java.patch │ ├── ItemChorusFruit.java.patch │ ├── ItemDoor.java.patch │ ├── ItemDye.java.patch │ ├── ItemEnderPearl.java.patch │ ├── ItemFireball.java.patch │ ├── ItemFishingRod.java.patch │ ├── ItemFlintAndSteel.java.patch │ ├── ItemHangingEntity.java.patch │ ├── ItemHoe.java.patch │ ├── ItemLead.java.patch │ ├── ItemLilyPad.java.patch │ ├── ItemMap.java.patch │ ├── ItemMinecart.java.patch │ ├── ItemMonsterPlacer.java.patch │ ├── ItemRecord.java.patch │ ├── ItemRedstone.java.patch │ ├── ItemSeedFood.java.patch │ ├── ItemSeeds.java.patch │ ├── ItemShears.java.patch │ ├── ItemSkull.java.patch │ ├── ItemSlab.java.patch │ ├── ItemSnow.java.patch │ ├── ItemSnowball.java.patch │ ├── ItemStack.java.patch │ ├── ItemSword.java.patch │ ├── ItemTool.java.patch │ ├── ItemWrittenBook.java.patch │ └── crafting │ │ ├── CraftingManager.java.patch │ │ ├── FurnaceRecipes.java.patch │ │ ├── IRecipe.java.patch │ │ ├── Ingredient.java.patch │ │ ├── RecipeBookCloning.java.patch │ │ ├── RecipeFireworks.java.patch │ │ ├── RecipeRepairItem.java.patch │ │ ├── RecipeTippedArrow.java.patch │ │ ├── RecipesArmorDyes.java.patch │ │ ├── RecipesBanners.java.patch │ │ ├── RecipesMapCloning.java.patch │ │ ├── ShapedRecipes.java.patch │ │ ├── ShapelessRecipes.java.patch │ │ ├── ShieldRecipes.java.patch │ │ └── ShulkerBoxRecipes.java.patch │ ├── nbt │ ├── CompressedStreamTools.java.patch │ ├── NBTBase.java.patch │ ├── NBTSizeTracker.java.patch │ ├── NBTTagCompound.java.patch │ ├── NBTTagList.java.patch │ ├── NBTTagString.java.patch │ └── NBTUtil.java.patch │ ├── network │ ├── NetHandlerPlayServer.java.patch │ ├── NettyPacketEncoder.java.patch │ ├── NetworkManager.java.patch │ ├── NetworkSystem.java.patch │ ├── PacketBuffer.java.patch │ ├── ServerStatusResponse.java.patch │ ├── datasync │ │ ├── DataSerializers.java.patch │ │ └── EntityDataManager.java.patch │ ├── handshake │ │ └── client │ │ │ └── C00Handshake.java.patch │ ├── login │ │ └── server │ │ │ └── SPacketLoginSuccess.java.patch │ └── play │ │ ├── client │ │ ├── CPacketClickWindow.java.patch │ │ ├── CPacketCloseWindow.java.patch │ │ ├── CPacketCreativeInventoryAction.java.patch │ │ ├── CPacketCustomPayload.java.patch │ │ ├── CPacketPlayer.java.patch │ │ └── CPacketResourcePackStatus.java.patch │ │ └── server │ │ ├── SPacketChat.java.patch │ │ ├── SPacketCustomPayload.java.patch │ │ ├── SPacketSpawnMob.java.patch │ │ ├── SPacketSpawnPosition.java.patch │ │ └── SPacketWorldBorder.java.patch │ ├── pathfinding │ ├── FlyingNodeProcessor.java.patch │ ├── PathNavigate.java.patch │ ├── PathNavigateClimber.java.patch │ └── WalkNodeProcessor.java.patch │ ├── potion │ ├── Potion.java.patch │ ├── PotionEffect.java.patch │ ├── PotionHelper.java.patch │ └── PotionType.java.patch │ ├── profiler │ └── Profiler.java.patch │ ├── realms │ └── RealmsConnect.java.patch │ ├── scoreboard │ ├── Scoreboard.java.patch │ └── ServerScoreboard.java.patch │ ├── server │ ├── MinecraftServer.java.patch │ ├── dedicated │ │ ├── DedicatedServer.java.patch │ │ ├── PropertyManager.java.patch │ │ └── ServerHangWatchdog.java.patch │ ├── gui │ │ └── MinecraftServerGui.java.patch │ ├── integrated │ │ └── IntegratedServer.java.patch │ ├── management │ │ ├── PlayerChunkMap.java.patch │ │ ├── PlayerChunkMapEntry.java.patch │ │ ├── PlayerInteractionManager.java.patch │ │ ├── PlayerList.java.patch │ │ ├── PlayerProfileCache.java.patch │ │ ├── PreYggdrasilConverter.java.patch │ │ ├── UserList.java.patch │ │ ├── UserListBansEntry.java.patch │ │ ├── UserListEntry.java.patch │ │ ├── UserListEntryBan.java.patch │ │ └── UserListOps.java.patch │ └── network │ │ ├── NetHandlerHandshakeTCP.java.patch │ │ ├── NetHandlerLoginServer.java.patch │ │ └── NetHandlerStatusServer.java.patch │ ├── stats │ ├── RecipeBook.java.patch │ ├── RecipeBookServer.java.patch │ ├── StatList.java.patch │ ├── StatisticsManager.java.patch │ └── StatisticsManagerServer.java.patch │ ├── tileentity │ ├── BannerPattern.java.patch │ ├── CommandBlockBaseLogic.java.patch │ ├── MobSpawnerBaseLogic.java.patch │ ├── TileEntity.java.patch │ ├── TileEntityBanner.java.patch │ ├── TileEntityBeacon.java.patch │ ├── TileEntityBrewingStand.java.patch │ ├── TileEntityChest.java.patch │ ├── TileEntityDispenser.java.patch │ ├── TileEntityEndGateway.java.patch │ ├── TileEntityFurnace.java.patch │ ├── TileEntityHopper.java.patch │ ├── TileEntityLockable.java.patch │ ├── TileEntityLockableLoot.java.patch │ ├── TileEntityNote.java.patch │ ├── TileEntityPiston.java.patch │ ├── TileEntityShulkerBox.java.patch │ ├── TileEntitySign.java.patch │ ├── TileEntitySkull.java.patch │ └── TileEntityStructure.java.patch │ ├── util │ ├── ActionResult.java.patch │ ├── BlockRenderLayer.java.patch │ ├── ChatAllowedCharacters.java.patch │ ├── ClassInheritanceMultiMap.java.patch │ ├── CooldownTracker.java.patch │ ├── DamageSource.java.patch │ ├── EntityDamageSourceIndirect.java.patch │ ├── EnumFacing.java.patch │ ├── FoodStats.java.patch │ ├── IntIdentityHashBiMap.java.patch │ ├── MouseHelper.java.patch │ ├── ScreenShotHelper.java.patch │ ├── ServerRecipeBookHelper.java.patch │ ├── Session.java.patch │ ├── SoundEvent.java.patch │ ├── TabCompleter.java.patch │ ├── datafix │ │ ├── DataFixesManager.java.patch │ │ └── walkers │ │ │ └── BlockEntityTag.java.patch │ ├── math │ │ ├── RayTraceResult.java.patch │ │ └── Vec3d.java.patch │ └── text │ │ ├── ITextComponent.java.patch │ │ ├── Style.java.patch │ │ ├── TextComponentBase.java.patch │ │ ├── TextFormatting.java.patch │ │ └── translation │ │ └── LanguageMap.java.patch │ ├── village │ ├── MerchantRecipe.java.patch │ ├── Village.java.patch │ ├── VillageCollection.java.patch │ └── VillageSiege.java.patch │ └── world │ ├── BossInfo.java.patch │ ├── BossInfoServer.java.patch │ ├── ChunkCache.java.patch │ ├── DimensionType.java.patch │ ├── Explosion.java.patch │ ├── IBlockAccess.java.patch │ ├── ServerWorldEventHandler.java.patch │ ├── Teleporter.java.patch │ ├── World.java.patch │ ├── WorldEntitySpawner.java.patch │ ├── WorldProvider.java.patch │ ├── WorldProviderEnd.java.patch │ ├── WorldProviderHell.java.patch │ ├── WorldProviderSurface.java.patch │ ├── WorldServer.java.patch │ ├── WorldServerMulti.java.patch │ ├── WorldType.java.patch │ ├── biome │ ├── Biome.java.patch │ ├── BiomeDecorator.java.patch │ ├── BiomeDesert.java.patch │ ├── BiomeForest.java.patch │ ├── BiomeHills.java.patch │ ├── BiomeJungle.java.patch │ ├── BiomeMesa.java.patch │ ├── BiomePlains.java.patch │ ├── BiomeProvider.java.patch │ ├── BiomeSavanna.java.patch │ ├── BiomeSnow.java.patch │ ├── BiomeSwamp.java.patch │ └── BiomeTaiga.java.patch │ ├── border │ └── WorldBorder.java.patch │ ├── chunk │ ├── BlockStateContainer.java.patch │ ├── BlockStatePaletteHashMap.java.patch │ ├── Chunk.java.patch │ └── storage │ │ ├── AnvilChunkLoader.java.patch │ │ ├── AnvilSaveHandler.java.patch │ │ ├── ExtendedBlockStorage.java.patch │ │ ├── IChunkLoader.java.patch │ │ ├── RegionFile.java.patch │ │ └── RegionFileCache.java.patch │ ├── end │ └── DragonFightManager.java.patch │ ├── gen │ ├── ChunkGeneratorEnd.java.patch │ ├── ChunkGeneratorFlat.java.patch │ ├── ChunkGeneratorHell.java.patch │ ├── ChunkGeneratorOverworld.java.patch │ ├── ChunkProviderServer.java.patch │ ├── MapGenCaves.java.patch │ ├── MapGenRavine.java.patch │ ├── feature │ │ ├── WorldGenAbstractTree.java.patch │ │ ├── WorldGenBigMushroom.java.patch │ │ ├── WorldGenBigTree.java.patch │ │ ├── WorldGenBirchTree.java.patch │ │ ├── WorldGenBush.java.patch │ │ ├── WorldGenCanopyTree.java.patch │ │ ├── WorldGenDeadBush.java.patch │ │ ├── WorldGenDungeons.java.patch │ │ ├── WorldGenGlowStone1.java.patch │ │ ├── WorldGenGlowStone2.java.patch │ │ ├── WorldGenHellLava.java.patch │ │ ├── WorldGenHugeTrees.java.patch │ │ ├── WorldGenIceSpike.java.patch │ │ ├── WorldGenLakes.java.patch │ │ ├── WorldGenLiquids.java.patch │ │ ├── WorldGenMegaJungle.java.patch │ │ ├── WorldGenMegaPineTree.java.patch │ │ ├── WorldGenMinable.java.patch │ │ ├── WorldGenSavannaTree.java.patch │ │ ├── WorldGenShrub.java.patch │ │ ├── WorldGenSwamp.java.patch │ │ ├── WorldGenTaiga1.java.patch │ │ ├── WorldGenTaiga2.java.patch │ │ ├── WorldGenTallGrass.java.patch │ │ ├── WorldGenTrees.java.patch │ │ ├── WorldGenerator.java.patch │ │ └── WorldGeneratorBonusChest.java.patch │ ├── layer │ │ ├── GenLayer.java.patch │ │ └── GenLayerBiome.java.patch │ └── structure │ │ ├── ComponentScatteredFeaturePieces.java.patch │ │ ├── MapGenScatteredFeature.java.patch │ │ ├── MapGenStronghold.java.patch │ │ ├── MapGenStructure.java.patch │ │ ├── StructureComponent.java.patch │ │ ├── StructureStart.java.patch │ │ ├── StructureVillagePieces.java.patch │ │ └── template │ │ └── Template.java.patch │ └── storage │ ├── DerivedWorldInfo.java.patch │ ├── ISaveHandler.java.patch │ ├── MapData.java.patch │ ├── MapDecoration.java.patch │ ├── MapStorage.java.patch │ ├── SaveFormatOld.java.patch │ ├── SaveHandler.java.patch │ ├── SaveHandlerMP.java.patch │ ├── ThreadedFileIOBase.java.patch │ ├── WorldInfo.java.patch │ ├── WorldSavedData.java.patch │ └── loot │ ├── LootContext.java.patch │ ├── LootEntry.java.patch │ ├── LootEntryEmpty.java.patch │ ├── LootEntryItem.java.patch │ ├── LootEntryTable.java.patch │ ├── LootPool.java.patch │ ├── LootTable.java.patch │ ├── LootTableManager.java.patch │ ├── conditions │ ├── LootConditionManager.java.patch │ └── RandomChanceWithLooting.java.patch │ └── functions │ └── LootingEnchantBonus.java.patch ├── settings.gradle ├── src ├── main │ ├── java │ │ ├── catserver │ │ │ ├── api │ │ │ │ ├── annotation │ │ │ │ │ └── Backported.java │ │ │ │ └── bukkit │ │ │ │ │ ├── entity │ │ │ │ │ ├── CustomEntityClass.java │ │ │ │ │ └── EntityManager.java │ │ │ │ │ └── event │ │ │ │ │ ├── FakePlayerJoinEvent.java │ │ │ │ │ └── ForgeEvent.java │ │ │ ├── dev │ │ │ │ └── CatServerGradleStart.java │ │ │ └── server │ │ │ │ ├── AsyncCatcher.java │ │ │ │ ├── BukkitInjector.java │ │ │ │ ├── BukkitWorldDimensionManager.java │ │ │ │ ├── CatCorePlugin.java │ │ │ │ ├── CatServer.java │ │ │ │ ├── CatServerConfig.java │ │ │ │ ├── CatServerEventHandler.java │ │ │ │ ├── CatServerHooks.java │ │ │ │ ├── CatServerLaunch.java │ │ │ │ ├── CatServerNetwork.java │ │ │ │ ├── PlayerDataFixer.java │ │ │ │ ├── WeakWorldSaveManager.java │ │ │ │ ├── WorldTickSkipManager.java │ │ │ │ ├── asm │ │ │ │ ├── ASMFixer.java │ │ │ │ ├── MethodHook.java │ │ │ │ ├── MethodTransformer.java │ │ │ │ ├── ModsCompatibleTransformer.java │ │ │ │ ├── SideTransformer.java │ │ │ │ └── proxy │ │ │ │ │ ├── LibrarianLibTransformerProxy.java │ │ │ │ │ ├── TransformerProxyRules.java │ │ │ │ │ ├── WingsTransformerProxy.java │ │ │ │ │ └── WizardryTransformerProxy.java │ │ │ │ ├── async │ │ │ │ └── AsyncEntityTeleporter.java │ │ │ │ ├── command │ │ │ │ ├── BukkitCommandWrapper.java │ │ │ │ ├── CraftSimpleCommandMap.java │ │ │ │ ├── ModCustomCommand.java │ │ │ │ └── internal │ │ │ │ │ ├── CommandCatserver.java │ │ │ │ │ ├── CommandChunkStats.java │ │ │ │ │ └── CommandPlugin.java │ │ │ │ ├── entity │ │ │ │ ├── CatEntityRegistry.java │ │ │ │ ├── CraftCustomChestHorse.java │ │ │ │ ├── CraftCustomEntity.java │ │ │ │ ├── CraftCustomHorse.java │ │ │ │ ├── CraftCustomProjectile.java │ │ │ │ └── CraftFakePlayer.java │ │ │ │ ├── executor │ │ │ │ ├── MethodHandleEventExecutor.java │ │ │ │ ├── ReflectionExecutor.java │ │ │ │ ├── StaticMethodHandleEventExecutor.java │ │ │ │ ├── asm │ │ │ │ │ ├── ASMEventExecutorGenerator.java │ │ │ │ │ ├── ClassDefiner.java │ │ │ │ │ └── SafeClassDefiner.java │ │ │ │ └── hiddenclass │ │ │ │ │ ├── BukkitEventExecutorFactory.java │ │ │ │ │ └── MethodHandleEventExecutorTemplate.java │ │ │ │ ├── inventory │ │ │ │ ├── BukkitMaterialHelper.java │ │ │ │ ├── CatCustomInventory.java │ │ │ │ ├── CatForgeItemCap.java │ │ │ │ ├── CatInventoryUtils.java │ │ │ │ ├── CraftCustomContainer.java │ │ │ │ └── CustomModRecipe.java │ │ │ │ ├── launch │ │ │ │ ├── Java11Launch.java │ │ │ │ ├── Java11Support.java │ │ │ │ ├── Java14Support.java │ │ │ │ └── LibrariesManager.java │ │ │ │ ├── log4j │ │ │ │ └── AsyncConsoleWriteQueue.java │ │ │ │ ├── mcauth │ │ │ │ ├── CatProxyAuthenticationService.java │ │ │ │ └── CatProxyMinecraftSessionService.java │ │ │ │ ├── patcher │ │ │ │ ├── IPatcher.java │ │ │ │ ├── PatcherManager.java │ │ │ │ └── plugin │ │ │ │ │ ├── CitizensPatcher.java │ │ │ │ │ ├── CoreProtectPatcher.java │ │ │ │ │ ├── DisablePluginPatcher.java │ │ │ │ │ ├── DynmapPacher.java │ │ │ │ │ ├── EssentialsPatcher.java │ │ │ │ │ ├── MythicMobsPatcher.java │ │ │ │ │ ├── SuperiorSkyblock2Pathcer.java │ │ │ │ │ └── WorldEditPatcher.java │ │ │ │ ├── permission │ │ │ │ └── BukkitForgePermissionHandler.java │ │ │ │ ├── remapper │ │ │ │ ├── ArrayHandle.java │ │ │ │ ├── CatServerRemapper.java │ │ │ │ ├── ClassInheritanceProvider.java │ │ │ │ ├── MappingLoader.java │ │ │ │ ├── ReflectionTransformer.java │ │ │ │ ├── ReflectionUtils.java │ │ │ │ ├── RemapRules.java │ │ │ │ ├── RemapUtils.java │ │ │ │ └── target │ │ │ │ │ ├── CatClassLoader.java │ │ │ │ │ ├── CatURLClassLoader.java │ │ │ │ │ ├── MethodHandleMethods.java │ │ │ │ │ └── ReflectionMethods.java │ │ │ │ ├── threads │ │ │ │ ├── AsyncChatThread.java │ │ │ │ ├── AsyncTaskThread.java │ │ │ │ ├── ConsoleWriteThread.java │ │ │ │ └── RealtimeThread.java │ │ │ │ └── utils │ │ │ │ ├── CachedSizeConcurrentLinkedQueue.java │ │ │ │ ├── ItemStackUtils.java │ │ │ │ ├── LanguageUtils.java │ │ │ │ ├── Log4j2_3201_Fixer.java │ │ │ │ ├── Md5Utils.java │ │ │ │ ├── ModFixUtils.java │ │ │ │ ├── NMSUtils.java │ │ │ │ ├── ServerUtils.java │ │ │ │ ├── UnsafeListEntityImpl.java │ │ │ │ └── VersionCheck.java │ │ ├── com │ │ │ ├── cleanroommc │ │ │ │ ├── boot │ │ │ │ │ ├── GradleHacks.java │ │ │ │ │ ├── Main.java │ │ │ │ │ ├── MainClient.java │ │ │ │ │ └── MainServer.java │ │ │ │ ├── client │ │ │ │ │ └── BreakIteratorHolder.java │ │ │ │ ├── common │ │ │ │ │ ├── CleanroomContainer.java │ │ │ │ │ └── ConfigAnytimeContainer.java │ │ │ │ ├── configanytime │ │ │ │ │ └── ConfigAnytime.java │ │ │ │ ├── hackery │ │ │ │ │ ├── Reflection.java │ │ │ │ │ ├── ReflectionHackery.java │ │ │ │ │ └── enums │ │ │ │ │ │ └── EnumHackery.java │ │ │ │ └── loader │ │ │ │ │ ├── javafix │ │ │ │ │ └── UUIDFix.java │ │ │ │ │ └── scripting │ │ │ │ │ └── CleanroomScriptEngineManager.java │ │ │ └── destroystokyo │ │ │ │ └── paper │ │ │ │ └── event │ │ │ │ └── server │ │ │ │ ├── ServerTickEndEvent.java │ │ │ │ └── ServerTickStartEvent.java │ │ ├── gg │ │ │ └── pufferfish │ │ │ │ └── pufferfish │ │ │ │ └── simd │ │ │ │ ├── SIMDChecker.java │ │ │ │ ├── SIMDDetection.java │ │ │ │ └── VectorMapPalette.java │ │ ├── ibxm │ │ │ ├── Channel.java │ │ │ ├── Envelope.java │ │ │ ├── FastTracker2.java │ │ │ ├── IBXM.java │ │ │ ├── Instrument.java │ │ │ ├── LogTable.java │ │ │ ├── Module.java │ │ │ ├── Pattern.java │ │ │ ├── Player.java │ │ │ ├── ProTracker.java │ │ │ ├── Sample.java │ │ │ └── ScreamTracker3.java │ │ ├── net │ │ │ └── minecraftforge │ │ │ │ ├── advancements │ │ │ │ └── critereon │ │ │ │ │ ├── ItemPredicates.java │ │ │ │ │ └── OredictItemPredicate.java │ │ │ │ ├── classloading │ │ │ │ └── FMLForgePlugin.java │ │ │ │ ├── client │ │ │ │ ├── ClientCommandHandler.java │ │ │ │ ├── CloudRenderer.java │ │ │ │ ├── EnumHelperClient.java │ │ │ │ ├── FluidContainerColorer.java │ │ │ │ ├── ForgeClientHandler.java │ │ │ │ ├── ForgeHooksClient.java │ │ │ │ ├── GuiIngameForge.java │ │ │ │ ├── IClientCommand.java │ │ │ │ ├── IRenderContextHandler.java │ │ │ │ ├── IRenderHandler.java │ │ │ │ ├── ItemModelMesherForge.java │ │ │ │ ├── MinecraftForgeClient.java │ │ │ │ ├── event │ │ │ │ │ ├── ClientChatEvent.java │ │ │ │ │ ├── ClientChatReceivedEvent.java │ │ │ │ │ ├── ColorHandlerEvent.java │ │ │ │ │ ├── DrawBlockHighlightEvent.java │ │ │ │ │ ├── EntityViewRenderEvent.java │ │ │ │ │ ├── FOVUpdateEvent.java │ │ │ │ │ ├── GuiContainerEvent.java │ │ │ │ │ ├── GuiOpenEvent.java │ │ │ │ │ ├── GuiScreenEvent.java │ │ │ │ │ ├── InputUpdateEvent.java │ │ │ │ │ ├── ModelBakeEvent.java │ │ │ │ │ ├── ModelRegistryEvent.java │ │ │ │ │ ├── MouseEvent.java │ │ │ │ │ ├── PlayerSPPushOutOfBlocksEvent.java │ │ │ │ │ ├── RenderBlockOverlayEvent.java │ │ │ │ │ ├── RenderGameOverlayEvent.java │ │ │ │ │ ├── RenderHandEvent.java │ │ │ │ │ ├── RenderItemInFrameEvent.java │ │ │ │ │ ├── RenderLivingEvent.java │ │ │ │ │ ├── RenderPlayerEvent.java │ │ │ │ │ ├── RenderSpecificHandEvent.java │ │ │ │ │ ├── RenderTooltipEvent.java │ │ │ │ │ ├── RenderWorldLastEvent.java │ │ │ │ │ ├── ScreenshotEvent.java │ │ │ │ │ ├── TextureStitchEvent.java │ │ │ │ │ └── sound │ │ │ │ │ │ ├── PlaySoundEvent.java │ │ │ │ │ │ ├── PlaySoundSourceEvent.java │ │ │ │ │ │ ├── PlayStreamingSourceEvent.java │ │ │ │ │ │ ├── SoundEvent.java │ │ │ │ │ │ ├── SoundLoadEvent.java │ │ │ │ │ │ └── SoundSetupEvent.java │ │ │ │ ├── gui │ │ │ │ │ ├── ForgeGuiFactory.java │ │ │ │ │ └── NotificationModUpdateScreen.java │ │ │ │ ├── model │ │ │ │ │ ├── Attributes.java │ │ │ │ │ ├── BakedItemModel.java │ │ │ │ │ ├── BakedModelWrapper.java │ │ │ │ │ ├── BlockStateLoader.java │ │ │ │ │ ├── FancyMissingModel.java │ │ │ │ │ ├── ForgeBlockStateV1.java │ │ │ │ │ ├── ICustomModelLoader.java │ │ │ │ │ ├── IModel.java │ │ │ │ │ ├── ISmartVariant.java │ │ │ │ │ ├── ItemLayerModel.java │ │ │ │ │ ├── ItemTextureQuadConverter.java │ │ │ │ │ ├── MapModelState.java │ │ │ │ │ ├── ModelDynBucket.java │ │ │ │ │ ├── ModelFluid.java │ │ │ │ │ ├── ModelLoader.java │ │ │ │ │ ├── ModelLoaderRegistry.java │ │ │ │ │ ├── ModelStateComposition.java │ │ │ │ │ ├── MultiLayerModel.java │ │ │ │ │ ├── MultiModel.java │ │ │ │ │ ├── MultiModelState.java │ │ │ │ │ ├── PerspectiveMapWrapper.java │ │ │ │ │ ├── SimpleModelFontRenderer.java │ │ │ │ │ ├── SimpleModelState.java │ │ │ │ │ ├── animation │ │ │ │ │ │ ├── Animation.java │ │ │ │ │ │ ├── AnimationItemOverrideList.java │ │ │ │ │ │ ├── AnimationModelBase.java │ │ │ │ │ │ ├── AnimationTESR.java │ │ │ │ │ │ ├── FastTESR.java │ │ │ │ │ │ ├── ModelBlockAnimation.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── b3d │ │ │ │ │ │ ├── B3DClip.java │ │ │ │ │ │ ├── B3DLoader.java │ │ │ │ │ │ ├── B3DModel.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── obj │ │ │ │ │ │ ├── OBJLoader.java │ │ │ │ │ │ ├── OBJModel.java │ │ │ │ │ │ └── package-info.java │ │ │ │ │ ├── package-info.java │ │ │ │ │ └── pipeline │ │ │ │ │ │ ├── BlockInfo.java │ │ │ │ │ │ ├── ForgeBlockModelRenderer.java │ │ │ │ │ │ ├── IVertexConsumer.java │ │ │ │ │ │ ├── IVertexProducer.java │ │ │ │ │ │ ├── LightUtil.java │ │ │ │ │ │ ├── QuadGatheringTransformer.java │ │ │ │ │ │ ├── TRSRTransformer.java │ │ │ │ │ │ ├── TransformerConsumer.java │ │ │ │ │ │ ├── UnpackedBakedQuad.java │ │ │ │ │ │ ├── VertexBufferConsumer.java │ │ │ │ │ │ ├── VertexLighterFlat.java │ │ │ │ │ │ ├── VertexLighterSmoothAo.java │ │ │ │ │ │ ├── VertexTransformer.java │ │ │ │ │ │ └── package-info.java │ │ │ │ ├── resource │ │ │ │ │ ├── IResourceType.java │ │ │ │ │ ├── ISelectiveResourceReloadListener.java │ │ │ │ │ ├── ReloadRequirements.java │ │ │ │ │ ├── SelectiveReloadStateHandler.java │ │ │ │ │ ├── VanillaResourceType.java │ │ │ │ │ └── package-info.java │ │ │ │ └── settings │ │ │ │ │ ├── IKeyConflictContext.java │ │ │ │ │ ├── KeyBindingMap.java │ │ │ │ │ ├── KeyConflictContext.java │ │ │ │ │ └── KeyModifier.java │ │ │ │ ├── common │ │ │ │ ├── BiomeDictionary.java │ │ │ │ ├── BiomeManager.java │ │ │ │ ├── DimensionManager.java │ │ │ │ ├── DungeonHooks.java │ │ │ │ ├── EnumPlantType.java │ │ │ │ ├── FarmlandWaterManager.java │ │ │ │ ├── ForgeChunkManager.java │ │ │ │ ├── ForgeEarlyConfig.java │ │ │ │ ├── ForgeHooks.java │ │ │ │ ├── ForgeInternalHandler.java │ │ │ │ ├── ForgeModContainer.java │ │ │ │ ├── ForgeVersion.java │ │ │ │ ├── IMinecartCollisionHandler.java │ │ │ │ ├── IPlantable.java │ │ │ │ ├── IRarity.java │ │ │ │ ├── IShearable.java │ │ │ │ ├── ISpecialArmor.java │ │ │ │ ├── MinecraftForge.java │ │ │ │ ├── UsernameCache.java │ │ │ │ ├── WorldSpecificSaveHandler.java │ │ │ │ ├── WorldWorkerManager.java │ │ │ │ ├── animation │ │ │ │ │ ├── Event.java │ │ │ │ │ ├── IEventHandler.java │ │ │ │ │ ├── ITimeValue.java │ │ │ │ │ └── TimeValues.java │ │ │ │ ├── brewing │ │ │ │ │ ├── AbstractBrewingRecipe.java │ │ │ │ │ ├── BrewingOreRecipe.java │ │ │ │ │ ├── BrewingRecipe.java │ │ │ │ │ ├── BrewingRecipeRegistry.java │ │ │ │ │ ├── IBrewingRecipe.java │ │ │ │ │ └── VanillaBrewingRecipe.java │ │ │ │ ├── capabilities │ │ │ │ │ ├── Capability.java │ │ │ │ │ ├── CapabilityDispatcher.java │ │ │ │ │ ├── CapabilityInject.java │ │ │ │ │ ├── CapabilityManager.java │ │ │ │ │ ├── ICapabilityProvider.java │ │ │ │ │ └── ICapabilitySerializable.java │ │ │ │ ├── chunkio │ │ │ │ │ ├── ChunkIOExecutor.java │ │ │ │ │ ├── ChunkIOProvider.java │ │ │ │ │ ├── ChunkIOThreadPoolExecutor.java │ │ │ │ │ └── QueuedChunk.java │ │ │ │ ├── command │ │ │ │ │ ├── SelectorHandler.java │ │ │ │ │ └── SelectorHandlerManager.java │ │ │ │ ├── config │ │ │ │ │ ├── Config.java │ │ │ │ │ ├── ConfigCategory.java │ │ │ │ │ ├── ConfigElement.java │ │ │ │ │ ├── ConfigManager.java │ │ │ │ │ ├── Configuration.java │ │ │ │ │ ├── FieldWrapper.java │ │ │ │ │ ├── IFieldWrapper.java │ │ │ │ │ ├── ITypeAdapter.java │ │ │ │ │ ├── Property.java │ │ │ │ │ └── TypeAdapters.java │ │ │ │ ├── crafting │ │ │ │ │ ├── CompoundIngredient.java │ │ │ │ │ ├── CraftingHelper.java │ │ │ │ │ ├── IConditionFactory.java │ │ │ │ │ ├── IIngredientFactory.java │ │ │ │ │ ├── IRecipeContainer.java │ │ │ │ │ ├── IRecipeFactory.java │ │ │ │ │ ├── IShapedRecipe.java │ │ │ │ │ ├── IngredientNBT.java │ │ │ │ │ └── JsonContext.java │ │ │ │ ├── model │ │ │ │ │ ├── HiddenModelPart.java │ │ │ │ │ ├── IModelPart.java │ │ │ │ │ ├── IModelState.java │ │ │ │ │ ├── ITransformation.java │ │ │ │ │ ├── Models.java │ │ │ │ │ ├── TRSRTransformation.java │ │ │ │ │ └── animation │ │ │ │ │ │ ├── AnimationStateMachine.java │ │ │ │ │ │ ├── CapabilityAnimation.java │ │ │ │ │ │ ├── Clips.java │ │ │ │ │ │ ├── IAnimationStateMachine.java │ │ │ │ │ │ ├── IClip.java │ │ │ │ │ │ ├── IJoint.java │ │ │ │ │ │ ├── IJointClip.java │ │ │ │ │ │ └── JointClips.java │ │ │ │ ├── network │ │ │ │ │ ├── DimensionMessageHandler.java │ │ │ │ │ ├── FluidIdRegistryMessageHandler.java │ │ │ │ │ ├── ForgeMessage.java │ │ │ │ │ ├── ForgeNetworkHandler.java │ │ │ │ │ ├── ForgeRuntimeCodec.java │ │ │ │ │ └── ServerToClientConnectionEstablishedHandler.java │ │ │ │ ├── property │ │ │ │ │ ├── ExtendedBlockState.java │ │ │ │ │ ├── IExtendedBlockState.java │ │ │ │ │ ├── IUnlistedProperty.java │ │ │ │ │ ├── Properties.java │ │ │ │ │ └── PropertyFloat.java │ │ │ │ ├── ticket │ │ │ │ │ ├── AABBTicket.java │ │ │ │ │ ├── ChunkTicketManager.java │ │ │ │ │ ├── ITicketGetter.java │ │ │ │ │ ├── ITicketManager.java │ │ │ │ │ ├── MultiTicketManager.java │ │ │ │ │ └── SimpleTicket.java │ │ │ │ └── util │ │ │ │ │ ├── BlockSnapshot.java │ │ │ │ │ ├── ChunkCoordComparator.java │ │ │ │ │ ├── CompoundDataFixer.java │ │ │ │ │ ├── Constants.java │ │ │ │ │ ├── EnumHelper.java │ │ │ │ │ ├── FakePlayer.java │ │ │ │ │ ├── FakePlayerFactory.java │ │ │ │ │ ├── IDataFixerData.java │ │ │ │ │ ├── INBTSerializable.java │ │ │ │ │ ├── ITeleporter.java │ │ │ │ │ ├── JsonUtils.java │ │ │ │ │ ├── ModFixs.java │ │ │ │ │ ├── PacketUtil.java │ │ │ │ │ ├── RecipeMatcher.java │ │ │ │ │ ├── TextTable.java │ │ │ │ │ └── WorldCapabilityData.java │ │ │ │ ├── energy │ │ │ │ ├── CapabilityEnergy.java │ │ │ │ ├── EnergyStorage.java │ │ │ │ └── IEnergyStorage.java │ │ │ │ ├── event │ │ │ │ ├── AnvilUpdateEvent.java │ │ │ │ ├── AttachCapabilitiesEvent.java │ │ │ │ ├── CommandEvent.java │ │ │ │ ├── DifficultyChangeEvent.java │ │ │ │ ├── ForgeEventFactory.java │ │ │ │ ├── GameRuleChangeEvent.java │ │ │ │ ├── LootTableLoadEvent.java │ │ │ │ ├── RegistryEvent.java │ │ │ │ ├── ServerChatEvent.java │ │ │ │ ├── brewing │ │ │ │ │ ├── PlayerBrewedPotionEvent.java │ │ │ │ │ └── PotionBrewEvent.java │ │ │ │ ├── enchanting │ │ │ │ │ └── EnchantmentLevelSetEvent.java │ │ │ │ ├── entity │ │ │ │ │ ├── EntityEvent.java │ │ │ │ │ ├── EntityJoinWorldEvent.java │ │ │ │ │ ├── EntityMobGriefingEvent.java │ │ │ │ │ ├── EntityMountEvent.java │ │ │ │ │ ├── EntityStruckByLightningEvent.java │ │ │ │ │ ├── EntityTravelToDimensionEvent.java │ │ │ │ │ ├── PlaySoundAtEntityEvent.java │ │ │ │ │ ├── ProjectileImpactEvent.java │ │ │ │ │ ├── ThrowableImpactEvent.java │ │ │ │ │ ├── item │ │ │ │ │ │ ├── ItemEvent.java │ │ │ │ │ │ ├── ItemExpireEvent.java │ │ │ │ │ │ └── ItemTossEvent.java │ │ │ │ │ ├── living │ │ │ │ │ │ ├── AnimalTameEvent.java │ │ │ │ │ │ ├── BabyEntitySpawnEvent.java │ │ │ │ │ │ ├── EnderTeleportEvent.java │ │ │ │ │ │ ├── LivingAttackEvent.java │ │ │ │ │ │ ├── LivingDamageEvent.java │ │ │ │ │ │ ├── LivingDeathEvent.java │ │ │ │ │ │ ├── LivingDestroyBlockEvent.java │ │ │ │ │ │ ├── LivingDropsEvent.java │ │ │ │ │ │ ├── LivingEntityUseItemEvent.java │ │ │ │ │ │ ├── LivingEquipmentChangeEvent.java │ │ │ │ │ │ ├── LivingEvent.java │ │ │ │ │ │ ├── LivingExperienceDropEvent.java │ │ │ │ │ │ ├── LivingFallEvent.java │ │ │ │ │ │ ├── LivingHealEvent.java │ │ │ │ │ │ ├── LivingHurtEvent.java │ │ │ │ │ │ ├── LivingKnockBackEvent.java │ │ │ │ │ │ ├── LivingPackSizeEvent.java │ │ │ │ │ │ ├── LivingSetAttackTargetEvent.java │ │ │ │ │ │ ├── LivingSpawnEvent.java │ │ │ │ │ │ ├── LootingLevelEvent.java │ │ │ │ │ │ ├── PotionColorCalculationEvent.java │ │ │ │ │ │ ├── PotionEvent.java │ │ │ │ │ │ └── ZombieEvent.java │ │ │ │ │ ├── minecart │ │ │ │ │ │ ├── MinecartCollisionEvent.java │ │ │ │ │ │ ├── MinecartEvent.java │ │ │ │ │ │ ├── MinecartInteractEvent.java │ │ │ │ │ │ └── MinecartUpdateEvent.java │ │ │ │ │ └── player │ │ │ │ │ │ ├── AdvancementEvent.java │ │ │ │ │ │ ├── AnvilRepairEvent.java │ │ │ │ │ │ ├── ArrowLooseEvent.java │ │ │ │ │ │ ├── ArrowNockEvent.java │ │ │ │ │ │ ├── AttackEntityEvent.java │ │ │ │ │ │ ├── BonemealEvent.java │ │ │ │ │ │ ├── CriticalHitEvent.java │ │ │ │ │ │ ├── EntityItemPickupEvent.java │ │ │ │ │ │ ├── FillBucketEvent.java │ │ │ │ │ │ ├── ItemFishedEvent.java │ │ │ │ │ │ ├── ItemTooltipEvent.java │ │ │ │ │ │ ├── PlayerContainerEvent.java │ │ │ │ │ │ ├── PlayerDestroyItemEvent.java │ │ │ │ │ │ ├── PlayerDropsEvent.java │ │ │ │ │ │ ├── PlayerEvent.java │ │ │ │ │ │ ├── PlayerFlyableFallEvent.java │ │ │ │ │ │ ├── PlayerInteractEvent.java │ │ │ │ │ │ ├── PlayerPickupXpEvent.java │ │ │ │ │ │ ├── PlayerSetSpawnEvent.java │ │ │ │ │ │ ├── PlayerSleepInBedEvent.java │ │ │ │ │ │ ├── PlayerWakeUpEvent.java │ │ │ │ │ │ ├── SleepingLocationCheckEvent.java │ │ │ │ │ │ ├── SleepingTimeCheckEvent.java │ │ │ │ │ │ └── UseHoeEvent.java │ │ │ │ ├── furnace │ │ │ │ │ └── FurnaceFuelBurnTimeEvent.java │ │ │ │ ├── terraingen │ │ │ │ │ ├── BiomeEvent.java │ │ │ │ │ ├── ChunkGeneratorEvent.java │ │ │ │ │ ├── DecorateBiomeEvent.java │ │ │ │ │ ├── DeferredBiomeDecorator.java │ │ │ │ │ ├── InitMapGenEvent.java │ │ │ │ │ ├── InitNoiseGensEvent.java │ │ │ │ │ ├── OreGenEvent.java │ │ │ │ │ ├── PopulateChunkEvent.java │ │ │ │ │ ├── SaplingGrowTreeEvent.java │ │ │ │ │ ├── TerrainGen.java │ │ │ │ │ └── WorldTypeEvent.java │ │ │ │ ├── village │ │ │ │ │ ├── MerchantTradeOffersEvent.java │ │ │ │ │ └── VillageSiegeEvent.java │ │ │ │ └── world │ │ │ │ │ ├── BlockEvent.java │ │ │ │ │ ├── ChunkDataEvent.java │ │ │ │ │ ├── ChunkEvent.java │ │ │ │ │ ├── ChunkWatchEvent.java │ │ │ │ │ ├── ExplosionEvent.java │ │ │ │ │ ├── GetCollisionBoxesEvent.java │ │ │ │ │ ├── NoteBlockEvent.java │ │ │ │ │ └── WorldEvent.java │ │ │ │ ├── fluids │ │ │ │ ├── BlockFluidBase.java │ │ │ │ ├── BlockFluidClassic.java │ │ │ │ ├── BlockFluidFinite.java │ │ │ │ ├── DispenseFluidContainer.java │ │ │ │ ├── Fluid.java │ │ │ │ ├── FluidActionResult.java │ │ │ │ ├── FluidEvent.java │ │ │ │ ├── FluidRegistry.java │ │ │ │ ├── FluidStack.java │ │ │ │ ├── FluidTank.java │ │ │ │ ├── FluidTankInfo.java │ │ │ │ ├── FluidUtil.java │ │ │ │ ├── IFluidBlock.java │ │ │ │ ├── IFluidTank.java │ │ │ │ ├── UniversalBucket.java │ │ │ │ └── capability │ │ │ │ │ ├── CapabilityFluidHandler.java │ │ │ │ │ ├── FluidTankProperties.java │ │ │ │ │ ├── FluidTankPropertiesWrapper.java │ │ │ │ │ ├── IFluidHandler.java │ │ │ │ │ ├── IFluidHandlerItem.java │ │ │ │ │ ├── IFluidTankProperties.java │ │ │ │ │ ├── ItemFluidContainer.java │ │ │ │ │ ├── TileFluidHandler.java │ │ │ │ │ ├── templates │ │ │ │ │ ├── EmptyFluidHandler.java │ │ │ │ │ ├── FluidHandlerConcatenate.java │ │ │ │ │ ├── FluidHandlerFluidMap.java │ │ │ │ │ ├── FluidHandlerItemStack.java │ │ │ │ │ ├── FluidHandlerItemStackSimple.java │ │ │ │ │ └── VoidFluidHandler.java │ │ │ │ │ └── wrappers │ │ │ │ │ ├── BlockLiquidWrapper.java │ │ │ │ │ ├── BlockWrapper.java │ │ │ │ │ ├── FluidBlockWrapper.java │ │ │ │ │ └── FluidBucketWrapper.java │ │ │ │ ├── fml │ │ │ │ ├── client │ │ │ │ │ ├── CustomModLoadingErrorDisplayException.java │ │ │ │ │ ├── DefaultGuiFactory.java │ │ │ │ │ ├── ExtendedServerListData.java │ │ │ │ │ ├── FMLClientHandler.java │ │ │ │ │ ├── FMLConfigGuiFactory.java │ │ │ │ │ ├── FMLFileResourcePack.java │ │ │ │ │ ├── FMLFolderResourcePack.java │ │ │ │ │ ├── GuiAccessDenied.java │ │ │ │ │ ├── GuiBackupFailed.java │ │ │ │ │ ├── GuiConfirmation.java │ │ │ │ │ ├── GuiCustomModLoadingErrorScreen.java │ │ │ │ │ ├── GuiDupesFound.java │ │ │ │ │ ├── GuiErrorBase.java │ │ │ │ │ ├── GuiModList.java │ │ │ │ │ ├── GuiModsMissing.java │ │ │ │ │ ├── GuiModsMissingForServer.java │ │ │ │ │ ├── GuiMultipleModsErrored.java │ │ │ │ │ ├── GuiNotification.java │ │ │ │ │ ├── GuiOldSaveLoadConfirm.java │ │ │ │ │ ├── GuiScrollingList.java │ │ │ │ │ ├── GuiSlotModList.java │ │ │ │ │ ├── GuiSortingProblem.java │ │ │ │ │ ├── GuiWrongMinecraft.java │ │ │ │ │ ├── IDisplayableError.java │ │ │ │ │ ├── IModGuiFactory.java │ │ │ │ │ ├── SplashProgress.java │ │ │ │ │ ├── config │ │ │ │ │ │ ├── ConfigGuiType.java │ │ │ │ │ │ ├── DummyConfigElement.java │ │ │ │ │ │ ├── GuiButtonExt.java │ │ │ │ │ │ ├── GuiCheckBox.java │ │ │ │ │ │ ├── GuiConfig.java │ │ │ │ │ │ ├── GuiConfigEntries.java │ │ │ │ │ │ ├── GuiEditArray.java │ │ │ │ │ │ ├── GuiEditArrayEntries.java │ │ │ │ │ │ ├── GuiMessageDialog.java │ │ │ │ │ │ ├── GuiSelectString.java │ │ │ │ │ │ ├── GuiSelectStringEntries.java │ │ │ │ │ │ ├── GuiSlider.java │ │ │ │ │ │ ├── GuiUnicodeGlyphButton.java │ │ │ │ │ │ ├── GuiUtils.java │ │ │ │ │ │ ├── HoverChecker.java │ │ │ │ │ │ └── IConfigElement.java │ │ │ │ │ ├── event │ │ │ │ │ │ └── ConfigChangedEvent.java │ │ │ │ │ └── registry │ │ │ │ │ │ ├── ClientRegistry.java │ │ │ │ │ │ ├── IRenderFactory.java │ │ │ │ │ │ └── RenderingRegistry.java │ │ │ │ ├── common │ │ │ │ │ ├── API.java │ │ │ │ │ ├── AutomaticEventSubscriber.java │ │ │ │ │ ├── CertificateHelper.java │ │ │ │ │ ├── ClassNameUtils.java │ │ │ │ │ ├── DummyModContainer.java │ │ │ │ │ ├── DuplicateModsFoundException.java │ │ │ │ │ ├── EnhancedRuntimeException.java │ │ │ │ │ ├── FMLCommonHandler.java │ │ │ │ │ ├── FMLContainer.java │ │ │ │ │ ├── FMLContainerHolder.java │ │ │ │ │ ├── FMLContextQuery.java │ │ │ │ │ ├── FMLLog.java │ │ │ │ │ ├── FMLModContainer.java │ │ │ │ │ ├── ICrashCallable.java │ │ │ │ │ ├── IEntitySelectorFactory.java │ │ │ │ │ ├── IFMLHandledException.java │ │ │ │ │ ├── IFMLSidedHandler.java │ │ │ │ │ ├── IFuelHandler.java │ │ │ │ │ ├── ILanguageAdapter.java │ │ │ │ │ ├── IWorldGenerator.java │ │ │ │ │ ├── InjectedModContainer.java │ │ │ │ │ ├── LoadController.java │ │ │ │ │ ├── Loader.java │ │ │ │ │ ├── LoaderException.java │ │ │ │ │ ├── LoaderExceptionModCrash.java │ │ │ │ │ ├── LoaderState.java │ │ │ │ │ ├── MCPDummyContainer.java │ │ │ │ │ ├── MetadataCollection.java │ │ │ │ │ ├── MinecraftDummyContainer.java │ │ │ │ │ ├── MissingModsException.java │ │ │ │ │ ├── MixinContainer.java │ │ │ │ │ ├── Mod.java │ │ │ │ │ ├── ModAPIManager.java │ │ │ │ │ ├── ModClassLoader.java │ │ │ │ │ ├── ModContainer.java │ │ │ │ │ ├── ModContainerFactory.java │ │ │ │ │ ├── ModMetadata.java │ │ │ │ │ ├── MultipleModsErrored.java │ │ │ │ │ ├── ObfuscationReflectionHelper.java │ │ │ │ │ ├── Optional.java │ │ │ │ │ ├── ProgressManager.java │ │ │ │ │ ├── ProxyInjector.java │ │ │ │ │ ├── SaveInspectionHandler.java │ │ │ │ │ ├── SidedProxy.java │ │ │ │ │ ├── StartupQuery.java │ │ │ │ │ ├── TracingPrintStream.java │ │ │ │ │ ├── WorldAccessContainer.java │ │ │ │ │ ├── WrongMinecraftVersionException.java │ │ │ │ │ ├── ZipperUtil.java │ │ │ │ │ ├── asm │ │ │ │ │ │ ├── ASMTransformerWrapper.java │ │ │ │ │ │ ├── FMLSanityChecker.java │ │ │ │ │ │ ├── ReobfuscationMarker.java │ │ │ │ │ │ └── transformers │ │ │ │ │ │ │ ├── AccessTransformer.java │ │ │ │ │ │ │ ├── DeobfuscationTransformer.java │ │ │ │ │ │ │ ├── EventSubscriberTransformer.java │ │ │ │ │ │ │ ├── EventSubscriptionTransformer.java │ │ │ │ │ │ │ ├── FieldRedirectTransformer.java │ │ │ │ │ │ │ ├── ItemBlockSpecialTransformer.java │ │ │ │ │ │ │ ├── ItemBlockTransformer.java │ │ │ │ │ │ │ ├── ItemStackTransformer.java │ │ │ │ │ │ │ ├── JavaxTransformer.java │ │ │ │ │ │ │ ├── MalformedUUIDTransformer.java │ │ │ │ │ │ │ ├── MarkerTransformer.java │ │ │ │ │ │ │ ├── ModAPITransformer.java │ │ │ │ │ │ │ ├── ModAccessTransformer.java │ │ │ │ │ │ │ ├── PatchingTransformer.java │ │ │ │ │ │ │ ├── PotionEffectTransformer.java │ │ │ │ │ │ │ ├── ReflectionFieldTransformer.java │ │ │ │ │ │ │ ├── ScriptEngineTransformer.java │ │ │ │ │ │ │ ├── SideTransformer.java │ │ │ │ │ │ │ ├── SoundEngineFixTransformer.java │ │ │ │ │ │ │ ├── TerminalTransformer.java │ │ │ │ │ │ │ ├── URLClassLoaderTransformer.java │ │ │ │ │ │ │ └── deobf │ │ │ │ │ │ │ ├── FMLDeobfuscatingRemapper.java │ │ │ │ │ │ │ ├── FMLRemappingAdapter.java │ │ │ │ │ │ │ └── LZMAInputSupplier.java │ │ │ │ │ ├── discovery │ │ │ │ │ │ ├── ASMDataTable.java │ │ │ │ │ │ ├── ContainerType.java │ │ │ │ │ │ ├── DirectoryDiscoverer.java │ │ │ │ │ │ ├── ITypeDiscoverer.java │ │ │ │ │ │ ├── JarDiscoverer.java │ │ │ │ │ │ ├── ModCandidate.java │ │ │ │ │ │ ├── ModDiscoverer.java │ │ │ │ │ │ ├── asm │ │ │ │ │ │ │ ├── ASMModParser.java │ │ │ │ │ │ │ ├── ModAnnotation.java │ │ │ │ │ │ │ ├── ModAnnotationVisitor.java │ │ │ │ │ │ │ ├── ModClassVisitor.java │ │ │ │ │ │ │ ├── ModFieldVisitor.java │ │ │ │ │ │ │ └── ModMethodVisitor.java │ │ │ │ │ │ └── json │ │ │ │ │ │ │ ├── ASMInfo.java │ │ │ │ │ │ │ └── JsonAnnotationLoader.java │ │ │ │ │ ├── event │ │ │ │ │ │ ├── FMLConstructionEvent.java │ │ │ │ │ │ ├── FMLEvent.java │ │ │ │ │ │ ├── FMLFingerprintViolationEvent.java │ │ │ │ │ │ ├── FMLInitializationEvent.java │ │ │ │ │ │ ├── FMLInterModComms.java │ │ │ │ │ │ ├── FMLLoadCompleteEvent.java │ │ │ │ │ │ ├── FMLLoadEvent.java │ │ │ │ │ │ ├── FMLModDisabledEvent.java │ │ │ │ │ │ ├── FMLModIdMappingEvent.java │ │ │ │ │ │ ├── FMLPostInitializationEvent.java │ │ │ │ │ │ ├── FMLPreInitializationEvent.java │ │ │ │ │ │ ├── FMLServerAboutToStartEvent.java │ │ │ │ │ │ ├── FMLServerStartedEvent.java │ │ │ │ │ │ ├── FMLServerStartingEvent.java │ │ │ │ │ │ ├── FMLServerStoppedEvent.java │ │ │ │ │ │ ├── FMLServerStoppingEvent.java │ │ │ │ │ │ └── FMLStateEvent.java │ │ │ │ │ ├── eventhandler │ │ │ │ │ │ ├── ASMEventHandler.java │ │ │ │ │ │ ├── Cancelable.java │ │ │ │ │ │ ├── Event.java │ │ │ │ │ │ ├── EventBus.java │ │ │ │ │ │ ├── EventPriority.java │ │ │ │ │ │ ├── FMLThrowingEventBus.java │ │ │ │ │ │ ├── GenericEvent.java │ │ │ │ │ │ ├── IContextSetter.java │ │ │ │ │ │ ├── IEventExceptionHandler.java │ │ │ │ │ │ ├── IEventListener.java │ │ │ │ │ │ ├── IGenericEvent.java │ │ │ │ │ │ ├── ListenerList.java │ │ │ │ │ │ └── SubscribeEvent.java │ │ │ │ │ ├── gameevent │ │ │ │ │ │ ├── InputEvent.java │ │ │ │ │ │ ├── PlayerEvent.java │ │ │ │ │ │ └── TickEvent.java │ │ │ │ │ ├── launcher │ │ │ │ │ │ ├── FMLDeobfTweaker.java │ │ │ │ │ │ ├── FMLInjectionAndSortingTweaker.java │ │ │ │ │ │ ├── FMLServerTweaker.java │ │ │ │ │ │ ├── FMLTweaker.java │ │ │ │ │ │ └── Yggdrasil.java │ │ │ │ │ ├── network │ │ │ │ │ │ ├── ByteBufUtils.java │ │ │ │ │ │ ├── FMLEmbeddedChannel.java │ │ │ │ │ │ ├── FMLEventChannel.java │ │ │ │ │ │ ├── FMLIndexedMessageToMessageCodec.java │ │ │ │ │ │ ├── FMLNetworkEvent.java │ │ │ │ │ │ ├── FMLNetworkException.java │ │ │ │ │ │ ├── FMLOutboundHandler.java │ │ │ │ │ │ ├── IGuiHandler.java │ │ │ │ │ │ ├── NetworkCheckHandler.java │ │ │ │ │ │ ├── NetworkEventFiringHandler.java │ │ │ │ │ │ ├── NetworkHandshakeEstablished.java │ │ │ │ │ │ ├── NetworkRegistry.java │ │ │ │ │ │ ├── PacketLoggingHandler.java │ │ │ │ │ │ ├── handshake │ │ │ │ │ │ │ ├── ChannelRegistrationHandler.java │ │ │ │ │ │ │ ├── FMLHandshakeClientState.java │ │ │ │ │ │ │ ├── FMLHandshakeCodec.java │ │ │ │ │ │ │ ├── FMLHandshakeMessage.java │ │ │ │ │ │ │ ├── FMLHandshakeServerState.java │ │ │ │ │ │ │ ├── HandshakeInjector.java │ │ │ │ │ │ │ ├── HandshakeMessageHandler.java │ │ │ │ │ │ │ ├── IHandshakeState.java │ │ │ │ │ │ │ └── NetworkDispatcher.java │ │ │ │ │ │ ├── internal │ │ │ │ │ │ │ ├── EntitySpawnHandler.java │ │ │ │ │ │ │ ├── FMLMessage.java │ │ │ │ │ │ │ ├── FMLNetworkHandler.java │ │ │ │ │ │ │ ├── FMLProxyPacket.java │ │ │ │ │ │ │ ├── FMLRuntimeCodec.java │ │ │ │ │ │ │ ├── HandshakeCompletionHandler.java │ │ │ │ │ │ │ ├── NetworkModHolder.java │ │ │ │ │ │ │ └── OpenGuiHandler.java │ │ │ │ │ │ └── simpleimpl │ │ │ │ │ │ │ ├── IMessage.java │ │ │ │ │ │ │ ├── IMessageHandler.java │ │ │ │ │ │ │ ├── MessageContext.java │ │ │ │ │ │ │ ├── SimpleChannelHandlerWrapper.java │ │ │ │ │ │ │ ├── SimpleIndexedCodec.java │ │ │ │ │ │ │ └── SimpleNetworkWrapper.java │ │ │ │ │ ├── patcher │ │ │ │ │ │ ├── ClassPatch.java │ │ │ │ │ │ ├── ClassPatchManager.java │ │ │ │ │ │ └── GenDiffSet.java │ │ │ │ │ ├── registry │ │ │ │ │ │ ├── EntityEntry.java │ │ │ │ │ │ ├── EntityEntryBuilder.java │ │ │ │ │ │ ├── EntityRegistry.java │ │ │ │ │ │ ├── ExistingSubstitutionException.java │ │ │ │ │ │ ├── ForgeRegistries.java │ │ │ │ │ │ ├── GameRegistry.java │ │ │ │ │ │ ├── IEntityAdditionalSpawnData.java │ │ │ │ │ │ ├── IThrowableEntity.java │ │ │ │ │ │ ├── ItemStackHolderInjector.java │ │ │ │ │ │ ├── ItemStackHolderRef.java │ │ │ │ │ │ └── VillagerRegistry.java │ │ │ │ │ ├── thread │ │ │ │ │ │ ├── SidedThreadGroup.java │ │ │ │ │ │ └── SidedThreadGroups.java │ │ │ │ │ ├── toposort │ │ │ │ │ │ ├── ModSorter.java │ │ │ │ │ │ ├── ModSortingException.java │ │ │ │ │ │ └── TopologicalSort.java │ │ │ │ │ └── versioning │ │ │ │ │ │ ├── ArtifactVersion.java │ │ │ │ │ │ ├── ComparableVersion.java │ │ │ │ │ │ ├── DefaultArtifactVersion.java │ │ │ │ │ │ ├── DependencyParser.java │ │ │ │ │ │ ├── InvalidVersionSpecificationException.java │ │ │ │ │ │ ├── Restriction.java │ │ │ │ │ │ ├── VersionParser.java │ │ │ │ │ │ └── VersionRange.java │ │ │ │ ├── relauncher │ │ │ │ │ ├── CoreModManager.java │ │ │ │ │ ├── FMLCorePlugin.java │ │ │ │ │ ├── FMLInjectionData.java │ │ │ │ │ ├── FMLLaunchHandler.java │ │ │ │ │ ├── FMLRelaunchLog.java │ │ │ │ │ ├── FileListHelper.java │ │ │ │ │ ├── IFMLCallHook.java │ │ │ │ │ ├── IFMLLoadingPlugin.java │ │ │ │ │ ├── MixinBooterPlugin.java │ │ │ │ │ ├── MixinSetup.java │ │ │ │ │ ├── ReflectionHelper.java │ │ │ │ │ ├── ServerLaunchWrapper.java │ │ │ │ │ ├── Side.java │ │ │ │ │ ├── SideOnly.java │ │ │ │ │ ├── libraries │ │ │ │ │ │ ├── Artifact.java │ │ │ │ │ │ ├── LibraryManager.java │ │ │ │ │ │ ├── LinkRepository.java │ │ │ │ │ │ ├── MemoryModList.java │ │ │ │ │ │ ├── ModList.java │ │ │ │ │ │ ├── Repository.java │ │ │ │ │ │ └── SnapshotJson.java │ │ │ │ │ └── mixinfix │ │ │ │ │ │ └── MixinFixer.java │ │ │ │ ├── repackage │ │ │ │ │ └── com │ │ │ │ │ │ └── nothome │ │ │ │ │ │ └── delta │ │ │ │ │ │ ├── ByteBufferSeekableSource.java │ │ │ │ │ │ ├── Checksum.java │ │ │ │ │ │ ├── DebugDiffWriter.java │ │ │ │ │ │ ├── Delta.java │ │ │ │ │ │ ├── DiffWriter.java │ │ │ │ │ │ ├── GDiffPatcher.java │ │ │ │ │ │ ├── GDiffWriter.java │ │ │ │ │ │ ├── PatchException.java │ │ │ │ │ │ ├── RandomAccessFileSeekableSource.java │ │ │ │ │ │ └── SeekableSource.java │ │ │ │ └── server │ │ │ │ │ └── FMLServerHandler.java │ │ │ │ ├── items │ │ │ │ ├── CapabilityItemHandler.java │ │ │ │ ├── IItemHandler.java │ │ │ │ ├── IItemHandlerModifiable.java │ │ │ │ ├── ItemHandlerHelper.java │ │ │ │ ├── ItemStackHandler.java │ │ │ │ ├── SlotItemHandler.java │ │ │ │ ├── VanillaDoubleChestItemHandler.java │ │ │ │ ├── VanillaHopperItemHandler.java │ │ │ │ ├── VanillaInventoryCodeHooks.java │ │ │ │ └── wrapper │ │ │ │ │ ├── CombinedInvWrapper.java │ │ │ │ │ ├── EmptyHandler.java │ │ │ │ │ ├── EntityArmorInvWrapper.java │ │ │ │ │ ├── EntityEquipmentInvWrapper.java │ │ │ │ │ ├── EntityHandsInvWrapper.java │ │ │ │ │ ├── InvWrapper.java │ │ │ │ │ ├── PlayerArmorInvWrapper.java │ │ │ │ │ ├── PlayerInvWrapper.java │ │ │ │ │ ├── PlayerMainInvWrapper.java │ │ │ │ │ ├── PlayerOffhandInvWrapper.java │ │ │ │ │ ├── RangedWrapper.java │ │ │ │ │ └── SidedInvWrapper.java │ │ │ │ ├── oredict │ │ │ │ ├── DyeUtils.java │ │ │ │ ├── OreDictionary.java │ │ │ │ ├── OreIngredient.java │ │ │ │ ├── RecipeSorter.java │ │ │ │ ├── ShapedOreRecipe.java │ │ │ │ └── ShapelessOreRecipe.java │ │ │ │ ├── registries │ │ │ │ ├── DataSerializerEntry.java │ │ │ │ ├── ForgeRegistry.java │ │ │ │ ├── GameData.java │ │ │ │ ├── IForgeRegistry.java │ │ │ │ ├── IForgeRegistryEntry.java │ │ │ │ ├── IForgeRegistryInternal.java │ │ │ │ ├── IForgeRegistryModifiable.java │ │ │ │ ├── ILockableRegistry.java │ │ │ │ ├── IRegistryDelegate.java │ │ │ │ ├── NamespacedDefaultedWrapper.java │ │ │ │ ├── NamespacedWrapper.java │ │ │ │ ├── ObjectHolderRef.java │ │ │ │ ├── ObjectHolderRegistry.java │ │ │ │ ├── RegistryBuilder.java │ │ │ │ ├── RegistryDelegate.java │ │ │ │ └── RegistryManager.java │ │ │ │ └── server │ │ │ │ ├── ForgeTimeTracker.java │ │ │ │ ├── command │ │ │ │ ├── ChunkGenWorker.java │ │ │ │ ├── CommandDimensions.java │ │ │ │ ├── CommandEntity.java │ │ │ │ ├── CommandGenerate.java │ │ │ │ ├── CommandSetDimension.java │ │ │ │ ├── CommandTps.java │ │ │ │ ├── CommandTrack.java │ │ │ │ ├── CommandTreeBase.java │ │ │ │ ├── CommandTreeHelp.java │ │ │ │ ├── ForgeCommand.java │ │ │ │ ├── TextComponentHelper.java │ │ │ │ └── package-info.java │ │ │ │ ├── console │ │ │ │ ├── ConsoleCommandCompleter.java │ │ │ │ └── TerminalHandler.java │ │ │ │ ├── permission │ │ │ │ ├── DefaultPermissionHandler.java │ │ │ │ ├── DefaultPermissionLevel.java │ │ │ │ ├── IPermissionHandler.java │ │ │ │ ├── PermissionAPI.java │ │ │ │ ├── context │ │ │ │ │ ├── AreaContext.java │ │ │ │ │ ├── BlockPosContext.java │ │ │ │ │ ├── Context.java │ │ │ │ │ ├── ContextKey.java │ │ │ │ │ ├── ContextKeys.java │ │ │ │ │ ├── IContext.java │ │ │ │ │ ├── PlayerContext.java │ │ │ │ │ ├── TargetContext.java │ │ │ │ │ ├── WorldContext.java │ │ │ │ │ └── package-info.java │ │ │ │ └── package-info.java │ │ │ │ ├── terminalconsole │ │ │ │ ├── HighlightErrorConverter.java │ │ │ │ ├── MinecraftFormattingConverter.java │ │ │ │ ├── TerminalConsoleAppender.java │ │ │ │ ├── package-info.java │ │ │ │ └── util │ │ │ │ │ ├── LoggerNamePatternSelector.java │ │ │ │ │ └── package-info.java │ │ │ │ └── timings │ │ │ │ ├── ForgeTimings.java │ │ │ │ └── TimeTracker.java │ │ ├── org │ │ │ ├── bukkit │ │ │ │ ├── Achievement.java │ │ │ │ ├── Art.java │ │ │ │ ├── BanEntry.java │ │ │ │ ├── BanList.java │ │ │ │ ├── BlockChangeDelegate.java │ │ │ │ ├── Bukkit.java │ │ │ │ ├── ChatColor.java │ │ │ │ ├── Chunk.java │ │ │ │ ├── ChunkSnapshot.java │ │ │ │ ├── CoalType.java │ │ │ │ ├── Color.java │ │ │ │ ├── CropState.java │ │ │ │ ├── Difficulty.java │ │ │ │ ├── DyeColor.java │ │ │ │ ├── Effect.java │ │ │ │ ├── EntityEffect.java │ │ │ │ ├── FireworkEffect.java │ │ │ │ ├── GameMode.java │ │ │ │ ├── GrassSpecies.java │ │ │ │ ├── Instrument.java │ │ │ │ ├── Keyed.java │ │ │ │ ├── Location.java │ │ │ │ ├── Material.java │ │ │ │ ├── Nameable.java │ │ │ │ ├── NamespacedKey.java │ │ │ │ ├── NetherWartsState.java │ │ │ │ ├── Note.java │ │ │ │ ├── OfflinePlayer.java │ │ │ │ ├── Particle.java │ │ │ │ ├── PortalType.java │ │ │ │ ├── Rotation.java │ │ │ │ ├── SandstoneType.java │ │ │ │ ├── Server.java │ │ │ │ ├── SkullType.java │ │ │ │ ├── Sound.java │ │ │ │ ├── SoundCategory.java │ │ │ │ ├── Statistic.java │ │ │ │ ├── TravelAgent.java │ │ │ │ ├── TreeSpecies.java │ │ │ │ ├── TreeType.java │ │ │ │ ├── UnsafeValues.java │ │ │ │ ├── Utility.java │ │ │ │ ├── Warning.java │ │ │ │ ├── WeatherType.java │ │ │ │ ├── World.java │ │ │ │ ├── WorldBorder.java │ │ │ │ ├── WorldCreator.java │ │ │ │ ├── WorldType.java │ │ │ │ ├── advancement │ │ │ │ │ ├── Advancement.java │ │ │ │ │ └── AdvancementProgress.java │ │ │ │ ├── attribute │ │ │ │ │ ├── Attributable.java │ │ │ │ │ ├── Attribute.java │ │ │ │ │ ├── AttributeInstance.java │ │ │ │ │ └── AttributeModifier.java │ │ │ │ ├── block │ │ │ │ │ ├── Banner.java │ │ │ │ │ ├── Beacon.java │ │ │ │ │ ├── Bed.java │ │ │ │ │ ├── Biome.java │ │ │ │ │ ├── Block.java │ │ │ │ │ ├── BlockFace.java │ │ │ │ │ ├── BlockState.java │ │ │ │ │ ├── BrewingStand.java │ │ │ │ │ ├── Chest.java │ │ │ │ │ ├── CommandBlock.java │ │ │ │ │ ├── Comparator.java │ │ │ │ │ ├── Container.java │ │ │ │ │ ├── CreatureSpawner.java │ │ │ │ │ ├── DaylightDetector.java │ │ │ │ │ ├── Dispenser.java │ │ │ │ │ ├── DoubleChest.java │ │ │ │ │ ├── Dropper.java │ │ │ │ │ ├── EnchantingTable.java │ │ │ │ │ ├── EndGateway.java │ │ │ │ │ ├── EnderChest.java │ │ │ │ │ ├── FlowerPot.java │ │ │ │ │ ├── Furnace.java │ │ │ │ │ ├── Hopper.java │ │ │ │ │ ├── Jukebox.java │ │ │ │ │ ├── Lockable.java │ │ │ │ │ ├── NoteBlock.java │ │ │ │ │ ├── PistonMoveReaction.java │ │ │ │ │ ├── ShulkerBox.java │ │ │ │ │ ├── Sign.java │ │ │ │ │ ├── Skull.java │ │ │ │ │ ├── Structure.java │ │ │ │ │ ├── banner │ │ │ │ │ │ ├── Pattern.java │ │ │ │ │ │ └── PatternType.java │ │ │ │ │ └── structure │ │ │ │ │ │ ├── Mirror.java │ │ │ │ │ │ ├── StructureRotation.java │ │ │ │ │ │ └── UsageMode.java │ │ │ │ ├── boss │ │ │ │ │ ├── BarColor.java │ │ │ │ │ ├── BarFlag.java │ │ │ │ │ ├── BarStyle.java │ │ │ │ │ └── BossBar.java │ │ │ │ ├── command │ │ │ │ │ ├── BlockCommandSender.java │ │ │ │ │ ├── Command.java │ │ │ │ │ ├── CommandException.java │ │ │ │ │ ├── CommandExecutor.java │ │ │ │ │ ├── CommandMap.java │ │ │ │ │ ├── CommandSender.java │ │ │ │ │ ├── ConsoleCommandSender.java │ │ │ │ │ ├── FormattedCommandAlias.java │ │ │ │ │ ├── MultipleCommandAlias.java │ │ │ │ │ ├── PluginCommand.java │ │ │ │ │ ├── PluginCommandYamlParser.java │ │ │ │ │ ├── PluginIdentifiableCommand.java │ │ │ │ │ ├── ProxiedCommandSender.java │ │ │ │ │ ├── RemoteConsoleCommandSender.java │ │ │ │ │ ├── SimpleCommandMap.java │ │ │ │ │ ├── TabCompleter.java │ │ │ │ │ ├── TabExecutor.java │ │ │ │ │ └── defaults │ │ │ │ │ │ ├── BukkitCommand.java │ │ │ │ │ │ ├── HelpCommand.java │ │ │ │ │ │ ├── PluginsCommand.java │ │ │ │ │ │ ├── ReloadCommand.java │ │ │ │ │ │ ├── TimingsCommand.java │ │ │ │ │ │ └── VersionCommand.java │ │ │ │ ├── configuration │ │ │ │ │ ├── Configuration.java │ │ │ │ │ ├── ConfigurationOptions.java │ │ │ │ │ ├── ConfigurationSection.java │ │ │ │ │ ├── InvalidConfigurationException.java │ │ │ │ │ ├── MemoryConfiguration.java │ │ │ │ │ ├── MemoryConfigurationOptions.java │ │ │ │ │ ├── MemorySection.java │ │ │ │ │ ├── file │ │ │ │ │ │ ├── FileConfiguration.java │ │ │ │ │ │ ├── FileConfigurationOptions.java │ │ │ │ │ │ ├── YamlConfiguration.java │ │ │ │ │ │ ├── YamlConfigurationOptions.java │ │ │ │ │ │ ├── YamlConstructor.java │ │ │ │ │ │ └── YamlRepresenter.java │ │ │ │ │ └── serialization │ │ │ │ │ │ ├── ConfigurationSerializable.java │ │ │ │ │ │ ├── ConfigurationSerialization.java │ │ │ │ │ │ ├── DelegateDeserialization.java │ │ │ │ │ │ └── SerializableAs.java │ │ │ │ ├── conversations │ │ │ │ │ ├── BooleanPrompt.java │ │ │ │ │ ├── Conversable.java │ │ │ │ │ ├── Conversation.java │ │ │ │ │ ├── ConversationAbandonedEvent.java │ │ │ │ │ ├── ConversationAbandonedListener.java │ │ │ │ │ ├── ConversationCanceller.java │ │ │ │ │ ├── ConversationContext.java │ │ │ │ │ ├── ConversationFactory.java │ │ │ │ │ ├── ConversationPrefix.java │ │ │ │ │ ├── ExactMatchConversationCanceller.java │ │ │ │ │ ├── FixedSetPrompt.java │ │ │ │ │ ├── InactivityConversationCanceller.java │ │ │ │ │ ├── ManuallyAbandonedConversationCanceller.java │ │ │ │ │ ├── MessagePrompt.java │ │ │ │ │ ├── NullConversationPrefix.java │ │ │ │ │ ├── NumericPrompt.java │ │ │ │ │ ├── PlayerNamePrompt.java │ │ │ │ │ ├── PluginNameConversationPrefix.java │ │ │ │ │ ├── Prompt.java │ │ │ │ │ ├── RegexPrompt.java │ │ │ │ │ ├── StringPrompt.java │ │ │ │ │ └── ValidatingPrompt.java │ │ │ │ ├── craftbukkit │ │ │ │ │ ├── Main.java │ │ │ │ │ └── v1_12_R1 │ │ │ │ │ │ ├── CraftArt.java │ │ │ │ │ │ ├── CraftChunk.java │ │ │ │ │ │ ├── CraftChunkSnapshot.java │ │ │ │ │ │ ├── CraftCrashReport.java │ │ │ │ │ │ ├── CraftEffect.java │ │ │ │ │ │ ├── CraftEquipmentSlot.java │ │ │ │ │ │ ├── CraftIpBanEntry.java │ │ │ │ │ │ ├── CraftIpBanList.java │ │ │ │ │ │ ├── CraftOfflinePlayer.java │ │ │ │ │ │ ├── CraftParticle.java │ │ │ │ │ │ ├── CraftProfileBanEntry.java │ │ │ │ │ │ ├── CraftProfileBanList.java │ │ │ │ │ │ ├── CraftServer.java │ │ │ │ │ │ ├── CraftSound.java │ │ │ │ │ │ ├── CraftStatistic.java │ │ │ │ │ │ ├── CraftTravelAgent.java │ │ │ │ │ │ ├── CraftWorld.java │ │ │ │ │ │ ├── CraftWorldBorder.java │ │ │ │ │ │ ├── LoggerOutputStream.java │ │ │ │ │ │ ├── Overridden.java │ │ │ │ │ │ ├── SpigotTimings.java │ │ │ │ │ │ ├── TrigMath.java │ │ │ │ │ │ ├── advancement │ │ │ │ │ │ ├── CraftAdvancement.java │ │ │ │ │ │ └── CraftAdvancementProgress.java │ │ │ │ │ │ ├── attribute │ │ │ │ │ │ ├── CraftAttributeInstance.java │ │ │ │ │ │ └── CraftAttributeMap.java │ │ │ │ │ │ ├── block │ │ │ │ │ │ ├── CraftBanner.java │ │ │ │ │ │ ├── CraftBeacon.java │ │ │ │ │ │ ├── CraftBed.java │ │ │ │ │ │ ├── CraftBlock.java │ │ │ │ │ │ ├── CraftBlockEntityState.java │ │ │ │ │ │ ├── CraftBlockState.java │ │ │ │ │ │ ├── CraftBrewingStand.java │ │ │ │ │ │ ├── CraftChest.java │ │ │ │ │ │ ├── CraftCommandBlock.java │ │ │ │ │ │ ├── CraftComparator.java │ │ │ │ │ │ ├── CraftContainer.java │ │ │ │ │ │ ├── CraftCreatureSpawner.java │ │ │ │ │ │ ├── CraftDaylightDetector.java │ │ │ │ │ │ ├── CraftDispenser.java │ │ │ │ │ │ ├── CraftDropper.java │ │ │ │ │ │ ├── CraftEnchantingTable.java │ │ │ │ │ │ ├── CraftEndGateway.java │ │ │ │ │ │ ├── CraftEnderChest.java │ │ │ │ │ │ ├── CraftFlowerPot.java │ │ │ │ │ │ ├── CraftFurnace.java │ │ │ │ │ │ ├── CraftHopper.java │ │ │ │ │ │ ├── CraftJukebox.java │ │ │ │ │ │ ├── CraftLootable.java │ │ │ │ │ │ ├── CraftNoteBlock.java │ │ │ │ │ │ ├── CraftShulkerBox.java │ │ │ │ │ │ ├── CraftSign.java │ │ │ │ │ │ ├── CraftSkull.java │ │ │ │ │ │ └── CraftStructureBlock.java │ │ │ │ │ │ ├── boss │ │ │ │ │ │ └── CraftBossBar.java │ │ │ │ │ │ ├── chunkio │ │ │ │ │ │ ├── ChunkIOExecutor.java │ │ │ │ │ │ ├── ChunkIOProvider.java │ │ │ │ │ │ └── QueuedChunk.java │ │ │ │ │ │ ├── command │ │ │ │ │ │ ├── ColouredConsoleSender.java │ │ │ │ │ │ ├── ConsoleCommandCompleter.java │ │ │ │ │ │ ├── CraftBlockCommandSender.java │ │ │ │ │ │ ├── CraftConsoleCommandSender.java │ │ │ │ │ │ ├── CraftFunctionCommandSender.java │ │ │ │ │ │ ├── CraftRemoteConsoleCommandSender.java │ │ │ │ │ │ ├── ProxiedNativeCommandSender.java │ │ │ │ │ │ ├── ServerCommandSender.java │ │ │ │ │ │ └── VanillaCommandWrapper.java │ │ │ │ │ │ ├── conversations │ │ │ │ │ │ └── ConversationTracker.java │ │ │ │ │ │ ├── enchantments │ │ │ │ │ │ └── CraftEnchantment.java │ │ │ │ │ │ ├── entity │ │ │ │ │ │ ├── AbstractProjectile.java │ │ │ │ │ │ ├── CraftAbstractHorse.java │ │ │ │ │ │ ├── CraftAgeable.java │ │ │ │ │ │ ├── CraftAmbient.java │ │ │ │ │ │ ├── CraftAnimals.java │ │ │ │ │ │ ├── CraftAreaEffectCloud.java │ │ │ │ │ │ ├── CraftArmorStand.java │ │ │ │ │ │ ├── CraftArrow.java │ │ │ │ │ │ ├── CraftBat.java │ │ │ │ │ │ ├── CraftBlaze.java │ │ │ │ │ │ ├── CraftBoat.java │ │ │ │ │ │ ├── CraftCaveSpider.java │ │ │ │ │ │ ├── CraftChestedHorse.java │ │ │ │ │ │ ├── CraftChicken.java │ │ │ │ │ │ ├── CraftComplexLivingEntity.java │ │ │ │ │ │ ├── CraftComplexPart.java │ │ │ │ │ │ ├── CraftCow.java │ │ │ │ │ │ ├── CraftCreature.java │ │ │ │ │ │ ├── CraftCreeper.java │ │ │ │ │ │ ├── CraftDonkey.java │ │ │ │ │ │ ├── CraftDragonFireball.java │ │ │ │ │ │ ├── CraftEgg.java │ │ │ │ │ │ ├── CraftElderGuardian.java │ │ │ │ │ │ ├── CraftEnderCrystal.java │ │ │ │ │ │ ├── CraftEnderDragon.java │ │ │ │ │ │ ├── CraftEnderDragonPart.java │ │ │ │ │ │ ├── CraftEnderPearl.java │ │ │ │ │ │ ├── CraftEnderSignal.java │ │ │ │ │ │ ├── CraftEnderman.java │ │ │ │ │ │ ├── CraftEndermite.java │ │ │ │ │ │ ├── CraftEntity.java │ │ │ │ │ │ ├── CraftEvoker.java │ │ │ │ │ │ ├── CraftEvokerFangs.java │ │ │ │ │ │ ├── CraftExperienceOrb.java │ │ │ │ │ │ ├── CraftFallingBlock.java │ │ │ │ │ │ ├── CraftFireball.java │ │ │ │ │ │ ├── CraftFirework.java │ │ │ │ │ │ ├── CraftFish.java │ │ │ │ │ │ ├── CraftFlying.java │ │ │ │ │ │ ├── CraftGhast.java │ │ │ │ │ │ ├── CraftGiant.java │ │ │ │ │ │ ├── CraftGolem.java │ │ │ │ │ │ ├── CraftGuardian.java │ │ │ │ │ │ ├── CraftHanging.java │ │ │ │ │ │ ├── CraftHorse.java │ │ │ │ │ │ ├── CraftHumanEntity.java │ │ │ │ │ │ ├── CraftHusk.java │ │ │ │ │ │ ├── CraftIllager.java │ │ │ │ │ │ ├── CraftIllusioner.java │ │ │ │ │ │ ├── CraftIronGolem.java │ │ │ │ │ │ ├── CraftItem.java │ │ │ │ │ │ ├── CraftItemFrame.java │ │ │ │ │ │ ├── CraftLargeFireball.java │ │ │ │ │ │ ├── CraftLeash.java │ │ │ │ │ │ ├── CraftLightningStrike.java │ │ │ │ │ │ ├── CraftLingeringPotion.java │ │ │ │ │ │ ├── CraftLivingEntity.java │ │ │ │ │ │ ├── CraftLlama.java │ │ │ │ │ │ ├── CraftLlamaSpit.java │ │ │ │ │ │ ├── CraftMagmaCube.java │ │ │ │ │ │ ├── CraftMinecart.java │ │ │ │ │ │ ├── CraftMinecartChest.java │ │ │ │ │ │ ├── CraftMinecartCommand.java │ │ │ │ │ │ ├── CraftMinecartFurnace.java │ │ │ │ │ │ ├── CraftMinecartHopper.java │ │ │ │ │ │ ├── CraftMinecartMobSpawner.java │ │ │ │ │ │ ├── CraftMinecartRideable.java │ │ │ │ │ │ ├── CraftMinecartTNT.java │ │ │ │ │ │ ├── CraftMonster.java │ │ │ │ │ │ ├── CraftMule.java │ │ │ │ │ │ ├── CraftMushroomCow.java │ │ │ │ │ │ ├── CraftOcelot.java │ │ │ │ │ │ ├── CraftPainting.java │ │ │ │ │ │ ├── CraftParrot.java │ │ │ │ │ │ ├── CraftPig.java │ │ │ │ │ │ ├── CraftPigZombie.java │ │ │ │ │ │ ├── CraftPlayer.java │ │ │ │ │ │ ├── CraftPolarBear.java │ │ │ │ │ │ ├── CraftProjectile.java │ │ │ │ │ │ ├── CraftRabbit.java │ │ │ │ │ │ ├── CraftSheep.java │ │ │ │ │ │ ├── CraftShulker.java │ │ │ │ │ │ ├── CraftShulkerBullet.java │ │ │ │ │ │ ├── CraftSilverfish.java │ │ │ │ │ │ ├── CraftSkeleton.java │ │ │ │ │ │ ├── CraftSkeletonHorse.java │ │ │ │ │ │ ├── CraftSlime.java │ │ │ │ │ │ ├── CraftSmallFireball.java │ │ │ │ │ │ ├── CraftSnowball.java │ │ │ │ │ │ ├── CraftSnowman.java │ │ │ │ │ │ ├── CraftSpectralArrow.java │ │ │ │ │ │ ├── CraftSpellcaster.java │ │ │ │ │ │ ├── CraftSpider.java │ │ │ │ │ │ ├── CraftSplashPotion.java │ │ │ │ │ │ ├── CraftSquid.java │ │ │ │ │ │ ├── CraftStray.java │ │ │ │ │ │ ├── CraftTNTPrimed.java │ │ │ │ │ │ ├── CraftTameableAnimal.java │ │ │ │ │ │ ├── CraftThrownExpBottle.java │ │ │ │ │ │ ├── CraftThrownPotion.java │ │ │ │ │ │ ├── CraftTippedArrow.java │ │ │ │ │ │ ├── CraftVehicle.java │ │ │ │ │ │ ├── CraftVex.java │ │ │ │ │ │ ├── CraftVillager.java │ │ │ │ │ │ ├── CraftVillagerZombie.java │ │ │ │ │ │ ├── CraftVindicator.java │ │ │ │ │ │ ├── CraftWaterMob.java │ │ │ │ │ │ ├── CraftWeather.java │ │ │ │ │ │ ├── CraftWitch.java │ │ │ │ │ │ ├── CraftWither.java │ │ │ │ │ │ ├── CraftWitherSkeleton.java │ │ │ │ │ │ ├── CraftWitherSkull.java │ │ │ │ │ │ ├── CraftWolf.java │ │ │ │ │ │ ├── CraftZombie.java │ │ │ │ │ │ └── CraftZombieHorse.java │ │ │ │ │ │ ├── event │ │ │ │ │ │ └── CraftEventFactory.java │ │ │ │ │ │ ├── generator │ │ │ │ │ │ ├── CraftChunkData.java │ │ │ │ │ │ ├── CustomChunkGenerator.java │ │ │ │ │ │ ├── InternalChunkGenerator.java │ │ │ │ │ │ ├── NetherChunkGenerator.java │ │ │ │ │ │ ├── NormalChunkGenerator.java │ │ │ │ │ │ └── SkyLandsChunkGenerator.java │ │ │ │ │ │ ├── help │ │ │ │ │ │ ├── CommandAliasHelpTopic.java │ │ │ │ │ │ ├── CustomHelpTopic.java │ │ │ │ │ │ ├── CustomIndexHelpTopic.java │ │ │ │ │ │ ├── HelpTopicAmendment.java │ │ │ │ │ │ ├── HelpYamlReader.java │ │ │ │ │ │ ├── MultipleCommandAliasHelpTopic.java │ │ │ │ │ │ ├── MultipleCommandAliasHelpTopicFactory.java │ │ │ │ │ │ └── SimpleHelpMap.java │ │ │ │ │ │ ├── inventory │ │ │ │ │ │ ├── CraftContainer.java │ │ │ │ │ │ ├── CraftEntityEquipment.java │ │ │ │ │ │ ├── CraftFurnaceRecipe.java │ │ │ │ │ │ ├── CraftInventory.java │ │ │ │ │ │ ├── CraftInventoryAbstractHorse.java │ │ │ │ │ │ ├── CraftInventoryAnvil.java │ │ │ │ │ │ ├── CraftInventoryBeacon.java │ │ │ │ │ │ ├── CraftInventoryBrewer.java │ │ │ │ │ │ ├── CraftInventoryCrafting.java │ │ │ │ │ │ ├── CraftInventoryCustom.java │ │ │ │ │ │ ├── CraftInventoryDoubleChest.java │ │ │ │ │ │ ├── CraftInventoryEnchanting.java │ │ │ │ │ │ ├── CraftInventoryFurnace.java │ │ │ │ │ │ ├── CraftInventoryHorse.java │ │ │ │ │ │ ├── CraftInventoryLlama.java │ │ │ │ │ │ ├── CraftInventoryMerchant.java │ │ │ │ │ │ ├── CraftInventoryPlayer.java │ │ │ │ │ │ ├── CraftInventoryView.java │ │ │ │ │ │ ├── CraftItemFactory.java │ │ │ │ │ │ ├── CraftItemStack.java │ │ │ │ │ │ ├── CraftMerchant.java │ │ │ │ │ │ ├── CraftMerchantCustom.java │ │ │ │ │ │ ├── CraftMerchantRecipe.java │ │ │ │ │ │ ├── CraftMetaBanner.java │ │ │ │ │ │ ├── CraftMetaBlockState.java │ │ │ │ │ │ ├── CraftMetaBook.java │ │ │ │ │ │ ├── CraftMetaBookSigned.java │ │ │ │ │ │ ├── CraftMetaCharge.java │ │ │ │ │ │ ├── CraftMetaEnchantedBook.java │ │ │ │ │ │ ├── CraftMetaFirework.java │ │ │ │ │ │ ├── CraftMetaItem.java │ │ │ │ │ │ ├── CraftMetaKnowledgeBook.java │ │ │ │ │ │ ├── CraftMetaLeatherArmor.java │ │ │ │ │ │ ├── CraftMetaMap.java │ │ │ │ │ │ ├── CraftMetaPotion.java │ │ │ │ │ │ ├── CraftMetaSkull.java │ │ │ │ │ │ ├── CraftMetaSpawnEgg.java │ │ │ │ │ │ ├── CraftRecipe.java │ │ │ │ │ │ ├── CraftShapedRecipe.java │ │ │ │ │ │ ├── CraftShapelessRecipe.java │ │ │ │ │ │ ├── InventoryIterator.java │ │ │ │ │ │ ├── InventoryWrapper.java │ │ │ │ │ │ └── RecipeIterator.java │ │ │ │ │ │ ├── map │ │ │ │ │ │ ├── CraftMapCanvas.java │ │ │ │ │ │ ├── CraftMapRenderer.java │ │ │ │ │ │ ├── CraftMapView.java │ │ │ │ │ │ └── RenderData.java │ │ │ │ │ │ ├── metadata │ │ │ │ │ │ ├── BlockMetadataStore.java │ │ │ │ │ │ ├── EntityMetadataStore.java │ │ │ │ │ │ ├── PlayerMetadataStore.java │ │ │ │ │ │ └── WorldMetadataStore.java │ │ │ │ │ │ ├── potion │ │ │ │ │ │ ├── CraftPotionBrewer.java │ │ │ │ │ │ ├── CraftPotionEffectType.java │ │ │ │ │ │ └── CraftPotionUtil.java │ │ │ │ │ │ ├── projectiles │ │ │ │ │ │ └── CraftBlockProjectileSource.java │ │ │ │ │ │ ├── scheduler │ │ │ │ │ │ ├── CraftAsyncDebugger.java │ │ │ │ │ │ ├── CraftAsyncScheduler.java │ │ │ │ │ │ ├── CraftAsyncTask.java │ │ │ │ │ │ ├── CraftFuture.java │ │ │ │ │ │ ├── CraftScheduler.java │ │ │ │ │ │ └── CraftTask.java │ │ │ │ │ │ ├── scoreboard │ │ │ │ │ │ ├── CraftCriteria.java │ │ │ │ │ │ ├── CraftObjective.java │ │ │ │ │ │ ├── CraftScore.java │ │ │ │ │ │ ├── CraftScoreboard.java │ │ │ │ │ │ ├── CraftScoreboardComponent.java │ │ │ │ │ │ ├── CraftScoreboardManager.java │ │ │ │ │ │ ├── CraftScoreboardTranslations.java │ │ │ │ │ │ └── CraftTeam.java │ │ │ │ │ │ └── util │ │ │ │ │ │ ├── AsynchronousExecutor.java │ │ │ │ │ │ ├── BlockStateListPopulator.java │ │ │ │ │ │ ├── CraftChatMessage.java │ │ │ │ │ │ ├── CraftDamageSource.java │ │ │ │ │ │ ├── CraftIconCache.java │ │ │ │ │ │ ├── CraftMagicNumbers.java │ │ │ │ │ │ ├── CraftNamespacedKey.java │ │ │ │ │ │ ├── DatFileFilter.java │ │ │ │ │ │ ├── ForwardLogHandler.java │ │ │ │ │ │ ├── HashTreeSet.java │ │ │ │ │ │ ├── LazyHashSet.java │ │ │ │ │ │ ├── LazyPlayerSet.java │ │ │ │ │ │ ├── LongHash.java │ │ │ │ │ │ ├── LongHashSet.java │ │ │ │ │ │ ├── LongObjectHashMap.java │ │ │ │ │ │ ├── MojangNameLookup.java │ │ │ │ │ │ ├── ServerShutdownThread.java │ │ │ │ │ │ ├── ShortConsoleLogFormatter.java │ │ │ │ │ │ ├── StructureGrowDelegate.java │ │ │ │ │ │ ├── UnsafeList.java │ │ │ │ │ │ ├── Versioning.java │ │ │ │ │ │ ├── Waitable.java │ │ │ │ │ │ ├── WeakCollection.java │ │ │ │ │ │ └── permissions │ │ │ │ │ │ ├── CommandPermissions.java │ │ │ │ │ │ └── CraftDefaultPermissions.java │ │ │ │ ├── enchantments │ │ │ │ │ ├── Enchantment.java │ │ │ │ │ ├── EnchantmentOffer.java │ │ │ │ │ ├── EnchantmentTarget.java │ │ │ │ │ └── EnchantmentWrapper.java │ │ │ │ ├── entity │ │ │ │ │ ├── AbstractHorse.java │ │ │ │ │ ├── Ageable.java │ │ │ │ │ ├── Ambient.java │ │ │ │ │ ├── AnimalTamer.java │ │ │ │ │ ├── Animals.java │ │ │ │ │ ├── AreaEffectCloud.java │ │ │ │ │ ├── ArmorStand.java │ │ │ │ │ ├── Arrow.java │ │ │ │ │ ├── Bat.java │ │ │ │ │ ├── Blaze.java │ │ │ │ │ ├── Boat.java │ │ │ │ │ ├── CaveSpider.java │ │ │ │ │ ├── ChestedHorse.java │ │ │ │ │ ├── Chicken.java │ │ │ │ │ ├── ComplexEntityPart.java │ │ │ │ │ ├── ComplexLivingEntity.java │ │ │ │ │ ├── Cow.java │ │ │ │ │ ├── Creature.java │ │ │ │ │ ├── Creeper.java │ │ │ │ │ ├── Damageable.java │ │ │ │ │ ├── Donkey.java │ │ │ │ │ ├── DragonFireball.java │ │ │ │ │ ├── Egg.java │ │ │ │ │ ├── ElderGuardian.java │ │ │ │ │ ├── EnderCrystal.java │ │ │ │ │ ├── EnderDragon.java │ │ │ │ │ ├── EnderDragonPart.java │ │ │ │ │ ├── EnderPearl.java │ │ │ │ │ ├── EnderSignal.java │ │ │ │ │ ├── Enderman.java │ │ │ │ │ ├── Endermite.java │ │ │ │ │ ├── Entity.java │ │ │ │ │ ├── EntityType.java │ │ │ │ │ ├── Evoker.java │ │ │ │ │ ├── EvokerFangs.java │ │ │ │ │ ├── ExperienceOrb.java │ │ │ │ │ ├── Explosive.java │ │ │ │ │ ├── FallingBlock.java │ │ │ │ │ ├── Fireball.java │ │ │ │ │ ├── Firework.java │ │ │ │ │ ├── Fish.java │ │ │ │ │ ├── FishHook.java │ │ │ │ │ ├── Flying.java │ │ │ │ │ ├── Ghast.java │ │ │ │ │ ├── Giant.java │ │ │ │ │ ├── Golem.java │ │ │ │ │ ├── Guardian.java │ │ │ │ │ ├── Hanging.java │ │ │ │ │ ├── Horse.java │ │ │ │ │ ├── HumanEntity.java │ │ │ │ │ ├── Husk.java │ │ │ │ │ ├── Illager.java │ │ │ │ │ ├── Illusioner.java │ │ │ │ │ ├── IronGolem.java │ │ │ │ │ ├── Item.java │ │ │ │ │ ├── ItemFrame.java │ │ │ │ │ ├── LargeFireball.java │ │ │ │ │ ├── LeashHitch.java │ │ │ │ │ ├── LightningStrike.java │ │ │ │ │ ├── LingeringPotion.java │ │ │ │ │ ├── LivingEntity.java │ │ │ │ │ ├── Llama.java │ │ │ │ │ ├── LlamaSpit.java │ │ │ │ │ ├── MagmaCube.java │ │ │ │ │ ├── Minecart.java │ │ │ │ │ ├── Monster.java │ │ │ │ │ ├── Mule.java │ │ │ │ │ ├── MushroomCow.java │ │ │ │ │ ├── NPC.java │ │ │ │ │ ├── Ocelot.java │ │ │ │ │ ├── Painting.java │ │ │ │ │ ├── Parrot.java │ │ │ │ │ ├── Pig.java │ │ │ │ │ ├── PigZombie.java │ │ │ │ │ ├── Player.java │ │ │ │ │ ├── PolarBear.java │ │ │ │ │ ├── Projectile.java │ │ │ │ │ ├── Rabbit.java │ │ │ │ │ ├── Sheep.java │ │ │ │ │ ├── Shulker.java │ │ │ │ │ ├── ShulkerBullet.java │ │ │ │ │ ├── Silverfish.java │ │ │ │ │ ├── Sittable.java │ │ │ │ │ ├── Skeleton.java │ │ │ │ │ ├── SkeletonHorse.java │ │ │ │ │ ├── Slime.java │ │ │ │ │ ├── SmallFireball.java │ │ │ │ │ ├── Snowball.java │ │ │ │ │ ├── Snowman.java │ │ │ │ │ ├── SpectralArrow.java │ │ │ │ │ ├── Spellcaster.java │ │ │ │ │ ├── Spider.java │ │ │ │ │ ├── SplashPotion.java │ │ │ │ │ ├── Squid.java │ │ │ │ │ ├── Stray.java │ │ │ │ │ ├── TNTPrimed.java │ │ │ │ │ ├── Tameable.java │ │ │ │ │ ├── ThrownExpBottle.java │ │ │ │ │ ├── ThrownPotion.java │ │ │ │ │ ├── TippedArrow.java │ │ │ │ │ ├── Vehicle.java │ │ │ │ │ ├── Vex.java │ │ │ │ │ ├── Villager.java │ │ │ │ │ ├── Vindicator.java │ │ │ │ │ ├── WaterMob.java │ │ │ │ │ ├── Weather.java │ │ │ │ │ ├── Witch.java │ │ │ │ │ ├── Wither.java │ │ │ │ │ ├── WitherSkeleton.java │ │ │ │ │ ├── WitherSkull.java │ │ │ │ │ ├── Wolf.java │ │ │ │ │ ├── Zombie.java │ │ │ │ │ ├── ZombieHorse.java │ │ │ │ │ ├── ZombieVillager.java │ │ │ │ │ └── minecart │ │ │ │ │ │ ├── CommandMinecart.java │ │ │ │ │ │ ├── ExplosiveMinecart.java │ │ │ │ │ │ ├── HopperMinecart.java │ │ │ │ │ │ ├── PoweredMinecart.java │ │ │ │ │ │ ├── RideableMinecart.java │ │ │ │ │ │ ├── SpawnerMinecart.java │ │ │ │ │ │ └── StorageMinecart.java │ │ │ │ ├── event │ │ │ │ │ ├── Cancellable.java │ │ │ │ │ ├── Event.java │ │ │ │ │ ├── EventException.java │ │ │ │ │ ├── EventHandler.java │ │ │ │ │ ├── EventPriority.java │ │ │ │ │ ├── HandlerList.java │ │ │ │ │ ├── Listener.java │ │ │ │ │ ├── block │ │ │ │ │ │ ├── Action.java │ │ │ │ │ │ ├── BlockBreakEvent.java │ │ │ │ │ │ ├── BlockBurnEvent.java │ │ │ │ │ │ ├── BlockCanBuildEvent.java │ │ │ │ │ │ ├── BlockDamageEvent.java │ │ │ │ │ │ ├── BlockDispenseEvent.java │ │ │ │ │ │ ├── BlockEvent.java │ │ │ │ │ │ ├── BlockExpEvent.java │ │ │ │ │ │ ├── BlockExplodeEvent.java │ │ │ │ │ │ ├── BlockFadeEvent.java │ │ │ │ │ │ ├── BlockFormEvent.java │ │ │ │ │ │ ├── BlockFromToEvent.java │ │ │ │ │ │ ├── BlockGrowEvent.java │ │ │ │ │ │ ├── BlockIgniteEvent.java │ │ │ │ │ │ ├── BlockMultiPlaceEvent.java │ │ │ │ │ │ ├── BlockPhysicsEvent.java │ │ │ │ │ │ ├── BlockPistonEvent.java │ │ │ │ │ │ ├── BlockPistonExtendEvent.java │ │ │ │ │ │ ├── BlockPistonRetractEvent.java │ │ │ │ │ │ ├── BlockPlaceEvent.java │ │ │ │ │ │ ├── BlockRedstoneEvent.java │ │ │ │ │ │ ├── BlockSpreadEvent.java │ │ │ │ │ │ ├── CauldronLevelChangeEvent.java │ │ │ │ │ │ ├── EntityBlockFormEvent.java │ │ │ │ │ │ ├── LeavesDecayEvent.java │ │ │ │ │ │ ├── NotePlayEvent.java │ │ │ │ │ │ └── SignChangeEvent.java │ │ │ │ │ ├── enchantment │ │ │ │ │ │ ├── EnchantItemEvent.java │ │ │ │ │ │ └── PrepareItemEnchantEvent.java │ │ │ │ │ ├── entity │ │ │ │ │ │ ├── AreaEffectCloudApplyEvent.java │ │ │ │ │ │ ├── CreatureSpawnEvent.java │ │ │ │ │ │ ├── CreeperPowerEvent.java │ │ │ │ │ │ ├── EnderDragonChangePhaseEvent.java │ │ │ │ │ │ ├── EntityAirChangeEvent.java │ │ │ │ │ │ ├── EntityBreakDoorEvent.java │ │ │ │ │ │ ├── EntityBreedEvent.java │ │ │ │ │ │ ├── EntityChangeBlockEvent.java │ │ │ │ │ │ ├── EntityCombustByBlockEvent.java │ │ │ │ │ │ ├── EntityCombustByEntityEvent.java │ │ │ │ │ │ ├── EntityCombustEvent.java │ │ │ │ │ │ ├── EntityCreatePortalEvent.java │ │ │ │ │ │ ├── EntityDamageByBlockEvent.java │ │ │ │ │ │ ├── EntityDamageByEntityEvent.java │ │ │ │ │ │ ├── EntityDamageEvent.java │ │ │ │ │ │ ├── EntityDeathEvent.java │ │ │ │ │ │ ├── EntityEvent.java │ │ │ │ │ │ ├── EntityExplodeEvent.java │ │ │ │ │ │ ├── EntityInteractEvent.java │ │ │ │ │ │ ├── EntityPickupItemEvent.java │ │ │ │ │ │ ├── EntityPortalEnterEvent.java │ │ │ │ │ │ ├── EntityPortalEvent.java │ │ │ │ │ │ ├── EntityPortalExitEvent.java │ │ │ │ │ │ ├── EntityRegainHealthEvent.java │ │ │ │ │ │ ├── EntityResurrectEvent.java │ │ │ │ │ │ ├── EntityShootBowEvent.java │ │ │ │ │ │ ├── EntitySpawnEvent.java │ │ │ │ │ │ ├── EntityTameEvent.java │ │ │ │ │ │ ├── EntityTargetEvent.java │ │ │ │ │ │ ├── EntityTargetLivingEntityEvent.java │ │ │ │ │ │ ├── EntityTeleportEvent.java │ │ │ │ │ │ ├── EntityToggleGlideEvent.java │ │ │ │ │ │ ├── EntityUnleashEvent.java │ │ │ │ │ │ ├── ExpBottleEvent.java │ │ │ │ │ │ ├── ExplosionPrimeEvent.java │ │ │ │ │ │ ├── FireworkExplodeEvent.java │ │ │ │ │ │ ├── FoodLevelChangeEvent.java │ │ │ │ │ │ ├── HorseJumpEvent.java │ │ │ │ │ │ ├── ItemDespawnEvent.java │ │ │ │ │ │ ├── ItemMergeEvent.java │ │ │ │ │ │ ├── ItemSpawnEvent.java │ │ │ │ │ │ ├── LingeringPotionSplashEvent.java │ │ │ │ │ │ ├── PigZapEvent.java │ │ │ │ │ │ ├── PlayerDeathEvent.java │ │ │ │ │ │ ├── PlayerLeashEntityEvent.java │ │ │ │ │ │ ├── PotionSplashEvent.java │ │ │ │ │ │ ├── ProjectileHitEvent.java │ │ │ │ │ │ ├── ProjectileLaunchEvent.java │ │ │ │ │ │ ├── SheepDyeWoolEvent.java │ │ │ │ │ │ ├── SheepRegrowWoolEvent.java │ │ │ │ │ │ ├── SlimeSplitEvent.java │ │ │ │ │ │ ├── SpawnerSpawnEvent.java │ │ │ │ │ │ ├── VillagerAcquireTradeEvent.java │ │ │ │ │ │ └── VillagerReplenishTradeEvent.java │ │ │ │ │ ├── hanging │ │ │ │ │ │ ├── HangingBreakByEntityEvent.java │ │ │ │ │ │ ├── HangingBreakEvent.java │ │ │ │ │ │ ├── HangingEvent.java │ │ │ │ │ │ └── HangingPlaceEvent.java │ │ │ │ │ ├── inventory │ │ │ │ │ │ ├── BrewEvent.java │ │ │ │ │ │ ├── BrewingStandFuelEvent.java │ │ │ │ │ │ ├── ClickType.java │ │ │ │ │ │ ├── CraftItemEvent.java │ │ │ │ │ │ ├── DragType.java │ │ │ │ │ │ ├── FurnaceBurnEvent.java │ │ │ │ │ │ ├── FurnaceExtractEvent.java │ │ │ │ │ │ ├── FurnaceSmeltEvent.java │ │ │ │ │ │ ├── InventoryAction.java │ │ │ │ │ │ ├── InventoryClickEvent.java │ │ │ │ │ │ ├── InventoryCloseEvent.java │ │ │ │ │ │ ├── InventoryCreativeEvent.java │ │ │ │ │ │ ├── InventoryDragEvent.java │ │ │ │ │ │ ├── InventoryEvent.java │ │ │ │ │ │ ├── InventoryInteractEvent.java │ │ │ │ │ │ ├── InventoryMoveItemEvent.java │ │ │ │ │ │ ├── InventoryOpenEvent.java │ │ │ │ │ │ ├── InventoryPickupItemEvent.java │ │ │ │ │ │ ├── InventoryType.java │ │ │ │ │ │ ├── PrepareAnvilEvent.java │ │ │ │ │ │ └── PrepareItemCraftEvent.java │ │ │ │ │ ├── player │ │ │ │ │ │ ├── AsyncPlayerChatEvent.java │ │ │ │ │ │ ├── AsyncPlayerPreLoginEvent.java │ │ │ │ │ │ ├── PlayerAchievementAwardedEvent.java │ │ │ │ │ │ ├── PlayerAdvancementDoneEvent.java │ │ │ │ │ │ ├── PlayerAnimationEvent.java │ │ │ │ │ │ ├── PlayerAnimationType.java │ │ │ │ │ │ ├── PlayerArmorStandManipulateEvent.java │ │ │ │ │ │ ├── PlayerBedEnterEvent.java │ │ │ │ │ │ ├── PlayerBedLeaveEvent.java │ │ │ │ │ │ ├── PlayerBucketEmptyEvent.java │ │ │ │ │ │ ├── PlayerBucketEvent.java │ │ │ │ │ │ ├── PlayerBucketFillEvent.java │ │ │ │ │ │ ├── PlayerChangedMainHandEvent.java │ │ │ │ │ │ ├── PlayerChangedWorldEvent.java │ │ │ │ │ │ ├── PlayerChannelEvent.java │ │ │ │ │ │ ├── PlayerChatEvent.java │ │ │ │ │ │ ├── PlayerChatTabCompleteEvent.java │ │ │ │ │ │ ├── PlayerCommandPreprocessEvent.java │ │ │ │ │ │ ├── PlayerDropItemEvent.java │ │ │ │ │ │ ├── PlayerEditBookEvent.java │ │ │ │ │ │ ├── PlayerEggThrowEvent.java │ │ │ │ │ │ ├── PlayerEvent.java │ │ │ │ │ │ ├── PlayerExpChangeEvent.java │ │ │ │ │ │ ├── PlayerFishEvent.java │ │ │ │ │ │ ├── PlayerGameModeChangeEvent.java │ │ │ │ │ │ ├── PlayerInteractAtEntityEvent.java │ │ │ │ │ │ ├── PlayerInteractEntityEvent.java │ │ │ │ │ │ ├── PlayerInteractEvent.java │ │ │ │ │ │ ├── PlayerItemBreakEvent.java │ │ │ │ │ │ ├── PlayerItemConsumeEvent.java │ │ │ │ │ │ ├── PlayerItemDamageEvent.java │ │ │ │ │ │ ├── PlayerItemHeldEvent.java │ │ │ │ │ │ ├── PlayerItemMendEvent.java │ │ │ │ │ │ ├── PlayerJoinEvent.java │ │ │ │ │ │ ├── PlayerKickEvent.java │ │ │ │ │ │ ├── PlayerLevelChangeEvent.java │ │ │ │ │ │ ├── PlayerLocaleChangeEvent.java │ │ │ │ │ │ ├── PlayerLoginEvent.java │ │ │ │ │ │ ├── PlayerMoveEvent.java │ │ │ │ │ │ ├── PlayerPickupArrowEvent.java │ │ │ │ │ │ ├── PlayerPickupItemEvent.java │ │ │ │ │ │ ├── PlayerPortalEvent.java │ │ │ │ │ │ ├── PlayerPreLoginEvent.java │ │ │ │ │ │ ├── PlayerQuitEvent.java │ │ │ │ │ │ ├── PlayerRegisterChannelEvent.java │ │ │ │ │ │ ├── PlayerResourcePackStatusEvent.java │ │ │ │ │ │ ├── PlayerRespawnEvent.java │ │ │ │ │ │ ├── PlayerShearEntityEvent.java │ │ │ │ │ │ ├── PlayerStatisticIncrementEvent.java │ │ │ │ │ │ ├── PlayerSwapHandItemsEvent.java │ │ │ │ │ │ ├── PlayerTeleportEvent.java │ │ │ │ │ │ ├── PlayerToggleFlightEvent.java │ │ │ │ │ │ ├── PlayerToggleSneakEvent.java │ │ │ │ │ │ ├── PlayerToggleSprintEvent.java │ │ │ │ │ │ ├── PlayerUnleashEntityEvent.java │ │ │ │ │ │ ├── PlayerUnregisterChannelEvent.java │ │ │ │ │ │ └── PlayerVelocityEvent.java │ │ │ │ │ ├── server │ │ │ │ │ │ ├── BroadcastMessageEvent.java │ │ │ │ │ │ ├── MapInitializeEvent.java │ │ │ │ │ │ ├── PluginDisableEvent.java │ │ │ │ │ │ ├── PluginEnableEvent.java │ │ │ │ │ │ ├── PluginEvent.java │ │ │ │ │ │ ├── RemoteServerCommandEvent.java │ │ │ │ │ │ ├── ServerCommandEvent.java │ │ │ │ │ │ ├── ServerEvent.java │ │ │ │ │ │ ├── ServerListPingEvent.java │ │ │ │ │ │ ├── ServiceEvent.java │ │ │ │ │ │ ├── ServiceRegisterEvent.java │ │ │ │ │ │ ├── ServiceUnregisterEvent.java │ │ │ │ │ │ └── TabCompleteEvent.java │ │ │ │ │ ├── vehicle │ │ │ │ │ │ ├── VehicleBlockCollisionEvent.java │ │ │ │ │ │ ├── VehicleCollisionEvent.java │ │ │ │ │ │ ├── VehicleCreateEvent.java │ │ │ │ │ │ ├── VehicleDamageEvent.java │ │ │ │ │ │ ├── VehicleDestroyEvent.java │ │ │ │ │ │ ├── VehicleEnterEvent.java │ │ │ │ │ │ ├── VehicleEntityCollisionEvent.java │ │ │ │ │ │ ├── VehicleEvent.java │ │ │ │ │ │ ├── VehicleExitEvent.java │ │ │ │ │ │ ├── VehicleMoveEvent.java │ │ │ │ │ │ └── VehicleUpdateEvent.java │ │ │ │ │ ├── weather │ │ │ │ │ │ ├── LightningStrikeEvent.java │ │ │ │ │ │ ├── ThunderChangeEvent.java │ │ │ │ │ │ ├── WeatherChangeEvent.java │ │ │ │ │ │ └── WeatherEvent.java │ │ │ │ │ └── world │ │ │ │ │ │ ├── ChunkEvent.java │ │ │ │ │ │ ├── ChunkLoadEvent.java │ │ │ │ │ │ ├── ChunkPopulateEvent.java │ │ │ │ │ │ ├── ChunkUnloadEvent.java │ │ │ │ │ │ ├── PortalCreateEvent.java │ │ │ │ │ │ ├── SpawnChangeEvent.java │ │ │ │ │ │ ├── StructureGrowEvent.java │ │ │ │ │ │ ├── WorldEvent.java │ │ │ │ │ │ ├── WorldInitEvent.java │ │ │ │ │ │ ├── WorldLoadEvent.java │ │ │ │ │ │ ├── WorldSaveEvent.java │ │ │ │ │ │ └── WorldUnloadEvent.java │ │ │ │ ├── generator │ │ │ │ │ ├── BlockPopulator.java │ │ │ │ │ └── ChunkGenerator.java │ │ │ │ ├── help │ │ │ │ │ ├── GenericCommandHelpTopic.java │ │ │ │ │ ├── HelpMap.java │ │ │ │ │ ├── HelpTopic.java │ │ │ │ │ ├── HelpTopicComparator.java │ │ │ │ │ ├── HelpTopicFactory.java │ │ │ │ │ └── IndexHelpTopic.java │ │ │ │ ├── inventory │ │ │ │ │ ├── AbstractHorseInventory.java │ │ │ │ │ ├── AnvilInventory.java │ │ │ │ │ ├── BeaconInventory.java │ │ │ │ │ ├── BrewerInventory.java │ │ │ │ │ ├── CraftingInventory.java │ │ │ │ │ ├── DoubleChestInventory.java │ │ │ │ │ ├── EnchantingInventory.java │ │ │ │ │ ├── EntityEquipment.java │ │ │ │ │ ├── EquipmentSlot.java │ │ │ │ │ ├── FurnaceInventory.java │ │ │ │ │ ├── FurnaceRecipe.java │ │ │ │ │ ├── HorseInventory.java │ │ │ │ │ ├── Inventory.java │ │ │ │ │ ├── InventoryHolder.java │ │ │ │ │ ├── InventoryView.java │ │ │ │ │ ├── ItemFactory.java │ │ │ │ │ ├── ItemFlag.java │ │ │ │ │ ├── ItemStack.java │ │ │ │ │ ├── LlamaInventory.java │ │ │ │ │ ├── MainHand.java │ │ │ │ │ ├── Merchant.java │ │ │ │ │ ├── MerchantInventory.java │ │ │ │ │ ├── MerchantRecipe.java │ │ │ │ │ ├── PlayerInventory.java │ │ │ │ │ ├── Recipe.java │ │ │ │ │ ├── ShapedRecipe.java │ │ │ │ │ ├── ShapelessRecipe.java │ │ │ │ │ └── meta │ │ │ │ │ │ ├── BannerMeta.java │ │ │ │ │ │ ├── BlockStateMeta.java │ │ │ │ │ │ ├── BookMeta.java │ │ │ │ │ │ ├── EnchantmentStorageMeta.java │ │ │ │ │ │ ├── FireworkEffectMeta.java │ │ │ │ │ │ ├── FireworkMeta.java │ │ │ │ │ │ ├── ItemMeta.java │ │ │ │ │ │ ├── KnowledgeBookMeta.java │ │ │ │ │ │ ├── LeatherArmorMeta.java │ │ │ │ │ │ ├── MapMeta.java │ │ │ │ │ │ ├── PotionMeta.java │ │ │ │ │ │ ├── Repairable.java │ │ │ │ │ │ ├── SkullMeta.java │ │ │ │ │ │ └── SpawnEggMeta.java │ │ │ │ ├── map │ │ │ │ │ ├── MapCanvas.java │ │ │ │ │ ├── MapCursor.java │ │ │ │ │ ├── MapCursorCollection.java │ │ │ │ │ ├── MapFont.java │ │ │ │ │ ├── MapPalette.java │ │ │ │ │ ├── MapRenderer.java │ │ │ │ │ ├── MapView.java │ │ │ │ │ └── MinecraftFont.java │ │ │ │ ├── material │ │ │ │ │ ├── Attachable.java │ │ │ │ │ ├── Banner.java │ │ │ │ │ ├── Bed.java │ │ │ │ │ ├── Button.java │ │ │ │ │ ├── Cake.java │ │ │ │ │ ├── Cauldron.java │ │ │ │ │ ├── Chest.java │ │ │ │ │ ├── Coal.java │ │ │ │ │ ├── CocoaPlant.java │ │ │ │ │ ├── Colorable.java │ │ │ │ │ ├── Command.java │ │ │ │ │ ├── Comparator.java │ │ │ │ │ ├── Crops.java │ │ │ │ │ ├── DetectorRail.java │ │ │ │ │ ├── Diode.java │ │ │ │ │ ├── Directional.java │ │ │ │ │ ├── DirectionalContainer.java │ │ │ │ │ ├── Dispenser.java │ │ │ │ │ ├── Door.java │ │ │ │ │ ├── Dye.java │ │ │ │ │ ├── EnderChest.java │ │ │ │ │ ├── ExtendedRails.java │ │ │ │ │ ├── FlowerPot.java │ │ │ │ │ ├── Furnace.java │ │ │ │ │ ├── FurnaceAndDispenser.java │ │ │ │ │ ├── Gate.java │ │ │ │ │ ├── Hopper.java │ │ │ │ │ ├── Ladder.java │ │ │ │ │ ├── Leaves.java │ │ │ │ │ ├── Lever.java │ │ │ │ │ ├── LongGrass.java │ │ │ │ │ ├── MaterialData.java │ │ │ │ │ ├── MonsterEggs.java │ │ │ │ │ ├── Mushroom.java │ │ │ │ │ ├── NetherWarts.java │ │ │ │ │ ├── Observer.java │ │ │ │ │ ├── Openable.java │ │ │ │ │ ├── PistonBaseMaterial.java │ │ │ │ │ ├── PistonExtensionMaterial.java │ │ │ │ │ ├── PoweredRail.java │ │ │ │ │ ├── PressurePlate.java │ │ │ │ │ ├── PressureSensor.java │ │ │ │ │ ├── Pumpkin.java │ │ │ │ │ ├── Rails.java │ │ │ │ │ ├── Redstone.java │ │ │ │ │ ├── RedstoneTorch.java │ │ │ │ │ ├── RedstoneWire.java │ │ │ │ │ ├── Sandstone.java │ │ │ │ │ ├── Sapling.java │ │ │ │ │ ├── Sign.java │ │ │ │ │ ├── SimpleAttachableMaterialData.java │ │ │ │ │ ├── Skull.java │ │ │ │ │ ├── SmoothBrick.java │ │ │ │ │ ├── SpawnEgg.java │ │ │ │ │ ├── Stairs.java │ │ │ │ │ ├── Step.java │ │ │ │ │ ├── TexturedMaterial.java │ │ │ │ │ ├── Torch.java │ │ │ │ │ ├── TrapDoor.java │ │ │ │ │ ├── Tree.java │ │ │ │ │ ├── Tripwire.java │ │ │ │ │ ├── TripwireHook.java │ │ │ │ │ ├── Vine.java │ │ │ │ │ ├── Wood.java │ │ │ │ │ ├── WoodenStep.java │ │ │ │ │ ├── Wool.java │ │ │ │ │ └── types │ │ │ │ │ │ └── MushroomBlockTexture.java │ │ │ │ ├── metadata │ │ │ │ │ ├── FixedMetadataValue.java │ │ │ │ │ ├── LazyMetadataValue.java │ │ │ │ │ ├── MetadataConversionException.java │ │ │ │ │ ├── MetadataEvaluationException.java │ │ │ │ │ ├── MetadataStore.java │ │ │ │ │ ├── MetadataStoreBase.java │ │ │ │ │ ├── MetadataValue.java │ │ │ │ │ ├── MetadataValueAdapter.java │ │ │ │ │ └── Metadatable.java │ │ │ │ ├── permissions │ │ │ │ │ ├── Permissible.java │ │ │ │ │ ├── PermissibleBase.java │ │ │ │ │ ├── Permission.java │ │ │ │ │ ├── PermissionAttachment.java │ │ │ │ │ ├── PermissionAttachmentInfo.java │ │ │ │ │ ├── PermissionDefault.java │ │ │ │ │ ├── PermissionRemovedExecutor.java │ │ │ │ │ └── ServerOperator.java │ │ │ │ ├── plugin │ │ │ │ │ ├── AuthorNagException.java │ │ │ │ │ ├── EventExecutor.java │ │ │ │ │ ├── IllegalPluginAccessException.java │ │ │ │ │ ├── InvalidDescriptionException.java │ │ │ │ │ ├── InvalidPluginException.java │ │ │ │ │ ├── Plugin.java │ │ │ │ │ ├── PluginAwareness.java │ │ │ │ │ ├── PluginBase.java │ │ │ │ │ ├── PluginDescriptionFile.java │ │ │ │ │ ├── PluginLoadOrder.java │ │ │ │ │ ├── PluginLoader.java │ │ │ │ │ ├── PluginLogger.java │ │ │ │ │ ├── PluginManager.java │ │ │ │ │ ├── RegisteredListener.java │ │ │ │ │ ├── RegisteredServiceProvider.java │ │ │ │ │ ├── ServicePriority.java │ │ │ │ │ ├── ServicesManager.java │ │ │ │ │ ├── SimplePluginManager.java │ │ │ │ │ ├── SimpleServicesManager.java │ │ │ │ │ ├── TimedRegisteredListener.java │ │ │ │ │ ├── UnknownDependencyException.java │ │ │ │ │ ├── java │ │ │ │ │ │ ├── JavaPlugin.java │ │ │ │ │ │ ├── JavaPluginLoader.java │ │ │ │ │ │ └── PluginClassLoader.java │ │ │ │ │ └── messaging │ │ │ │ │ │ ├── ChannelNameTooLongException.java │ │ │ │ │ │ ├── ChannelNotRegisteredException.java │ │ │ │ │ │ ├── MessageTooLargeException.java │ │ │ │ │ │ ├── Messenger.java │ │ │ │ │ │ ├── PluginChannelDirection.java │ │ │ │ │ │ ├── PluginMessageListener.java │ │ │ │ │ │ ├── PluginMessageListenerRegistration.java │ │ │ │ │ │ ├── PluginMessageRecipient.java │ │ │ │ │ │ ├── ReservedChannelException.java │ │ │ │ │ │ └── StandardMessenger.java │ │ │ │ ├── potion │ │ │ │ │ ├── Potion.java │ │ │ │ │ ├── PotionBrewer.java │ │ │ │ │ ├── PotionData.java │ │ │ │ │ ├── PotionEffect.java │ │ │ │ │ ├── PotionEffectType.java │ │ │ │ │ ├── PotionEffectTypeWrapper.java │ │ │ │ │ └── PotionType.java │ │ │ │ ├── projectiles │ │ │ │ │ ├── BlockProjectileSource.java │ │ │ │ │ └── ProjectileSource.java │ │ │ │ ├── scheduler │ │ │ │ │ ├── BukkitRunnable.java │ │ │ │ │ ├── BukkitScheduler.java │ │ │ │ │ ├── BukkitTask.java │ │ │ │ │ └── BukkitWorker.java │ │ │ │ ├── scoreboard │ │ │ │ │ ├── Criterias.java │ │ │ │ │ ├── DisplaySlot.java │ │ │ │ │ ├── NameTagVisibility.java │ │ │ │ │ ├── Objective.java │ │ │ │ │ ├── Score.java │ │ │ │ │ ├── Scoreboard.java │ │ │ │ │ ├── ScoreboardManager.java │ │ │ │ │ └── Team.java │ │ │ │ └── util │ │ │ │ │ ├── BlockIterator.java │ │ │ │ │ ├── BlockVector.java │ │ │ │ │ ├── CachedServerIcon.java │ │ │ │ │ ├── ChatPaginator.java │ │ │ │ │ ├── Consumer.java │ │ │ │ │ ├── EulerAngle.java │ │ │ │ │ ├── FileUtil.java │ │ │ │ │ ├── NumberConversions.java │ │ │ │ │ ├── StringUtil.java │ │ │ │ │ ├── Vector.java │ │ │ │ │ ├── io │ │ │ │ │ ├── BukkitObjectInputStream.java │ │ │ │ │ ├── BukkitObjectOutputStream.java │ │ │ │ │ └── Wrapper.java │ │ │ │ │ ├── noise │ │ │ │ │ ├── NoiseGenerator.java │ │ │ │ │ ├── OctaveGenerator.java │ │ │ │ │ ├── PerlinNoiseGenerator.java │ │ │ │ │ ├── PerlinOctaveGenerator.java │ │ │ │ │ ├── SimplexNoiseGenerator.java │ │ │ │ │ └── SimplexOctaveGenerator.java │ │ │ │ │ └── permissions │ │ │ │ │ ├── BroadcastPermissions.java │ │ │ │ │ ├── CommandPermissions.java │ │ │ │ │ └── DefaultPermissions.java │ │ │ ├── lwjgl │ │ │ │ ├── BufferChecks.java │ │ │ │ ├── BufferUtils.java │ │ │ │ ├── LWJGLException.java │ │ │ │ ├── LWJGLUtil.java │ │ │ │ ├── MemoryUtil.java │ │ │ │ ├── PointerBuffer.java │ │ │ │ ├── PointerWrapper.java │ │ │ │ ├── PointerWrapperAbstract.java │ │ │ │ ├── Sys.java │ │ │ │ ├── input │ │ │ │ │ ├── Cursor.java │ │ │ │ │ ├── EventQueue.java │ │ │ │ │ ├── KeyCodes.java │ │ │ │ │ ├── KeyEvent.java │ │ │ │ │ ├── KeyState.java │ │ │ │ │ ├── Keyboard.java │ │ │ │ │ └── Mouse.java │ │ │ │ ├── lwjgl3ify │ │ │ │ │ ├── BufferCasts.java │ │ │ │ │ └── UnsafeHacks.java │ │ │ │ ├── openal │ │ │ │ │ ├── AL.java │ │ │ │ │ ├── AL10.java │ │ │ │ │ ├── AL11.java │ │ │ │ │ ├── ALC10.java │ │ │ │ │ ├── ALC11.java │ │ │ │ │ ├── ALCcontext.java │ │ │ │ │ ├── ALCdevice.java │ │ │ │ │ ├── EFX10.java │ │ │ │ │ ├── EFXUtil.java │ │ │ │ │ ├── OpenALException.java │ │ │ │ │ └── Util.java │ │ │ │ ├── opengl │ │ │ │ │ ├── AMDBlendMinmaxFactor.java │ │ │ │ │ ├── AMDDebugOutput.java │ │ │ │ │ ├── AMDDepthClampSeparate.java │ │ │ │ │ ├── AMDDrawBuffersBlend.java │ │ │ │ │ ├── AMDInterleavedElements.java │ │ │ │ │ ├── AMDPerformanceMonitor.java │ │ │ │ │ ├── AMDPinnedMemory.java │ │ │ │ │ ├── AMDQueryBufferObject.java │ │ │ │ │ ├── AMDSamplePositions.java │ │ │ │ │ ├── AMDSeamlessCubemapPerTexture.java │ │ │ │ │ ├── AMDSparseTexture.java │ │ │ │ │ ├── AMDStencilOperationExtended.java │ │ │ │ │ ├── AMDVertexShaderTessellator.java │ │ │ │ │ ├── ARBBaseInstance.java │ │ │ │ │ ├── ARBBindlessTexture.java │ │ │ │ │ ├── ARBBlendFuncExtended.java │ │ │ │ │ ├── ARBBufferObject.java │ │ │ │ │ ├── ARBBufferStorage.java │ │ │ │ │ ├── ARBClearBufferObject.java │ │ │ │ │ ├── ARBClearTexture.java │ │ │ │ │ ├── ARBClipControl.java │ │ │ │ │ ├── ARBColorBufferFloat.java │ │ │ │ │ ├── ARBCompressedTexturePixelStorage.java │ │ │ │ │ ├── ARBComputeShader.java │ │ │ │ │ ├── ARBComputeVariableGroupSize.java │ │ │ │ │ ├── ARBConditionalRenderInverted.java │ │ │ │ │ ├── ARBCopyBuffer.java │ │ │ │ │ ├── ARBCopyImage.java │ │ │ │ │ ├── ARBCullDistance.java │ │ │ │ │ ├── ARBDebugOutput.java │ │ │ │ │ ├── ARBDepthBufferFloat.java │ │ │ │ │ ├── ARBDepthClamp.java │ │ │ │ │ ├── ARBDepthTexture.java │ │ │ │ │ ├── ARBDirectStateAccess.java │ │ │ │ │ ├── ARBDrawBuffers.java │ │ │ │ │ ├── ARBDrawBuffersBlend.java │ │ │ │ │ ├── ARBDrawElementsBaseVertex.java │ │ │ │ │ ├── ARBDrawIndirect.java │ │ │ │ │ ├── ARBDrawInstanced.java │ │ │ │ │ ├── ARBES2Compatibility.java │ │ │ │ │ ├── ARBES31Compatibility.java │ │ │ │ │ ├── ARBES3Compatibility.java │ │ │ │ │ ├── ARBEnhancedLayouts.java │ │ │ │ │ ├── ARBExplicitUniformLocation.java │ │ │ │ │ ├── ARBFragmentProgram.java │ │ │ │ │ ├── ARBFragmentShader.java │ │ │ │ │ ├── ARBFramebufferNoAttachments.java │ │ │ │ │ ├── ARBFramebufferObject.java │ │ │ │ │ ├── ARBFramebufferSRGB.java │ │ │ │ │ ├── ARBGeometryShader4.java │ │ │ │ │ ├── ARBGetProgramBinary.java │ │ │ │ │ ├── ARBGetTextureSubImage.java │ │ │ │ │ ├── ARBHalfFloatPixel.java │ │ │ │ │ ├── ARBHalfFloatVertex.java │ │ │ │ │ ├── ARBImaging.java │ │ │ │ │ ├── ARBIndirectParameters.java │ │ │ │ │ ├── ARBInstancedArrays.java │ │ │ │ │ ├── ARBInternalformatQuery.java │ │ │ │ │ ├── ARBInternalformatQuery2.java │ │ │ │ │ ├── ARBInvalidateSubdata.java │ │ │ │ │ ├── ARBMapBufferAlignment.java │ │ │ │ │ ├── ARBMapBufferRange.java │ │ │ │ │ ├── ARBMatrixPalette.java │ │ │ │ │ ├── ARBMultiBind.java │ │ │ │ │ ├── ARBMultiDrawIndirect.java │ │ │ │ │ ├── ARBMultisample.java │ │ │ │ │ ├── ARBMultitexture.java │ │ │ │ │ ├── ARBOcclusionQuery.java │ │ │ │ │ ├── ARBOcclusionQuery2.java │ │ │ │ │ ├── ARBPipelineStatisticsQuery.java │ │ │ │ │ ├── ARBPixelBufferObject.java │ │ │ │ │ ├── ARBPointParameters.java │ │ │ │ │ ├── ARBPointSprite.java │ │ │ │ │ ├── ARBProgram.java │ │ │ │ │ ├── ARBProgramInterfaceQuery.java │ │ │ │ │ ├── ARBProvokingVertex.java │ │ │ │ │ ├── ARBQueryBufferObject.java │ │ │ │ │ ├── ARBRobustness.java │ │ │ │ │ ├── ARBSampleShading.java │ │ │ │ │ ├── ARBSamplerObjects.java │ │ │ │ │ ├── ARBSeamlessCubeMap.java │ │ │ │ │ ├── ARBSeamlessCubemapPerTexture.java │ │ │ │ │ ├── ARBSeparateShaderObjects.java │ │ │ │ │ ├── ARBShaderAtomicCounters.java │ │ │ │ │ ├── ARBShaderImageLoadStore.java │ │ │ │ │ ├── ARBShaderObjects.java │ │ │ │ │ ├── ARBShaderStorageBufferObject.java │ │ │ │ │ ├── ARBShaderSubroutine.java │ │ │ │ │ ├── ARBShadingLanguage100.java │ │ │ │ │ ├── ARBShadingLanguageInclude.java │ │ │ │ │ ├── ARBShadow.java │ │ │ │ │ ├── ARBShadowAmbient.java │ │ │ │ │ ├── ARBSparseBuffer.java │ │ │ │ │ ├── ARBSparseTexture.java │ │ │ │ │ ├── ARBStencilTexturing.java │ │ │ │ │ ├── ARBSync.java │ │ │ │ │ ├── ARBTessellationShader.java │ │ │ │ │ ├── ARBTextureBarrier.java │ │ │ │ │ ├── ARBTextureBorderClamp.java │ │ │ │ │ ├── ARBTextureBufferObject.java │ │ │ │ │ ├── ARBTextureBufferRange.java │ │ │ │ │ ├── ARBTextureCompression.java │ │ │ │ │ ├── ARBTextureCompressionBPTC.java │ │ │ │ │ ├── ARBTextureCompressionRGTC.java │ │ │ │ │ ├── ARBTextureCubeMap.java │ │ │ │ │ ├── ARBTextureCubeMapArray.java │ │ │ │ │ ├── ARBTextureEnvCombine.java │ │ │ │ │ ├── ARBTextureEnvDot3.java │ │ │ │ │ ├── ARBTextureFloat.java │ │ │ │ │ ├── ARBTextureGather.java │ │ │ │ │ ├── ARBTextureMirrorClampToEdge.java │ │ │ │ │ ├── ARBTextureMirroredRepeat.java │ │ │ │ │ ├── ARBTextureMultisample.java │ │ │ │ │ ├── ARBTextureRGB10_A2UI.java │ │ │ │ │ ├── ARBTextureRectangle.java │ │ │ │ │ ├── ARBTextureStorage.java │ │ │ │ │ ├── ARBTextureStorageMultisample.java │ │ │ │ │ ├── ARBTextureSwizzle.java │ │ │ │ │ ├── ARBTextureView.java │ │ │ │ │ ├── ARBTimerQuery.java │ │ │ │ │ ├── ARBTransformFeedback2.java │ │ │ │ │ ├── ARBTransformFeedback3.java │ │ │ │ │ ├── ARBTransformFeedbackInstanced.java │ │ │ │ │ ├── ARBTransformFeedbackOverflowQuery.java │ │ │ │ │ ├── ARBTransposeMatrix.java │ │ │ │ │ ├── ARBUniformBufferObject.java │ │ │ │ │ ├── ARBVertexArrayObject.java │ │ │ │ │ ├── ARBVertexAttribBinding.java │ │ │ │ │ ├── ARBVertexBlend.java │ │ │ │ │ ├── ARBVertexBufferObject.java │ │ │ │ │ ├── ARBVertexProgram.java │ │ │ │ │ ├── ARBVertexShader.java │ │ │ │ │ ├── ARBVertexType2_10_10_10_REV.java │ │ │ │ │ ├── ARBViewportArray.java │ │ │ │ │ ├── ARBWindowPos.java │ │ │ │ │ ├── ATIMeminfo.java │ │ │ │ │ ├── ATITextureCompression3DC.java │ │ │ │ │ ├── AWTGLCanvas.java │ │ │ │ │ ├── Context.java │ │ │ │ │ ├── ContextAttribs.java │ │ │ │ │ ├── ContextCapabilities.java │ │ │ │ │ ├── ContextGL.java │ │ │ │ │ ├── Display.java │ │ │ │ │ ├── DisplayImplementation.java │ │ │ │ │ ├── DisplayMode.java │ │ │ │ │ ├── Drawable.java │ │ │ │ │ ├── DrawableGL.java │ │ │ │ │ ├── DrawableLWJGL.java │ │ │ │ │ ├── EXTBindableUniform.java │ │ │ │ │ ├── EXTBlendColor.java │ │ │ │ │ ├── EXTBlendEquationSeparate.java │ │ │ │ │ ├── EXTBlendFuncSeparate.java │ │ │ │ │ ├── EXTBlendMinmax.java │ │ │ │ │ ├── EXTBlendSubtract.java │ │ │ │ │ ├── EXTCompiledVertexArray.java │ │ │ │ │ ├── EXTDepthBoundsTest.java │ │ │ │ │ ├── EXTDirectStateAccess.java │ │ │ │ │ ├── EXTDrawBuffers2.java │ │ │ │ │ ├── EXTDrawInstanced.java │ │ │ │ │ ├── EXTFramebufferBlit.java │ │ │ │ │ ├── EXTFramebufferMultisample.java │ │ │ │ │ ├── EXTFramebufferMultisampleBlitScaled.java │ │ │ │ │ ├── EXTFramebufferObject.java │ │ │ │ │ ├── EXTFramebufferSRGB.java │ │ │ │ │ ├── EXTGeometryShader4.java │ │ │ │ │ ├── EXTPackedDepthStencil.java │ │ │ │ │ ├── EXTPackedFloat.java │ │ │ │ │ ├── EXTPixelBufferObject.java │ │ │ │ │ ├── EXTPointParameters.java │ │ │ │ │ ├── EXTProvokingVertex.java │ │ │ │ │ ├── EXTSecondaryColor.java │ │ │ │ │ ├── EXTSeparateShaderObjects.java │ │ │ │ │ ├── EXTShaderImageLoadStore.java │ │ │ │ │ ├── EXTSharedTexturePalette.java │ │ │ │ │ ├── EXTStencilClearTag.java │ │ │ │ │ ├── EXTStencilTwoSide.java │ │ │ │ │ ├── EXTStencilWrap.java │ │ │ │ │ ├── EXTTextureArray.java │ │ │ │ │ ├── EXTTextureBufferObject.java │ │ │ │ │ ├── EXTTextureCompressionLATC.java │ │ │ │ │ ├── EXTTextureCompressionRGTC.java │ │ │ │ │ ├── EXTTextureCompressionS3TC.java │ │ │ │ │ ├── EXTTextureFilterAnisotropic.java │ │ │ │ │ ├── EXTTextureInteger.java │ │ │ │ │ ├── EXTTextureMirrorClamp.java │ │ │ │ │ ├── EXTTextureSRGB.java │ │ │ │ │ ├── EXTTextureSRGBDecode.java │ │ │ │ │ ├── EXTTextureSharedExponent.java │ │ │ │ │ ├── EXTTextureSnorm.java │ │ │ │ │ ├── EXTTextureSwizzle.java │ │ │ │ │ ├── EXTTimerQuery.java │ │ │ │ │ ├── EXTTransformFeedback.java │ │ │ │ │ ├── EXTVertexAttrib64bit.java │ │ │ │ │ ├── GL11.java │ │ │ │ │ ├── GL12.java │ │ │ │ │ ├── GL13.java │ │ │ │ │ ├── GL14.java │ │ │ │ │ ├── GL15.java │ │ │ │ │ ├── GL15x.java │ │ │ │ │ ├── GL20.java │ │ │ │ │ ├── GL20x.java │ │ │ │ │ ├── GL21.java │ │ │ │ │ ├── GL30.java │ │ │ │ │ ├── GL31.java │ │ │ │ │ ├── GL32.java │ │ │ │ │ ├── GL33.java │ │ │ │ │ ├── GL40.java │ │ │ │ │ ├── GL41.java │ │ │ │ │ ├── GL42.java │ │ │ │ │ ├── GL43.java │ │ │ │ │ ├── GL44.java │ │ │ │ │ ├── GL45.java │ │ │ │ │ ├── GLContext.java │ │ │ │ │ ├── GLSync.java │ │ │ │ │ ├── GREMEDYFrameTerminator.java │ │ │ │ │ ├── GREMEDYStringMarker.java │ │ │ │ │ ├── GlobalLock.java │ │ │ │ │ ├── INTELMapTexture.java │ │ │ │ │ ├── InputImplementation.java │ │ │ │ │ ├── KHRContextFlushControl.java │ │ │ │ │ ├── KHRDebug.java │ │ │ │ │ ├── KHRRobustness.java │ │ │ │ │ ├── NVBindlessMultiDrawIndirect.java │ │ │ │ │ ├── NVBindlessTexture.java │ │ │ │ │ ├── NVBlendEquationAdvanced.java │ │ │ │ │ ├── NVConditionalRender.java │ │ │ │ │ ├── NVCopyDepthToColor.java │ │ │ │ │ ├── NVCopyImage.java │ │ │ │ │ ├── NVDeepTexture3D.java │ │ │ │ │ ├── NVDepthBufferFloat.java │ │ │ │ │ ├── NVDepthClamp.java │ │ │ │ │ ├── NVDrawTexture.java │ │ │ │ │ ├── NVExplicitMultisample.java │ │ │ │ │ ├── NVFence.java │ │ │ │ │ ├── NVFloatBuffer.java │ │ │ │ │ ├── NVFogDistance.java │ │ │ │ │ ├── NVFramebufferMultisampleCoverage.java │ │ │ │ │ ├── NVHalfFloat.java │ │ │ │ │ ├── NVLightMaxExponent.java │ │ │ │ │ ├── NVMultisampleCoverage.java │ │ │ │ │ ├── NVMultisampleFilterHint.java │ │ │ │ │ ├── NVPackedDepthStencil.java │ │ │ │ │ ├── NVPathRendering.java │ │ │ │ │ ├── NVPixelDataRange.java │ │ │ │ │ ├── NVPointSprite.java │ │ │ │ │ ├── NVPrimitiveRestart.java │ │ │ │ │ ├── NVShaderBufferLoad.java │ │ │ │ │ ├── NVShaderBufferStore.java │ │ │ │ │ ├── NVTexgenReflection.java │ │ │ │ │ ├── NVTextureBarrier.java │ │ │ │ │ ├── NVTextureMultisample.java │ │ │ │ │ ├── NVTextureShader.java │ │ │ │ │ ├── NVTextureShader2.java │ │ │ │ │ ├── NVTextureShader3.java │ │ │ │ │ ├── NVTransformFeedback.java │ │ │ │ │ ├── NVTransformFeedback2.java │ │ │ │ │ ├── NVVertexArrayRange.java │ │ │ │ │ ├── NVVertexArrayRange2.java │ │ │ │ │ ├── NVVertexAttribInteger64bit.java │ │ │ │ │ ├── NVVertexBufferUnifiedMemory.java │ │ │ │ │ ├── OpenGLException.java │ │ │ │ │ ├── Pbuffer.java │ │ │ │ │ ├── PeerInfo.java │ │ │ │ │ ├── PixelFormat.java │ │ │ │ │ ├── PixelFormatLWJGL.java │ │ │ │ │ ├── RenderTexture.java │ │ │ │ │ ├── SharedDrawable.java │ │ │ │ │ ├── Sync.java │ │ │ │ │ └── Util.java │ │ │ │ ├── test │ │ │ │ │ ├── opengl │ │ │ │ │ │ └── Gears.java │ │ │ │ │ └── spaceinvaders │ │ │ │ │ │ ├── AlienEntity.java │ │ │ │ │ │ ├── Entity.java │ │ │ │ │ │ ├── Game.java │ │ │ │ │ │ ├── ShipEntity.java │ │ │ │ │ │ ├── ShotEntity.java │ │ │ │ │ │ ├── SoundManager.java │ │ │ │ │ │ ├── Sprite.java │ │ │ │ │ │ ├── Texture.java │ │ │ │ │ │ └── TextureLoader.java │ │ │ │ └── util │ │ │ │ │ ├── Color.java │ │ │ │ │ ├── Dimension.java │ │ │ │ │ ├── Display.java │ │ │ │ │ ├── Point.java │ │ │ │ │ ├── ReadableColor.java │ │ │ │ │ ├── ReadableDimension.java │ │ │ │ │ ├── ReadablePoint.java │ │ │ │ │ ├── ReadableRectangle.java │ │ │ │ │ ├── Rectangle.java │ │ │ │ │ ├── Renderable.java │ │ │ │ │ ├── Timer.java │ │ │ │ │ ├── WaveData.java │ │ │ │ │ ├── WritableColor.java │ │ │ │ │ ├── WritableDimension.java │ │ │ │ │ ├── WritablePoint.java │ │ │ │ │ ├── WritableRectangle.java │ │ │ │ │ ├── XPMFile.java │ │ │ │ │ ├── glu │ │ │ │ │ ├── Cylinder.java │ │ │ │ │ ├── Disk.java │ │ │ │ │ ├── GLU.java │ │ │ │ │ ├── GLUtessellator.java │ │ │ │ │ ├── GLUtessellatorCallback.java │ │ │ │ │ ├── GLUtessellatorCallbackAdapter.java │ │ │ │ │ ├── MipMap.java │ │ │ │ │ ├── PartialDisk.java │ │ │ │ │ ├── PixelStoreState.java │ │ │ │ │ ├── Project.java │ │ │ │ │ ├── Quadric.java │ │ │ │ │ ├── Registry.java │ │ │ │ │ ├── Sphere.java │ │ │ │ │ ├── Util.java │ │ │ │ │ └── tessellation │ │ │ │ │ │ ├── ActiveRegion.java │ │ │ │ │ │ ├── CachedVertex.java │ │ │ │ │ │ ├── Dict.java │ │ │ │ │ │ ├── DictNode.java │ │ │ │ │ │ ├── GLUface.java │ │ │ │ │ │ ├── GLUhalfEdge.java │ │ │ │ │ │ ├── GLUmesh.java │ │ │ │ │ │ ├── GLUtessellatorImpl.java │ │ │ │ │ │ ├── GLUvertex.java │ │ │ │ │ │ ├── Geom.java │ │ │ │ │ │ ├── Mesh.java │ │ │ │ │ │ ├── Normal.java │ │ │ │ │ │ ├── PriorityQ.java │ │ │ │ │ │ ├── PriorityQHeap.java │ │ │ │ │ │ ├── PriorityQSort.java │ │ │ │ │ │ ├── Render.java │ │ │ │ │ │ ├── Sweep.java │ │ │ │ │ │ ├── TessMono.java │ │ │ │ │ │ └── TessState.java │ │ │ │ │ └── vector │ │ │ │ │ ├── Matrix.java │ │ │ │ │ ├── Matrix2f.java │ │ │ │ │ ├── Matrix3f.java │ │ │ │ │ ├── Matrix4f.java │ │ │ │ │ ├── Quaternion.java │ │ │ │ │ ├── ReadableVector.java │ │ │ │ │ ├── ReadableVector2f.java │ │ │ │ │ ├── ReadableVector3f.java │ │ │ │ │ ├── ReadableVector4f.java │ │ │ │ │ ├── Vector.java │ │ │ │ │ ├── Vector2f.java │ │ │ │ │ ├── Vector3f.java │ │ │ │ │ ├── Vector4f.java │ │ │ │ │ ├── WritableVector2f.java │ │ │ │ │ ├── WritableVector3f.java │ │ │ │ │ └── WritableVector4f.java │ │ │ └── spigotmc │ │ │ │ ├── ActivationRange.java │ │ │ │ ├── AsyncCatcher.java │ │ │ │ ├── CaseInsensitiveHashingStrategy.java │ │ │ │ ├── CaseInsensitiveMap.java │ │ │ │ ├── CustomTimingsHandler.java │ │ │ │ ├── LimitStream.java │ │ │ │ ├── RestartCommand.java │ │ │ │ ├── SlackActivityAccountant.java │ │ │ │ ├── SneakyThrow.java │ │ │ │ ├── SpigotCommand.java │ │ │ │ ├── SpigotConfig.java │ │ │ │ ├── SpigotWorldConfig.java │ │ │ │ ├── SupplierUtils.java │ │ │ │ ├── TickLimiter.java │ │ │ │ ├── TicksPerSecondCommand.java │ │ │ │ ├── TrackingRange.java │ │ │ │ ├── ValidateUtils.java │ │ │ │ ├── WatchdogThread.java │ │ │ │ └── event │ │ │ │ ├── entity │ │ │ │ ├── EntityDismountEvent.java │ │ │ │ └── EntityMountEvent.java │ │ │ │ └── player │ │ │ │ └── PlayerSpawnLocationEvent.java │ │ ├── paulscode │ │ │ └── sound │ │ │ │ └── codecs │ │ │ │ └── CodecIBXM.java │ │ └── zone │ │ │ └── rong │ │ │ └── mixinbooter │ │ │ ├── Context.java │ │ │ ├── IEarlyMixinLoader.java │ │ │ ├── ILateMixinLoader.java │ │ │ └── IMixinConfigHijacker.java │ └── resources │ │ ├── Log4j-config.xsd │ │ ├── Log4j-events.dtd │ │ ├── Log4j-events.xsd │ │ ├── Log4j-levels.xsd │ │ ├── META-INF │ │ └── maven │ │ │ └── org.bukkit │ │ │ ├── bukkit │ │ │ ├── pom.properties │ │ │ └── pom.xml │ │ │ └── craftbukkit │ │ │ ├── pom.properties │ │ │ └── pom.xml │ │ ├── assets │ │ ├── fml │ │ │ └── textures │ │ │ │ └── gui │ │ │ │ ├── forge.png │ │ │ │ └── icons.png │ │ └── forge │ │ │ ├── blockstates │ │ │ └── dynbucket.json │ │ │ ├── lang │ │ │ ├── README.txt │ │ │ ├── en_US.lang │ │ │ ├── ko_KR.lang │ │ │ ├── zh_CN.lang │ │ │ └── zh_TW.lang │ │ │ ├── models │ │ │ └── item │ │ │ │ ├── bucket.json │ │ │ │ └── bucket_milk.json │ │ │ └── textures │ │ │ ├── gui │ │ │ └── version_check_icons.png │ │ │ └── items │ │ │ ├── bucket_fluid.png │ │ │ └── vanilla_bucket_cover_mask.png │ │ ├── configurations │ │ ├── bukkit.yml │ │ ├── commands.yml │ │ └── help.yml │ │ ├── forge.exc │ │ ├── forge.srg │ │ ├── forge_at.cfg │ │ ├── forge_logo.png │ │ ├── libs │ │ └── catserver-pack200-jdk11.jar │ │ ├── log4j2.xml │ │ ├── log4j2_server.xml │ │ ├── logging.properties │ │ ├── mappings │ │ └── v1_12_R1 │ │ │ ├── cb2srg.srg │ │ │ └── srg2mcp.srg │ │ ├── mcplogo.png │ │ ├── mcpmod.info │ │ └── url.png └── test │ ├── java │ ├── com │ │ └── cleanroommc │ │ │ └── test │ │ │ └── EnumHackeryTest.java │ └── net │ │ └── minecraftforge │ │ ├── debug │ │ ├── PotionEventTest.java │ │ ├── block │ │ │ ├── BasePlaceEventTest.java │ │ │ ├── FarmlandTrampleEventTest.java │ │ │ ├── FarmlandWaterTest.java │ │ │ ├── MaterialFogColorTest.java │ │ │ ├── NeighborNotifyEventTest.java │ │ │ ├── ParticleEffectsTest.java │ │ │ ├── PathNodeTypeTest.java │ │ │ ├── PlaceEventTest.java │ │ │ ├── PortalSpawnEventTest.java │ │ │ ├── SlipperinessTest.java │ │ │ ├── StickyBlockTest.java │ │ │ └── package-info.java │ │ ├── chat │ │ │ ├── ClientChatEventTest.java │ │ │ ├── ClientCommandTest.java │ │ │ ├── CommandTreeBaseTest.java │ │ │ ├── EntitySelectorFactoryTest.java │ │ │ └── package-info.java │ │ ├── client │ │ │ ├── CustomTextureAtlasSpriteTest.java │ │ │ ├── FOVModifierEventTest.java │ │ │ ├── SearchableCreativeTabTest.java │ │ │ ├── gui │ │ │ │ ├── ContainerDrawForegroundEventTest.java │ │ │ │ └── TooltipColorEventTest.java │ │ │ ├── model │ │ │ │ ├── AnimatedModelTest.java │ │ │ │ ├── BlockstateRetextureTest.java │ │ │ │ ├── ForgeBlockStatesLoaderTest.java │ │ │ │ ├── ItemLayerModelTest.java │ │ │ │ ├── ItemModelConflictTest.java │ │ │ │ ├── ItemModelGenerationTest.java │ │ │ │ ├── ModelBakeEventTest.java │ │ │ │ ├── ModelFluidTest.java │ │ │ │ ├── ModelLoaderRegistryTest.java │ │ │ │ ├── MultiLayerModelTest.java │ │ │ │ └── package-info.java │ │ │ ├── package-info.java │ │ │ └── rendering │ │ │ │ ├── FastTESRTransparentTest.java │ │ │ │ ├── ItemTESRTest.java │ │ │ │ ├── VertexBufferNormalTest.java │ │ │ │ └── package-info.java │ │ ├── entity │ │ │ ├── BlockEntityUpdateTest.java │ │ │ ├── EntityTravelToDimensionEventTest.java │ │ │ ├── GetCollisionBoxesEventTest.java │ │ │ ├── ProjectileImpactEventTest.java │ │ │ ├── living │ │ │ │ ├── AnimalTameEventTest.java │ │ │ │ ├── AttackEventTest.java │ │ │ │ ├── BabyEntitySpawnEventTest.java │ │ │ │ ├── CheckSpawnEventTest.java │ │ │ │ ├── CustomSpawnPlacementTest.java │ │ │ │ ├── DamageEventTest.java │ │ │ │ ├── EquipmentChangeEventTest.java │ │ │ │ ├── KnockBackEventTest.java │ │ │ │ ├── MobGriefingEventTest.java │ │ │ │ ├── SpecialSpawnTest.java │ │ │ │ ├── VillagerProfessionTest.java │ │ │ │ └── package-info.java │ │ │ ├── package-info.java │ │ │ └── player │ │ │ │ ├── CriticalHitEventTest.java │ │ │ │ ├── DamageReworkTest.java │ │ │ │ ├── ItemPickupEventTest.java │ │ │ │ ├── PlayerInteractEventTest.java │ │ │ │ ├── PlayerSetSpawnTest.java │ │ │ │ ├── ReachDistanceAttributeTest.java │ │ │ │ ├── SwimSpeedAttributeTest.java │ │ │ │ └── package-info.java │ │ ├── fluid │ │ │ ├── ColoredFluidTest.java │ │ │ ├── CreateFluidSourceEventTest.java │ │ │ ├── DynBucketTest.java │ │ │ ├── FluidPlaceBlockEventTest.java │ │ │ ├── FluidPlacementTest.java │ │ │ ├── ItemFluidHandlerTest.java │ │ │ └── package-info.java │ │ ├── gameplay │ │ │ ├── AnytimeSleepingTest.java │ │ │ ├── BrewingRecipeRegistryTest.java │ │ │ ├── ConstantLoadingTest.java │ │ │ ├── CraftingSystemTest.java │ │ │ ├── DifficultyChangeEventTest.java │ │ │ ├── DynamicBannerTest.java │ │ │ ├── EnchantmentLevelSetEventTest.java │ │ │ ├── FurnaceFuelBurnTimeEventTest.java │ │ │ ├── GiveItemToPlayerTest.java │ │ │ ├── InputUpdateEventTest.java │ │ │ ├── NoBedSleepingTest.java │ │ │ ├── PotionRegistryTest.java │ │ │ ├── RecipeMatchingTest.java │ │ │ ├── advancement │ │ │ │ ├── AdvancementCriterionTest.java │ │ │ │ ├── AdvancementEventTest.java │ │ │ │ ├── AdvancementsPaginationTest.java │ │ │ │ ├── OredictTriggerTest.java │ │ │ │ └── package-info.java │ │ │ ├── loot │ │ │ │ ├── LootContextTweaksTest.java │ │ │ │ ├── LootTableLoadEventTest.java │ │ │ │ ├── LootTableTest.java │ │ │ │ └── package-info.java │ │ │ └── package-info.java │ │ ├── item │ │ │ ├── BonemealEventTest.java │ │ │ ├── CanApplyAtEnchantingTableTest.java │ │ │ ├── CanDestroyBlocksInCreativeTest.java │ │ │ ├── ContinuousUseItemTest.java │ │ │ ├── CustomRarityTest.java │ │ │ ├── HorseArmorTest.java │ │ │ ├── IsBookEnchantableTest.java │ │ │ ├── ItemFishedEventTest.java │ │ │ ├── MapDataTest.java │ │ │ ├── MendingRepairTest.java │ │ │ ├── NBTShareTagTest.java │ │ │ ├── OnItemUseFirstTest.java │ │ │ ├── PotionCurabilityTest.java │ │ │ ├── PotionShouldRenderTest.java │ │ │ ├── ShieldTest.java │ │ │ └── package-info.java │ │ ├── misc │ │ │ ├── EnumPlantTypeTest.java │ │ │ └── package-info.java │ │ ├── mod │ │ │ ├── CapabilityTest.java │ │ │ ├── ClientLoadingExceptionTest.java │ │ │ ├── ConfigAnnotationTest.java │ │ │ ├── ObjectHolderAnnotationTest.java │ │ │ ├── PermissionTest.java │ │ │ ├── RegistryOverrideTest.java │ │ │ └── package-info.java │ │ ├── network │ │ │ ├── BigNetworkMessageTest.java │ │ │ ├── TrackingTargetTest.java │ │ │ └── package-info.java │ │ ├── package-info.java │ │ ├── util │ │ │ ├── ModNameTooltip.java │ │ │ ├── RotatingWrench.java │ │ │ ├── TextureDumper.java │ │ │ └── package-info.java │ │ ├── village │ │ │ ├── MerchantTradeOffersEventTest.java │ │ │ └── VillageSiegeEventTest.java │ │ └── world │ │ │ ├── ChunkCapabilityTest.java │ │ │ ├── ChunkWatchEventTest.java │ │ │ ├── DecorateEventDebug.java │ │ │ ├── SpawnDimensionTest.java │ │ │ ├── TileEntityLoadingTest.java │ │ │ ├── WorldCapabilityTest.java │ │ │ ├── WorldProviderCanSleepAtTest.java │ │ │ └── package-info.java │ │ ├── fml │ │ ├── common │ │ │ └── registry │ │ │ │ ├── BlockStateMappingsTest.java │ │ │ │ ├── DummyBlockReplacementTest.java │ │ │ │ ├── ForgeTestRunner.java │ │ │ │ ├── FreezingTests.java │ │ │ │ ├── ItemBlockSubstitutionRemoveRestoreTest.java │ │ │ │ ├── RegistryTestSuite.java │ │ │ │ ├── SubstitutionInjectionTest.java │ │ │ │ ├── SubstitutionRemoveRestoreTest.java │ │ │ │ └── VanillaRegistryTests.java │ │ ├── debug │ │ │ └── FaultyCoreMod.java │ │ └── test │ │ │ ├── DependencyParserTest.java │ │ │ ├── ForgeNetworkTestMod.java │ │ │ ├── SpecialSpawnEventTest.java │ │ │ ├── TestNetStuff.java │ │ │ ├── networkhandshake │ │ │ └── TestNetworkHandshake.java │ │ │ └── simplenet │ │ │ ├── SimpleNetHandler1.java │ │ │ ├── SimpleNetHandler2.java │ │ │ ├── SimpleNetTestMessage1.java │ │ │ ├── SimpleNetTestMessage2.java │ │ │ └── SimpleNetTester.java │ │ └── test │ │ ├── BiomeSpawnableListTest.java │ │ ├── BufferBuilderExpansionTest.java │ │ ├── ConfigurationTest.java │ │ ├── EnumHelperTest.java │ │ ├── SelectorHandlerTest.java │ │ ├── SliderConfigElementTest.java │ │ ├── TestAnnotationParser.java │ │ ├── TextTableTest.java │ │ └── package-info.java │ └── resources │ ├── assets │ ├── advancementcriteriontest │ │ └── advancements │ │ │ └── root.json │ ├── advancements_pagination │ │ └── advancements │ │ │ ├── a1 │ │ │ └── root.json │ │ │ ├── a10 │ │ │ └── root.json │ │ │ ├── a11 │ │ │ └── root.json │ │ │ ├── a12 │ │ │ └── root.json │ │ │ ├── a13 │ │ │ └── root.json │ │ │ ├── a14 │ │ │ └── root.json │ │ │ ├── a15 │ │ │ └── root.json │ │ │ ├── a16 │ │ │ └── root.json │ │ │ ├── a17 │ │ │ └── root.json │ │ │ ├── a18 │ │ │ └── root.json │ │ │ ├── a19 │ │ │ └── root.json │ │ │ ├── a2 │ │ │ └── root.json │ │ │ ├── a20 │ │ │ └── root.json │ │ │ ├── a21 │ │ │ └── root.json │ │ │ ├── a22 │ │ │ └── root.json │ │ │ ├── a23 │ │ │ └── root.json │ │ │ ├── a24 │ │ │ └── root.json │ │ │ ├── a25 │ │ │ └── root.json │ │ │ ├── a26 │ │ │ └── root.json │ │ │ ├── a27 │ │ │ └── root.json │ │ │ ├── a28 │ │ │ └── root.json │ │ │ ├── a29 │ │ │ └── root.json │ │ │ ├── a3 │ │ │ └── root.json │ │ │ ├── a30 │ │ │ └── root.json │ │ │ ├── a31 │ │ │ └── root.json │ │ │ ├── a32 │ │ │ └── root.json │ │ │ ├── a33 │ │ │ └── root.json │ │ │ ├── a34 │ │ │ └── root.json │ │ │ ├── a35 │ │ │ └── root.json │ │ │ ├── a36 │ │ │ └── root.json │ │ │ ├── a37 │ │ │ └── root.json │ │ │ ├── a38 │ │ │ └── root.json │ │ │ ├── a39 │ │ │ └── root.json │ │ │ ├── a4 │ │ │ └── root.json │ │ │ ├── a40 │ │ │ └── root.json │ │ │ ├── a41 │ │ │ └── root.json │ │ │ ├── a42 │ │ │ └── root.json │ │ │ ├── a43 │ │ │ └── root.json │ │ │ ├── a44 │ │ │ └── root.json │ │ │ ├── a45 │ │ │ └── root.json │ │ │ ├── a46 │ │ │ └── root.json │ │ │ ├── a47 │ │ │ └── root.json │ │ │ ├── a48 │ │ │ └── root.json │ │ │ ├── a49 │ │ │ └── root.json │ │ │ ├── a5 │ │ │ └── root.json │ │ │ ├── a50 │ │ │ └── root.json │ │ │ ├── a51 │ │ │ └── root.json │ │ │ ├── a52 │ │ │ └── root.json │ │ │ ├── a53 │ │ │ └── root.json │ │ │ ├── a54 │ │ │ └── root.json │ │ │ ├── a55 │ │ │ └── root.json │ │ │ ├── a56 │ │ │ └── root.json │ │ │ ├── a57 │ │ │ └── root.json │ │ │ ├── a58 │ │ │ └── root.json │ │ │ ├── a59 │ │ │ └── root.json │ │ │ ├── a6 │ │ │ └── root.json │ │ │ ├── a60 │ │ │ └── root.json │ │ │ ├── a61 │ │ │ └── root.json │ │ │ ├── a62 │ │ │ └── root.json │ │ │ ├── a63 │ │ │ └── root.json │ │ │ ├── a64 │ │ │ └── root.json │ │ │ ├── a7 │ │ │ └── root.json │ │ │ ├── a8 │ │ │ └── root.json │ │ │ └── a9 │ │ │ └── root.json │ ├── collisionboxexeventtest │ │ └── blockstates │ │ │ └── box_block.json │ ├── config_test │ │ └── lang │ │ │ └── en_US.lang │ ├── constantloadingtest │ │ └── test │ │ │ └── _constants.json │ ├── crafting_system_test │ │ └── recipes │ │ │ ├── _factories.json │ │ │ ├── conditions_property_not_array.json │ │ │ └── oak_planks_from_logs.json │ ├── custom_sprite_test │ │ ├── blockstates │ │ │ └── custom_sprite_block.json │ │ └── models │ │ │ └── block │ │ │ └── custom_sprite_block.json │ ├── dynbuckettest │ │ └── blockstates │ │ │ └── simpletank.json │ ├── farmlandwatertest │ │ └── blockstates │ │ │ └── test_block.json │ ├── fluidadditionalfields │ │ ├── blockstates │ │ │ └── slime.json │ │ └── textures │ │ │ ├── slime_flow.png │ │ │ ├── slime_flow.png.mcmeta │ │ │ ├── slime_overlay.png │ │ │ ├── slime_still.png │ │ │ └── slime_still.png.mcmeta │ ├── fogcolorinsidematerialtest │ │ ├── blockstates │ │ │ └── slime.json │ │ ├── pack.mcmeta │ │ ├── test_fluid.json │ │ └── textures │ │ │ ├── slime_flow.png │ │ │ ├── slime_flow.png.mcmeta │ │ │ ├── slime_overlay.png │ │ │ ├── slime_still.png │ │ │ └── slime_still.png.mcmeta │ ├── forge │ │ ├── blockstates │ │ │ └── dynbottle.json │ │ ├── recipes │ │ │ ├── _constants.json │ │ │ ├── ore_shaped.json │ │ │ ├── shapeless.json │ │ │ ├── shapeless_constant.json │ │ │ ├── shapeless_damageable.json │ │ │ ├── shapeless_ore.json │ │ │ └── shapeless_wildcard.json │ │ └── textures │ │ │ └── blocks │ │ │ ├── milk_flow.png │ │ │ ├── milk_flow.png.mcmeta │ │ │ ├── milk_still.png │ │ │ └── milk_still.png.mcmeta │ ├── forgeblockstatesloader │ │ ├── blockstates │ │ │ ├── cobblestone_wall.json │ │ │ └── mossy_cobblestone_wall.json │ │ └── models │ │ │ └── block │ │ │ └── wall_connect.json │ ├── forgedebugcustomslimeblock │ │ ├── blockstates │ │ │ └── custom_slime_block.json │ │ ├── lang │ │ │ └── en_US.lang │ │ ├── models │ │ │ ├── block │ │ │ │ ├── blue_slime_block.json │ │ │ │ └── obsidian_slime_block.json │ │ │ └── item │ │ │ │ ├── blue_slime_block.json │ │ │ │ └── obsidian_slime_block.json │ │ └── textures │ │ │ └── blocks │ │ │ ├── blue_slime_block.png │ │ │ └── obsidian_slime_block.png │ ├── forgedebugfluidplacement │ │ └── blockstates │ │ │ └── finite_fluid_block.json │ ├── forgedebugitemlayermodel │ │ └── blockstates │ │ │ └── test_item.json │ ├── forgedebugitemtile │ │ └── blockstates │ │ │ └── custom_model_block.json │ ├── forgedebugmodelanimation │ │ ├── armatures │ │ │ └── block │ │ │ │ ├── engine_ring.json │ │ │ │ └── rotatest.json │ │ ├── asms │ │ │ └── block │ │ │ │ ├── chest.json │ │ │ │ ├── engine.json │ │ │ │ ├── engine2.json │ │ │ │ └── rotatest.json │ │ ├── blockstates │ │ │ ├── rotatest.json │ │ │ └── test_animation_block.json │ │ └── models │ │ │ └── block │ │ │ ├── engine.json │ │ │ ├── engine_ring.json │ │ │ └── rotatest.json │ ├── forgedebugmodelfluid │ │ └── blockstates │ │ │ └── test_fluid_block.json │ ├── forgedebugmodelloaderregistry │ │ ├── blockstates │ │ │ ├── custom_model_block.json │ │ │ ├── obj_custom_data_block.json │ │ │ ├── obj_direction_block.json │ │ │ ├── obj_direction_eye.json │ │ │ ├── obj_dynamic_eye.json │ │ │ ├── obj_tesseract_block.json │ │ │ ├── obj_vertex_coloring1.json │ │ │ └── obj_vertex_coloring2.json │ │ ├── models │ │ │ └── block │ │ │ │ ├── chest.b3d │ │ │ │ ├── direction_test.mtl │ │ │ │ ├── direction_test.obj │ │ │ │ ├── eye.mtl │ │ │ │ ├── eye.obj │ │ │ │ ├── fancy_fence.mtl │ │ │ │ ├── fancy_fence.obj │ │ │ │ ├── tesseract.mtl │ │ │ │ ├── tesseract.obj │ │ │ │ ├── untitled2.b3d │ │ │ │ ├── vertex_coloring.mtl │ │ │ │ └── vertex_coloring.obj │ │ └── textures │ │ │ ├── direction_test_arrow.png │ │ │ ├── direction_test_arrow_top.png │ │ │ ├── direction_test_back.png │ │ │ ├── direction_test_front.png │ │ │ ├── eye.png │ │ │ ├── eye128.png │ │ │ └── texture.png │ ├── forgedebugmultilayermodel │ │ └── blockstates │ │ │ └── test_layer_block.json │ ├── forgedebugnobedsleeping │ │ └── models │ │ │ └── item │ │ │ └── sleeping_pill.json │ ├── furnacefuelburntimeeventtest │ │ └── models │ │ │ └── item │ │ │ ├── flammable_gold_shovel.json │ │ │ └── unburnable_wood_shovel.json │ ├── horse_armor_test │ │ ├── lang │ │ │ └── en_US.lang │ │ ├── models │ │ │ └── item │ │ │ │ └── test_armor.json │ │ └── textures │ │ │ ├── entity │ │ │ └── horse │ │ │ │ └── armor │ │ │ │ └── test.png │ │ │ └── items │ │ │ └── test_armor.png │ ├── item_can_destroy_blocks_in_creative_test │ │ └── models │ │ │ └── item │ │ │ └── item_test.json │ ├── item_model_conflict_test │ │ ├── blockstates │ │ │ └── test.json │ │ └── models │ │ │ ├── block │ │ │ └── test.json │ │ │ └── item │ │ │ └── test.json │ ├── item_model_generation_test │ │ ├── models │ │ │ └── item │ │ │ │ ├── animation_test.json │ │ │ │ ├── intersection_test.json │ │ │ │ ├── opacity_test.json │ │ │ │ ├── overlap_test.json │ │ │ │ └── pattern_test.json │ │ └── textures │ │ │ └── items │ │ │ ├── animation_test.png │ │ │ ├── animation_test.png.mcmeta │ │ │ ├── intersection_test.png │ │ │ ├── opacity_test.png │ │ │ ├── overlap_test.png │ │ │ └── pattern_test.png │ ├── loot_context_tweaks_test │ │ └── advancements │ │ │ └── test │ │ │ └── root.json │ ├── loottable_load_event_test │ │ └── loot_tables │ │ │ └── chests │ │ │ └── custom_spawn_bonus_chest.json │ ├── nbtsharetagitemtest │ │ └── models │ │ │ └── item │ │ │ └── nbt_share_tag_item.json │ ├── onitemusefirsttest │ │ └── models │ │ │ └── item │ │ │ └── test_item.json │ ├── oredict_predicate │ │ └── advancements │ │ │ └── recipes │ │ │ └── wood_unlock_tnt.json │ ├── professiontest │ │ └── textures │ │ │ └── entity │ │ │ ├── test_villager.png │ │ │ └── zombie_test_villager.png │ ├── recipetest │ │ └── recipes │ │ │ ├── tool_complex.json │ │ │ └── tool_simple.json │ ├── shield_test │ │ ├── lang │ │ │ └── en_US.lang │ │ └── models │ │ │ └── item │ │ │ ├── diamond_shield.json │ │ │ └── diamond_shield_blocking.json │ └── wrenchrotatedebug │ │ ├── models │ │ └── item │ │ │ └── test_wrench.json │ │ └── textures │ │ └── items │ │ └── test_wrench.png │ └── mcmod.info └── templates └── CleanroomVersion.java /.github/ISSUE_TEMPLATE/config.yml: -------------------------------------------------------------------------------- 1 | blank_issues_enabled: false 2 | contact_links: 3 | - name: Feature Request 4 | url: https://github.com/CleanroomMC/Cleanroom/discussions/new?category=draft 5 | about: Please draft a proposal feature here. -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /.idea/ 2 | /.run/ 3 | /.gradle/ 4 | /projects/ 5 | /buildSrc/.gradle/ 6 | /buildSrc/build/ 7 | /logs/ 8 | version.txt 9 | src/main/java/com/cleanroommc/common/CleanroomVersion.java -------------------------------------------------------------------------------- /CFP_GUIDELINES.md: -------------------------------------------------------------------------------- 1 | # Cleanroom Feature Proposal Guidelines 2 | 3 | 1. Be as descriptive as possible! 4 | 2. Keep the content sensible. 5 | 3. Keep the profanities to a minimal level. 6 | 4. Don't spam proposals that are still in draft stage, the triage will take a look at it in due time! 7 | 5. Or, just don't spam at all! 8 | 6. Feel free to ping a triage member whenever the proposal has moved to a new stage, but only once! -------------------------------------------------------------------------------- /FIXED_UPSTREAM_ISSUES.md: -------------------------------------------------------------------------------- 1 | ## Fixed upstream issues 2 | 3 | ### Modpacks 4 | 5 | - Cannot launch MC Eternal[(CatServer#904)](https://github.com/Luohuayu/CatServer/issues/904) 6 | 7 | ### Forge-Bukkit 8 | 9 | - Some mod explosions cannot be handled by Bukkit plugins(e.g. Tinkers' Construct EFLN) 10 | 11 | ## More 12 | 13 | - It is recommended to install [HybridFix](https://github.com/HaHaWTH/HybridFix), which aims to improve Forge+Bukkit compatibility and fix behaviour inconsistencies. -------------------------------------------------------------------------------- /buildSrc/build.gradle: -------------------------------------------------------------------------------- 1 | repositories { 2 | mavenCentral() 3 | } 4 | 5 | dependencies { 6 | implementation 'org.ow2.asm:asm:9.4' 7 | implementation 'org.ow2.asm:asm-tree:9.4' 8 | } 9 | -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | distributionUrl=https\://services.gradle.org/distributions/gradle-8.8-bin.zip 4 | zipStoreBase=GRADLE_USER_HOME 5 | zipStorePath=wrapper/dists 6 | -------------------------------------------------------------------------------- /icon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/icon.ico -------------------------------------------------------------------------------- /images/catroom.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/images/catroom.png -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/advancements/Advancement.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/advancements/Advancement.java 2 | +++ after/net/minecraft/advancements/Advancement.java 3 | @@ -32,6 +32,7 @@ 4 | private final String[][] field_192081_f; 5 | private final Set field_192082_g = Sets.newLinkedHashSet(); 6 | private final ITextComponent field_193125_h; 7 | + public final org.bukkit.advancement.Advancement bukkit = new org.bukkit.craftbukkit.v1_12_R1.advancement.CraftAdvancement(this); 8 | 9 | public Advancement( 10 | ResourceLocation p_i47472_1_, 11 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/block/BlockDispenser.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/block/BlockDispenser.java 2 | +++ after/net/minecraft/block/BlockDispenser.java 3 | @@ -132,7 +132,7 @@ 4 | } 5 | } 6 | 7 | - protected void func_176439_d(World p_176439_1_, BlockPos p_176439_2_) 8 | + public void func_176439_d(World p_176439_1_, BlockPos p_176439_2_) 9 | { 10 | BlockSourceImpl blocksourceimpl = new BlockSourceImpl(p_176439_1_, p_176439_2_); 11 | TileEntityDispenser tileentitydispenser = blocksourceimpl.func_150835_j(); 12 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/block/BlockLilyPad.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/block/BlockLilyPad.java 2 | +++ after/net/minecraft/block/BlockLilyPad.java 3 | @@ -44,7 +44,7 @@ 4 | { 5 | super.func_180634_a(p_180634_1_, p_180634_2_, p_180634_3_, p_180634_4_); 6 | 7 | - if (p_180634_4_ instanceof EntityBoat) 8 | + if (p_180634_4_ instanceof EntityBoat && !org.bukkit.craftbukkit.v1_12_R1.event.CraftEventFactory.callEntityChangeBlockEvent(p_180634_4_, p_180634_2_, Blocks.field_150350_a, 0).isCancelled()) 9 | { 10 | p_180634_1_.func_175655_b(new BlockPos(p_180634_2_), true); 11 | } 12 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/block/BlockShulkerBox.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/block/BlockShulkerBox.java 2 | +++ after/net/minecraft/block/BlockShulkerBox.java 3 | @@ -43,7 +43,7 @@ 4 | public class BlockShulkerBox extends BlockContainer 5 | { 6 | public static final PropertyEnum field_190957_a = PropertyDirection.func_177714_a("facing"); 7 | - private final EnumDyeColor field_190958_b; 8 | + public final EnumDyeColor field_190958_b; 9 | 10 | public BlockShulkerBox(EnumDyeColor p_i47248_1_) 11 | { 12 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/client/ClientBrandRetriever.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/client/ClientBrandRetriever.java 2 | +++ after/net/minecraft/client/ClientBrandRetriever.java 3 | @@ -8,6 +8,6 @@ 4 | { 5 | public static String getClientModName() 6 | { 7 | - return "vanilla"; 8 | + return net.minecraftforge.fml.common.FMLCommonHandler.instance().getModName(); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/client/model/PositionTextureVertex.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/client/model/PositionTextureVertex.java 2 | +++ after/net/minecraft/client/model/PositionTextureVertex.java 3 | @@ -1,10 +1,7 @@ 4 | package net.minecraft.client.model; 5 | 6 | import net.minecraft.util.math.Vec3d; 7 | -import net.minecraftforge.fml.relauncher.Side; 8 | -import net.minecraftforge.fml.relauncher.SideOnly; 9 | 10 | -@SideOnly(Side.CLIENT) 11 | public class PositionTextureVertex 12 | { 13 | public Vec3d field_78243_a; 14 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/client/renderer/ChestRenderer.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/client/renderer/ChestRenderer.java 2 | +++ after/net/minecraft/client/renderer/ChestRenderer.java 3 | @@ -13,6 +13,7 @@ 4 | { 5 | GlStateManager.func_179131_c(p_178175_2_, p_178175_2_, p_178175_2_, 1.0F); 6 | GlStateManager.func_179114_b(90.0F, 0.0F, 1.0F, 0.0F); 7 | - TileEntityItemStackRenderer.field_147719_a.func_179022_a(new ItemStack(p_178175_1_)); 8 | + ItemStack stack = new ItemStack(p_178175_1_); 9 | + stack.func_77973_b().getTileEntityItemStackRenderer().func_179022_a(stack); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/client/resources/FileResourcePack.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/client/resources/FileResourcePack.java 2 | +++ after/net/minecraft/client/resources/FileResourcePack.java 3 | @@ -111,12 +111,12 @@ 4 | return set; 5 | } 6 | 7 | - @Override 8 | - protected void finalize() throws Throwable 9 | - { 10 | - this.close(); 11 | - super.finalize(); 12 | - } 13 | +// @Override 14 | +// protected void finalize() throws Throwable 15 | +// { 16 | +// this.close(); 17 | +// super.finalize(); 18 | +// } 19 | 20 | @Override 21 | public void close() throws IOException 22 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/command/CommandSenderWrapper.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/command/CommandSenderWrapper.java 2 | +++ after/net/minecraft/command/CommandSenderWrapper.java 3 | @@ -11,7 +11,7 @@ 4 | 5 | public class CommandSenderWrapper implements ICommandSender 6 | { 7 | - private final ICommandSender field_193043_a; 8 | + public final ICommandSender field_193043_a; 9 | @Nullable 10 | private final Vec3d field_194002_b; 11 | @Nullable 12 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/entity/ai/EntityAIDefendVillage.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/entity/ai/EntityAIDefendVillage.java 2 | +++ after/net/minecraft/entity/ai/EntityAIDefendVillage.java 3 | @@ -53,7 +53,7 @@ 4 | @Override 5 | public void func_75249_e() 6 | { 7 | - this.field_75305_a.func_70624_b(this.field_75304_b); 8 | + this.field_75305_a.setGoalTarget(this.field_75304_b, org.bukkit.event.entity.EntityTargetEvent.TargetReason.DEFEND_VILLAGE, true); 9 | super.func_75249_e(); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/entity/ai/EntityAIFindEntityNearest.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/entity/ai/EntityAIFindEntityNearest.java 2 | +++ after/net/minecraft/entity/ai/EntityAIFindEntityNearest.java 3 | @@ -109,7 +109,7 @@ 4 | @Override 5 | public void func_75249_e() 6 | { 7 | - this.field_179442_b.func_70624_b(this.field_179441_e); 8 | + this.field_179442_b.setGoalTarget(this.field_179441_e, org.bukkit.event.entity.EntityTargetEvent.TargetReason.CLOSEST_ENTITY, true); 9 | super.func_75249_e(); 10 | } 11 | 12 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/entity/ai/EntityAIFindEntityNearestPlayer.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/entity/ai/EntityAIFindEntityNearestPlayer.java 2 | +++ after/net/minecraft/entity/ai/EntityAIFindEntityNearestPlayer.java 3 | @@ -140,7 +140,7 @@ 4 | @Override 5 | public void func_75249_e() 6 | { 7 | - this.field_179434_b.func_70624_b(this.field_179433_e); 8 | + this.field_179434_b.setGoalTarget(this.field_179433_e, org.bukkit.event.entity.EntityTargetEvent.TargetReason.CLOSEST_PLAYER, true); 9 | super.func_75249_e(); 10 | } 11 | 12 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/entity/ai/EntityAISit.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/entity/ai/EntityAISit.java 2 | +++ after/net/minecraft/entity/ai/EntityAISit.java 3 | @@ -19,7 +19,8 @@ 4 | { 5 | if (!this.field_75272_a.func_70909_n()) 6 | { 7 | - return false; 8 | + // return false; 9 | + return this.field_75271_b && this.field_75272_a.func_70638_az() == null; // CraftBukkit - Allow sitting for wild animals 10 | } 11 | else if (this.field_75272_a.func_70090_H()) 12 | { 13 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/entity/item/EntityPainting.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/entity/item/EntityPainting.java 2 | +++ after/net/minecraft/entity/item/EntityPainting.java 3 | @@ -24,6 +24,7 @@ 4 | public EntityPainting(World p_i1599_1_) 5 | { 6 | super(p_i1599_1_); 7 | + this.field_70522_e = EnumArt.values()[this.field_70146_Z.nextInt(EnumArt.values().length)]; // CraftBukkit - generate a non-null painting 8 | } 9 | 10 | public EntityPainting(World p_i45849_1_, BlockPos p_i45849_2_, EnumFacing p_i45849_3_) 11 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/entity/monster/EntityGolem.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/entity/monster/EntityGolem.java 2 | +++ after/net/minecraft/entity/monster/EntityGolem.java 3 | @@ -47,7 +47,7 @@ 4 | } 5 | 6 | @Override 7 | - protected boolean func_70692_ba() 8 | + public boolean func_70692_ba() 9 | { 10 | return false; 11 | } 12 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/entity/monster/EntityPigZombie.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/entity/monster/EntityPigZombie.java 2 | +++ after/net/minecraft/entity/monster/EntityPigZombie.java 3 | @@ -31,7 +31,7 @@ 4 | { 5 | private static final UUID field_110189_bq = UUID.fromString("49455A49-7EC5-45BA-B886-3B90B23A1718"); 6 | private static final AttributeModifier field_110190_br = new AttributeModifier(field_110189_bq, "Attacking speed boost", 0.05, 0).func_111168_a(false); 7 | - private int field_70837_d; 8 | + public int field_70837_d; 9 | private int field_70838_e; 10 | private UUID field_175459_bn; 11 | 12 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/entity/monster/EntitySpellcasterIllager.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/entity/monster/EntitySpellcasterIllager.java 2 | +++ after/net/minecraft/entity/monster/EntitySpellcasterIllager.java 3 | @@ -70,7 +70,7 @@ 4 | this.field_70180_af.func_187227_b(field_193088_c, (byte)p_193081_1_.field_193345_g); 5 | } 6 | 7 | - protected EntitySpellcasterIllager.SpellType func_193083_dm() 8 | + public SpellType func_193083_dm() 9 | { 10 | return !this.field_70170_p.field_72995_K 11 | ? this.field_193089_bx 12 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/entity/passive/EntityBat.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/entity/passive/EntityBat.java 2 | +++ after/net/minecraft/entity/passive/EntityBat.java 3 | @@ -6,6 +6,7 @@ 4 | import net.minecraft.entity.Entity; 5 | import net.minecraft.entity.EntityLiving; 6 | import net.minecraft.entity.SharedMonsterAttributes; 7 | +import net.minecraft.entity.player.EntityPlayer; 8 | import net.minecraft.init.SoundEvents; 9 | import net.minecraft.nbt.NBTTagCompound; 10 | import net.minecraft.network.datasync.DataParameter; 11 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/entity/passive/EntitySquid.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/entity/passive/EntitySquid.java 2 | +++ after/net/minecraft/entity/passive/EntitySquid.java 3 | @@ -204,7 +204,7 @@ 4 | @Override 5 | public boolean func_70601_bi() 6 | { 7 | - return this.field_70163_u > 45.0 && this.field_70163_u < (double)this.field_70170_p.func_181545_F() && super.func_70601_bi(); 8 | + return this.field_70163_u > this.field_70170_p.spigotConfig.squidSpawnRangeMin && this.field_70163_u < (double)this.field_70170_p.func_181545_F() && super.func_70601_bi(); 9 | } 10 | 11 | @SideOnly(Side.CLIENT) 12 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/entity/passive/EntityTameable.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/entity/passive/EntityTameable.java 2 | +++ after/net/minecraft/entity/passive/EntityTameable.java 3 | @@ -238,6 +238,11 @@ 4 | return this.field_70911_d; 5 | } 6 | 7 | + public void setAISit(EntityAISit aiSit) 8 | + { 9 | + this.field_70911_d = aiSit; 10 | + } 11 | + 12 | public boolean func_142018_a(EntityLivingBase p_142018_1_, EntityLivingBase p_142018_2_) 13 | { 14 | return true; 15 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/entity/passive/EntityWaterMob.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/entity/passive/EntityWaterMob.java 2 | +++ after/net/minecraft/entity/passive/EntityWaterMob.java 3 | @@ -36,8 +36,7 @@ 4 | return 120; 5 | } 6 | 7 | - @Override 8 | - protected boolean func_70692_ba() 9 | + public boolean func_70692_ba() 10 | { 11 | return true; 12 | } 13 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/entity/player/PlayerCapabilities.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/entity/player/PlayerCapabilities.java 2 | +++ after/net/minecraft/entity/player/PlayerCapabilities.java 3 | @@ -11,8 +11,8 @@ 4 | public boolean field_75101_c; 5 | public boolean field_75098_d; 6 | public boolean field_75099_e = true; 7 | - private float field_75096_f = 0.05F; 8 | - private float field_75097_g = 0.1F; 9 | + public float field_75096_f = 0.05F; 10 | + public float field_75097_g = 0.1F; 11 | 12 | public void func_75091_a(NBTTagCompound p_75091_1_) 13 | { 14 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/entity/projectile/EntityEvokerFangs.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/entity/projectile/EntityEvokerFangs.java 2 | +++ after/net/minecraft/entity/projectile/EntityEvokerFangs.java 3 | @@ -141,7 +141,9 @@ 4 | { 5 | if (entitylivingbase == null) 6 | { 7 | + org.bukkit.craftbukkit.v1_12_R1.event.CraftEventFactory.entityDamage = this; 8 | p_190551_1_.func_70097_a(DamageSource.field_76376_m, 6.0F); 9 | + org.bukkit.craftbukkit.v1_12_R1.event.CraftEventFactory.entityDamage = null; 10 | } 11 | else 12 | { 13 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/entity/projectile/EntitySpectralArrow.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/entity/projectile/EntitySpectralArrow.java 2 | +++ after/net/minecraft/entity/projectile/EntitySpectralArrow.java 3 | @@ -12,7 +12,7 @@ 4 | 5 | public class EntitySpectralArrow extends EntityArrow 6 | { 7 | - private int field_184562_f = 200; 8 | + public int field_184562_f = 200; 9 | 10 | public EntitySpectralArrow(World p_i46767_1_) 11 | { 12 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/item/ItemArrow.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/item/ItemArrow.java 2 | +++ after/net/minecraft/item/ItemArrow.java 3 | @@ -19,4 +19,10 @@ 4 | entitytippedarrow.func_184555_a(p_185052_2_); 5 | return entitytippedarrow; 6 | } 7 | + 8 | + public boolean isInfinite(ItemStack stack, ItemStack bow, net.minecraft.entity.player.EntityPlayer player) 9 | + { 10 | + int enchant = net.minecraft.enchantment.EnchantmentHelper.func_77506_a(net.minecraft.init.Enchantments.field_185312_x, bow); 11 | + return enchant <= 0 ? false : this.getClass() == ItemArrow.class; 12 | + } 13 | } 14 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/network/play/client/CPacketResourcePackStatus.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/network/play/client/CPacketResourcePackStatus.java 2 | +++ after/net/minecraft/network/play/client/CPacketResourcePackStatus.java 3 | @@ -7,7 +7,7 @@ 4 | 5 | public class CPacketResourcePackStatus implements Packet 6 | { 7 | - private CPacketResourcePackStatus.Action field_179719_b; 8 | + public Action field_179719_b; 9 | 10 | public CPacketResourcePackStatus() 11 | { 12 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/network/play/server/SPacketSpawnPosition.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/network/play/server/SPacketSpawnPosition.java 2 | +++ after/net/minecraft/network/play/server/SPacketSpawnPosition.java 3 | @@ -10,7 +10,7 @@ 4 | 5 | public class SPacketSpawnPosition implements Packet 6 | { 7 | - private BlockPos field_179801_a; 8 | + public BlockPos field_179801_a; 9 | 10 | public SPacketSpawnPosition() 11 | { 12 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/pathfinding/PathNavigateClimber.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/pathfinding/PathNavigateClimber.java 2 | +++ after/net/minecraft/pathfinding/PathNavigateClimber.java 3 | @@ -57,7 +57,7 @@ 4 | { 5 | if (this.field_179696_f != null) 6 | { 7 | - double d0 = (double)(this.field_75515_a.field_70130_N * this.field_75515_a.field_70130_N); 8 | + double d0 = Math.max((this.field_75515_a.field_70130_N * this.field_75515_a.field_70130_N), 1.0D); 9 | 10 | if (!(this.field_75515_a.func_174831_c(this.field_179696_f) < d0) 11 | && ( 12 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/server/management/UserList.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/server/management/UserList.java 2 | +++ after/net/minecraft/server/management/UserList.java 3 | @@ -165,6 +165,10 @@ 4 | return this.field_152696_d; 5 | } 6 | 7 | + public Collection getValuesCB() { 8 | + return this.field_152696_d.values(); 9 | + } 10 | + 11 | public void func_152678_f() throws IOException 12 | { 13 | Collection collection = this.field_152696_d.values(); 14 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/server/management/UserListEntry.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/server/management/UserListEntry.java 2 | +++ after/net/minecraft/server/management/UserListEntry.java 3 | @@ -16,7 +16,7 @@ 4 | this.field_152642_a = p_i1147_1_; 5 | } 6 | 7 | - T func_152640_f() 8 | + public T func_152640_f() 9 | { 10 | return this.field_152642_a; 11 | } 12 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/server/management/UserListOps.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/server/management/UserListOps.java 2 | +++ after/net/minecraft/server/management/UserListOps.java 3 | @@ -45,6 +45,7 @@ 4 | 5 | protected String func_152681_a(GameProfile p_152681_1_) 6 | { 7 | + if (p_152681_1_ == null || p_152681_1_.getId() == null) return "invalid"; // CatServer - handle GameProfiles with no ID 8 | return p_152681_1_.getId().toString(); 9 | } 10 | 11 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/util/ActionResult.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/util/ActionResult.java 2 | +++ after/net/minecraft/util/ActionResult.java 3 | @@ -20,4 +20,10 @@ 4 | { 5 | return this.field_188400_b; 6 | } 7 | + 8 | + //Just a generic helper function to make typecasing easier... 9 | + public static ActionResult newResult(EnumActionResult result, T value) 10 | + { 11 | + return new ActionResult(result, value); 12 | + } 13 | } 14 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/util/BlockRenderLayer.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/util/BlockRenderLayer.java 2 | +++ after/net/minecraft/util/BlockRenderLayer.java 3 | @@ -1,9 +1,5 @@ 4 | package net.minecraft.util; 5 | 6 | -import net.minecraftforge.fml.relauncher.Side; 7 | -import net.minecraftforge.fml.relauncher.SideOnly; 8 | - 9 | -@SideOnly(Side.CLIENT) 10 | public enum BlockRenderLayer 11 | { 12 | SOLID("Solid"), 13 | @@ -18,7 +14,6 @@ 14 | this.field_180338_e = p_i45755_3_; 15 | } 16 | 17 | - @Override 18 | public String toString() 19 | { 20 | return this.field_180338_e; 21 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/util/ChatAllowedCharacters.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/util/ChatAllowedCharacters.java 2 | +++ after/net/minecraft/util/ChatAllowedCharacters.java 3 | @@ -31,6 +31,7 @@ 4 | 5 | static 6 | { 7 | + if (System.getProperty("io.netty.leakDetection.level") == null) // Forge: allow level to be manually specified 8 | ResourceLeakDetector.setLevel(field_184877_a); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/util/DamageSource.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/util/DamageSource.java 2 | +++ after/net/minecraft/util/DamageSource.java 3 | @@ -45,6 +45,17 @@ 4 | private boolean field_76378_k; 5 | public String field_76373_n; 6 | 7 | + private boolean sweep; 8 | + 9 | + public boolean isSweep() { 10 | + return sweep; 11 | + } 12 | + 13 | + public DamageSource sweep() { 14 | + this.sweep = true; 15 | + return this; 16 | + } 17 | + 18 | public static DamageSource func_76358_a(EntityLivingBase p_76358_0_) 19 | { 20 | return new EntityDamageSource("mob", p_76358_0_); 21 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/util/MouseHelper.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/util/MouseHelper.java 2 | +++ after/net/minecraft/util/MouseHelper.java 3 | @@ -13,6 +13,7 @@ 4 | 5 | public void func_74372_a() 6 | { 7 | + if (Boolean.parseBoolean(System.getProperty("fml.noGrab","false"))) return; 8 | Mouse.setGrabbed(true); 9 | this.field_74377_a = 0; 10 | this.field_74375_b = 0; 11 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/util/datafix/DataFixesManager.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/util/datafix/DataFixesManager.java 2 | +++ after/net/minecraft/util/datafix/DataFixesManager.java 3 | @@ -165,6 +165,7 @@ 4 | public static DataFixer func_188279_a() 5 | { 6 | DataFixer datafixer = new DataFixer(1343); 7 | + datafixer = new net.minecraftforge.common.util.CompoundDataFixer(datafixer); 8 | WorldInfo.func_189967_a(datafixer); 9 | EntityPlayerMP.func_191522_a(datafixer); 10 | EntityPlayer.func_189806_a(datafixer); 11 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/util/text/TextFormatting.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/util/text/TextFormatting.java 2 | +++ after/net/minecraft/util/text/TextFormatting.java 3 | @@ -37,7 +37,7 @@ 4 | private static final Map field_96331_x = Maps.newHashMap(); 5 | private static final Pattern field_96330_y = Pattern.compile("(?i)\u00a7[0-9A-FK-OR]"); 6 | private final String field_175748_y; 7 | - private final char field_96329_z; 8 | + public final char field_96329_z; 9 | private final boolean field_96303_A; 10 | private final String field_96304_B; 11 | private final int field_175747_C; 12 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/world/IBlockAccess.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/world/IBlockAccess.java 2 | +++ after/net/minecraft/world/IBlockAccess.java 3 | @@ -28,4 +28,14 @@ 4 | 5 | @SideOnly(Side.CLIENT) 6 | WorldType func_175624_G(); 7 | + 8 | + /** 9 | + * FORGE: isSideSolid, pulled up from {@link World} 10 | + * 11 | + * @param pos Position 12 | + * @param side Side 13 | + * @param _default default return value 14 | + * @return if the block is solid on the side 15 | + */ 16 | + boolean isSideSolid(BlockPos pos, EnumFacing side, boolean _default); 17 | } 18 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/world/chunk/storage/IChunkLoader.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/world/chunk/storage/IChunkLoader.java 2 | +++ after/net/minecraft/world/chunk/storage/IChunkLoader.java 3 | @@ -20,4 +20,10 @@ 4 | void func_75818_b(); 5 | 6 | boolean func_191063_a(int p_191063_1_, int p_191063_2_); 7 | + 8 | + // CatServer start - Add spigot method 9 | + default void saveChunk(World world, Chunk chunk, boolean unloaded) throws MinecraftException, IOException { 10 | + func_75816_a(world, chunk); 11 | + } 12 | + // CatServer end 13 | } 14 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/world/gen/feature/WorldGenerator.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/world/gen/feature/WorldGenerator.java 2 | +++ after/net/minecraft/world/gen/feature/WorldGenerator.java 3 | @@ -33,7 +33,8 @@ 4 | } 5 | else 6 | { 7 | - p_175903_1_.func_180501_a(p_175903_2_, p_175903_3_, 2); 8 | + int flag = net.minecraftforge.common.ForgeModContainer.fixVanillaCascading ? 2| 16 : 2; //Forge: With bit 5 unset, it will notify neighbors and load adjacent chunks. 9 | + p_175903_1_.func_180501_a(p_175903_2_, p_175903_3_, flag); 10 | } 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /patches/minecraft/net/minecraft/world/storage/ISaveHandler.java.patch: -------------------------------------------------------------------------------- 1 | --- before/net/minecraft/world/storage/ISaveHandler.java 2 | +++ after/net/minecraft/world/storage/ISaveHandler.java 3 | @@ -30,4 +30,6 @@ 4 | File func_75758_b(String p_75758_1_); 5 | 6 | TemplateManager func_186340_h(); 7 | + 8 | + java.util.UUID getUUID(); // CraftBukkit 9 | } 10 | -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'Cleanroom' 2 | 3 | include ':mcp' 4 | include ':minecraft' 5 | include ':cleanroom' 6 | 7 | project(":mcp").projectDir = file("projects/mcp") 8 | project(":minecraft").projectDir = file("projects/minecraft") 9 | project(":cleanroom").projectDir = file("projects/cleanroom") 10 | 11 | -------------------------------------------------------------------------------- /src/main/java/catserver/api/annotation/Backported.java: -------------------------------------------------------------------------------- 1 | package catserver.api.annotation; 2 | 3 | import java.lang.annotation.*; 4 | 5 | /** 6 | * Indicates that the annotated api method is backported from a newer version of Minecraft. 7 | */ 8 | @Documented 9 | @Retention(RetentionPolicy.CLASS) 10 | @Target({ElementType.METHOD, ElementType.TYPE}) 11 | public @interface Backported { 12 | String from() default ""; 13 | } 14 | -------------------------------------------------------------------------------- /src/main/java/catserver/server/mcauth/CatProxyAuthenticationService.java: -------------------------------------------------------------------------------- 1 | package catserver.server.mcauth; 2 | 3 | import com.mojang.authlib.minecraft.MinecraftSessionService; 4 | import com.mojang.authlib.yggdrasil.YggdrasilAuthenticationService; 5 | 6 | import java.net.Proxy; 7 | 8 | public class CatProxyAuthenticationService extends YggdrasilAuthenticationService { 9 | public CatProxyAuthenticationService(Proxy proxy, String clientToken) { 10 | super(proxy, clientToken); 11 | } 12 | 13 | @Override 14 | public MinecraftSessionService createMinecraftSessionService() { 15 | return new CatProxyMinecraftSessionService(this); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /src/main/java/catserver/server/mcauth/CatProxyMinecraftSessionService.java: -------------------------------------------------------------------------------- 1 | package catserver.server.mcauth; 2 | 3 | import com.mojang.authlib.GameProfile; 4 | import com.mojang.authlib.yggdrasil.YggdrasilMinecraftSessionService; 5 | 6 | public class CatProxyMinecraftSessionService extends YggdrasilMinecraftSessionService { 7 | protected CatProxyMinecraftSessionService(CatProxyAuthenticationService authenticationService) { 8 | super(authenticationService); 9 | } 10 | 11 | @Override 12 | protected GameProfile fillGameProfile(GameProfile profile, boolean requireSecure) { 13 | return profile; 14 | } 15 | 16 | } 17 | -------------------------------------------------------------------------------- /src/main/java/catserver/server/patcher/IPatcher.java: -------------------------------------------------------------------------------- 1 | package catserver.server.patcher; 2 | 3 | public interface IPatcher { 4 | byte[] transform(String className, byte[] basicClass); 5 | } 6 | -------------------------------------------------------------------------------- /src/main/java/catserver/server/patcher/plugin/DisablePluginPatcher.java: -------------------------------------------------------------------------------- 1 | package catserver.server.patcher.plugin; 2 | 3 | import catserver.server.patcher.IPatcher; 4 | 5 | public class DisablePluginPatcher implements IPatcher { 6 | private final String reason; 7 | 8 | public DisablePluginPatcher(String reason) { 9 | this.reason = reason; 10 | } 11 | 12 | @Override 13 | public byte[] transform(String className, byte[] basicClass) { 14 | throw new RuntimeException("The plugin has been disabled! Reason: " + this.reason); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /src/main/java/catserver/server/threads/ConsoleWriteThread.java: -------------------------------------------------------------------------------- 1 | package catserver.server.threads; 2 | 3 | import catserver.server.log4j.AsyncConsoleWriteQueue; 4 | 5 | public class ConsoleWriteThread extends Thread { 6 | private static final ConsoleWriteThread CONSOLE_WRITE_THREAD = new ConsoleWriteThread(); 7 | 8 | protected ConsoleWriteThread() { 9 | super(new AsyncConsoleWriteQueue(), "CatServer Console Write Thread"); 10 | } 11 | 12 | public static void startThread() { 13 | CONSOLE_WRITE_THREAD.start(); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/main/java/com/cleanroommc/boot/MainServer.java: -------------------------------------------------------------------------------- 1 | package com.cleanroommc.boot; 2 | 3 | public class MainServer extends Main { 4 | 5 | public static void main(String[] args) throws Exception { 6 | new MainServer().start(args); 7 | } 8 | 9 | } 10 | -------------------------------------------------------------------------------- /src/main/java/com/cleanroommc/client/BreakIteratorHolder.java: -------------------------------------------------------------------------------- 1 | package com.cleanroommc.client; 2 | 3 | import com.ibm.icu.text.BreakIterator; 4 | 5 | public class BreakIteratorHolder { 6 | public static final BreakIterator BREAK_ITERATOR = BreakIterator.getLineInstance(); 7 | } 8 | -------------------------------------------------------------------------------- /src/main/java/com/cleanroommc/configanytime/ConfigAnytime.java: -------------------------------------------------------------------------------- 1 | package com.cleanroommc.configanytime; 2 | 3 | import net.minecraftforge.common.config.Config; 4 | import net.minecraftforge.common.config.ConfigManager; 5 | 6 | @Deprecated 7 | public class ConfigAnytime { 8 | /** 9 | * A wrapper of {@link ConfigManager#register(Class)}, created for compatibility. 10 | * @param configClass configuration class that is annotated with {@link Config} 11 | */ 12 | public static void register(Class configClass) { 13 | ConfigManager.register(configClass); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/Keyed.java: -------------------------------------------------------------------------------- 1 | package org.bukkit; 2 | 3 | /** 4 | * Represents an object which has a {@link NamespacedKey} attached to it. 5 | */ 6 | public interface Keyed { 7 | 8 | /** 9 | * Return the namespaced identifier for this object. 10 | * 11 | * @return this object's key 12 | */ 13 | NamespacedKey getKey(); 14 | } 15 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/NetherWartsState.java: -------------------------------------------------------------------------------- 1 | package org.bukkit; 2 | 3 | public enum NetherWartsState { 4 | 5 | /** 6 | * State when first seeded 7 | */ 8 | SEEDED, 9 | /** 10 | * First growth stage 11 | */ 12 | STAGE_ONE, 13 | /** 14 | * Second growth stage 15 | */ 16 | STAGE_TWO, 17 | /** 18 | * Ready to harvest 19 | */ 20 | RIPE; 21 | } 22 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/PortalType.java: -------------------------------------------------------------------------------- 1 | package org.bukkit; 2 | 3 | /** 4 | * Represents various types of portals that can be made in a world. 5 | */ 6 | public enum PortalType { 7 | 8 | /** 9 | * This is a Nether portal, made of obsidian. 10 | */ 11 | NETHER, 12 | 13 | /** 14 | * This is an Ender portal. 15 | */ 16 | ENDER, 17 | 18 | /** 19 | * This is a custom Plugin portal. 20 | */ 21 | CUSTOM; 22 | } 23 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/SkullType.java: -------------------------------------------------------------------------------- 1 | package org.bukkit; 2 | 3 | /** 4 | * Represents the different types of skulls. 5 | */ 6 | public enum SkullType { 7 | SKELETON, 8 | WITHER, 9 | ZOMBIE, 10 | PLAYER, 11 | CREEPER, 12 | DRAGON; 13 | } 14 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/SoundCategory.java: -------------------------------------------------------------------------------- 1 | package org.bukkit; 2 | 3 | /** 4 | * An Enum of categories for sounds. 5 | */ 6 | public enum SoundCategory { 7 | 8 | MASTER, 9 | MUSIC, 10 | RECORDS, 11 | WEATHER, 12 | BLOCKS, 13 | HOSTILE, 14 | NEUTRAL, 15 | PLAYERS, 16 | AMBIENT, 17 | VOICE; 18 | } 19 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/Utility.java: -------------------------------------------------------------------------------- 1 | package org.bukkit; 2 | 3 | import java.lang.annotation.ElementType; 4 | import java.lang.annotation.Retention; 5 | import java.lang.annotation.RetentionPolicy; 6 | import java.lang.annotation.Target; 7 | 8 | /** 9 | * This annotation indicates a method (and sometimes constructor) will chain 10 | * its internal operations. 11 | *

12 | * This is solely meant for identifying methods that don't need to be 13 | * overridden / handled manually. 14 | */ 15 | @Target({ElementType.CONSTRUCTOR, ElementType.METHOD}) 16 | @Retention(RetentionPolicy.SOURCE) 17 | public @interface Utility { 18 | } 19 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/WeatherType.java: -------------------------------------------------------------------------------- 1 | package org.bukkit; 2 | 3 | /** 4 | * An enum of all current weather types 5 | */ 6 | public enum WeatherType { 7 | 8 | /** 9 | * Raining or snowing depending on biome. 10 | */ 11 | DOWNFALL, 12 | /** 13 | * Clear weather, clouds but no rain. 14 | */ 15 | CLEAR, 16 | ; 17 | } 18 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/advancement/Advancement.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.advancement; 2 | 3 | import java.util.Collection; 4 | import org.bukkit.Keyed; 5 | 6 | /** 7 | * Represents an advancement that may be awarded to a player. This class is not 8 | * reference safe as the underlying advancement may be reloaded. 9 | */ 10 | public interface Advancement extends Keyed { 11 | 12 | /** 13 | * Get all the criteria present in this advancement. 14 | * 15 | * @return a unmodifiable copy of all criteria 16 | */ 17 | Collection getCriteria(); 18 | } 19 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/attribute/Attributable.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.attribute; 2 | 3 | /** 4 | * Represents an object which may contain attributes. 5 | */ 6 | public interface Attributable { 7 | 8 | /** 9 | * Gets the specified attribute instance from the object. This instance will 10 | * be backed directly to the object and any changes will be visible at once. 11 | * 12 | * @param attribute the attribute to get 13 | * @return the attribute instance or null if not applicable to this object 14 | */ 15 | AttributeInstance getAttribute(Attribute attribute); 16 | } 17 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/block/Bed.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.block; 2 | 3 | import org.bukkit.material.Colorable; 4 | 5 | /** 6 | * Represents a captured state of a bed. 7 | */ 8 | public interface Bed extends BlockState, Colorable { } 9 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/block/Comparator.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.block; 2 | 3 | /** 4 | * Represents a captured state of an on / off comparator. 5 | */ 6 | public interface Comparator extends BlockState { } 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/block/DaylightDetector.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.block; 2 | 3 | /** 4 | * Represents a captured state of a (possibly inverted) daylight detector. 5 | */ 6 | public interface DaylightDetector extends BlockState { } 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/block/EnchantingTable.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.block; 2 | 3 | import org.bukkit.Nameable; 4 | 5 | /** 6 | * Represents a captured state of an enchanting table. 7 | */ 8 | public interface EnchantingTable extends BlockState, Nameable { } 9 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/block/EnderChest.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.block; 2 | 3 | /** 4 | * Represents a captured state of an ender chest. 5 | */ 6 | public interface EnderChest extends BlockState { } 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/block/Hopper.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.block; 2 | 3 | import org.bukkit.Nameable; 4 | 5 | /** 6 | * Represents a captured state of a hopper. 7 | */ 8 | public interface Hopper extends Container, Nameable { } 9 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/block/ShulkerBox.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.block; 2 | 3 | import org.bukkit.DyeColor; 4 | import org.bukkit.Nameable; 5 | 6 | /** 7 | * Represents a captured state of a ShulkerBox. 8 | */ 9 | public interface ShulkerBox extends Container, Nameable { 10 | 11 | /** 12 | * Get the {@link DyeColor} corresponding to this ShulkerBox 13 | * 14 | * @return the {@link DyeColor} of this ShulkerBox 15 | */ 16 | public DyeColor getColor(); 17 | } 18 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/block/structure/StructureRotation.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.block.structure; 2 | 3 | /** 4 | * Represents how a {@link org.bukkit.block.Structure} can be rotated. 5 | */ 6 | public enum StructureRotation { 7 | 8 | /** 9 | * No rotation. 10 | */ 11 | NONE, 12 | /** 13 | * Rotated clockwise 90 degrees. 14 | */ 15 | CLOCKWISE_90, 16 | /** 17 | * Rotated clockwise 180 degrees. 18 | */ 19 | CLOCKWISE_180, 20 | /** 21 | * Rotated counter clockwise 90 degrees. 22 | *
23 | * Equivalent to rotating clockwise 270 degrees. 24 | */ 25 | COUNTERCLOCKWISE_90; 26 | } 27 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/boss/BarColor.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.boss; 2 | 3 | public enum BarColor { 4 | PINK, 5 | BLUE, 6 | RED, 7 | GREEN, 8 | YELLOW, 9 | PURPLE, 10 | WHITE 11 | } 12 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/boss/BarFlag.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.boss; 2 | 3 | public enum BarFlag { 4 | 5 | /** 6 | * Darkens the sky like during fighting a wither. 7 | */ 8 | DARKEN_SKY, 9 | /** 10 | * Tells the client to play the Ender Dragon boss music. 11 | */ 12 | PLAY_BOSS_MUSIC, 13 | /** 14 | * Creates fog around the world. 15 | */ 16 | CREATE_FOG, 17 | } 18 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/boss/BarStyle.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.boss; 2 | 3 | public enum BarStyle { 4 | /** 5 | * Makes the boss bar solid (no segments) 6 | */ 7 | SOLID, 8 | /** 9 | * Splits the boss bar into 6 segments 10 | */ 11 | SEGMENTED_6, 12 | /** 13 | * Splits the boss bar into 10 segments 14 | */ 15 | SEGMENTED_10, 16 | /** 17 | * Splits the boss bar into 12 segments 18 | */ 19 | SEGMENTED_12, 20 | /** 21 | * Splits the boss bar into 20 segments 22 | */ 23 | SEGMENTED_20, 24 | } 25 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/command/BlockCommandSender.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.command; 2 | 3 | import org.bukkit.block.Block; 4 | 5 | public interface BlockCommandSender extends CommandSender { 6 | 7 | /** 8 | * Returns the block this command sender belongs to 9 | * 10 | * @return Block for the command sender 11 | */ 12 | public Block getBlock(); 13 | } 14 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/command/ConsoleCommandSender.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.command; 2 | 3 | import org.bukkit.conversations.Conversable; 4 | 5 | public interface ConsoleCommandSender extends CommandSender, Conversable { 6 | } 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/command/ProxiedCommandSender.java: -------------------------------------------------------------------------------- 1 | 2 | package org.bukkit.command; 3 | 4 | public interface ProxiedCommandSender extends CommandSender { 5 | 6 | /** 7 | * Returns the CommandSender which triggered this proxied command 8 | * 9 | * @return the caller which triggered the command 10 | */ 11 | CommandSender getCaller(); 12 | 13 | /** 14 | * Returns the CommandSender which is being used to call the command 15 | * 16 | * @return the caller which the command is being run as 17 | */ 18 | CommandSender getCallee(); 19 | 20 | } 21 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/command/RemoteConsoleCommandSender.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.command; 2 | 3 | public interface RemoteConsoleCommandSender extends CommandSender { 4 | } 5 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/command/TabExecutor.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.command; 2 | 3 | /** 4 | * This class is provided as a convenience to implement both TabCompleter and 5 | * CommandExecutor. 6 | */ 7 | public interface TabExecutor extends TabCompleter, CommandExecutor { 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/command/defaults/BukkitCommand.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.command.defaults; 2 | 3 | import java.util.List; 4 | 5 | import org.bukkit.command.Command; 6 | 7 | public abstract class BukkitCommand extends Command { 8 | protected BukkitCommand(String name) { 9 | super(name); 10 | } 11 | 12 | protected BukkitCommand(String name, String description, String usageMessage, List aliases) { 13 | super(name, description, usageMessage, aliases); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/conversations/ConversationAbandonedListener.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.conversations; 2 | 3 | import java.util.EventListener; 4 | 5 | /** 6 | */ 7 | public interface ConversationAbandonedListener extends EventListener { 8 | /** 9 | * Called whenever a {@link Conversation} is abandoned. 10 | * 11 | * @param abandonedEvent Contains details about the abandoned 12 | * conversation. 13 | */ 14 | public void conversationAbandoned(ConversationAbandonedEvent abandonedEvent); 15 | } 16 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/conversations/ConversationPrefix.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.conversations; 2 | 3 | /** 4 | * A ConversationPrefix implementation prepends all output from the 5 | * conversation to the player. The ConversationPrefix can be used to display 6 | * the plugin name or conversation status as the conversation evolves. 7 | */ 8 | public interface ConversationPrefix { 9 | 10 | /** 11 | * Gets the prefix to use before each message to the player. 12 | * 13 | * @param context Context information about the conversation. 14 | * @return The prefix text. 15 | */ 16 | String getPrefix(ConversationContext context); 17 | } 18 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/conversations/NullConversationPrefix.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.conversations; 2 | 3 | /** 4 | * NullConversationPrefix is a {@link ConversationPrefix} implementation that 5 | * displays nothing in front of conversation output. 6 | */ 7 | public class NullConversationPrefix implements ConversationPrefix { 8 | 9 | /** 10 | * Prepends each conversation message with an empty string. 11 | * 12 | * @param context Context information about the conversation. 13 | * @return An empty string. 14 | */ 15 | public String getPrefix(ConversationContext context) { 16 | return ""; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/conversations/StringPrompt.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.conversations; 2 | 3 | /** 4 | * StringPrompt is the base class for any prompt that accepts an arbitrary 5 | * string from the user. 6 | */ 7 | public abstract class StringPrompt implements Prompt { 8 | 9 | /** 10 | * Ensures that the prompt waits for the user to provide input. 11 | * 12 | * @param context Context information about the conversation. 13 | * @return True. 14 | */ 15 | public boolean blocksForInput(ConversationContext context) { 16 | return true; 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/craftbukkit/v1_12_R1/Overridden.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.craftbukkit.v1_12_R1; 2 | 3 | import java.lang.annotation.ElementType; 4 | import java.lang.annotation.Retention; 5 | import java.lang.annotation.RetentionPolicy; 6 | import java.lang.annotation.Target; 7 | 8 | /** 9 | * Indicates a method needs to be overridden in sub classes 10 | */ 11 | @Target({ElementType.CONSTRUCTOR, ElementType.METHOD}) 12 | @Retention(RetentionPolicy.RUNTIME) 13 | public @interface Overridden { 14 | } 15 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/craftbukkit/v1_12_R1/block/CraftComparator.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.craftbukkit.v1_12_R1.block; 2 | 3 | import net.minecraft.tileentity.TileEntityComparator; 4 | import org.bukkit.Material; 5 | import org.bukkit.block.Block; 6 | import org.bukkit.block.Comparator; 7 | 8 | public class CraftComparator extends CraftBlockEntityState implements Comparator { 9 | 10 | public CraftComparator(final Block block) { 11 | super(block, TileEntityComparator.class); 12 | } 13 | 14 | public CraftComparator(final Material material, final TileEntityComparator te) { 15 | super(material, te); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/craftbukkit/v1_12_R1/block/CraftEnderChest.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.craftbukkit.v1_12_R1.block; 2 | 3 | import net.minecraft.tileentity.TileEntityEnderChest; 4 | import org.bukkit.Material; 5 | import org.bukkit.block.Block; 6 | import org.bukkit.block.EnderChest; 7 | 8 | public class CraftEnderChest extends CraftBlockEntityState implements EnderChest { 9 | 10 | public CraftEnderChest(final Block block) { 11 | super(block, TileEntityEnderChest.class); 12 | } 13 | 14 | public CraftEnderChest(final Material material, final TileEntityEnderChest te) { 15 | super(material, te); 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/craftbukkit/v1_12_R1/command/ColouredConsoleSender.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.craftbukkit.v1_12_R1.command; 2 | 3 | import org.bukkit.Bukkit; 4 | import org.bukkit.command.ConsoleCommandSender; 5 | 6 | public class ColouredConsoleSender extends CraftConsoleCommandSender { 7 | 8 | protected ColouredConsoleSender() {} 9 | 10 | public static ConsoleCommandSender getInstance() { 11 | if (Bukkit.getConsoleSender() != null) { 12 | return Bukkit.getConsoleSender(); 13 | } else { 14 | return new ColouredConsoleSender(); 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/craftbukkit/v1_12_R1/entity/CraftVehicle.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.craftbukkit.v1_12_R1.entity; 2 | 3 | import org.bukkit.craftbukkit.v1_12_R1.CraftServer; 4 | import org.bukkit.entity.Vehicle; 5 | 6 | public abstract class CraftVehicle extends CraftEntity implements Vehicle { 7 | public CraftVehicle(CraftServer server, net.minecraft.entity.Entity entity) { 8 | super(server, entity); 9 | } 10 | 11 | @Override 12 | public String toString() { 13 | return "CraftVehicle{passenger=" + getPassenger() + '}'; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/craftbukkit/v1_12_R1/generator/InternalChunkGenerator.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.craftbukkit.v1_12_R1.generator; 2 | 3 | import net.minecraft.world.gen.IChunkGenerator; 4 | import org.bukkit.generator.ChunkGenerator; 5 | 6 | // Do not implement functions to this class, add to NormalChunkGenerator 7 | public abstract class InternalChunkGenerator extends ChunkGenerator implements IChunkGenerator { 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/craftbukkit/v1_12_R1/generator/NetherChunkGenerator.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.craftbukkit.v1_12_R1.generator; 2 | 3 | import net.minecraft.world.World; 4 | 5 | /** 6 | * This class is useless. Just fyi. 7 | */ 8 | public class NetherChunkGenerator extends NormalChunkGenerator { 9 | public NetherChunkGenerator(World world, long seed) { 10 | super(world, seed); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/craftbukkit/v1_12_R1/generator/SkyLandsChunkGenerator.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.craftbukkit.v1_12_R1.generator; 2 | 3 | import net.minecraft.world.World; 4 | 5 | /** 6 | * This class is useless. Just fyi. 7 | */ 8 | public class SkyLandsChunkGenerator extends NormalChunkGenerator { 9 | public SkyLandsChunkGenerator(World world, long seed) { 10 | super(world, seed); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/craftbukkit/v1_12_R1/inventory/CraftInventoryHorse.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.craftbukkit.v1_12_R1.inventory; 2 | 3 | import net.minecraft.inventory.IInventory; 4 | import org.bukkit.inventory.HorseInventory; 5 | import org.bukkit.inventory.ItemStack; 6 | 7 | public class CraftInventoryHorse extends CraftInventoryAbstractHorse implements HorseInventory { 8 | 9 | public CraftInventoryHorse(IInventory inventory) { 10 | super(inventory); 11 | } 12 | 13 | public ItemStack getArmor() { 14 | return getItem(1); 15 | } 16 | 17 | public void setArmor(ItemStack stack) { 18 | setItem(1, stack); 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/craftbukkit/v1_12_R1/inventory/CraftRecipe.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.craftbukkit.v1_12_R1.inventory; 2 | 3 | import org.bukkit.inventory.Recipe; 4 | 5 | public interface CraftRecipe extends Recipe { 6 | void addToCraftingManager(); 7 | } 8 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/craftbukkit/v1_12_R1/map/RenderData.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.craftbukkit.v1_12_R1.map; 2 | 3 | import org.bukkit.map.MapCursor; 4 | 5 | import java.util.ArrayList; 6 | 7 | public class RenderData { 8 | 9 | public final byte[] buffer; 10 | public final ArrayList cursors; 11 | 12 | public RenderData() { 13 | this.buffer = new byte[128 * 128]; 14 | this.cursors = new ArrayList(); 15 | } 16 | 17 | } 18 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/craftbukkit/v1_12_R1/scoreboard/CraftScoreboardComponent.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.craftbukkit.v1_12_R1.scoreboard; 2 | 3 | abstract class CraftScoreboardComponent { 4 | private CraftScoreboard scoreboard; 5 | 6 | CraftScoreboardComponent(CraftScoreboard scoreboard) { 7 | this.scoreboard = scoreboard; 8 | } 9 | 10 | abstract CraftScoreboard checkState() throws IllegalStateException; 11 | 12 | public CraftScoreboard getScoreboard() { 13 | return scoreboard; 14 | } 15 | 16 | abstract void unregister() throws IllegalStateException; 17 | } 18 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/craftbukkit/v1_12_R1/util/CraftIconCache.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.craftbukkit.v1_12_R1.util; 2 | 3 | import org.bukkit.util.CachedServerIcon; 4 | 5 | public class CraftIconCache implements CachedServerIcon { 6 | public final String value; 7 | 8 | public CraftIconCache(final String value) { 9 | this.value = value; 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/craftbukkit/v1_12_R1/util/DatFileFilter.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.craftbukkit.v1_12_R1.util; 2 | 3 | import java.io.File; 4 | import java.io.FilenameFilter; 5 | 6 | public class DatFileFilter implements FilenameFilter { 7 | public boolean accept(File dir, String name) { 8 | return name.endsWith(".dat"); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/craftbukkit/v1_12_R1/util/LongHash.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.craftbukkit.v1_12_R1.util; 2 | 3 | public class LongHash { 4 | public static long toLong(int msw, int lsw) { 5 | return ((long) msw << 32) + lsw - Integer.MIN_VALUE; 6 | } 7 | 8 | public static int msw(long l) { 9 | return (int) (l >> 32); 10 | } 11 | 12 | public static int lsw(long l) { 13 | return (int) (l & 0xFFFFFFFF) + Integer.MIN_VALUE; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/craftbukkit/v1_12_R1/util/ServerShutdownThread.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.craftbukkit.v1_12_R1.util; 2 | 3 | import net.minecraft.server.MinecraftServer; 4 | import net.minecraft.world.MinecraftException; 5 | 6 | public class ServerShutdownThread extends Thread { 7 | private final MinecraftServer server; 8 | 9 | public ServerShutdownThread(MinecraftServer server) { 10 | this.server = server; 11 | } 12 | 13 | @Override 14 | public void run() { 15 | try { 16 | server.stopServer(); 17 | } catch (MinecraftException ex) { 18 | ex.printStackTrace(); 19 | } 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Ambient.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents an ambient mob 5 | */ 6 | public interface Ambient extends LivingEntity {} 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/AnimalTamer.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | import java.util.UUID; 4 | 5 | public interface AnimalTamer { 6 | 7 | /** 8 | * This is the name of the specified AnimalTamer. 9 | * 10 | * @return The name to reference on tamed animals or null if a name cannot be obtained 11 | */ 12 | public String getName(); 13 | 14 | /** 15 | * This is the UUID of the specified AnimalTamer. 16 | * 17 | * @return The UUID to reference on tamed animals 18 | */ 19 | public UUID getUniqueId(); 20 | } 21 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Animals.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents an Animal. 5 | */ 6 | public interface Animals extends Ageable {} 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Blaze.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a Blaze monster 5 | */ 6 | public interface Blaze extends Monster { 7 | 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/CaveSpider.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a Spider. 5 | */ 6 | public interface CaveSpider extends Spider {} 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Chicken.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a Chicken. 5 | */ 6 | public interface Chicken extends Animals {} 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/ComplexEntityPart.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a single part of a {@link ComplexLivingEntity} 5 | */ 6 | public interface ComplexEntityPart extends Entity { 7 | 8 | /** 9 | * Gets the parent {@link ComplexLivingEntity} of this part. 10 | * 11 | * @return Parent complex entity 12 | */ 13 | public ComplexLivingEntity getParent(); 14 | } 15 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/ComplexLivingEntity.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | import java.util.Set; 4 | 5 | /** 6 | * Represents a complex living entity - one that is made up of various smaller 7 | * parts 8 | */ 9 | public interface ComplexLivingEntity extends LivingEntity { 10 | /** 11 | * Gets a list of parts that belong to this complex entity 12 | * 13 | * @return List of parts 14 | */ 15 | public Set getParts(); 16 | } 17 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Cow.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a Cow. 5 | */ 6 | public interface Cow extends Animals {} 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Donkey.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a Donkey - variant of {@link ChestedHorse}. 5 | */ 6 | public interface Donkey extends ChestedHorse { } 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/DragonFireball.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | public interface DragonFireball extends Fireball {} 4 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Egg.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a thrown egg. 5 | */ 6 | public interface Egg extends Projectile {} 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/ElderGuardian.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents an ElderGuardian - variant of {@link Guardian}. 5 | */ 6 | public interface ElderGuardian extends Guardian { } 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/EnderDragonPart.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents an ender dragon part 5 | */ 6 | public interface EnderDragonPart extends ComplexEntityPart, Damageable { 7 | public EnderDragon getParent(); 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/EnderPearl.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a thrown Ender Pearl entity 5 | */ 6 | public interface EnderPearl extends Projectile { 7 | 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Endermite.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | public interface Endermite extends Monster { 4 | } 5 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/EvokerFangs.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents Evoker Fangs. 5 | */ 6 | public interface EvokerFangs extends Entity { 7 | 8 | /** 9 | * Gets the {@link LivingEntity} which summoned the fangs. 10 | * 11 | * @return the {@link LivingEntity} which summoned the fangs 12 | */ 13 | LivingEntity getOwner(); 14 | 15 | /** 16 | * Sets the {@link LivingEntity} which summoned the fangs. 17 | * 18 | * @param owner the {@link LivingEntity} which summoned the fangs 19 | */ 20 | void setOwner(LivingEntity owner); 21 | } 22 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/ExperienceOrb.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents an Experience Orb. 5 | */ 6 | public interface ExperienceOrb extends Entity { 7 | 8 | /** 9 | * Gets how much experience is contained within this orb 10 | * 11 | * @return Amount of experience 12 | */ 13 | public int getExperience(); 14 | 15 | /** 16 | * Sets how much experience is contained within this orb 17 | * 18 | * @param value Amount of experience 19 | */ 20 | public void setExperience(int value); 21 | } 22 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Fireball.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | import org.bukkit.util.Vector; 4 | 5 | /** 6 | * Represents a Fireball. 7 | */ 8 | public interface Fireball extends Projectile, Explosive { 9 | 10 | /** 11 | * Fireballs fly straight and do not take setVelocity(...) well. 12 | * 13 | * @param direction the direction this fireball is flying toward 14 | */ 15 | public void setDirection(Vector direction); 16 | 17 | /** 18 | * Retrieve the direction this fireball is heading toward 19 | * 20 | * @return the direction 21 | */ 22 | public Vector getDirection(); 23 | 24 | } 25 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Fish.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a fishing hook. 5 | // * @deprecated in favor of {@link FishHook} 6 | */ 7 | public interface Fish extends FishHook { 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Flying.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a Flying Entity. 5 | */ 6 | public interface Flying extends LivingEntity {} 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Ghast.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a Ghast. 5 | */ 6 | public interface Ghast extends Flying {} 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Giant.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a Giant. 5 | */ 6 | public interface Giant extends Monster {} 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Golem.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * A mechanical creature that may harm enemies. 5 | */ 6 | public interface Golem extends Creature { 7 | 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Guardian.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | public interface Guardian extends Monster { 4 | 5 | /** 6 | * Check if the Guardian is an elder Guardian 7 | * 8 | * @return true if the Guardian is an Elder Guardian, false if not 9 | * @deprecated should check if instance of {@link ElderGuardian}. 10 | */ 11 | @Deprecated 12 | public boolean isElder(); 13 | 14 | /** 15 | * @param shouldBeElder 16 | * @deprecated Must spawn a new {@link ElderGuardian}. 17 | */ 18 | @Deprecated 19 | public void setElder(boolean shouldBeElder); 20 | } 21 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Husk.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a Husk - variant of {@link Zombie}. 5 | */ 6 | public interface Husk extends Zombie { } 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Illager.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a type of "Illager". 5 | */ 6 | public interface Illager extends Monster { } 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Illusioner.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents an Illusioner "Illager". 5 | */ 6 | public interface Illusioner extends Spellcaster { } 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/LargeFireball.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a large {@link Fireball} 5 | */ 6 | public interface LargeFireball extends Fireball { 7 | } 8 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/LeashHitch.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a Leash Hitch on a fence 5 | */ 6 | public interface LeashHitch extends Hanging { 7 | } 8 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/LingeringPotion.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a thrown lingering potion bottle 5 | */ 6 | public interface LingeringPotion extends ThrownPotion { } 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/LlamaSpit.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents Llama spit. 5 | */ 6 | public interface LlamaSpit extends Projectile { } 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/MagmaCube.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a MagmaCube. 5 | */ 6 | public interface MagmaCube extends Slime { 7 | } 8 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Monster.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a Monster. 5 | */ 6 | public interface Monster extends Creature {} 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Mule.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a Mule - variant of {@link ChestedHorse}. 5 | */ 6 | public interface Mule extends ChestedHorse { } 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/MushroomCow.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a mushroom {@link Cow} 5 | */ 6 | public interface MushroomCow extends Cow { 7 | 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/NPC.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a non-player character 5 | */ 6 | public interface NPC extends Creature { 7 | 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Pig.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a Pig. 5 | */ 6 | public interface Pig extends Animals, Vehicle { 7 | 8 | /** 9 | * Check if the pig has a saddle. 10 | * 11 | * @return if the pig has been saddled. 12 | */ 13 | public boolean hasSaddle(); 14 | 15 | /** 16 | * Sets if the pig has a saddle or not 17 | * 18 | * @param saddled set if the pig has a saddle or not. 19 | */ 20 | public void setSaddle(boolean saddled); 21 | } 22 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/PolarBear.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a polar bear. 5 | */ 6 | public interface PolarBear extends Animals {} 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Sheep.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | import org.bukkit.material.Colorable; 4 | 5 | /** 6 | * Represents a Sheep. 7 | */ 8 | public interface Sheep extends Animals, Colorable { 9 | 10 | /** 11 | * @return Whether the sheep is sheared. 12 | */ 13 | public boolean isSheared(); 14 | 15 | /** 16 | * @param flag Whether to shear the sheep 17 | */ 18 | public void setSheared(boolean flag); 19 | } 20 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Shulker.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | import org.bukkit.material.Colorable; 4 | 5 | public interface Shulker extends Golem, Colorable {} 6 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/ShulkerBullet.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | public interface ShulkerBullet extends Projectile { 4 | 5 | /** 6 | * Retrieve the target of this bullet. 7 | * 8 | * @return the targeted entity 9 | */ 10 | Entity getTarget(); 11 | 12 | /** 13 | * Sets the target of this bullet 14 | * 15 | * @param target the entity to target 16 | */ 17 | void setTarget(Entity target); 18 | } 19 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Silverfish.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a Silverfish. 5 | */ 6 | public interface Silverfish extends Monster {} 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Sittable.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * An animal that can sit still. 5 | */ 6 | public interface Sittable { 7 | 8 | /** 9 | * Checks if this animal is sitting 10 | * 11 | * @return true if sitting 12 | */ 13 | boolean isSitting(); 14 | 15 | /** 16 | * Sets if this animal is sitting. Will remove any path that the animal 17 | * was following beforehand. 18 | * 19 | * @param sitting true if sitting 20 | */ 21 | void setSitting(boolean sitting); 22 | 23 | } 24 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/SkeletonHorse.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a SkeletonHorse - variant of {@link AbstractHorse}. 5 | */ 6 | public interface SkeletonHorse extends AbstractHorse { } 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/SmallFireball.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a small {@link Fireball} 5 | */ 6 | public interface SmallFireball extends Fireball { 7 | 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Snowball.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a snowball. 5 | */ 6 | public interface Snowball extends Projectile {} 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/SpectralArrow.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a spectral arrow. 5 | */ 6 | public interface SpectralArrow extends Arrow { 7 | 8 | /** 9 | * Returns the amount of time that this arrow will apply 10 | * the glowing effect for. 11 | * 12 | * @return the glowing effect ticks 13 | */ 14 | int getGlowingTicks(); 15 | 16 | /** 17 | * Sets the amount of time to apply the glowing effect for. 18 | * 19 | * @param duration the glowing effect ticks 20 | */ 21 | void setGlowingTicks(int duration); 22 | } 23 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Spider.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a Spider. 5 | */ 6 | public interface Spider extends Monster {} 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/SplashPotion.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a thrown splash potion bottle 5 | */ 6 | public interface SplashPotion extends ThrownPotion { } 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Squid.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a Squid. 5 | */ 6 | public interface Squid extends WaterMob {} 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Stray.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a Stray - variant of {@link Skeleton}. 5 | */ 6 | public interface Stray extends Skeleton { } 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/ThrownExpBottle.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a thrown Experience bottle. 5 | */ 6 | public interface ThrownExpBottle extends Projectile { 7 | 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Vehicle.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | import org.bukkit.util.Vector; 4 | 5 | /** 6 | * Represents a vehicle entity. 7 | */ 8 | public interface Vehicle extends Entity { 9 | 10 | /** 11 | * Gets the vehicle's velocity. 12 | * 13 | * @return velocity vector 14 | */ 15 | public Vector getVelocity(); 16 | 17 | /** 18 | * Sets the vehicle's velocity. 19 | * 20 | * @param vel velocity vector 21 | */ 22 | public void setVelocity(Vector vel); 23 | } 24 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Vex.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a Vex. 5 | */ 6 | public interface Vex extends Monster { } 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Vindicator.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a Vindicator. 5 | */ 6 | public interface Vindicator extends Illager { } 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/WaterMob.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a Water Mob 5 | */ 6 | public interface WaterMob extends LivingEntity {} 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Weather.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a Weather related entity, such as a storm 5 | */ 6 | public interface Weather extends Entity {} 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Witch.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a Witch 5 | */ 6 | public interface Witch extends Monster { 7 | } 8 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/Wither.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a Wither boss 5 | */ 6 | public interface Wither extends Monster { 7 | } 8 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/WitherSkeleton.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a WitherSkeleton - variant of {@link Skeleton}. 5 | */ 6 | public interface WitherSkeleton extends Skeleton { } 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/WitherSkull.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a wither skull {@link Fireball}. 5 | */ 6 | public interface WitherSkull extends Fireball { 7 | 8 | /** 9 | * Sets the charged status of the wither skull. 10 | * 11 | * @param charged whether it should be charged 12 | */ 13 | public void setCharged(boolean charged); 14 | 15 | /** 16 | * Gets whether or not the wither skull is charged. 17 | * 18 | * @return whether the wither skull is charged 19 | */ 20 | public boolean isCharged(); 21 | } 22 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/ZombieHorse.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a ZombieHorse - variant of {@link AbstractHorse}. 5 | */ 6 | public interface ZombieHorse extends AbstractHorse { } 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/ZombieVillager.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity; 2 | 3 | /** 4 | * Represents a {@link Zombie} which was once a {@link Villager}. 5 | */ 6 | public interface ZombieVillager extends Zombie { 7 | 8 | /** 9 | * Sets the villager profession of this zombie. 10 | */ 11 | public void setVillagerProfession(Villager.Profession profession); 12 | 13 | /** 14 | * Returns the villager profession of this zombie. 15 | * 16 | * @return the profession or null 17 | */ 18 | public Villager.Profession getVillagerProfession(); 19 | } 20 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/minecart/ExplosiveMinecart.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity.minecart; 2 | 3 | import org.bukkit.entity.Minecart; 4 | 5 | /** 6 | * Represents a Minecart with TNT inside it that can explode when triggered. 7 | */ 8 | public interface ExplosiveMinecart extends Minecart { 9 | } 10 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/minecart/PoweredMinecart.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity.minecart; 2 | 3 | import org.bukkit.entity.Minecart; 4 | 5 | /** 6 | * Represents a powered minecart. A powered minecart moves on its own when a 7 | * player deposits {@link org.bukkit.Material#COAL fuel}. 8 | */ 9 | public interface PoweredMinecart extends Minecart { 10 | } 11 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/minecart/RideableMinecart.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity.minecart; 2 | 3 | import org.bukkit.entity.Minecart; 4 | 5 | /** 6 | * Represents a minecart that can have certain {@link 7 | * org.bukkit.entity.Entity entities} as passengers. Normal passengers 8 | * include all {@link org.bukkit.entity.LivingEntity living entities} with 9 | * the exception of {@link org.bukkit.entity.IronGolem iron golems}. 10 | * Non-player entities that meet normal passenger criteria automatically 11 | * mount these minecarts when close enough. 12 | */ 13 | public interface RideableMinecart extends Minecart { 14 | } 15 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/minecart/SpawnerMinecart.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity.minecart; 2 | 3 | import org.bukkit.entity.Minecart; 4 | 5 | /** 6 | * Represents a Minecart with an {@link org.bukkit.block.CreatureSpawner 7 | * entity spawner} inside it. 8 | */ 9 | public interface SpawnerMinecart extends Minecart { 10 | } 11 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/entity/minecart/StorageMinecart.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.entity.minecart; 2 | 3 | import org.bukkit.entity.Minecart; 4 | import org.bukkit.inventory.InventoryHolder; 5 | 6 | /** 7 | * Represents a minecart with a chest. These types of {@link Minecart 8 | * minecarts} have their own inventory that can be accessed using methods 9 | * from the {@link InventoryHolder} interface. 10 | */ 11 | public interface StorageMinecart extends Minecart, InventoryHolder { 12 | } 13 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/event/Listener.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.event; 2 | 3 | /** 4 | * Simple interface for tagging all EventListeners 5 | */ 6 | public interface Listener {} 7 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/event/block/BlockEvent.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.event.block; 2 | 3 | import org.bukkit.block.Block; 4 | import org.bukkit.event.Event; 5 | 6 | /** 7 | * Represents a block related event. 8 | */ 9 | public abstract class BlockEvent extends Event { 10 | protected Block block; 11 | 12 | public BlockEvent(final Block theBlock) { 13 | block = theBlock; 14 | } 15 | 16 | /** 17 | * Gets the block involved in this event. 18 | * 19 | * @return The Block which block is involved in this event 20 | */ 21 | public final Block getBlock() { 22 | return block; 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/event/entity/ItemSpawnEvent.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.event.entity; 2 | 3 | import org.bukkit.Location; 4 | import org.bukkit.entity.Item; 5 | 6 | /** 7 | * Called when an item is spawned into a world 8 | */ 9 | public class ItemSpawnEvent extends EntitySpawnEvent { 10 | public ItemSpawnEvent(final Item spawnee) { 11 | super(spawnee); 12 | } 13 | 14 | @Deprecated 15 | public ItemSpawnEvent(final Item spawnee, final Location loc) { 16 | this(spawnee); 17 | } 18 | 19 | @Override 20 | public Item getEntity() { 21 | return (Item) entity; 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/event/hanging/HangingEvent.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.event.hanging; 2 | 3 | import org.bukkit.entity.Hanging; 4 | import org.bukkit.event.Event; 5 | 6 | /** 7 | * Represents a hanging entity-related event. 8 | */ 9 | public abstract class HangingEvent extends Event { 10 | protected Hanging hanging; 11 | 12 | protected HangingEvent(final Hanging painting) { 13 | this.hanging = painting; 14 | } 15 | 16 | /** 17 | * Gets the hanging entity involved in this event. 18 | * 19 | * @return the hanging entity 20 | */ 21 | public Hanging getEntity() { 22 | return hanging; 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/event/inventory/DragType.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.event.inventory; 2 | 3 | /** 4 | * Represents the effect of a drag that will be applied to an Inventory in an 5 | * InventoryDragEvent. 6 | */ 7 | public enum DragType { 8 | /** 9 | * One item from the cursor is placed in each selected slot. 10 | */ 11 | SINGLE, 12 | /** 13 | * The cursor is split evenly across all selected slots, not to exceed the 14 | * Material's max stack size, with the remainder going to the cursor. 15 | */ 16 | EVEN, 17 | } 18 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/event/player/PlayerAnimationType.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.event.player; 2 | 3 | /** 4 | * Different types of player animations 5 | */ 6 | public enum PlayerAnimationType { 7 | ARM_SWING 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/event/player/PlayerRegisterChannelEvent.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.event.player; 2 | 3 | import org.bukkit.entity.Player; 4 | 5 | /** 6 | * This is called immediately after a player registers for a plugin channel. 7 | */ 8 | public class PlayerRegisterChannelEvent extends PlayerChannelEvent { 9 | 10 | public PlayerRegisterChannelEvent(final Player player, final String channel) { 11 | super(player, channel); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/event/player/PlayerUnregisterChannelEvent.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.event.player; 2 | 3 | import org.bukkit.entity.Player; 4 | 5 | /** 6 | * This is called immediately after a player unregisters for a plugin channel. 7 | */ 8 | public class PlayerUnregisterChannelEvent extends PlayerChannelEvent { 9 | 10 | public PlayerUnregisterChannelEvent(final Player player, final String channel) { 11 | super(player, channel); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/event/server/PluginEvent.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.event.server; 2 | 3 | import org.bukkit.plugin.Plugin; 4 | 5 | /** 6 | * Used for plugin enable and disable events 7 | */ 8 | public abstract class PluginEvent extends ServerEvent { 9 | private final Plugin plugin; 10 | 11 | public PluginEvent(final Plugin plugin) { 12 | this.plugin = plugin; 13 | } 14 | 15 | /** 16 | * Gets the plugin involved in this event 17 | * 18 | * @return Plugin for this event 19 | */ 20 | public Plugin getPlugin() { 21 | return plugin; 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/event/server/ServerEvent.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.event.server; 2 | 3 | import org.bukkit.event.Event; 4 | 5 | /** 6 | * Miscellaneous server events 7 | */ 8 | public abstract class ServerEvent extends Event { 9 | } 10 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/event/server/ServiceEvent.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.event.server; 2 | 3 | import org.bukkit.plugin.RegisteredServiceProvider; 4 | 5 | /** 6 | * An event relating to a registered service. This is called in a {@link 7 | * org.bukkit.plugin.ServicesManager} 8 | */ 9 | public abstract class ServiceEvent extends ServerEvent { 10 | private final RegisteredServiceProvider provider; 11 | 12 | public ServiceEvent(final RegisteredServiceProvider provider) { 13 | this.provider = provider; 14 | } 15 | 16 | public RegisteredServiceProvider getProvider() { 17 | return provider; 18 | } 19 | } -------------------------------------------------------------------------------- /src/main/java/org/bukkit/event/vehicle/VehicleCollisionEvent.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.event.vehicle; 2 | 3 | import org.bukkit.entity.Vehicle; 4 | 5 | /** 6 | * Raised when a vehicle collides. 7 | */ 8 | public abstract class VehicleCollisionEvent extends VehicleEvent { 9 | public VehicleCollisionEvent(final Vehicle vehicle) { 10 | super(vehicle); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/event/vehicle/VehicleEvent.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.event.vehicle; 2 | 3 | import org.bukkit.entity.Vehicle; 4 | import org.bukkit.event.Event; 5 | 6 | /** 7 | * Represents a vehicle-related event. 8 | */ 9 | public abstract class VehicleEvent extends Event { 10 | protected Vehicle vehicle; 11 | 12 | public VehicleEvent(final Vehicle vehicle) { 13 | this.vehicle = vehicle; 14 | } 15 | 16 | /** 17 | * Get the vehicle. 18 | * 19 | * @return the vehicle 20 | */ 21 | public final Vehicle getVehicle() { 22 | return vehicle; 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/event/weather/WeatherEvent.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.event.weather; 2 | 3 | import org.bukkit.World; 4 | import org.bukkit.event.Event; 5 | 6 | /** 7 | * Represents a Weather-related event 8 | */ 9 | public abstract class WeatherEvent extends Event { 10 | protected World world; 11 | 12 | public WeatherEvent(final World where) { 13 | world = where; 14 | } 15 | 16 | /** 17 | * Returns the World where this event is occurring 18 | * 19 | * @return World this event is occurring in 20 | */ 21 | public final World getWorld() { 22 | return world; 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/event/world/ChunkEvent.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.event.world; 2 | 3 | import org.bukkit.Chunk; 4 | 5 | /** 6 | * Represents a Chunk related event 7 | */ 8 | public abstract class ChunkEvent extends WorldEvent { 9 | protected Chunk chunk; 10 | 11 | protected ChunkEvent(final Chunk chunk) { 12 | super(chunk.getWorld()); 13 | this.chunk = chunk; 14 | } 15 | 16 | /** 17 | * Gets the chunk being loaded/unloaded 18 | * 19 | * @return Chunk that triggered this event 20 | */ 21 | public Chunk getChunk() { 22 | return chunk; 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/event/world/WorldEvent.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.event.world; 2 | 3 | import org.bukkit.World; 4 | import org.bukkit.event.Event; 5 | 6 | /** 7 | * Represents events within a world 8 | */ 9 | public abstract class WorldEvent extends Event { 10 | private final World world; 11 | 12 | public WorldEvent(final World world) { 13 | this.world = world; 14 | } 15 | 16 | /** 17 | * Gets the world primarily involved with this event 18 | * 19 | * @return World which caused this event 20 | */ 21 | public World getWorld() { 22 | return world; 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/event/world/WorldInitEvent.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.event.world; 2 | 3 | import org.bukkit.World; 4 | import org.bukkit.event.HandlerList; 5 | 6 | /** 7 | * Called when a World is initializing 8 | */ 9 | public class WorldInitEvent extends WorldEvent { 10 | private static final HandlerList handlers = new HandlerList(); 11 | 12 | public WorldInitEvent(final World world) { 13 | super(world); 14 | } 15 | 16 | @Override 17 | public HandlerList getHandlers() { 18 | return handlers; 19 | } 20 | 21 | public static HandlerList getHandlerList() { 22 | return handlers; 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/event/world/WorldLoadEvent.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.event.world; 2 | 3 | import org.bukkit.World; 4 | import org.bukkit.event.HandlerList; 5 | 6 | /** 7 | * Called when a World is loaded 8 | */ 9 | public class WorldLoadEvent extends WorldEvent { 10 | private static final HandlerList handlers = new HandlerList(); 11 | 12 | public WorldLoadEvent(final World world) { 13 | super(world); 14 | } 15 | 16 | @Override 17 | public HandlerList getHandlers() { 18 | return handlers; 19 | } 20 | 21 | public static HandlerList getHandlerList() { 22 | return handlers; 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/event/world/WorldSaveEvent.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.event.world; 2 | 3 | import org.bukkit.World; 4 | import org.bukkit.event.HandlerList; 5 | 6 | /** 7 | * Called when a World is saved. 8 | */ 9 | public class WorldSaveEvent extends WorldEvent { 10 | private static final HandlerList handlers = new HandlerList(); 11 | 12 | public WorldSaveEvent(final World world) { 13 | super(world); 14 | } 15 | 16 | @Override 17 | public HandlerList getHandlers() { 18 | return handlers; 19 | } 20 | 21 | public static HandlerList getHandlerList() { 22 | return handlers; 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/inventory/AbstractHorseInventory.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.inventory; 2 | 3 | import org.bukkit.entity.AbstractHorse; 4 | 5 | /** 6 | * An interface to the inventory of an {@link AbstractHorse}. 7 | */ 8 | public interface AbstractHorseInventory extends Inventory { 9 | 10 | /** 11 | * Gets the item in the horse's saddle slot. 12 | * 13 | * @return the saddle item 14 | */ 15 | ItemStack getSaddle(); 16 | 17 | /** 18 | * Sets the item in the horse's saddle slot. 19 | * 20 | * @param stack the new item 21 | */ 22 | void setSaddle(ItemStack stack); 23 | } 24 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/inventory/BeaconInventory.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.inventory; 2 | 3 | /** 4 | * Interface to the inventory of a Beacon. 5 | */ 6 | public interface BeaconInventory extends Inventory { 7 | 8 | /** 9 | * Set the item powering the beacon. 10 | * 11 | * @param item The new item 12 | */ 13 | void setItem(ItemStack item); 14 | 15 | /** 16 | * Get the item powering the beacon. 17 | * 18 | * @return The current item. 19 | */ 20 | ItemStack getItem(); 21 | } 22 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/inventory/DoubleChestInventory.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.inventory; 2 | 3 | import org.bukkit.block.DoubleChest; 4 | 5 | /** 6 | * Interface to the inventory of a Double Chest. 7 | */ 8 | public interface DoubleChestInventory extends Inventory { 9 | 10 | /** 11 | * Get the left half of this double chest. 12 | * 13 | * @return The left side inventory 14 | */ 15 | Inventory getLeftSide(); 16 | 17 | /** 18 | * Get the right side of this double chest. 19 | * 20 | * @return The right side inventory 21 | */ 22 | Inventory getRightSide(); 23 | 24 | DoubleChest getHolder(); 25 | } 26 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/inventory/EquipmentSlot.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.inventory; 2 | 3 | public enum EquipmentSlot { 4 | 5 | HAND, 6 | OFF_HAND, 7 | FEET, 8 | LEGS, 9 | CHEST, 10 | HEAD 11 | } 12 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/inventory/HorseInventory.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.inventory; 2 | 3 | /** 4 | * An interface to the inventory of a Horse. 5 | */ 6 | public interface HorseInventory extends AbstractHorseInventory { 7 | 8 | /** 9 | * Gets the item in the horse's armor slot. 10 | * 11 | * @return the armor item 12 | */ 13 | ItemStack getArmor(); 14 | 15 | /** 16 | * Sets the item in the horse's armor slot. 17 | * 18 | * @param stack the new item 19 | */ 20 | void setArmor(ItemStack stack); 21 | } 22 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/inventory/InventoryHolder.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.inventory; 2 | 3 | public interface InventoryHolder { 4 | 5 | /** 6 | * Get the object's inventory. 7 | * 8 | * @return The inventory. 9 | */ 10 | public Inventory getInventory(); 11 | } 12 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/inventory/LlamaInventory.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.inventory; 2 | 3 | import org.bukkit.entity.Llama; 4 | 5 | /** 6 | * An interface to the inventory of a {@link Llama}. 7 | */ 8 | public interface LlamaInventory extends AbstractHorseInventory { 9 | 10 | /* 11 | * Gets the item in the llama's decor slot. 12 | * 13 | * @return the decor item 14 | */ 15 | ItemStack getDecor(); 16 | 17 | /** 18 | * Sets the item in the llama's decor slot. 19 | * 20 | * @param stack the new item 21 | */ 22 | void setDecor(ItemStack stack); 23 | } 24 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/inventory/MainHand.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.inventory; 2 | 3 | /** 4 | * Represents the chosen main hand of a player 5 | */ 6 | public enum MainHand { 7 | LEFT, 8 | RIGHT 9 | } 10 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/inventory/Recipe.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.inventory; 2 | 3 | /** 4 | * Represents some type of crafting recipe. 5 | */ 6 | public interface Recipe { 7 | 8 | /** 9 | * Get the result of this recipe. 10 | * 11 | * @return The result stack 12 | */ 13 | ItemStack getResult(); 14 | } 15 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/material/Attachable.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.material; 2 | 3 | import org.bukkit.block.BlockFace; 4 | 5 | /** 6 | * Indicates that a block can be attached to another block 7 | */ 8 | public interface Attachable extends Directional { 9 | 10 | /** 11 | * Gets the face that this block is attached on 12 | * 13 | * @return BlockFace attached to 14 | */ 15 | public BlockFace getAttachedFace(); 16 | } 17 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/material/Colorable.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.material; 2 | 3 | import org.bukkit.DyeColor; 4 | 5 | /** 6 | * An object that can be colored. 7 | */ 8 | public interface Colorable { 9 | 10 | /** 11 | * Gets the color of this object. 12 | * 13 | * @return The DyeColor of this object. 14 | */ 15 | public DyeColor getColor(); 16 | 17 | /** 18 | * Sets the color of this object to the specified DyeColor. 19 | * 20 | * @param color The color of the object, as a DyeColor. 21 | */ 22 | public void setColor(DyeColor color); 23 | 24 | } 25 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/material/Directional.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.material; 2 | 3 | import org.bukkit.block.BlockFace; 4 | 5 | public interface Directional { 6 | 7 | /** 8 | * Sets the direction that this block is facing in 9 | * 10 | * @param face The facing direction 11 | */ 12 | public void setFacingDirection(BlockFace face); 13 | 14 | /** 15 | * Gets the direction this block is facing 16 | * 17 | * @return the direction this block is facing 18 | */ 19 | public BlockFace getFacing(); 20 | } 21 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/material/Openable.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.material; 2 | 3 | public interface Openable { 4 | 5 | /** 6 | * Check to see if the door is open. 7 | * 8 | * @return true if the door has swung counterclockwise around its hinge. 9 | */ 10 | boolean isOpen(); 11 | 12 | /** 13 | * Configure this door to be either open or closed; 14 | * 15 | * @param isOpen True to open the door. 16 | */ 17 | void setOpen(boolean isOpen); 18 | } 19 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/material/PressureSensor.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.material; 2 | 3 | public interface PressureSensor { 4 | public boolean isPressed(); 5 | } 6 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/material/Redstone.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.material; 2 | 3 | /** 4 | * Indicated a Material that may carry or create a Redstone current 5 | */ 6 | public interface Redstone { 7 | 8 | /** 9 | * Gets the current state of this Material, indicating if it's powered or 10 | * unpowered 11 | * 12 | * @return true if powered, otherwise false 13 | */ 14 | public boolean isPowered(); 15 | } 16 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/metadata/MetadataConversionException.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.metadata; 2 | 3 | /** 4 | * A MetadataConversionException is thrown any time a {@link 5 | * LazyMetadataValue} attempts to convert a metadata value to an inappropriate 6 | * data type. 7 | */ 8 | @SuppressWarnings("serial") 9 | public class MetadataConversionException extends RuntimeException { 10 | MetadataConversionException(String message) { 11 | super(message); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/metadata/MetadataEvaluationException.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.metadata; 2 | 3 | /** 4 | * A MetadataEvaluationException is thrown any time a {@link 5 | * LazyMetadataValue} fails to evaluate its value due to an exception. The 6 | * originating exception will be included as this exception's cause. 7 | */ 8 | @SuppressWarnings("serial") 9 | public class MetadataEvaluationException extends RuntimeException { 10 | MetadataEvaluationException(Throwable cause) { 11 | super(cause); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/permissions/PermissionRemovedExecutor.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.permissions; 2 | 3 | /** 4 | * Represents a class which is to be notified when a {@link 5 | * PermissionAttachment} is removed from a {@link Permissible} 6 | */ 7 | public interface PermissionRemovedExecutor { 8 | 9 | /** 10 | * Called when a {@link PermissionAttachment} is removed from a {@link 11 | * Permissible} 12 | * 13 | * @param attachment Attachment which was removed 14 | */ 15 | public void attachmentRemoved(PermissionAttachment attachment); 16 | } 17 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/permissions/ServerOperator.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.permissions; 2 | 3 | import org.bukkit.entity.Player; 4 | 5 | /** 6 | * Represents an object that may become a server operator, such as a {@link 7 | * Player} 8 | */ 9 | public interface ServerOperator { 10 | 11 | /** 12 | * Checks if this object is a server operator 13 | * 14 | * @return true if this is an operator, otherwise false 15 | */ 16 | public boolean isOp(); 17 | 18 | /** 19 | * Sets the operator status of this object 20 | * 21 | * @param value New operator value 22 | */ 23 | public void setOp(boolean value); 24 | } 25 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/plugin/AuthorNagException.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.plugin; 2 | 3 | @SuppressWarnings("serial") 4 | public class AuthorNagException extends RuntimeException { 5 | private final String message; 6 | 7 | /** 8 | * Constructs a new AuthorNagException based on the given Exception 9 | * 10 | * @param message Brief message explaining the cause of the exception 11 | */ 12 | public AuthorNagException(final String message) { 13 | this.message = message; 14 | } 15 | 16 | @Override 17 | public String getMessage() { 18 | return message; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/plugin/PluginLoadOrder.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.plugin; 2 | 3 | /** 4 | * Represents the order in which a plugin should be initialized and enabled 5 | */ 6 | public enum PluginLoadOrder { 7 | 8 | /** 9 | * Indicates that the plugin will be loaded at startup 10 | */ 11 | STARTUP, 12 | /** 13 | * Indicates that the plugin will be loaded after the first/default world 14 | * was created 15 | */ 16 | POSTWORLD 17 | } 18 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/plugin/ServicePriority.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.plugin; 2 | 3 | /** 4 | * Represents various priorities of a provider. 5 | */ 6 | public enum ServicePriority { 7 | Lowest, 8 | Low, 9 | Normal, 10 | High, 11 | Highest 12 | } 13 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/plugin/messaging/ChannelNotRegisteredException.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.plugin.messaging; 2 | 3 | /** 4 | * Thrown if a Plugin attempts to send a message on an unregistered channel. 5 | */ 6 | @SuppressWarnings("serial") 7 | public class ChannelNotRegisteredException extends RuntimeException { 8 | public ChannelNotRegisteredException() { 9 | this("Attempted to send a plugin message through an unregistered channel."); 10 | } 11 | 12 | public ChannelNotRegisteredException(String channel) { 13 | super("Attempted to send a plugin message through the unregistered channel `" + channel + "'."); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/plugin/messaging/PluginChannelDirection.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.plugin.messaging; 2 | 3 | /** 4 | * Represents the different directions a plugin channel may go. 5 | */ 6 | public enum PluginChannelDirection { 7 | 8 | /** 9 | * The plugin channel is being sent to the server from a client. 10 | */ 11 | INCOMING, 12 | 13 | /** 14 | * The plugin channel is being sent to a client from the server. 15 | */ 16 | OUTGOING 17 | } 18 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/plugin/messaging/ReservedChannelException.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.plugin.messaging; 2 | 3 | /** 4 | * Thrown if a plugin attempts to register for a reserved channel (such as 5 | * "REGISTER") 6 | */ 7 | @SuppressWarnings("serial") 8 | public class ReservedChannelException extends RuntimeException { 9 | public ReservedChannelException() { 10 | this("Attempted to register for a reserved channel name."); 11 | } 12 | 13 | public ReservedChannelException(String name) { 14 | super("Attempted to register for a reserved channel name ('" + name + "')"); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/projectiles/BlockProjectileSource.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.projectiles; 2 | 3 | import org.bukkit.block.Block; 4 | 5 | public interface BlockProjectileSource extends ProjectileSource { 6 | 7 | /** 8 | * Gets the block this projectile source belongs to. 9 | * 10 | * @return Block for the projectile source 11 | */ 12 | public Block getBlock(); 13 | } 14 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/scoreboard/Criterias.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.scoreboard; 2 | 3 | /** 4 | * Criteria names which trigger an objective to be modified by actions in-game 5 | */ 6 | public class Criterias { 7 | public static final String HEALTH; 8 | public static final String PLAYER_KILLS; 9 | public static final String TOTAL_KILLS; 10 | public static final String DEATHS; 11 | 12 | static { 13 | HEALTH="health"; 14 | PLAYER_KILLS="playerKillCount"; 15 | TOTAL_KILLS="totalKillCount"; 16 | DEATHS="deathCount"; 17 | } 18 | 19 | private Criterias() {} 20 | } 21 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/scoreboard/DisplaySlot.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.scoreboard; 2 | 3 | /** 4 | * Locations for displaying objectives to the player 5 | */ 6 | public enum DisplaySlot { 7 | BELOW_NAME, 8 | PLAYER_LIST, 9 | SIDEBAR; 10 | } 11 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/scoreboard/NameTagVisibility.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.scoreboard; 2 | 3 | /** 4 | * @deprecated replaced by {@link Team.OptionStatus} 5 | */ 6 | @Deprecated 7 | public enum NameTagVisibility { 8 | 9 | /** 10 | * Always show the player's nametag. 11 | */ 12 | ALWAYS, 13 | /** 14 | * Never show the player's nametag. 15 | */ 16 | NEVER, 17 | /** 18 | * Show the player's nametag only to his own team members. 19 | */ 20 | HIDE_FOR_OTHER_TEAMS, 21 | /** 22 | * Show the player's nametag only to members of other teams. 23 | */ 24 | HIDE_FOR_OWN_TEAM; 25 | } 26 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/util/CachedServerIcon.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.util; 2 | 3 | import org.bukkit.Server; 4 | import org.bukkit.event.server.ServerListPingEvent; 5 | 6 | /** 7 | * This is a cached version of a server-icon. It's internal representation 8 | * and implementation is undefined. 9 | * 10 | * @see Server#getServerIcon() 11 | * @see Server#loadServerIcon(java.awt.image.BufferedImage) 12 | * @see Server#loadServerIcon(java.io.File) 13 | * @see ServerListPingEvent#setServerIcon(CachedServerIcon) 14 | */ 15 | public interface CachedServerIcon {} 16 | -------------------------------------------------------------------------------- /src/main/java/org/bukkit/util/Consumer.java: -------------------------------------------------------------------------------- 1 | package org.bukkit.util; 2 | 3 | /** 4 | * Represents an operation that accepts a single input argument and returns no 5 | * result. 6 | * 7 | * @param the type of the input to the operation 8 | */ 9 | public interface Consumer { 10 | 11 | /** 12 | * Performs this operation on the given argument. 13 | * 14 | * @param t the input argument 15 | */ 16 | void accept(T t); 17 | } 18 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/input/KeyEvent.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.input; 2 | 3 | public class KeyEvent { 4 | 5 | public int key; 6 | public char aChar; 7 | public KeyState state; 8 | public long nano; 9 | 10 | public KeyEvent(int key, char c, KeyState state, long nano) { 11 | this.key = key; 12 | this.aChar = c; 13 | this.state = state; 14 | this.nano = nano; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/input/KeyState.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.input; 2 | 3 | public enum KeyState { 4 | 5 | PRESS(true), 6 | RELEASE(false), 7 | REPEAT(true); 8 | 9 | public final boolean isPressed; 10 | 11 | KeyState(boolean isPressed) { 12 | this.isPressed = isPressed; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/AMDBlendMinmaxFactor.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class AMDBlendMinmaxFactor { 4 | 5 | public static final int GL_FACTOR_MAX_AMD = (int) 36893; 6 | public static final int GL_FACTOR_MIN_AMD = (int) 36892; 7 | } 8 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/AMDDepthClampSeparate.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class AMDDepthClampSeparate { 4 | 5 | public static final int GL_DEPTH_CLAMP_FAR_AMD = (int) 36895; 6 | public static final int GL_DEPTH_CLAMP_NEAR_AMD = (int) 36894; 7 | } 8 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/AMDInterleavedElements.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class AMDInterleavedElements { 4 | 5 | public static final int GL_VERTEX_ELEMENT_SWIZZLE_AMD = (int) 37284; 6 | public static final int GL_VERTEX_ID_SWIZZLE_AMD = (int) 37285; 7 | 8 | public static void glVertexAttribParameteriAMD(int index, int pname, int param) { 9 | org.lwjgl3.opengl.AMDInterleavedElements.glVertexAttribParameteriAMD(index, pname, param); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/AMDPinnedMemory.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class AMDPinnedMemory { 4 | 5 | public static final int GL_EXTERNAL_VIRTUAL_MEMORY_BUFFER_AMD = (int) 37216; 6 | } 7 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/AMDQueryBufferObject.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class AMDQueryBufferObject { 4 | 5 | public static final int GL_QUERY_BUFFER_AMD = (int) 37266; 6 | public static final int GL_QUERY_BUFFER_BINDING_AMD = (int) 37267; 7 | public static final int GL_QUERY_RESULT_NO_WAIT_AMD = (int) 37268; 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/AMDSamplePositions.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class AMDSamplePositions { 4 | 5 | public static final int GL_SUBSAMPLE_DISTANCE_AMD = (int) 34879; 6 | 7 | public static void glSetMultisampleAMD(int pname, int index, java.nio.FloatBuffer val) { 8 | org.lwjgl3.opengl.AMDSamplePositions.glSetMultisamplefvAMD(pname, index, val); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/AMDSeamlessCubemapPerTexture.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class AMDSeamlessCubemapPerTexture { 4 | 5 | public static final int GL_TEXTURE_CUBE_MAP_SEAMLESS = (int) 34895; 6 | } 7 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/AMDStencilOperationExtended.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class AMDStencilOperationExtended { 4 | 5 | public static final int GL_REPLACE_VALUE_AMD = (int) 34635; 6 | public static final int GL_SET_AMD = (int) 34634; 7 | public static final int GL_STENCIL_BACK_OP_VALUE_AMD = (int) 34637; 8 | public static final int GL_STENCIL_OP_VALUE_AMD = (int) 34636; 9 | 10 | public static void glStencilOpValueAMD(int face, int value) { 11 | org.lwjgl3.opengl.AMDStencilOperationExtended.glStencilOpValueAMD(face, value); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBClipControl.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBClipControl { 4 | 5 | public static final int GL_CLIP_DEPTH_MODE = (int) 37725; 6 | public static final int GL_CLIP_ORIGIN = (int) 37724; 7 | public static final int GL_LOWER_LEFT = (int) 36001; 8 | public static final int GL_NEGATIVE_ONE_TO_ONE = (int) 37726; 9 | public static final int GL_UPPER_LEFT = (int) 36002; 10 | public static final int GL_ZERO_TO_ONE = (int) 37727; 11 | 12 | public static void glClipControl(int origin, int depth) { 13 | org.lwjgl3.opengl.ARBClipControl.glClipControl(origin, depth); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBConditionalRenderInverted.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBConditionalRenderInverted { 4 | 5 | public static final int GL_QUERY_BY_REGION_NO_WAIT_INVERTED = (int) 36378; 6 | public static final int GL_QUERY_BY_REGION_WAIT_INVERTED = (int) 36377; 7 | public static final int GL_QUERY_NO_WAIT_INVERTED = (int) 36376; 8 | public static final int GL_QUERY_WAIT_INVERTED = (int) 36375; 9 | } 10 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBCopyBuffer.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBCopyBuffer { 4 | 5 | public static final int GL_COPY_READ_BUFFER = (int) 36662; 6 | public static final int GL_COPY_WRITE_BUFFER = (int) 36663; 7 | 8 | public static void glCopyBufferSubData(int readTarget, int writeTarget, long readOffset, long writeOffset, 9 | long size) { 10 | org.lwjgl3.opengl.ARBCopyBuffer.glCopyBufferSubData(readTarget, writeTarget, readOffset, writeOffset, size); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBCullDistance.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBCullDistance { 4 | 5 | public static final int GL_MAX_COMBINED_CLIP_AND_CULL_DISTANCES = (int) 33530; 6 | public static final int GL_MAX_CULL_DISTANCES = (int) 33529; 7 | } 8 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBDepthBufferFloat.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBDepthBufferFloat { 4 | 5 | public static final int GL_DEPTH32F_STENCIL8 = (int) 36013; 6 | public static final int GL_DEPTH_COMPONENT32F = (int) 36012; 7 | public static final int GL_FLOAT_32_UNSIGNED_INT_24_8_REV = (int) 36269; 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBDepthClamp.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBDepthClamp { 4 | 5 | public static final int GL_DEPTH_CLAMP = (int) 34383; 6 | } 7 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBDepthTexture.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBDepthTexture { 4 | 5 | public static final int GL_DEPTH_COMPONENT16_ARB = (int) 33189; 6 | public static final int GL_DEPTH_COMPONENT24_ARB = (int) 33190; 7 | public static final int GL_DEPTH_COMPONENT32_ARB = (int) 33191; 8 | public static final int GL_DEPTH_TEXTURE_MODE_ARB = (int) 34891; 9 | public static final int GL_TEXTURE_DEPTH_SIZE_ARB = (int) 34890; 10 | } 11 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBES31Compatibility.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBES31Compatibility { 4 | 5 | public static void glMemoryBarrierByRegion(int barriers) { 6 | org.lwjgl3.opengl.ARBES31Compatibility.glMemoryBarrierByRegion(barriers); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBEnhancedLayouts.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBEnhancedLayouts { 4 | 5 | public static final int GL_LOCATION_COMPONENT = (int) 37706; 6 | public static final int GL_TRANSFORM_FEEDBACK_BUFFER_INDEX = (int) 37707; 7 | public static final int GL_TRANSFORM_FEEDBACK_BUFFER_STRIDE = (int) 37708; 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBExplicitUniformLocation.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBExplicitUniformLocation { 4 | 5 | public static final int GL_MAX_UNIFORM_LOCATIONS = (int) 33390; 6 | } 7 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBFragmentShader.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBFragmentShader { 4 | 5 | public static final int GL_FRAGMENT_SHADER_ARB = (int) 35632; 6 | public static final int GL_FRAGMENT_SHADER_DERIVATIVE_HINT_ARB = (int) 35723; 7 | public static final int GL_MAX_FRAGMENT_UNIFORM_COMPONENTS_ARB = (int) 35657; 8 | public static final int GL_MAX_TEXTURE_COORDS_ARB = (int) 34929; 9 | public static final int GL_MAX_TEXTURE_IMAGE_UNITS_ARB = (int) 34930; 10 | } 11 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBFramebufferSRGB.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBFramebufferSRGB { 4 | 5 | public static final int GLX_FRAMEBUFFER_SRGB_CAPABLE_ARB = (int) 8370; 6 | public static final int GL_FRAMEBUFFER_SRGB_ARB = (int) 36281; 7 | public static final int GL_FRAMEBUFFER_SRGB_CAPABLE_ARB = (int) 36282; 8 | public static final int WGL_FRAMEBUFFER_SRGB_CAPABLE_ARB = (int) 8361; 9 | } 10 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBHalfFloatPixel.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBHalfFloatPixel { 4 | 5 | public static final int GL_HALF_FLOAT_ARB = (int) 5131; 6 | } 7 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBHalfFloatVertex.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBHalfFloatVertex { 4 | 5 | public static final int GL_HALF_FLOAT = (int) 5131; 6 | } 7 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBInstancedArrays.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBInstancedArrays { 4 | 5 | public static final int GL_VERTEX_ATTRIB_ARRAY_DIVISOR_ARB = (int) 35070; 6 | 7 | public static void glVertexAttribDivisorARB(int index, int divisor) { 8 | org.lwjgl3.opengl.ARBInstancedArrays.glVertexAttribDivisorARB(index, divisor); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBInternalformatQuery.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBInternalformatQuery { 4 | 5 | public static final int GL_NUM_SAMPLE_COUNTS = (int) 37760; 6 | } 7 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBMapBufferAlignment.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBMapBufferAlignment { 4 | 5 | public static final int GL_MIN_MAP_BUFFER_ALIGNMENT = (int) 37052; 6 | } 7 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBMultiBind.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBMultiBind { 4 | } 5 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBOcclusionQuery2.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBOcclusionQuery2 { 4 | 5 | public static final int GL_ANY_SAMPLES_PASSED = (int) 35887; 6 | } 7 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBPixelBufferObject.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBPixelBufferObject extends org.lwjgl.opengl.ARBBufferObject { 4 | 5 | public static final int GL_PIXEL_PACK_BUFFER_ARB = (int) 35051; 6 | public static final int GL_PIXEL_PACK_BUFFER_BINDING_ARB = (int) 35053; 7 | public static final int GL_PIXEL_UNPACK_BUFFER_ARB = (int) 35052; 8 | public static final int GL_PIXEL_UNPACK_BUFFER_BINDING_ARB = (int) 35055; 9 | } 10 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBPointSprite.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBPointSprite { 4 | 5 | public static final int GL_COORD_REPLACE_ARB = (int) 34914; 6 | public static final int GL_POINT_SPRITE_ARB = (int) 34913; 7 | } 8 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBProgram.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBProgram { 4 | } 5 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBProvokingVertex.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBProvokingVertex { 4 | 5 | public static final int GL_FIRST_VERTEX_CONVENTION = (int) 36429; 6 | public static final int GL_LAST_VERTEX_CONVENTION = (int) 36430; 7 | public static final int GL_PROVOKING_VERTEX = (int) 36431; 8 | public static final int GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION = (int) 36428; 9 | 10 | public static void glProvokingVertex(int mode) { 11 | org.lwjgl3.opengl.ARBProvokingVertex.glProvokingVertex(mode); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBQueryBufferObject.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBQueryBufferObject { 4 | 5 | public static final int GL_QUERY_BUFFER = (int) 37266; 6 | public static final int GL_QUERY_BUFFER_BARRIER_BIT = (int) 32768; 7 | public static final int GL_QUERY_BUFFER_BINDING = (int) 37267; 8 | public static final int GL_QUERY_RESULT_NO_WAIT = (int) 37268; 9 | } 10 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBSampleShading.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBSampleShading { 4 | 5 | public static final int GL_MIN_SAMPLE_SHADING_VALUE_ARB = (int) 35895; 6 | public static final int GL_SAMPLE_SHADING_ARB = (int) 35894; 7 | 8 | public static void glMinSampleShadingARB(float value) { 9 | org.lwjgl3.opengl.ARBSampleShading.glMinSampleShadingARB(value); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBSeamlessCubeMap.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBSeamlessCubeMap { 4 | 5 | public static final int GL_TEXTURE_CUBE_MAP_SEAMLESS = (int) 34895; 6 | } 7 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBSeamlessCubemapPerTexture.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBSeamlessCubemapPerTexture { 4 | 5 | public static final int GL_TEXTURE_CUBE_MAP_SEAMLESS = (int) 34895; 6 | } 7 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBShadingLanguage100.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBShadingLanguage100 { 4 | 5 | public static final int GL_SHADING_LANGUAGE_VERSION_ARB = (int) 35724; 6 | } 7 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBShadow.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBShadow { 4 | 5 | public static final int GL_COMPARE_R_TO_TEXTURE_ARB = (int) 34894; 6 | public static final int GL_TEXTURE_COMPARE_FUNC_ARB = (int) 34893; 7 | public static final int GL_TEXTURE_COMPARE_MODE_ARB = (int) 34892; 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBShadowAmbient.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBShadowAmbient { 4 | 5 | public static final int GL_TEXTURE_COMPARE_FAIL_VALUE_ARB = (int) 32959; 6 | } 7 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBSparseBuffer.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBSparseBuffer { 4 | 5 | public static final int GL_SPARSE_BUFFER_PAGE_SIZE_ARB = (int) 33528; 6 | public static final int GL_SPARSE_STORAGE_BIT_ARB = (int) 1024; 7 | 8 | public static void glBufferPageCommitmentARB(int target, long offset, long size, boolean commit) { 9 | org.lwjgl3.opengl.ARBSparseBuffer.glBufferPageCommitmentARB(target, offset, size, commit); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBStencilTexturing.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBStencilTexturing { 4 | 5 | public static final int GL_DEPTH_STENCIL_TEXTURE_MODE = (int) 37098; 6 | } 7 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBTextureBarrier.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBTextureBarrier { 4 | 5 | public static void glTextureBarrier() { 6 | org.lwjgl3.opengl.ARBTextureBarrier.glTextureBarrier(); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBTextureBorderClamp.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBTextureBorderClamp { 4 | 5 | public static final int GL_CLAMP_TO_BORDER_ARB = (int) 33069; 6 | } 7 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBTextureCompressionBPTC.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBTextureCompressionBPTC { 4 | 5 | public static final int GL_COMPRESSED_RGBA_BPTC_UNORM_ARB = (int) 36492; 6 | public static final int GL_COMPRESSED_RGB_BPTC_SIGNED_FLOAT_ARB = (int) 36494; 7 | public static final int GL_COMPRESSED_RGB_BPTC_UNSIGNED_FLOAT_ARB = (int) 36495; 8 | public static final int GL_COMPRESSED_SRGB_ALPHA_BPTC_UNORM_ARB = (int) 36493; 9 | } 10 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBTextureCompressionRGTC.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBTextureCompressionRGTC { 4 | 5 | public static final int GL_COMPRESSED_RED_RGTC1 = (int) 36283; 6 | public static final int GL_COMPRESSED_RG_RGTC2 = (int) 36285; 7 | public static final int GL_COMPRESSED_SIGNED_RED_RGTC1 = (int) 36284; 8 | public static final int GL_COMPRESSED_SIGNED_RG_RGTC2 = (int) 36286; 9 | } 10 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBTextureEnvDot3.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBTextureEnvDot3 { 4 | 5 | public static final int GL_DOT3_RGBA_ARB = (int) 34479; 6 | public static final int GL_DOT3_RGB_ARB = (int) 34478; 7 | } 8 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBTextureGather.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBTextureGather { 4 | 5 | public static final int GL_MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB = (int) 36767; 6 | public static final int GL_MAX_PROGRAM_TEXTURE_GATHER_OFFSET_ARB = (int) 36447; 7 | public static final int GL_MIN_PROGRAM_TEXTURE_GATHER_OFFSET_ARB = (int) 36446; 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBTextureMirrorClampToEdge.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBTextureMirrorClampToEdge { 4 | 5 | public static final int GL_MIRROR_CLAMP_TO_EDGE = (int) 34627; 6 | } 7 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBTextureMirroredRepeat.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBTextureMirroredRepeat { 4 | 5 | public static final int GL_MIRRORED_REPEAT_ARB = (int) 33648; 6 | } 7 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBTextureRGB10_A2UI.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBTextureRGB10_A2UI { 4 | 5 | public static final int GL_RGB10_A2UI = (int) 36975; 6 | } 7 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBTextureRectangle.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBTextureRectangle { 4 | 5 | public static final int GL_MAX_RECTANGLE_TEXTURE_SIZE_ARB = (int) 34040; 6 | public static final int GL_PROXY_TEXTURE_RECTANGLE_ARB = (int) 34039; 7 | public static final int GL_SAMPLER_2D_RECT_ARB = (int) 35683; 8 | public static final int GL_SAMPLER_2D_RECT_SHADOW_ARB = (int) 35684; 9 | public static final int GL_TEXTURE_BINDING_RECTANGLE_ARB = (int) 34038; 10 | public static final int GL_TEXTURE_RECTANGLE_ARB = (int) 34037; 11 | } 12 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBTextureSwizzle.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBTextureSwizzle { 4 | 5 | public static final int GL_TEXTURE_SWIZZLE_A = (int) 36421; 6 | public static final int GL_TEXTURE_SWIZZLE_B = (int) 36420; 7 | public static final int GL_TEXTURE_SWIZZLE_G = (int) 36419; 8 | public static final int GL_TEXTURE_SWIZZLE_R = (int) 36418; 9 | public static final int GL_TEXTURE_SWIZZLE_RGBA = (int) 36422; 10 | } 11 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBTransformFeedbackInstanced.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBTransformFeedbackInstanced { 4 | 5 | public static void glDrawTransformFeedbackInstanced(int mode, int id, int primcount) { 6 | org.lwjgl3.opengl.ARBTransformFeedbackInstanced.glDrawTransformFeedbackInstanced(mode, id, primcount); 7 | } 8 | 9 | public static void glDrawTransformFeedbackStreamInstanced(int mode, int id, int stream, int primcount) { 10 | org.lwjgl3.opengl.ARBTransformFeedbackInstanced 11 | .glDrawTransformFeedbackStreamInstanced(mode, id, stream, primcount); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ARBTransformFeedbackOverflowQuery.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ARBTransformFeedbackOverflowQuery { 4 | 5 | public static final int GL_TRANSFORM_FEEDBACK_OVERFLOW_ARB = (int) 33516; 6 | public static final int GL_TRANSFORM_FEEDBACK_STREAM_OVERFLOW_ARB = (int) 33517; 7 | } 8 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ATIMeminfo.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ATIMeminfo { 4 | 5 | public static final int GL_RENDERBUFFER_FREE_MEMORY_ATI = (int) 34813; 6 | public static final int GL_TEXTURE_FREE_MEMORY_ATI = (int) 34812; 7 | public static final int GL_VBO_FREE_MEMORY_ATI = (int) 34811; 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/ATITextureCompression3DC.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class ATITextureCompression3DC { 4 | 5 | public static final int GL_COMPRESSED_LUMINANCE_ALPHA_3DC_ATI = (int) 34871; 6 | } 7 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/EXTBlendEquationSeparate.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class EXTBlendEquationSeparate { 4 | 5 | public static final int GL_BLEND_EQUATION_ALPHA_EXT = (int) 34877; 6 | public static final int GL_BLEND_EQUATION_RGB_EXT = (int) 32777; 7 | 8 | public static void glBlendEquationSeparateEXT(int modeRGB, int modeAlpha) { 9 | org.lwjgl3.opengl.EXTBlendEquationSeparate.glBlendEquationSeparateEXT(modeRGB, modeAlpha); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/EXTBlendMinmax.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class EXTBlendMinmax { 4 | 5 | public static final int GL_BLEND_EQUATION_EXT = (int) 32777; 6 | public static final int GL_FUNC_ADD_EXT = (int) 32774; 7 | public static final int GL_MAX_EXT = (int) 32776; 8 | public static final int GL_MIN_EXT = (int) 32775; 9 | 10 | public static void glBlendEquationEXT(int mode) { 11 | org.lwjgl3.opengl.EXTBlendMinmax.glBlendEquationEXT(mode); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/EXTBlendSubtract.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class EXTBlendSubtract { 4 | 5 | public static final int GL_FUNC_REVERSE_SUBTRACT_EXT = (int) 32779; 6 | public static final int GL_FUNC_SUBTRACT_EXT = (int) 32778; 7 | } 8 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/EXTCompiledVertexArray.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class EXTCompiledVertexArray { 4 | 5 | public static final int GL_ARRAY_ELEMENT_LOCK_COUNT_EXT = (int) 33193; 6 | public static final int GL_ARRAY_ELEMENT_LOCK_FIRST_EXT = (int) 33192; 7 | 8 | public static void glLockArraysEXT(int first, int count) { 9 | org.lwjgl3.opengl.EXTCompiledVertexArray.glLockArraysEXT(first, count); 10 | } 11 | 12 | public static void glUnlockArraysEXT() { 13 | org.lwjgl3.opengl.EXTCompiledVertexArray.glUnlockArraysEXT(); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/EXTDepthBoundsTest.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class EXTDepthBoundsTest { 4 | 5 | public static final int GL_DEPTH_BOUNDS_EXT = (int) 34961; 6 | public static final int GL_DEPTH_BOUNDS_TEST_EXT = (int) 34960; 7 | 8 | public static void glDepthBoundsEXT(double zmin, double zmax) { 9 | org.lwjgl3.opengl.EXTDepthBoundsTest.glDepthBoundsEXT(zmin, zmax); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/EXTFramebufferMultisampleBlitScaled.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class EXTFramebufferMultisampleBlitScaled { 4 | 5 | public static final int GL_SCALED_RESOLVE_FASTEST_EXT = (int) 37050; 6 | public static final int GL_SCALED_RESOLVE_NICEST_EXT = (int) 37051; 7 | } 8 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/EXTFramebufferSRGB.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class EXTFramebufferSRGB { 4 | 5 | public static final int GLX_FRAMEBUFFER_SRGB_CAPABLE_EXT = (int) 8370; 6 | public static final int GL_FRAMEBUFFER_SRGB_CAPABLE_EXT = (int) 36282; 7 | public static final int GL_FRAMEBUFFER_SRGB_EXT = (int) 36281; 8 | public static final int WGL_FRAMEBUFFER_SRGB_CAPABLE_EXT = (int) 8361; 9 | } 10 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/EXTPackedDepthStencil.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class EXTPackedDepthStencil { 4 | 5 | public static final int GL_DEPTH24_STENCIL8_EXT = (int) 35056; 6 | public static final int GL_DEPTH_STENCIL_EXT = (int) 34041; 7 | public static final int GL_TEXTURE_STENCIL_SIZE_EXT = (int) 35057; 8 | public static final int GL_UNSIGNED_INT_24_8_EXT = (int) 34042; 9 | } 10 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/EXTPackedFloat.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class EXTPackedFloat { 4 | 5 | public static final int GLX_RGBA_UNSIGNED_FLOAT_BIT_EXT = (int) 8; 6 | public static final int GLX_RGBA_UNSIGNED_FLOAT_TYPE_EXT = (int) 8369; 7 | public static final int GL_R11F_G11F_B10F_EXT = (int) 35898; 8 | public static final int GL_RGBA_SIGNED_COMPONENTS_EXT = (int) 35900; 9 | public static final int GL_UNSIGNED_INT_10F_11F_11F_REV_EXT = (int) 35899; 10 | public static final int WGL_TYPE_RGBA_UNSIGNED_FLOAT_EXT = (int) 8360; 11 | } 12 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/EXTPixelBufferObject.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class EXTPixelBufferObject extends org.lwjgl.opengl.ARBBufferObject { 4 | 5 | public static final int GL_PIXEL_PACK_BUFFER_BINDING_EXT = (int) 35053; 6 | public static final int GL_PIXEL_PACK_BUFFER_EXT = (int) 35051; 7 | public static final int GL_PIXEL_UNPACK_BUFFER_BINDING_EXT = (int) 35055; 8 | public static final int GL_PIXEL_UNPACK_BUFFER_EXT = (int) 35052; 9 | } 10 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/EXTProvokingVertex.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class EXTProvokingVertex { 4 | 5 | public static final int GL_FIRST_VERTEX_CONVENTION_EXT = (int) 36429; 6 | public static final int GL_LAST_VERTEX_CONVENTION_EXT = (int) 36430; 7 | public static final int GL_PROVOKING_VERTEX_EXT = (int) 36431; 8 | public static final int GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION_EXT = (int) 36428; 9 | 10 | public static void glProvokingVertexEXT(int mode) { 11 | org.lwjgl3.opengl.EXTProvokingVertex.glProvokingVertexEXT(mode); 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/EXTSharedTexturePalette.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class EXTSharedTexturePalette { 4 | 5 | public static final int GL_SHARED_TEXTURE_PALETTE_EXT = (int) 33275; 6 | } 7 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/EXTStencilClearTag.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class EXTStencilClearTag { 4 | 5 | public static final int GL_STENCIL_CLEAR_TAG_VALUE_EXT = (int) 35059; 6 | public static final int GL_STENCIL_TAG_BITS_EXT = (int) 35058; 7 | 8 | public static void glStencilClearTagEXT(int stencilTagBits, int stencilClearTag) { 9 | org.lwjgl3.opengl.EXTStencilClearTag.glStencilClearTagEXT(stencilTagBits, stencilClearTag); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/EXTStencilTwoSide.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class EXTStencilTwoSide { 4 | 5 | public static final int GL_ACTIVE_STENCIL_FACE_EXT = (int) 35089; 6 | public static final int GL_STENCIL_TEST_TWO_SIDE_EXT = (int) 35088; 7 | 8 | public static void glActiveStencilFaceEXT(int face) { 9 | org.lwjgl3.opengl.EXTStencilTwoSide.glActiveStencilFaceEXT(face); 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/EXTStencilWrap.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class EXTStencilWrap { 4 | 5 | public static final int GL_DECR_WRAP_EXT = (int) 34056; 6 | public static final int GL_INCR_WRAP_EXT = (int) 34055; 7 | } 8 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/EXTTextureCompressionLATC.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class EXTTextureCompressionLATC { 4 | 5 | public static final int GL_COMPRESSED_LUMINANCE_ALPHA_LATC2_EXT = (int) 35954; 6 | public static final int GL_COMPRESSED_LUMINANCE_LATC1_EXT = (int) 35952; 7 | public static final int GL_COMPRESSED_SIGNED_LUMINANCE_ALPHA_LATC2_EXT = (int) 35955; 8 | public static final int GL_COMPRESSED_SIGNED_LUMINANCE_LATC1_EXT = (int) 35953; 9 | } 10 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/EXTTextureCompressionRGTC.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class EXTTextureCompressionRGTC { 4 | 5 | public static final int GL_COMPRESSED_RED_GREEN_RGTC2_EXT = (int) 36285; 6 | public static final int GL_COMPRESSED_RED_RGTC1_EXT = (int) 36283; 7 | public static final int GL_COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT = (int) 36286; 8 | public static final int GL_COMPRESSED_SIGNED_RED_RGTC1_EXT = (int) 36284; 9 | } 10 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/EXTTextureCompressionS3TC.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class EXTTextureCompressionS3TC { 4 | 5 | public static final int GL_COMPRESSED_RGBA_S3TC_DXT1_EXT = (int) 33777; 6 | public static final int GL_COMPRESSED_RGBA_S3TC_DXT3_EXT = (int) 33778; 7 | public static final int GL_COMPRESSED_RGBA_S3TC_DXT5_EXT = (int) 33779; 8 | public static final int GL_COMPRESSED_RGB_S3TC_DXT1_EXT = (int) 33776; 9 | } 10 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/EXTTextureFilterAnisotropic.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class EXTTextureFilterAnisotropic { 4 | 5 | public static final int GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT = (int) 34047; 6 | public static final int GL_TEXTURE_MAX_ANISOTROPY_EXT = (int) 34046; 7 | } 8 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/EXTTextureMirrorClamp.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class EXTTextureMirrorClamp { 4 | 5 | public static final int GL_MIRROR_CLAMP_EXT = (int) 34626; 6 | public static final int GL_MIRROR_CLAMP_TO_BORDER_EXT = (int) 35090; 7 | public static final int GL_MIRROR_CLAMP_TO_EDGE_EXT = (int) 34627; 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/EXTTextureSRGBDecode.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class EXTTextureSRGBDecode { 4 | 5 | public static final int GL_DECODE_EXT = (int) 35401; 6 | public static final int GL_SKIP_DECODE_EXT = (int) 35402; 7 | public static final int GL_TEXTURE_SRGB_DECODE_EXT = (int) 35400; 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/EXTTextureSharedExponent.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class EXTTextureSharedExponent { 4 | 5 | public static final int GL_RGB9_E5_EXT = (int) 35901; 6 | public static final int GL_TEXTURE_SHARED_SIZE_EXT = (int) 35903; 7 | public static final int GL_UNSIGNED_INT_5_9_9_9_REV_EXT = (int) 35902; 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/EXTTextureSwizzle.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class EXTTextureSwizzle { 4 | 5 | public static final int GL_TEXTURE_SWIZZLE_A_EXT = (int) 36421; 6 | public static final int GL_TEXTURE_SWIZZLE_B_EXT = (int) 36420; 7 | public static final int GL_TEXTURE_SWIZZLE_G_EXT = (int) 36419; 8 | public static final int GL_TEXTURE_SWIZZLE_RGBA_EXT = (int) 36422; 9 | public static final int GL_TEXTURE_SWIZZLE_R_EXT = (int) 36418; 10 | } 11 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/EXTTimerQuery.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class EXTTimerQuery { 4 | 5 | public static final int GL_TIME_ELAPSED_EXT = (int) 35007; 6 | 7 | public static void glGetQueryObjectEXT(int id, int pname, java.nio.LongBuffer params) { 8 | org.lwjgl3.opengl.EXTTimerQuery.glGetQueryObjecti64vEXT(id, pname, params); 9 | } 10 | 11 | public static void glGetQueryObjectuEXT(int id, int pname, java.nio.LongBuffer params) { 12 | org.lwjgl3.opengl.EXTTimerQuery.glGetQueryObjectui64vEXT(id, pname, params); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/GL15x.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | import java.nio.ByteBuffer; 4 | 5 | import org.lwjgl3.BufferUtils; 6 | import org.lwjgl3.PointerBuffer; 7 | import org.lwjgl3.opengl.GL15; 8 | 9 | public class GL15x { 10 | 11 | public static ByteBuffer glGetBufferPointer(int target, int pname) { 12 | int size = GL15.glGetBufferParameteri(target, GL15.GL_BUFFER_SIZE); 13 | 14 | PointerBuffer pb = BufferUtils.createPointerBuffer(1); 15 | GL15.glGetBufferPointerv(target, pname, pb); 16 | 17 | return pb.getByteBuffer(0, size); 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/GLContext.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class GLContext { 4 | 5 | private static ContextCapabilities contextCapabilities = new ContextCapabilities(); 6 | 7 | public static ContextCapabilities getCapabilities() { 8 | return contextCapabilities; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/GREMEDYFrameTerminator.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class GREMEDYFrameTerminator { 4 | 5 | public static void glFrameTerminatorGREMEDY() { 6 | org.lwjgl3.opengl.GREMEDYFrameTerminator.glFrameTerminatorGREMEDY(); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/GREMEDYStringMarker.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class GREMEDYStringMarker { 4 | 5 | public static void glStringMarkerGREMEDY(java.lang.CharSequence string) { 6 | org.lwjgl3.opengl.GREMEDYStringMarker.glStringMarkerGREMEDY(string); 7 | } 8 | 9 | public static void glStringMarkerGREMEDY(java.nio.ByteBuffer string) { 10 | org.lwjgl3.opengl.GREMEDYStringMarker.glStringMarkerGREMEDY(string); 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/KHRContextFlushControl.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class KHRContextFlushControl { 4 | 5 | public static final int GL_CONTEXT_RELEASE_BEHAVIOR = (int) 33531; 6 | public static final int GL_CONTEXT_RELEASE_BEHAVIOR_FLUSH = (int) 33532; 7 | } 8 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/NVCopyDepthToColor.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class NVCopyDepthToColor { 4 | 5 | public static final int GL_DEPTH_STENCIL_TO_BGRA_NV = (int) 34927; 6 | public static final int GL_DEPTH_STENCIL_TO_RGBA_NV = (int) 34926; 7 | } 8 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/NVDeepTexture3D.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class NVDeepTexture3D { 4 | 5 | public static final int GL_MAX_DEEP_3D_TEXTURE_DEPTH_NV = (int) 37073; 6 | public static final int GL_MAX_DEEP_3D_TEXTURE_WIDTH_HEIGHT_NV = (int) 37072; 7 | } 8 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/NVDepthClamp.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class NVDepthClamp { 4 | 5 | public static final int GL_DEPTH_CLAMP_NV = (int) 34383; 6 | } 7 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/NVDrawTexture.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class NVDrawTexture { 4 | 5 | public static void glDrawTextureNV(int texture, int sampler, float x0, float y0, float x1, float y1, float z, 6 | float s0, float t0, float s1, float t1) { 7 | org.lwjgl3.opengl.NVDrawTexture.glDrawTextureNV(texture, sampler, x0, y0, x1, y1, z, s0, t0, s1, t1); 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/NVFogDistance.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class NVFogDistance { 4 | 5 | public static final int GL_EYE_PLANE_ABSOLUTE_NV = (int) 34140; 6 | public static final int GL_EYE_RADIAL_NV = (int) 34139; 7 | public static final int GL_FOG_DISTANCE_MODE_NV = (int) 34138; 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/NVLightMaxExponent.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class NVLightMaxExponent { 4 | 5 | public static final int GL_MAX_SHININESS_NV = (int) 34052; 6 | public static final int GL_MAX_SPOT_EXPONENT_NV = (int) 34053; 7 | } 8 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/NVMultisampleCoverage.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class NVMultisampleCoverage { 4 | 5 | public static final int GL_COLOR_SAMPLES_NV = (int) 36384; 6 | public static final int GL_COVERAGE_SAMPLES_NV = (int) 32937; 7 | } 8 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/NVMultisampleFilterHint.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class NVMultisampleFilterHint { 4 | 5 | public static final int GL_MULTISAMPLE_FILTER_HINT_NV = (int) 34100; 6 | } 7 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/NVPackedDepthStencil.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class NVPackedDepthStencil { 4 | 5 | public static final int GL_DEPTH_STENCIL_NV = (int) 34041; 6 | public static final int GL_UNSIGNED_INT_24_8_NV = (int) 34042; 7 | } 8 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/NVPointSprite.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class NVPointSprite { 4 | 5 | public static final int GL_COORD_REPLACE_NV = (int) 34914; 6 | public static final int GL_POINT_SPRITE_NV = (int) 34913; 7 | public static final int GL_POINT_SPRITE_R_MODE_NV = (int) 34915; 8 | 9 | public static void glPointParameterNV(int pname, java.nio.IntBuffer params) { 10 | org.lwjgl3.opengl.NVPointSprite.glPointParameterivNV(pname, params); 11 | } 12 | 13 | public static void glPointParameteriNV(int pname, int param) { 14 | org.lwjgl3.opengl.NVPointSprite.glPointParameteriNV(pname, param); 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/NVPrimitiveRestart.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class NVPrimitiveRestart { 4 | 5 | public static final int GL_PRIMITIVE_RESTART_INDEX_NV = (int) 34137; 6 | public static final int GL_PRIMITIVE_RESTART_NV = (int) 34136; 7 | 8 | public static void glPrimitiveRestartIndexNV(int index) { 9 | org.lwjgl3.opengl.NVPrimitiveRestart.glPrimitiveRestartIndexNV(index); 10 | } 11 | 12 | public static void glPrimitiveRestartNV() { 13 | org.lwjgl3.opengl.NVPrimitiveRestart.glPrimitiveRestartNV(); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/NVShaderBufferStore.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class NVShaderBufferStore { 4 | 5 | public static final int GL_SHADER_GLOBAL_ACCESS_BARRIER_BIT_NV = (int) 16; 6 | } 7 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/NVTexgenReflection.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class NVTexgenReflection { 4 | 5 | public static final int GL_NORMAL_MAP_NV = (int) 34065; 6 | public static final int GL_REFLECTION_MAP_NV = (int) 34066; 7 | } 8 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/NVTextureBarrier.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class NVTextureBarrier { 4 | 5 | public static void glTextureBarrierNV() { 6 | org.lwjgl3.opengl.NVTextureBarrier.glTextureBarrierNV(); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /src/main/java/org/lwjgl/opengl/NVVertexArrayRange2.java: -------------------------------------------------------------------------------- 1 | package org.lwjgl.opengl; 2 | 3 | public class NVVertexArrayRange2 { 4 | 5 | public static final int GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV = (int) 34099; 6 | } 7 | -------------------------------------------------------------------------------- /src/main/java/org/spigotmc/AsyncCatcher.java: -------------------------------------------------------------------------------- 1 | package org.spigotmc; 2 | 3 | import net.minecraft.server.MinecraftServer; 4 | 5 | public class AsyncCatcher 6 | { 7 | 8 | public static boolean enabled = true; 9 | 10 | public static void catchOp(String reason) 11 | { 12 | if ( enabled && Thread.currentThread() != MinecraftServer.getServerInst().primaryThread ) 13 | { 14 | throw new IllegalStateException( "Asynchronous " + reason + "!" ); 15 | } 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /src/main/java/org/spigotmc/CaseInsensitiveMap.java: -------------------------------------------------------------------------------- 1 | package org.spigotmc; 2 | 3 | import gnu.trove.map.hash.TCustomHashMap; 4 | import java.util.Map; 5 | 6 | public class CaseInsensitiveMap extends TCustomHashMap { 7 | 8 | public CaseInsensitiveMap() { 9 | super(CaseInsensitiveHashingStrategy.INSTANCE); 10 | } 11 | 12 | public CaseInsensitiveMap(Map map) { 13 | super(CaseInsensitiveHashingStrategy.INSTANCE, map); 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/main/java/org/spigotmc/SneakyThrow.java: -------------------------------------------------------------------------------- 1 | package org.spigotmc; 2 | 3 | public class SneakyThrow 4 | { 5 | 6 | public static void sneaky(Throwable t) 7 | { 8 | throw SneakyThrow.superSneaky( t ); 9 | } 10 | 11 | private static T superSneaky(Throwable t) throws T 12 | { 13 | throw (T) t; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/main/java/org/spigotmc/TickLimiter.java: -------------------------------------------------------------------------------- 1 | package org.spigotmc; 2 | 3 | public class TickLimiter { 4 | 5 | private final int maxTime; 6 | private long startTime; 7 | 8 | public TickLimiter(int maxtime) { 9 | this.maxTime = maxtime; 10 | } 11 | 12 | public void initTick() { 13 | startTime = System.currentTimeMillis(); 14 | } 15 | 16 | public boolean shouldContinue() { 17 | long remaining = System.currentTimeMillis() - startTime; 18 | return remaining < maxTime; 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/main/java/org/spigotmc/ValidateUtils.java: -------------------------------------------------------------------------------- 1 | package org.spigotmc; 2 | 3 | public class ValidateUtils 4 | { 5 | 6 | public static String limit(String str, int limit) 7 | { 8 | if ( str.length() > limit ) 9 | { 10 | return str.substring( 0, limit ); 11 | } 12 | return str; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /src/main/resources/META-INF/maven/org.bukkit/bukkit/pom.properties: -------------------------------------------------------------------------------- 1 | #Generated by Maven 2 | #Wed Sep 12 05:00:11 UTC 2018 3 | version=1.12.2-R0.1-SNAPSHOT 4 | groupId=org.bukkit 5 | artifactId=bukkit 6 | -------------------------------------------------------------------------------- /src/main/resources/META-INF/maven/org.bukkit/craftbukkit/pom.properties: -------------------------------------------------------------------------------- 1 | #Created by Apache Maven 3.5.0 2 | version=1.12.2-R0.1-SNAPSHOT 3 | groupId=org.bukkit 4 | artifactId=craftbukkit 5 | -------------------------------------------------------------------------------- /src/main/resources/assets/fml/textures/gui/forge.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/main/resources/assets/fml/textures/gui/forge.png -------------------------------------------------------------------------------- /src/main/resources/assets/fml/textures/gui/icons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/main/resources/assets/fml/textures/gui/icons.png -------------------------------------------------------------------------------- /src/main/resources/assets/forge/blockstates/dynbucket.json: -------------------------------------------------------------------------------- 1 | { 2 | "forge_marker": 1, 3 | "variants": { 4 | "inventory": { 5 | "model": "forge:forgebucket", 6 | "textures": { 7 | "base": "forge:items/bucket_base", 8 | "fluid": "forge:items/bucket_fluid", 9 | "cover": "forge:items/bucket_cover" 10 | }, 11 | "transform": "forge:default-item", 12 | "custom": { 13 | "fluid": "water", 14 | "flipGas": true, 15 | "applyTint": false 16 | } 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /src/main/resources/assets/forge/lang/README.txt: -------------------------------------------------------------------------------- 1 | If you want to contribute to the translation of forge, please go here : https://crowdin.com/project/minecraft-forge -------------------------------------------------------------------------------- /src/main/resources/assets/forge/models/item/bucket.json: -------------------------------------------------------------------------------- 1 | { 2 | "parent": "item/generated", 3 | "textures": { 4 | "layer0": "forge:items/bucket_base" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /src/main/resources/assets/forge/models/item/bucket_milk.json: -------------------------------------------------------------------------------- 1 | { 2 | "parent": "item/generated", 3 | "textures": { 4 | "layer0": "forge:items/bucket_base", 5 | "layer1": "forge:items/bucket_fluid", 6 | "layer2": "forge:items/bucket_cover" 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /src/main/resources/assets/forge/textures/gui/version_check_icons.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/main/resources/assets/forge/textures/gui/version_check_icons.png -------------------------------------------------------------------------------- /src/main/resources/assets/forge/textures/items/bucket_fluid.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/main/resources/assets/forge/textures/items/bucket_fluid.png -------------------------------------------------------------------------------- /src/main/resources/assets/forge/textures/items/vanilla_bucket_cover_mask.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/main/resources/assets/forge/textures/items/vanilla_bucket_cover_mask.png -------------------------------------------------------------------------------- /src/main/resources/forge.srg: -------------------------------------------------------------------------------- 1 | MD: net/minecraft/server/management/ServerConfigurationManager/initializeConnectionToPlayer (Lnet/minecraft/network/NetworkManager;Lnet/minecraft/entity/player/EntityPlayerMP;Lnet/minecraft/network/NetHandlerPlayServer;)V net/minecraft/server/management/ServerConfigurationManager/func_72355_a (Lnet/minecraft/network/NetworkManager;Lnet/minecraft/entity/player/EntityPlayerMP;Lnet/minecraft/network/NetHandlerPlayServer;)V 2 | -------------------------------------------------------------------------------- /src/main/resources/forge_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/main/resources/forge_logo.png -------------------------------------------------------------------------------- /src/main/resources/libs/catserver-pack200-jdk11.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/main/resources/libs/catserver-pack200-jdk11.jar -------------------------------------------------------------------------------- /src/main/resources/logging.properties: -------------------------------------------------------------------------------- 1 | handlers= java.util.logging.ConsoleHandler 2 | .level= INFO 3 | java.util.logging.ConsoleHandler.level = INFO 4 | java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter 5 | java.util.logging.SimpleFormatter.format=[%1$tF %1$tT] [%4$-7s] %5$s %n -------------------------------------------------------------------------------- /src/main/resources/mcplogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/main/resources/mcplogo.png -------------------------------------------------------------------------------- /src/main/resources/mcpmod.info: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "modid": "mcp", 4 | "name": "Minecraft Coder Pack", 5 | "description": "Modding toolkit to decompile and deobfuscate the Minecraft client and server files.", 6 | "version": "9.42", 7 | "mcversion": "1.12.2", 8 | "logoFile": "/mcplogo.png", 9 | "url": "http://www.modcoderpack.com/website/", 10 | "updateUrl": "", 11 | "authors": ["Searge", "ProfMobius", "IngisKahn", "Fesh0r", "ZeuX", "R4wk", "LexManos", "Bspkrs", "Others"], 12 | "credits": "Made by the MCP team", 13 | "parent": "", 14 | "screenshots": [], 15 | "dependencies": [] 16 | } 17 | ] 18 | -------------------------------------------------------------------------------- /src/main/resources/url.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/main/resources/url.png -------------------------------------------------------------------------------- /src/test/resources/assets/collisionboxexeventtest/blockstates/box_block.json: -------------------------------------------------------------------------------- 1 | { 2 | "forge_marker": 1, 3 | "defaults": { 4 | "model": "minecraft:bedrock" 5 | }, 6 | "variants": { 7 | "normal": [{}], 8 | "inventory": [{}] 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /src/test/resources/assets/config_test/lang/en_US.lang: -------------------------------------------------------------------------------- 1 | config_test.config.types=Field Types 2 | config_test.config.annotations=Annotations 3 | config_test.config.subcats=Subcategories 4 | config_test.config.maps=Maps -------------------------------------------------------------------------------- /src/test/resources/assets/constantloadingtest/test/_constants.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "ingredient": { 4 | "item": "minecraft:flint" 5 | }, 6 | "name": "FLINT" 7 | } 8 | ] -------------------------------------------------------------------------------- /src/test/resources/assets/crafting_system_test/recipes/_factories.json: -------------------------------------------------------------------------------- 1 | { 2 | "ingredients": { 3 | "nbt": "net.minecraftforge.debug.gameplay.CraftingSystemTest$IngredientFactory" 4 | }, 5 | "recipes": { 6 | "free": "net.minecraftforge.debug.gameplay.CraftingSystemTest$RecipeFactory" 7 | }, 8 | "conditions": { 9 | "true": "net.minecraftforge.debug.gameplay.CraftingSystemTest$ConditionFactory" 10 | } 11 | } -------------------------------------------------------------------------------- /src/test/resources/assets/crafting_system_test/recipes/conditions_property_not_array.json: -------------------------------------------------------------------------------- 1 | { 2 | "conditions": { 3 | "not an array": "conditions property must be an array" 4 | }, 5 | "type": "crafting_shaped", 6 | "group": "planks", 7 | "pattern": [ 8 | "#" 9 | ], 10 | "key": { 11 | "#": { 12 | "item": "minecraft:log2", 13 | "data": 0 14 | } 15 | }, 16 | "result": { 17 | "item": "minecraft:planks", 18 | "data": 4, 19 | "count": 4 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/test/resources/assets/crafting_system_test/recipes/oak_planks_from_logs.json: -------------------------------------------------------------------------------- 1 | { 2 | "_comment": [ 3 | "Cut an Oak Log into two Oak Planks with a Wooden Axe" 4 | ], 5 | "type": "minecraft:crafting_shapeless", 6 | "group": "minecraft:planks", 7 | "ingredients": [ 8 | { 9 | "item": "minecraft:wooden_axe", 10 | "data": 32767 11 | }, 12 | { 13 | "item": "minecraft:log", 14 | "data": 0 15 | } 16 | ], 17 | "result": { 18 | "item": "minecraft:planks", 19 | "data": 0, 20 | "count": 2 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /src/test/resources/assets/custom_sprite_test/blockstates/custom_sprite_block.json: -------------------------------------------------------------------------------- 1 | { 2 | "variants": { 3 | "normal": { "model": "custom_sprite_test:custom_sprite_block" } 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /src/test/resources/assets/custom_sprite_test/models/block/custom_sprite_block.json: -------------------------------------------------------------------------------- 1 | { 2 | "parent": "block/crafting_table", 3 | "textures": { 4 | "down": "custom_sprite_test:bottom", 5 | "up": "custom_sprite_test:top" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /src/test/resources/assets/dynbuckettest/blockstates/simpletank.json: -------------------------------------------------------------------------------- 1 | { 2 | "forge_marker": 1, 3 | "defaults": { 4 | "transform": "forge:default-block", 5 | "model": "builtin/generated" 6 | }, 7 | "variants": { 8 | "normal": [{}] 9 | } 10 | } -------------------------------------------------------------------------------- /src/test/resources/assets/farmlandwatertest/blockstates/test_block.json: -------------------------------------------------------------------------------- 1 | { 2 | "forge_marker": 1, 3 | "defaults": { 4 | "model": "minecraft:bedrock" 5 | }, 6 | "variants": { 7 | "normal": [{}], 8 | "inventory": [{}] 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /src/test/resources/assets/fluidadditionalfields/textures/slime_flow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/fluidadditionalfields/textures/slime_flow.png -------------------------------------------------------------------------------- /src/test/resources/assets/fluidadditionalfields/textures/slime_flow.png.mcmeta: -------------------------------------------------------------------------------- 1 | { 2 | "animation": { 3 | "frametime": 20 4 | } 5 | } 6 | 7 | -------------------------------------------------------------------------------- /src/test/resources/assets/fluidadditionalfields/textures/slime_overlay.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/fluidadditionalfields/textures/slime_overlay.png -------------------------------------------------------------------------------- /src/test/resources/assets/fluidadditionalfields/textures/slime_still.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/fluidadditionalfields/textures/slime_still.png -------------------------------------------------------------------------------- /src/test/resources/assets/fluidadditionalfields/textures/slime_still.png.mcmeta: -------------------------------------------------------------------------------- 1 | { 2 | "animation": { 3 | "frametime": 20 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /src/test/resources/assets/fogcolorinsidematerialtest/pack.mcmeta: -------------------------------------------------------------------------------- 1 | { 2 | "pack": { 3 | "description": "mod resources", 4 | "pack_format": 3, 5 | "_comment": "A pack_format of 3 should be used starting with Minecraft 1.11. All resources, including language files, should be lowercase (eg: en_us.lang). A pack_format of 2 will load your mod resources with LegacyV2Adapter, which requires language files to have uppercase letters (eg: en_US.lang)." 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /src/test/resources/assets/fogcolorinsidematerialtest/test_fluid.json: -------------------------------------------------------------------------------- 1 | { 2 | "forge_marker": 1, 3 | "defaults": { 4 | "model": "forge:fluid" 5 | }, 6 | "variants": { 7 | "fluid": [ 8 | { 9 | "custom": { 10 | "fluid": "water" 11 | } 12 | } 13 | ] 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/test/resources/assets/fogcolorinsidematerialtest/textures/slime_flow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/fogcolorinsidematerialtest/textures/slime_flow.png -------------------------------------------------------------------------------- /src/test/resources/assets/fogcolorinsidematerialtest/textures/slime_flow.png.mcmeta: -------------------------------------------------------------------------------- 1 | { 2 | "animation": { 3 | "frametime": 20 4 | } 5 | } 6 | 7 | -------------------------------------------------------------------------------- /src/test/resources/assets/fogcolorinsidematerialtest/textures/slime_overlay.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/fogcolorinsidematerialtest/textures/slime_overlay.png -------------------------------------------------------------------------------- /src/test/resources/assets/fogcolorinsidematerialtest/textures/slime_still.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/fogcolorinsidematerialtest/textures/slime_still.png -------------------------------------------------------------------------------- /src/test/resources/assets/fogcolorinsidematerialtest/textures/slime_still.png.mcmeta: -------------------------------------------------------------------------------- 1 | { 2 | "animation": { 3 | "frametime": 20 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /src/test/resources/assets/forge/blockstates/dynbottle.json: -------------------------------------------------------------------------------- 1 | { 2 | "forge_marker": 1, 3 | "variants": { 4 | "inventory": { 5 | "model": "forge:forgebucket", 6 | "textures": { 7 | "base": "minecraft:items/potion_bottle_empty", 8 | "fluid": "minecraft:items/potion_overlay", 9 | "cover": "minecraft:items/potion_bottle_empty" 10 | }, 11 | "transform": "forge:default-item", 12 | "custom": { 13 | "fluid": "water", 14 | "flipGas": false 15 | } 16 | } 17 | } 18 | } -------------------------------------------------------------------------------- /src/test/resources/assets/forge/recipes/_constants.json: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "name": "forge:some_wool", 4 | "ingredient": [ 5 | { 6 | "item": "minecraft:wool", 7 | "data": 1 8 | }, 9 | { 10 | "item": "minecraft:wool", 11 | "data": 2 12 | } 13 | ] 14 | } 15 | ] -------------------------------------------------------------------------------- /src/test/resources/assets/forge/recipes/ore_shaped.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "forge:ore_shaped", 3 | "pattern": [ 4 | "X", 5 | "X", 6 | "#" 7 | ], 8 | "key": { 9 | "#": { 10 | "type": "forge:ore_dict", 11 | "ore": "stickWood" 12 | }, 13 | "X": { 14 | "item": "minecraft:beetroot" 15 | } 16 | }, 17 | "result": { 18 | "item": "minecraft:dirt", 19 | "data": 0 20 | } 21 | } -------------------------------------------------------------------------------- /src/test/resources/assets/forge/recipes/shapeless.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "minecraft:crafting_shapeless", 3 | "ingredients": [ 4 | { 5 | "item": "minecraft:stone", 6 | "data": 0 7 | }, 8 | { 9 | "item": "minecraft:stone", 10 | "data": 0 11 | } 12 | ], 13 | "result": { 14 | "item": "minecraft:stone", 15 | "data": 1 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /src/test/resources/assets/forge/recipes/shapeless_constant.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "minecraft:crafting_shapeless", 3 | "result": { 4 | "item": "minecraft:stone", 5 | "data": 0 6 | }, 7 | "ingredients": [ 8 | { 9 | "item": "#forge:some_wool" 10 | }, 11 | { 12 | "item": "#forge:some_wool" 13 | } 14 | ] 15 | } -------------------------------------------------------------------------------- /src/test/resources/assets/forge/recipes/shapeless_damageable.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "minecraft:crafting_shapeless", 3 | "ingredients": [ 4 | { 5 | "item": "minecraft:bow", 6 | "data": 32767 7 | } 8 | ], 9 | "result": { 10 | "item": "minecraft:wool", 11 | "data": 9 12 | } 13 | } -------------------------------------------------------------------------------- /src/test/resources/assets/forge/recipes/shapeless_ore.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "forge:ore_shapeless", 3 | "ingredients": [ 4 | { 5 | "type": "forge:ore_dict", 6 | "ore": "gravel" 7 | }, 8 | { 9 | "type": "forge:ore_dict", 10 | "ore": "gravel" 11 | }, 12 | { 13 | "type": "forge:ore_dict", 14 | "ore": "gravel" 15 | } 16 | ], 17 | "result": { 18 | "item": "minecraft:flint" 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /src/test/resources/assets/forge/recipes/shapeless_wildcard.json: -------------------------------------------------------------------------------- 1 | { 2 | "result": { 3 | "item": "minecraft:dirt", 4 | "data": 1 5 | }, 6 | "ingredients": [ 7 | { 8 | "item": "minecraft:stone", 9 | "data": 32767 10 | } 11 | ], 12 | "type": "minecraft:crafting_shapeless" 13 | } -------------------------------------------------------------------------------- /src/test/resources/assets/forge/textures/blocks/milk_flow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/forge/textures/blocks/milk_flow.png -------------------------------------------------------------------------------- /src/test/resources/assets/forge/textures/blocks/milk_flow.png.mcmeta: -------------------------------------------------------------------------------- 1 | { 2 | "animation": {} 3 | } -------------------------------------------------------------------------------- /src/test/resources/assets/forge/textures/blocks/milk_still.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/forge/textures/blocks/milk_still.png -------------------------------------------------------------------------------- /src/test/resources/assets/forge/textures/blocks/milk_still.png.mcmeta: -------------------------------------------------------------------------------- 1 | { 2 | "animation": { 3 | "frametime": 2 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugcustomslimeblock/blockstates/custom_slime_block.json: -------------------------------------------------------------------------------- 1 | { 2 | "variants": { 3 | "variant=blue_slime_block": { "model": "forgedebugcustomslimeblock:blue_slime_block" }, 4 | "variant=obsidian_slime_block": { "model": "forgedebugcustomslimeblock:obsidian_slime_block" } 5 | } 6 | } -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugcustomslimeblock/lang/en_US.lang: -------------------------------------------------------------------------------- 1 | tile.custom_slime_block.blue_slime_block.name=Blue Slime Block 2 | tile.custom_slime_block.obsidian_slime_block.name=Obsidian Slime Block -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugcustomslimeblock/models/block/blue_slime_block.json: -------------------------------------------------------------------------------- 1 | { 2 | "parent": "block/slime", 3 | "textures": { 4 | "particle": "forgedebugcustomslimeblock:blocks/blue_slime_block", 5 | "texture": "forgedebugcustomslimeblock:blocks/blue_slime_block" 6 | } 7 | } -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugcustomslimeblock/models/block/obsidian_slime_block.json: -------------------------------------------------------------------------------- 1 | { 2 | "parent": "block/slime", 3 | "textures": { 4 | "particle": "forgedebugcustomslimeblock:blocks/obsidian_slime_block", 5 | "texture": "forgedebugcustomslimeblock:blocks/obsidian_slime_block" 6 | } 7 | } -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugcustomslimeblock/models/item/blue_slime_block.json: -------------------------------------------------------------------------------- 1 | { 2 | "parent": "forgedebugcustomslimeblock:block/blue_slime_block" 3 | } -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugcustomslimeblock/models/item/obsidian_slime_block.json: -------------------------------------------------------------------------------- 1 | { 2 | "parent": "forgedebugcustomslimeblock:block/obsidian_slime_block" 3 | } -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugcustomslimeblock/textures/blocks/blue_slime_block.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/forgedebugcustomslimeblock/textures/blocks/blue_slime_block.png -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugcustomslimeblock/textures/blocks/obsidian_slime_block.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/forgedebugcustomslimeblock/textures/blocks/obsidian_slime_block.png -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugfluidplacement/blockstates/finite_fluid_block.json: -------------------------------------------------------------------------------- 1 | { 2 | "forge_marker": 1, 3 | "defaults": { 4 | "model": "forge:fluid", 5 | "transform": "forge:default-item" 6 | }, 7 | "variants": { 8 | "normal": [ 9 | { 10 | "custom": { 11 | "fluid": "finitefluid" 12 | } 13 | } 14 | ] 15 | } 16 | } -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugitemtile/blockstates/custom_model_block.json: -------------------------------------------------------------------------------- 1 | { 2 | "forge_marker": 1, 3 | "defaults": { 4 | "transform": "forge:default-block", 5 | "model": "builtin/generated" 6 | }, 7 | "variants": { 8 | "normal": [{}] 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugmodelanimation/asms/block/rotatest.json: -------------------------------------------------------------------------------- 1 | { 2 | "parameters": { 3 | "cycle": ["/", 2.0] 4 | }, 5 | "clips": { 6 | "default": ["apply", "forgedebugmodelanimation:block/rotatest@default", "#cycle" ] 7 | }, 8 | "states": [ 9 | "default" 10 | ], 11 | "transitions": {}, 12 | "start_state": "default" 13 | } 14 | -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugmodelanimation/blockstates/rotatest.json: -------------------------------------------------------------------------------- 1 | { 2 | "forge_marker": 1, 3 | "defaults": { 4 | "model": "forgedebugmodelanimation:rotatest", 5 | "transform": "forge:default-block" 6 | }, 7 | "variants": { 8 | "normal": [{}], 9 | "inventory": [{}], 10 | "static": { 11 | "true": {}, 12 | "false": {} 13 | } 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugmodelfluid/blockstates/test_fluid_block.json: -------------------------------------------------------------------------------- 1 | { 2 | "forge_marker": 1, 3 | "defaults": { 4 | "model": "forge:fluid", 5 | "transform": "forge:default-item" 6 | }, 7 | "variants": { 8 | "fluid": [{ 9 | "custom": { "fluid": "testfluid" } 10 | }], 11 | "gas": [{ 12 | "custom": { "fluid": "testgas" } 13 | }], 14 | "milk": [{ 15 | "custom": { "fluid": "milk" } 16 | }] 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugmodelloaderregistry/blockstates/obj_tesseract_block.json: -------------------------------------------------------------------------------- 1 | { 2 | "forge_marker": 1, 3 | "defaults": { 4 | "textures": { 5 | // "#lambert7SG": "forgedebugmodelloaderregistry:texture" //the identifier must be a name of a material defined by the "model" obj's .mtl file 6 | }, 7 | "model": "forgedebugmodelloaderregistry:tesseract.obj" 8 | }, 9 | "variants": { 10 | "normal": [{}], 11 | "inventory": [{ 12 | "transform": "forge:default-block" 13 | }] 14 | } 15 | } -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugmodelloaderregistry/blockstates/obj_vertex_coloring1.json: -------------------------------------------------------------------------------- 1 | { 2 | "forge_marker": 1, 3 | "defaults": { 4 | "textures": {}, 5 | "model": "forgedebugmodelloaderregistry:vertex_coloring.obj" 6 | }, 7 | "variants": { 8 | "normal": [{}], 9 | "inventory": [{ 10 | "transform": "forge:default-block" 11 | }] 12 | } 13 | } -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugmodelloaderregistry/blockstates/obj_vertex_coloring2.json: -------------------------------------------------------------------------------- 1 | { 2 | "forge_marker": 1, 3 | "defaults": { 4 | "textures": {}, 5 | "model": "forgedebugmodelloaderregistry:vertex_coloring.obj" 6 | }, 7 | "variants": { 8 | "normal": [{}], 9 | "inventory": [{ 10 | "transform": "forge:default-block" 11 | }] 12 | } 13 | } -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugmodelloaderregistry/models/block/chest.b3d: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/forgedebugmodelloaderregistry/models/block/chest.b3d -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugmodelloaderregistry/models/block/direction_test.mtl: -------------------------------------------------------------------------------- 1 | newmtl front 2 | map_Kd forgedebugmodelloaderregistry:direction_test_front 3 | 4 | newmtl back 5 | map_Kd forgedebugmodelloaderregistry:direction_test_back 6 | 7 | newmtl side 8 | map_Kd forgedebugmodelloaderregistry:direction_test_arrow 9 | 10 | newmtl top 11 | map_Kd forgedebugmodelloaderregistry:direction_test_arrow_top -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugmodelloaderregistry/models/block/direction_test.obj: -------------------------------------------------------------------------------- 1 | mtllib direction_test.mtl 2 | v 0 0 1 3 | v 1 0 1 4 | v 0 1 1 5 | v 1 1 1 6 | v 0 1 0 7 | v 1 1 0 8 | v 0 0 0 9 | v 1 0 0 10 | #vt 1 0 11 | #vt 0 0 12 | #vt 1 1 13 | #vt 0 1 14 | usemtl back 15 | #f 1/4 2/3 4/1 3/2 16 | f 1 2 4 3 17 | usemtl front 18 | #f 5/1 6/2 8/4 7/3 19 | f 5 6 8 7 20 | usemtl side 21 | #f 3/4 4/3 6/1 5/2 22 | f 3 4 6 5 23 | #f 7/1 8/2 2/4 1/3 24 | f 7 8 2 1 25 | usemtl top 26 | #f 2/3 8/1 6/2 4/4 27 | f 2 8 6 4 28 | #f 7/2 1/4 3/3 5/1 29 | f 7 1 3 5 -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugmodelloaderregistry/models/block/eye.mtl: -------------------------------------------------------------------------------- 1 | newmtl lambert3SG 2 | Kd 1.00 1.00 1.00 3 | map_Kd forgedebugmodelloaderregistry:eye128 4 | -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugmodelloaderregistry/models/block/fancy_fence.mtl: -------------------------------------------------------------------------------- 1 | newmtl fancy_fence:Default 2 | Kd 1.00 1.00 1.00 -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugmodelloaderregistry/models/block/tesseract.mtl: -------------------------------------------------------------------------------- 1 | newmtl lambert7SG 2 | Kd 1.00 1.00 1.00 3 | Ka 1.00 1.00 1.00 4 | map_Kd minecraft:blocks/redstone_block -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugmodelloaderregistry/models/block/untitled2.b3d: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/forgedebugmodelloaderregistry/models/block/untitled2.b3d -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugmodelloaderregistry/models/block/vertex_coloring.mtl: -------------------------------------------------------------------------------- 1 | newmtl red 2 | Kd 1 0 0 3 | 4 | newmtl orange 5 | Kd 1 0.5 0 6 | 7 | newmtl yellow 8 | Kd 1 1 0 9 | 10 | newmtl yellow-green 11 | Kd 0.5 1 0 12 | 13 | newmtl green 14 | Kd 0 1 0 15 | 16 | newmtl green-blue 17 | Kd 0 1 1 18 | 19 | newmtl blue 20 | Kd 0 0 1 21 | 22 | newmtl purple 23 | Kd 1 0 1 -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugmodelloaderregistry/textures/direction_test_arrow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/forgedebugmodelloaderregistry/textures/direction_test_arrow.png -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugmodelloaderregistry/textures/direction_test_arrow_top.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/forgedebugmodelloaderregistry/textures/direction_test_arrow_top.png -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugmodelloaderregistry/textures/direction_test_back.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/forgedebugmodelloaderregistry/textures/direction_test_back.png -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugmodelloaderregistry/textures/direction_test_front.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/forgedebugmodelloaderregistry/textures/direction_test_front.png -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugmodelloaderregistry/textures/eye.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/forgedebugmodelloaderregistry/textures/eye.png -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugmodelloaderregistry/textures/eye128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/forgedebugmodelloaderregistry/textures/eye128.png -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugmodelloaderregistry/textures/texture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/forgedebugmodelloaderregistry/textures/texture.png -------------------------------------------------------------------------------- /src/test/resources/assets/forgedebugnobedsleeping/models/item/sleeping_pill.json: -------------------------------------------------------------------------------- 1 | { 2 | "parent": "item/generated", 3 | "textures": { 4 | "layer0": "items/beef_cooked" 5 | } 6 | } -------------------------------------------------------------------------------- /src/test/resources/assets/furnacefuelburntimeeventtest/models/item/flammable_gold_shovel.json: -------------------------------------------------------------------------------- 1 | { 2 | "parent": "item/generated", 3 | "textures": { 4 | "layer0": "items/gold_shovel" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /src/test/resources/assets/furnacefuelburntimeeventtest/models/item/unburnable_wood_shovel.json: -------------------------------------------------------------------------------- 1 | { 2 | "parent": "item/generated", 3 | "textures": { 4 | "layer0": "items/wood_shovel" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /src/test/resources/assets/horse_armor_test/lang/en_US.lang: -------------------------------------------------------------------------------- 1 | item.horse_armor_test.testArmor.name=Test Armor -------------------------------------------------------------------------------- /src/test/resources/assets/horse_armor_test/models/item/test_armor.json: -------------------------------------------------------------------------------- 1 | { 2 | "parent": "item/generated", 3 | "textures": { 4 | "layer0": "horse_armor_test:items/test_armor" 5 | } 6 | } -------------------------------------------------------------------------------- /src/test/resources/assets/horse_armor_test/textures/entity/horse/armor/test.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/horse_armor_test/textures/entity/horse/armor/test.png -------------------------------------------------------------------------------- /src/test/resources/assets/horse_armor_test/textures/items/test_armor.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/horse_armor_test/textures/items/test_armor.png -------------------------------------------------------------------------------- /src/test/resources/assets/item_can_destroy_blocks_in_creative_test/models/item/item_test.json: -------------------------------------------------------------------------------- 1 | { 2 | "parent": "item/generated", 3 | "textures": { 4 | "layer0": "items/beef_cooked" 5 | } 6 | } -------------------------------------------------------------------------------- /src/test/resources/assets/item_model_conflict_test/blockstates/test.json: -------------------------------------------------------------------------------- 1 | { 2 | "variants": { 3 | "normal": { "model": "item_model_conflict_test:test" } 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /src/test/resources/assets/item_model_conflict_test/models/block/test.json: -------------------------------------------------------------------------------- 1 | { 2 | "parent": "minecraft:block/cobblestone" 3 | } 4 | -------------------------------------------------------------------------------- /src/test/resources/assets/item_model_conflict_test/models/item/test.json: -------------------------------------------------------------------------------- 1 | { 2 | "parent": "minecraft:item/torch" 3 | } 4 | -------------------------------------------------------------------------------- /src/test/resources/assets/item_model_generation_test/models/item/animation_test.json: -------------------------------------------------------------------------------- 1 | { 2 | "parent": "item/generated", 3 | "textures": { 4 | "layer0": "item_model_generation_test:items/animation_test" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /src/test/resources/assets/item_model_generation_test/models/item/intersection_test.json: -------------------------------------------------------------------------------- 1 | { 2 | "parent": "item/generated", 3 | "textures": { 4 | "layer0": "item_model_generation_test:items/intersection_test" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /src/test/resources/assets/item_model_generation_test/models/item/opacity_test.json: -------------------------------------------------------------------------------- 1 | { 2 | "parent": "item/generated", 3 | "textures": { 4 | "layer0": "item_model_generation_test:items/opacity_test" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /src/test/resources/assets/item_model_generation_test/models/item/overlap_test.json: -------------------------------------------------------------------------------- 1 | { 2 | "parent": "item/generated", 3 | "textures": { 4 | "layer0": "item_model_generation_test:items/overlap_test" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /src/test/resources/assets/item_model_generation_test/models/item/pattern_test.json: -------------------------------------------------------------------------------- 1 | { 2 | "parent": "item/generated", 3 | "textures": { 4 | "layer0": "item_model_generation_test:items/pattern_test" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /src/test/resources/assets/item_model_generation_test/textures/items/animation_test.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/item_model_generation_test/textures/items/animation_test.png -------------------------------------------------------------------------------- /src/test/resources/assets/item_model_generation_test/textures/items/animation_test.png.mcmeta: -------------------------------------------------------------------------------- 1 | { 2 | "animation": {} 3 | } 4 | -------------------------------------------------------------------------------- /src/test/resources/assets/item_model_generation_test/textures/items/intersection_test.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/item_model_generation_test/textures/items/intersection_test.png -------------------------------------------------------------------------------- /src/test/resources/assets/item_model_generation_test/textures/items/opacity_test.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/item_model_generation_test/textures/items/opacity_test.png -------------------------------------------------------------------------------- /src/test/resources/assets/item_model_generation_test/textures/items/overlap_test.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/item_model_generation_test/textures/items/overlap_test.png -------------------------------------------------------------------------------- /src/test/resources/assets/item_model_generation_test/textures/items/pattern_test.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/item_model_generation_test/textures/items/pattern_test.png -------------------------------------------------------------------------------- /src/test/resources/assets/loot_context_tweaks_test/advancements/test/root.json: -------------------------------------------------------------------------------- 1 | { 2 | "display": 3 | { 4 | "icon": { 5 | "item": "minecraft:stone" 6 | }, 7 | "description": "From LootContextTweaksTest", 8 | "title": "Test", 9 | "background": "minecraft:textures/blocks/stone.png" 10 | }, 11 | "criteria": 12 | { 13 | "no": 14 | { 15 | "trigger": "minecraft:impossible" 16 | } 17 | }, 18 | "rewards": 19 | { 20 | "loot": ["minecraft:chests/simple_dungeon"] 21 | } 22 | } -------------------------------------------------------------------------------- /src/test/resources/assets/nbtsharetagitemtest/models/item/nbt_share_tag_item.json: -------------------------------------------------------------------------------- 1 | { 2 | "parent": "item/generated", 3 | "textures": { 4 | "layer0": "items/stick" 5 | } 6 | } -------------------------------------------------------------------------------- /src/test/resources/assets/onitemusefirsttest/models/item/test_item.json: -------------------------------------------------------------------------------- 1 | { 2 | "parent": "item/generated", 3 | "textures": { 4 | "layer0": "minecraft:items/shulker_shell" 5 | } 6 | } -------------------------------------------------------------------------------- /src/test/resources/assets/professiontest/textures/entity/test_villager.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/professiontest/textures/entity/test_villager.png -------------------------------------------------------------------------------- /src/test/resources/assets/professiontest/textures/entity/zombie_test_villager.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/professiontest/textures/entity/zombie_test_villager.png -------------------------------------------------------------------------------- /src/test/resources/assets/recipetest/recipes/tool_complex.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "minecraft:crafting_shapeless", 3 | "ingredients": [ 4 | { 5 | "item": "tool", 6 | "data": 32767 7 | }, 8 | { 9 | "item": "minecraft:stone", 10 | "data": 32767 11 | }, 12 | { 13 | "item": "minecraft:stone", 14 | "data": 0 15 | } 16 | ], 17 | "result": { 18 | "item": "minecraft:wool", 19 | "data": 0 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /src/test/resources/assets/recipetest/recipes/tool_simple.json: -------------------------------------------------------------------------------- 1 | { 2 | "type": "minecraft:crafting_shapeless", 3 | "ingredients": [ 4 | { 5 | "item": "tool", 6 | "data": 32767 7 | } 8 | ], 9 | "result": { 10 | "item": "minecraft:wool", 11 | "data": 9 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /src/test/resources/assets/shield_test/lang/en_US.lang: -------------------------------------------------------------------------------- 1 | item.diamond_shield.name=Diamond Shield 2 | item.heavy_diamond_sword.name=Heavy Diamond Sword -------------------------------------------------------------------------------- /src/test/resources/assets/wrenchrotatedebug/models/item/test_wrench.json: -------------------------------------------------------------------------------- 1 | { 2 | "parent": "item/generated", 3 | "textures": { 4 | "layer0": "wrenchrotatedebug:items/test_wrench" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /src/test/resources/assets/wrenchrotatedebug/textures/items/test_wrench.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/NovaEngineering-Source/CatRoom/4874dfa262e789a74add1b21d2a1d3d8af9c3d8d/src/test/resources/assets/wrenchrotatedebug/textures/items/test_wrench.png -------------------------------------------------------------------------------- /src/test/resources/mcmod.info: -------------------------------------------------------------------------------- 1 | [ 2 | { 3 | "modid": "config_test", 4 | "name": "ConfigTest", 5 | "description": "Tests config", 6 | "version": "1.0", 7 | "mcversion": "", 8 | "url": "", 9 | "updateUrl": "", 10 | "authorList": [""], 11 | "credits": "", 12 | "logoFile": "", 13 | "screenshots": [], 14 | "dependencies": [] 15 | }, 16 | { 17 | "modid": "slider_config_element", 18 | "name": "Slider Config Element Test", 19 | "description": "", 20 | "version": "0.0" 21 | } 22 | ] -------------------------------------------------------------------------------- /templates/CleanroomVersion.java: -------------------------------------------------------------------------------- 1 | package com.cleanroommc.common; 2 | 3 | public class CleanroomVersion { 4 | public static final String VERSION = "%VERSION%"; 5 | public static final String BUILD_VERSION = "%BUILD_VERSION%"; 6 | } 7 | --------------------------------------------------------------------------------