Commit Graph

1381 Commits

Author SHA1 Message Date
ichttt cc25a58760 Log a warning if a coremod does not follow best practices (#4146) 2017-07-20 16:32:53 -05:00
Xalcon d63ceb33cb Added support for vanilla "nbt strings" in json recipes (#4113) 2017-07-20 16:28:39 -05:00
LexManos afea45dccc Fix tripwire statemap not being complete when mappings change. Closes #3924 2017-07-18 12:53:55 -07:00
LexManos 6d35b1b913 Fixed invalid erroring case during loading Advancements form mods that don't have advancements. 2017-07-14 16:10:36 -07:00
LexManos 872d721e77 Send remap event when data is frozen to notify modders to bake things.
Fixes search not working when connecting to vanilla servers.
2017-07-13 14:45:51 -07:00
LexManos f8c5d7c2b6 Fire recipe registry event after json recipes are loaded. 2017-07-13 14:45:13 -07:00
Ben Staddon 0fde64ac38 Clean up uses of deprecated library functions (#4130)
Avoid catching and rethrowing runtime exceptions
Append error messages to exceptions instead of the log
2017-07-12 21:50:28 -07:00
mezz 75433345ba Improve javadocs for Mod dependencies (#4168) 2017-07-12 21:12:53 -07:00
mezz 11338d0fde Stop "Binary patch set is missing" error log in dev environment 2017-07-11 22:50:12 -07:00
mezz ab4ac4db5a Fix errors in test mods 2017-07-11 22:04:25 -07:00
Kina bf014b1060 Remove unnecessary maxStackSize restrictions on brewing potions. (#4155) 2017-07-09 13:12:20 -05:00
mezz cd4d701b5f Fix game freeze when resizing the window too small on the mods gui (#4148) 2017-07-08 22:55:45 -07:00
Max Becker 7517f56d5f Adjust EnumHelper#addCreatureType to EnumType (#4089) 2017-07-08 15:15:00 -05:00
Vincent Lee 4df20daf41 Allow advancement icons to have nbt (#4114) 2017-07-08 15:14:29 -05:00
LexManos a886dbde49 Quiet down warning for missing translation files. 2017-07-06 21:28:48 -07:00
LexManos b0edb23dba Fix getting missing models for overridden Item registry entires 2017-07-05 14:52:29 -07:00
LexManos fdfaa5036d Fix override duplication caused by bad comparison. 2017-07-05 14:41:24 -07:00
LexManos 7b0a005167 Fix log spam when creating dummy blocks. 2017-07-05 14:40:43 -07:00
talandar 03b7885aa6 Fix unblockable damage being blocked by armor. (#3933) (#4106) 2017-07-03 12:56:23 -07:00
mezz c1ae2cdbf2 Improve furnace fuel handling (#4083) 2017-07-03 12:54:01 -07:00
Xalcon e1a2bcf902 Add isSpawner parameter to the CheckSpawn event (#4075) 2017-07-03 12:45:57 -07:00
E2 43be1f46a5 RenderLivingEvent now stores partialTick
2
2017-07-03 12:20:45 -07:00
ichttt ede05a25f1 Fix missing messages of missing models (#4120) 2017-07-03 10:39:42 -07:00
Kina 81584d4215 Correct the default resource location of potion registry (#4117) 2017-07-02 13:13:46 -05:00
LexManos 16bfd8cef1 Version bump for RB 2017-06-28 21:34:43 -07:00
covers1624 9e413de6c9 Added Block::getFogColor to allow custom blocks to control fog colors while inside them. (#4090) 2017-06-28 17:23:32 -05:00
LexManos 0b969ef495 Optimize ExtendedBlockState.getClean, cache the return value instead of calculating it. Closes #3936 2017-06-28 14:26:25 -07:00
LexManos ec318f8504 Squelch spam in EventBus register, Closes #4102 2017-06-28 13:18:44 -07:00
LexManos c3e5b4bb2e Add @ObjectHolder scanning to vanilla MobEffects, Biomes, Enchantments, SoundEvents, and PotionTypes constants. Closes #4104 2017-06-28 13:17:59 -07:00
mezz 8581225da8 Use java 8 collection functions 2017-06-28 00:14:10 -07:00
mezz 9675585891 Use lambdas for short anonymous methods 2017-06-27 23:18:09 -07:00
mezz 93025510ae Use multiple catch, try-with-resources, replace system.out and e.printStackTrace 2017-06-27 22:57:10 -07:00
LexManos 10ca404e9e Fix the creative menu search function. Closes #4100 2017-06-27 21:34:03 -07:00
LexManos d0b24313d3 Fix MissingMapping REMAP action. Closes #4069 2017-06-27 16:56:42 -07:00
LexManos 7281708df6 Repopulate client SearchTreeManager when registries are refreshed. Closes #4094 2017-06-27 16:28:08 -07:00
LexManos b90d7a838e Fix Biome unit test 2017-06-27 16:27:29 -07:00
LexManos a4fb33d945 Add support for loading mod advancements from the mod jar files. 2017-06-27 15:18:52 -07:00
LexManos cab4f783e9 Fix error when using RegistryBuilder and not specifying a max id number. 2017-06-27 15:18:03 -07:00
LexManos c565984822 Allow the recipe registry to be modified. 2017-06-27 15:17:26 -07:00
LexManos 86b231ea77 Fix BiomeDictionary not collecting correctly. 2017-06-27 14:04:51 -07:00
BlayTheNinth 5aac07b5b1 Remove incorrect call to .toString() when instantiating custom config array entries. (#4078) 2017-06-27 00:54:49 -05:00
LexManos c5ffe46f48 Fix substitution tests 2017-06-26 01:01:23 -07:00
Ben Staddon 9a09ff68aa Remove some deprecated methods and clean up 2017-06-25 22:30:18 -07:00
mezz 7892ca922c Remove the call to client.refreshResources during loading (#4032) 2017-06-25 22:13:58 -07:00
Fry 0f7ec7e7fd Added dependencies and dependency ordering for textures. (#4070) 2017-06-26 07:58:19 +04:00
LexManos 3ae30478db More work on registry override ability. Closes #4079 2017-06-25 20:45:48 -07:00
LexManos 460abf1554 Fix ItemStack/Block/BlockSpecial not applying at runtime. 2017-06-25 20:45:07 -07:00
Ben Staddon 51aa029bb1 Add a FluidUtil method to interact with an arbitrary IFluidHandler (#4080) 2017-06-25 18:22:52 -07:00
ichttt 690c9bb76a Further Java 8 cleanup (#4077) 2017-06-25 14:25:57 -07:00
LexManos 45147ac512 Fix ModelBlockAnimation expsing a private class. 2017-06-25 12:23:56 -07:00
RainWarrior dc043ac79f Cleanup of model system, taking advantage of java 8;
replaced guava Optional and Function with java 8 versions.
2017-06-25 04:08:20 +03:00
LexManos 1c24600bbb Reload client recipe book after loading modded recipes. 2017-06-24 15:34:09 -07:00
LexManos b542179242 Make Dummy block an Air block. 2017-06-24 15:06:28 -07:00
LexManos 87054b01fb Fix NPE in MissingMappings event. Closes #4067 2017-06-24 14:51:46 -07:00
LexManos efd8b38be9 Make getSubItems non-client only. Use it for Ingredient iteration. 2017-06-24 14:47:48 -07:00
LexManos 405a16aea1 Fix minecraft:item_nbt ingredient type. 2017-06-24 14:46:51 -07:00
mezz 72f037b0fa Add Block.getDrops that uses NonNullList, deprecate the old method. Fix #3567 (#3778) 2017-06-24 03:05:42 -07:00
mezz 27321efb1f Clean up logging 2017-06-24 01:46:05 -07:00
Ben Staddon 1b5da5d4fe [1.12] Cleanup of files with old licence headers, Add missing LGPL 2.1 licence headers (#4051) 2017-06-24 01:25:23 -07:00
Choonster TheMage cb02f24cf2 Fix uncaught ClassCastException from invalid recipe file (#4043)
A JsonSyntaxException will now be thrown, caught and logged when the conditions property of a recipe isn't an array
2017-06-24 01:24:54 -07:00
mezz d769d83224 Update MCP to 20170624 2017-06-24 00:56:21 -07:00
Ben Staddon b0dfaa2b81 Remove Java 8 warnings now that Minecraft requires it 2017-06-23 23:31:50 -07:00
tterrag b71ab7e444 Make ForgeRegistry iterator sorted. Closes #4058 (#4059) 2017-06-23 23:52:27 -05:00
LexManos dd42f84a47 Loosen up registry locks until data freeze. 2017-06-23 17:52:59 -07:00
LexManos d032a34aaa Fix conflicts 2017-06-23 16:59:57 -05:00
LexManos f4afb6f56c Implement override tracking and syncing.
Overrides MUST be registered within a tracked event so we know what mod it came from.
This will allow servers/saves to select which mod 'wins' and becomes to active entry.
This should also mean that when connecting to a vanilla server things will revert.
2017-06-23 16:59:57 -05:00
LexManos 4b45eb8b68 Disable substitution test, substitutions are not managed the way they used to be.
We do not care about substitutions, People who replace entries should make them compatible with the existing item.
2017-06-23 16:59:57 -05:00
LexManos e805b12df8 Fixup some registry tests, dummies are now persisted across syncing. 2017-06-23 16:59:57 -05:00
LexManos dee84dc1e4 More work, game loads and runs now.
Moved Registry events to directly AFTER PreInit instead of before.
This allows modders to register handlers for it without @EventBusSubscriber.
It also allows you to register custom things needed before the construction of blocks or items such as Fluids.
TODO: Move Fluids to a real registry.
@ObjectHolder can now be used on private fields.
Reworked FMLModIdMappingEvent to include data for all registries.
Tile Entities are now registrable.
2017-06-23 16:59:57 -05:00
LexManos a26d89c876 First pass of registry rewrite.
Tests do not run yet.
Things of note:
Removed the idea of substitutions, just register multiple items with the same name they will override each other like a normal map.
Decoupled Forge registries from vanilla classes. They now use bouncer classes. MODDERS SHOULD NEVER USE THESE
Introduced more stringent registry locking. As it sits things are only allowed to be registered during the RegistryEvent.Registry phases!
This is to force modders to split up their registrations, and pave the way for calling these functions multiple times during a single MC lifecycle.
ObjectHolder, Missing Mappings, etc... *should* now work for all registry types, nothing should be special cased to Blocks/Items anymore.
Added optional generic dummy factory to registries, to allow registry creators the ability to dummy more then just Blocks.
Re-worked the ItemStack transformer and applied it to ItemBlock and ItemBlockSpecial. Allowing us to cleanup reflective hacks in Block callbacks.
Registry onAdd callback is now only fired on the ACTIVE registry, fixing any issues of temp registries overriding active objects.
2017-06-23 16:59:57 -05:00
mezz 423f9fc04b Fix Universal bucket handling for Fluids with NBT (Fix #3757) 2017-06-22 23:40:49 -07:00
diesieben07 0e9820c51c Clean up Logging (#3953)
# Conflicts:
#	patches/minecraft/net/minecraft/client/renderer/texture/Stitcher.java.patch
#	patches/minecraft/net/minecraft/client/renderer/texture/TextureMap.java.patch
#	patches/minecraft/net/minecraft/entity/EntityList.java.patch
#	patches/minecraft/net/minecraft/tileentity/TileEntity.java.patch
#	src/main/java/net/minecraftforge/oredict/OreDictionary.java
2017-06-22 23:18:49 -07:00
mezz 68c6e7862e Fix ShapedOreRecipe matching. #4038 2017-06-21 22:10:55 -07:00
LexManos f1881453be Fix recipe names in packaged jars. Closes #4039 2017-06-21 01:46:52 -07:00
Ben Staddon a30316e6a1 Update NoteBlockEvent with new instruments. Resolves #4018. (#4019) 2017-06-20 23:50:32 -07:00
TechnicianLP e056c79ec7 IRecipeConditions forge:and and forge:false (#4017) 2017-06-20 02:19:14 -07:00
mezz c6d7c7c11f Fix itemstack comparison with null 2017-06-19 23:27:52 -07:00
LexManos a2749e4507 Fix loading recipe jsons from jar files. 2017-06-19 17:18:53 -07:00
Vincent Lee f7831fbe99 Fix shapeless recipes not being able to use NBT on output, and fixed issue with null groups. 2017-06-19 16:49:21 -07:00
Lumien 303578b2f2 [1.12] Fixes Exception when getting modlist for a vanilla client (#4028) 2017-06-19 16:47:34 -07:00
mezz b39ade30c3 Disable TestNetworkHandshake to make Travis work again 2017-06-18 22:51:09 -07:00
mezz 3e6c15168b Add timeout to TestNetworkHandshake setup 2017-06-18 22:50:47 -07:00
mezz e3777f4559 Add missing Override annotations 2017-06-17 18:24:17 -07:00
mezz c2845967cc Update MCP mappings to 20170617 2017-06-17 18:06:04 -07:00
mezz 3d322ef925 Update mcp mappings to 20170611 2017-06-17 17:13:44 -07:00
mezz 864b05074e Clean up ShapedOreRecipe and ShapelessOreRecipe 2017-06-17 17:13:44 -07:00
Shadowfacts f009435fa4 Allow condition factories to be registered from JSON (#4015) 2017-06-16 20:24:58 -07:00
cpw 4a4c38b4e0 Patch a small bug in SPacketLoginSuccess that lets us emulate the network
handshake. This will be very useful as I rebuild the networking.
2017-06-16 22:00:54 -04:00
LexManos b5260a386d Filter any recipe starting with _, Such names are reserved for metadata.
Actually implement conditions for recipes.
2017-06-15 19:30:05 -07:00
LexManos 65ec1f5d54 Fix NBT ItemStack support in json loader. Closes #4002 2017-06-15 16:07:55 -07:00
LexManos e16f70f95e Fix OreIngredient comparing items in reverse. Closes #3999 2017-06-15 13:13:44 -07:00
Marvin Rösch 50e268bdf5 Make registries persist by default, fixes #3989 (#3998) 2017-06-15 13:00:46 -07:00
tterrag 8833386ada Fix exception in ShapedOreRecipe.checkMatch for recipes that don't fill entire crafting grid (#3995) 2017-06-15 01:12:54 -07:00
LexManos dbc0a4e0fd Fix parseShaped missing Empty slot item. Closes #3990 2017-06-14 20:25:22 -07:00
LexManos 5e70ee45be Fix CraftingHelper.parseShapred error. Closes #3979 2017-06-14 15:59:59 -07:00
LexManos a8659a1613 In-progress Registry system enhancement.
Needs cpw to take a look at enabling removing/overriding in the registry stuff.
But in theory it loads json recipes for mods now.
2017-06-14 10:14:56 -07:00
mezz cd3905502e Update VanillaRegistryTests 2017-06-10 19:47:04 -07:00
cpw 3fee319bc0 Try a different way of doing the callback, it removes the derpitude, but at
one point, I thought the way it was was necessary. Is this a race condition?
Dunno, but it's a lot simpler and doesn't rely on a netty hack.
2017-06-10 22:22:16 -04:00
cpw d90637f8b5 Fix the netty bug introduced by netty commit 29fdb160f3
that means we don't get activated until after handlerAdded is complete.
In effect, our handler can't handle anything until handlerAdded has
completed.
2017-06-10 22:22:16 -04:00
LexManos f1cca475ea Initial patch update to 1.12.
Some things to note:
Netty is screwy so currently can't join single player. @cpw
Crafting has been MAJORY reworked. The current GameRegistry functions are nooped, this is IN THE WORKS.
  Just need to move the recipe list to a full class registry, and then re implement the in-code recipe registration.
  Also, it IS advised that modders move to JSON, because ideally we'll see a S->C recipe syncing system in 1.13
  which would allow servers to have custom recipes.
  OreDictionary currently 1/2 works, need to write a better algorithm for replacing ingredients.
  Please be patient
Rendering:
  A lot of functions got a new float parameter, this is similar to partial ticks, needs more research
2017-06-10 22:22:02 -04:00
mezz 286777b824 Fix getShareTag replacing data on the server (#3776) Closes #3682 2017-06-04 18:38:16 -07:00
LexManos e67bde9e9e Fix crashed caused by bad mods reflectively breaking the grass drop list. Closes #3943 2017-06-02 16:22:16 -07:00
LexManos c544f06880 Fix shaders not loading from mod domains Closes #3921 2017-06-01 15:47:49 -07:00
RlonRyan 8ddbf3b0a8 Changed Event.setCanceled To throw UnsupportedOperationException instead of IllegalArgumetnException when called on a non-cancelable object (#3926) 2017-06-01 14:34:24 -07:00
Ben Staddon 3b22b6cb67 Make Teleporter fields accessible to subclasses (#3930) 2017-06-01 14:32:49 -07:00
Bartosz Skrzypczak 369008fe1d Make World.isValid and World.isOutsideBuildHeight public (#3919) 2017-06-01 14:32:05 -07:00
mezz e6dcfde214 Clean up formatting of Forge Test mods and disable noisy ones (#3908) 2017-05-29 02:10:40 -07:00
Kitten 4ea73399de Fix broken milk bucket model (#3925) 2017-05-27 09:53:46 -07:00
Mathe172 9c148b56f8 Fix patches of GuiScreen(#3704) and ItemDye(#3736) (#3878) 2017-05-26 14:19:58 -07:00
LexManos 4da5832290 Make hopper update accessible to subclasses. Closes #3849 2017-05-26 14:16:40 -07:00
Flaxbeard e1ddc4315c Update EntityPlayer armor calculations and ISpecialArmor (#3838) 2017-05-26 14:11:52 -07:00
Ben Staddon 2814df89b3 Tweak vertex lighter to avoid causing excess array initialisations (#3771) 2017-05-26 13:57:21 -07:00
Ben Staddon c6f181dcb2 Fixes for PlayerDestroyItemEvent being called with empty itemstacks. (#3728) 2017-05-26 13:54:13 -07:00
Madsthunder 7976ac4a2b [1.11.2] Added support for Village capabilities (#3648) 2017-05-26 13:51:18 -07:00
Luke Gilfoyle 5198b4d690 Fixes BlockLiquidWrapper placing a Static fluid where it should place a Flowing one (#3893) 2017-05-21 22:10:44 -07:00
mezz 1c0b53f3bf Print system details on startup without printing a full crash report (#3909) 2017-05-21 12:30:57 -07:00
mezz 14d8151b02 Reduce memory pressure from new objects during loading screen (#3907) 2017-05-20 14:21:32 -07:00
diesieben07 acdfe97bd6 Add methods to write IForgeRegistryEntry to ByteBuf (#3806) 2017-05-18 13:47:13 -07:00
tterrag d77033b0d0 Fix normals not being generated for formats without normals (#3896)
Fix normals not being generated for formats without normals
2017-05-15 12:39:54 +04:00
ichttt 2df36137c2 Add a configurable delay when unloading dimensions, fixes #3455 (#3679) 2017-05-06 12:19:01 -07:00
Max Becker 34463690c5 Changed custom entity selectors from event based to factory based. (#3579) 2017-05-01 18:36:24 -07:00
ichttt 6ffd94a08e Create ItemFishedEvent, the event is cancelable, but items are not mutable. Use LootTables to control that. (#3705) 2017-05-01 18:10:47 -07:00
Vincent Lee 0b41a0a822 Fix forge pipeline block shifts (#3789) 2017-05-01 17:53:17 -07:00
Ben Staddon 003d0c601d Relocate TileEntity#onLoad call to after it's added to the world instead of the chunk so as to have a valid world reference (#3836) 2017-05-01 17:41:37 -07:00
mezz 56ed8fec1e Improvements to FluidUtil (#3839) 2017-05-01 17:25:45 -07:00
diesieben07 b2e3f353df Allow client commands to control whether they can be invoked without prefix. (#3847) 2017-05-01 17:22:53 -07:00
mezz e4d04afd95 When the window is closed during loading, exit the game quickly (#3858) 2017-05-01 17:14:55 -07:00
mezz 91cc592a3a Remove splash.properties option for Mojang logo (has been disabled) (#3859)
Fix backgound color being applied to the Forge logo
2017-05-01 17:13:43 -07:00
ichttt cbf6cb9744 Fix GuiMultipleModsErrored ignoring scrolling with mouse wheel. (#3861) 2017-05-01 17:12:33 -07:00
Madsthunder 93a4e13837 [1.11.2] Fixed Zombie Villagers not setting and getting professions correctly (#3678) 2017-04-30 21:59:57 -07:00
Justin 460a2189d6 Prevent NPE in ConfigManager and fix config gui being enabled for all mods. Fixes #3856. (#3860) 2017-04-27 19:02:50 -07:00
LexManos af2ca8e250 Fix return value of ItemHandlerHelper.insertItem being incorrect when destination was null. Closes #3840 2017-04-25 12:06:23 -07:00
LexManos c0eea379a4 Fix vanilla inventory wrappers not properly calling markDirty. Closes #3854 and #3810
Also updated IItemHandler javadocs to reflect returning EMPTY instead of NULL.
2017-04-25 11:55:31 -07:00
cpw cec90d7f48 Add in a check to the splash screen. If the Display.update call takes
too long on average (over first 200 frames) we'll use a sleep based
timer to allow mods doing splash screen work some time on the
LWJGL global lock.

(cherry picked from commit 03d7eaa)
2017-04-10 08:33:01 -04:00
LexManos 69b72201ac Cleanup AccessTransformer debug output 2017-04-09 23:13:45 -07:00
bogger33 3eb7b59cf4 Fix Fluid models rendering with gaps (#3747) Closes #2993 2017-04-07 17:57:00 -07:00
John Protsen dbc6baf2f7 Add Item.canDestroyBlocksInCreative() allowing more items to not break blocks in creative (#3805) 2017-04-07 16:59:21 -07:00
diesieben07 646a8977d6 Ignore calls to sendMessage for fake players. Fixes #3796. (#3798) 2017-04-07 16:52:52 -07:00
mezz 15aee5b18a Skip loading models if there is a fatal mod dependency error (#3772) Close #3768 2017-04-07 16:48:00 -07:00
Ben Staddon 901df8345c Add AnimalTameEvent for handling animal taming (#3763) 2017-04-07 16:47:28 -07:00
Vincent Lee 72dd06ca85 Allow result of PlayerInteractEvent to be changed when it's cancelled (#3744) 2017-04-07 16:38:56 -07:00
Choonster TheMage 5ffbbd3b9f Add EnumHand and ItemStack to BonemealEvent (#3736) 2017-04-07 16:31:51 -07:00
Da-Technomancer fd0dabd60c Added a boolean flag for disabling Entity onUpdate (#3731)
The flag is false by default, and if true the Entity will not update. It is saved and loaded from NBT, and is called updateBlocked. Modders are responsible for managing this flag for entities they with to 'freeze' or 'unfreeze'.
2017-04-07 16:28:53 -07:00
Ben Staddon f7f46be8ff Revert block snapshots in reverse order. Fixes #3608. 2017-04-07 16:24:59 -07:00
Paulo "JCranky" Siqueira be2d814155 Add LootTableManager to the LootTableLoadEvent (#3717) 2017-04-07 16:22:49 -07:00
Lance 671d462645 Added ClientChatEvent. Closes #1442 (#3704) 2017-04-07 16:09:46 -07:00
BlayTheNinth 52409e15cf Fix custom array entry class for config GUI being ignored when adding new entries (#3697) 2017-04-07 16:05:50 -07:00
kashike 9619be4a17 Use thread groups to detect the effective side (#3644) 2017-04-07 15:35:58 -07:00
Silly511 f0eb941abc New LivingDestroyBlockEvent for controlling if some entities can destroy blocks (#3628) 2017-04-07 15:34:26 -07:00
LexManos ae96fd08db Fix arrays in map values for config system 2017-04-06 13:15:26 -07:00