Commit Graph

474 Commits

Author SHA1 Message Date
Wasinthorn Suksri 02855f7d74 Added Custom Slime Block hook for Piston. (#4520) 2017-12-16 18:38:53 -08:00
Daomephsta 4ab9929593 Add some extra context to Advancements/Minecart/Fishing/TileEntity loot handlers.(#4443) 2017-12-16 18:38:03 -08:00
Melonslise bbf1bef7d3 Added LivingKnockBackEvent event to allow better control over knock back effects. (#4503) 2017-12-16 18:03:45 -08:00
Ben Staddon cd99957627 Fix missing call to release() in the event channel handler (#4513) 2017-12-16 18:00:35 -08:00
Joseph C. Sible 14a7d66024 Deprecate passing a class to CapabilityManager::register (#4574) 2017-12-16 17:01:04 -08:00
jabelar 07c4da8f36 Added color as field with setter to Fluid class. (#4460) 2017-12-08 02:18:45 -08:00
Anthony Lomeli bd494af7ee [1.12] Add Advancement Event (#4467) 2017-12-05 14:05:05 -08:00
Draco18s ccc44956fd Fix for the EntityItemPickupEvent having 0 count item when event is fired. (#4549) 2017-11-30 21:46:54 -08:00
LexManos 44d0e9f05d Fix more bad shapeless recipe matching. Closes #4557 2017-11-26 14:50:57 -08:00
LexManos 89db87dbfc Create custom shapeless recipe matching system. Should solve #4516 damageable items in shapeless recipes. 2017-11-22 13:26:02 -08:00
covers1624 c16906f8d8 Fix BufferBuilder not expanding under some conditions. (#4538) 2017-11-20 11:31:56 -08:00
LexManos fc87d83d73 Make Ingredient explode wildcard values like OreIngredient.
Fixes some issues related to Grums order fix for Shapeless recipes.
Other more advanced usages need to be documented and tested.
2017-11-14 00:10:33 -08:00
Ben Staddon 6192bf48ae Fix more test mod warnings (#4477) 2017-11-02 23:29:31 -07:00
Bartek Bok dd69f0623c Add LivingDamageEvent (#4349) 2017-10-31 15:29:19 -07:00
Bartek Bok 6f49568c98 Add InputUpdateEvent (#4356) 2017-10-31 11:47:47 -07:00
Ben Staddon 31655b3a7d [1.12] Replace ThrowableImpactEvent with a more generic version (#4040) 2017-10-31 11:34:48 -07:00
joeflatt 7d333eb100 Fixed property losing state after rename. (#4123) 2017-10-31 11:30:39 -07:00
Philipp Provenzano aa2480c7a1 Allow custom selector types to be defined (#4259) 2017-10-31 11:28:11 -07:00
AEnterprise 22ea5a23ad Improve performance of World.collidesWithAnyBlock (#4286) 2017-10-31 11:20:59 -07:00
Vincent Lee 6d946fa088 Move reach distance to an attribute (#4331) 2017-10-31 11:16:22 -07:00
Ben Staddon 43749d3fd1 Further reduce quad count of generated item models (#4448) 2017-10-31 11:02:09 -07:00
jabelar 61dea7f4c0 Changed BlockFluidBase "fog" color use color from Fluid getColor() method (#4462) 2017-10-31 10:46:40 -07:00
Ben Staddon 5733cd364e Fix some more test mod warnings (#4469) 2017-10-20 22:28:26 -07:00
Matthew Mirvish e283d51e28 [1.12.x] [Animation API] Add rotation origin variable (#4466) 2017-10-20 22:27:35 -07:00
Ben Staddon f2adf0100c Fix some warnings produced by test mods (#4456) 2017-10-08 17:31:10 -07:00
mezz 083daeb5ed Update mcp mappings to 20171003 2017-10-03 22:08:36 -07:00
mezz f494117453 [1.12] Add support for client & server dependencies for mods (#4403) 2017-10-02 22:13:30 -07:00
mezz cf39ff18e1 Add Item.getModId to show which mod is associated with a subitem (#4330) 2017-10-02 22:08:16 -07:00
Erlend Åmdal 8a285e0fed Add Chunk capabilities (#4228) 2017-10-02 20:24:11 -07:00
Samuel-Harbord 21e4803947 Fix test mod shield JSON incorrect bottom face UV's (#4295) 2017-09-23 14:27:11 -07:00
Tyler Hancock ceaa9ba52f Fix chunk gen mobs not firing the CheckSpawn event. Closes #4394 (#4396) 2017-09-16 21:30:38 -07:00
Ben Staddon 9717882563 Fix up test mods (#4399) 2017-09-16 20:08:25 -07:00
LexManos 036191cd52 Fixed ShapedOre recipes not laying out correctly with the guidebook. 2017-09-14 14:32:03 -07:00
Tyler Hancock 883109182d Fixed search tabs using wrong contents. (#4393) 2017-09-12 11:57:12 -07:00
Benjamin K 45c2ff5329 Fix CustomModLoadingErrorDisplayScreen not being handled during init or preinit. (#4320) 2017-09-06 14:14:50 -07:00
Vincent Lee 44f35fa8b1 Fix vanilla map pixel data being used in various places (#4068) 2017-09-06 13:54:00 -07:00
Choonster TheMage d85fcb26c2 Fix FieldWrapper.MapWrapper initialising wrong category (#4335) 2017-08-30 20:57:17 -07:00
Choonster TheMage cb051f7893 Don't parse category names as regular expressions in FieldWrapper.MapWrapper (#4334) 2017-08-30 20:56:15 -07:00
Marvin Rösch 43e24c3eb4 Tabulate crash report mod list and add signature information (#4251) 2017-08-18 17:28:58 -05:00
LexManos 28e341002f Add support for server side only recipes, as well as detection of vanilla client recipe book filter to prevent errors. 2017-08-15 05:10:07 -07:00
Bartosz Skrzypczak 68a10b3037 Fix splitting big packets skipping one byte per additional part (#4301) 2017-08-13 15:23:22 -05:00
Thanh-Phuong ee449e427c Add support for oredict item predicates in advancements, and add a registry for item predicates (#4188) 2017-08-09 15:20:45 -05:00
KnightMiner 82d735e43a Add support for running IModel.retexture() on models from blockstates (#4200) 2017-08-09 15:18:35 -05:00
Bartek Bok d14a8724b0 Fix invalid FastTESR quad ordering (#4267) 2017-08-09 15:18:17 -05:00
Choonster TheMage 611cb0d99c Continue loading mod recipes and advancements after encountering an error (#4277) 2017-08-09 15:17:48 -05:00
howtonotwin 639589703d Add smarter getter for block slipperiness (#4116)
Fixed MC-119811, Boats rubber banding when dismounted.
2017-08-01 16:25:28 -05:00
covers1624 099bbd479a Add GuiContainer Foreground render event. (#4127) 2017-08-01 16:23:08 -05:00
mcenderdragon c8379da83b Added CriticalHitEvent to allow more control over whether a attack is a critical or not, and what damage it does. 2017-08-01 14:13:37 -05:00
Xalcon 173e929173 Added pages to the advancements GUI to allow for unlimited root advancements. (#4183) 2017-08-01 13:43:24 -05:00
Ben Staddon 78828246f5 Fix some broken test mods (#4245) 2017-07-29 23:04:02 -07:00
Marvin Rösch 434f95c66e Fix overrides not being read from the server registry snapshot (#4224) 2017-07-26 18:47:55 -05:00
Marvin Rösch e59b979e1b Fix some test mods crashing server caused by model loading (#4225) 2017-07-24 19:08:00 -05:00
malte0811 a6b9fbfa9f [1.12] Allow the server to handle item-block interaction if onItemUse doesn not return PASS (#3967) 2017-07-20 17:11:50 -05:00
Madsthunder ad15209f8d Allow support for custom Shields and Shield disabling weapons. 2017-07-20 16:44:37 -05:00
mezz ab4ac4db5a Fix errors in test mods 2017-07-11 22:04:25 -07:00
mezz c1ae2cdbf2 Improve furnace fuel handling (#4083) 2017-07-03 12:54:01 -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 b90d7a838e Fix Biome unit test 2017-06-27 16:27:29 -07: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
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
ichttt 690c9bb76a Further Java 8 cleanup (#4077) 2017-06-25 14:25:57 -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
mezz 27321efb1f Clean up logging 2017-06-24 01:46:05 -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
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
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 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
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 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
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
mezz e6dcfde214 Clean up formatting of Forge Test mods and disable noisy ones (#3908) 2017-05-29 02:10:40 -07:00
Flaxbeard e1ddc4315c Update EntityPlayer armor calculations and ISpecialArmor (#3838) 2017-05-26 14:11:52 -07:00
Madsthunder 7976ac4a2b [1.11.2] Added support for Village capabilities (#3648) 2017-05-26 13:51:18 -07:00
diesieben07 acdfe97bd6 Add methods to write IForgeRegistryEntry to ByteBuf (#3806) 2017-05-18 13:47:13 -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
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
Madsthunder 93a4e13837 [1.11.2] Fixed Zombie Villagers not setting and getting professions correctly (#3678) 2017-04-30 21:59:57 -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
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
LexManos ae96fd08db Fix arrays in map values for config system 2017-04-06 13:15:26 -07:00
sinus 25497d310b Adding config GUIs to the @Config based configuration System (#3735)
Lots of internal API that modders should not touch. See test mods for example usages.
2017-04-01 14:24:50 -07:00
sjx233 2003dee17f Add DifficultyChangeEvent (#3525) 2017-02-23 18:12:27 -08:00
David Quintana a6284e6053 Allow mods to set other default "home dimensions" for respawning. (#3528) 2017-02-23 18:08:58 -08:00
Vincent Lee a15dee61d6 Persist PotionEffect curative items and initialize defaults from Potion (#3573) 2017-02-23 18:04:06 -08:00
LexManos 9d71b667b6 Fix @Config.Comment not working on subcategory Objects. Closes #3593 2017-02-23 17:25:09 -08:00
diesieben07 bf154730bd Start firing AttachCapabilitiesEvent<ItemStack> (#3645) 2017-02-23 17:09:02 -08:00
LexManos 5cce054548 Add @Name annotation to config system allowing you to use custom key for value.
Also added category option to root config to allow customization. See examples/docs for information.
2017-02-23 17:06:06 -08:00
James Mitchell 5f6bf3b063 Stop rotation of extended pistons, beds, and double chests Fixes #3634
Fix rotation of repeaters and comparators
2017-02-19 10:48:43 -08:00
LexManos 50bf03b82b Cache entity constructors for a small performance optimization 2017-01-17 13:07:22 -08:00
Vincent Lee 71efbf8132
Fix category comments not working. Closes #3593 2017-01-13 22:20:43 -06:00
Choonster TheMage d53397111b Fix Biome#getSpawnableList returning an empty list for non-vanilla EnumCreatureTypes (#3611) 2017-01-11 22:19:29 -08:00
diesieben07 df0f1c4e75 Allow block to specify their type for AI pathfinding (#3546) 2017-01-11 16:43:41 -08:00
Ben Staddon a718077a2e Fix ContainerRepair patch to prevent NPE (#3553) 2017-01-11 16:14:38 -08:00
James Mitchell c545b8ecd4 Clean up null issues, add more annotations (#3590) 2017-01-11 15:17:56 -08:00
LexManos 042c8ec739 Fix tests... 2016-12-26 21:52:15 -08:00
James Mitchell 5165dc52bf Update MCP mappings to snapshot_nodoc_20161220 (#3551) 2016-12-21 15:52:30 -08:00
Justin 95e523f943 [1.11] Fix ItemHandlerHelper canStack and ItemStack areTagsEqual methods not checking capabilities (#3500) 2016-12-21 11:11:25 -08:00
James Mitchell 6a125ae0d4 Fix uses of uppercase "Forge" where it fails Loader.isModLoaded(modID) (#3513) 2016-12-17 13:23:39 -08:00
Rock Hymas 8dc4b5f9b5 [1.11] Added EnchantmentLevelSetEvent (#3433) 2016-12-17 13:06:51 -08:00
mezz 8eea766288 [1.11.x] Refine fluid placement utilities (#3509) 2016-12-05 20:17:47 -08:00
LexManos 160427b12c Properly filter out annotations that are for multiple mods in the same mod source.
This prevents disabled mods from getting their proxies injected.
Also prevents mods from getting their proxies injected multiple times.
Effects the @EventBusSubscriber, @Instance, @Metadata, @SidedProxy annotations.
If the target modid is not in the annotation data, and there are multiple mods in the source, it will attempt to find it by matching the annotations's class names.
This is a potentially breaking change. Review your logs for "skipping" messages.
2016-12-05 17:19:15 -08:00
BlayTheNinth 2009b3ec5e [1.11] Add canApplyAtEnchantmentTable to Item (#3463)
Allowing increased control of which enchantments can be put on an item over Vanilla's hard-coded item type checks.
Render enchantment buttons disabled when the item is enchantable but the enchantability requirement is not met on lower levels.
2016-12-03 10:43:29 -08:00
liach 2337b0a6ae Moved TextureStitchEvent.Pre to allow custom sprites for blocks (#3436) 2016-12-01 20:49:23 -08:00
TechnicianLP dac8e49f50 Added EquipmentChangeEvent (#3411) 2016-11-30 15:15:14 -08:00
mezz 2bd8b95a3b Cleanup some null checks and remove deprecated methods in Item and Block (#3429) 2016-11-22 15:20:05 -08:00
LexManos 8719fa0263 Make all tests one side only, so we can test vanilla clients in dev env. 2016-11-22 12:12:13 -08:00
LexManos 97ea0c4713 First draft of Entity Registry re-write. 2016-11-17 19:06:42 -08:00
mezz 150566d9a3 [1.11] Fix nullability issues around ForgeHooks and Capabilities (#3395) 2016-11-17 10:44:31 -08:00
mezz eb6b3ea228 Implement fluid item capabilities without item swapping 2016-11-16 16:17:21 -08:00
mezz 6f1a44a405 Remove deprecated Fluid stuff 2016-11-16 16:17:21 -08:00
LexManos 648067efc2 Fixed test cases for 1.11 changes. 2016-11-15 20:28:12 -08:00
LexManos c459b87ec9 Initial 1.11 release update. 2016-11-15 19:26:10 -08:00
cpw 4e6a774075 Initial 1.11-pre1 update 2016-11-13 17:09:55 -05:00
cpw 9ab96fbda6 Update to 20161111 mcp names 2016-11-12 10:05:32 -05:00
LatvianModder 27ebd0e9b9 Added PermissionAPI (#3155) 2016-11-04 13:36:30 -07:00
LexManos 490573a71f Fix Tabbing issues with config classes. 2016-10-11 12:21:14 -07:00
LexManos 9c7d20b3a1 Initial pass a re-working the configuration system.
Work in progress.
2016-10-10 22:15:35 -07:00
cpw d7b241c224 Add in missing test runner for a test. Fixes failing tests on jenkins, hopefully. 2016-10-10 15:20:51 -04:00
cpw d7dda9e960 Fix substitutions being broken after freezing - actually store the original state in registry copies, not the computed state, which is wrong because it only sees the sub, not the original. 2016-10-10 15:04:45 -04:00
Steven Blom d3da111c08 Allow all Forge Registries to work with ObjectHolder (#3220) 2016-10-09 13:34:38 -07:00
LexManos bc303074f6 Introduce IContextSetter for events.
This will set the active mod container for events using the normal EventBus.
Fixes improper warnings from initializing mods using the new Registry events.
Modders, you should not use this as it has many performance implementations
and if abused will slow down the event bus A LOT. ActiveModContainer is not
thread safe.
2016-10-08 16:30:53 -07:00
LexManos 1107088acb Add support for generic filtering of events.
Please DO NOT use this in performance sensitive environments where you will have tons of things added to the listener list.
If that's the case define sub-classes as they have completely separate lists and will thus be more efficient when firing the event.
2016-09-17 15:08:23 -07:00
Steven Blom 8dca9f2694 New event to allow mutating a baby entity based on it's parents (#3227) 2016-09-13 09:32:27 -07:00
LatvianModder 4e3b6b0f15 Added CommandTreeBase (#3193) 2016-09-13 00:36:51 -07:00
Marvin Rösch bf6437c12a Fix universal bucket not being returned in crafting recipes (#3234) 2016-09-13 00:02:01 -07:00
boni 8dbfe1baad Expand getHarvestLevel to include player and blockstate (#3192) 2016-08-19 15:54:37 -07:00
LexManos 0e286f880e Fix World Capabilities NPE when there are no attached capabilities. 2016-08-14 01:48:41 -07:00
Abastro bfddcfb4fc Introduced Capabilities for World (#3069) 2016-08-13 20:42:00 -07:00
Joseph C. Sible 8195c36434 Fix test mod IDs, names, and versions (#3122)
Most of our test mods have bad IDs (uppercase) and are missing names or
versions. Forge produces a bunch of warnings in the console about this, which
makes it more likely that an important message will be missed.
2016-08-12 15:10:47 -07:00
LexManos fdea60f89a Disable DecorateEventDebug by default.
Prevents me thinking that decoration is broken >.<
2016-08-08 17:35:48 -07:00
LexManos f4e8804c8a Restone binary compatibility with registry substitution rework.
Modders please switch to using the provided RegistryBuilder to ensure more forward compatbility. Closes #3144
2016-08-02 15:55:18 -07:00
cpw 4dcee246d5 Another pass at substitutions - now capable of fixing up ItemBlock to point at the right block when a block is substituted, should also handle substituting itemblocks. There's some hackery in the way we have to change the value of ItemBlock.block, but it's not too egregious in my opinion. 2016-07-29 17:08:52 -04:00
cpw 1473334f61 Merge remote-tracking branch 'origin/pr/3120' into 1.10.x 2016-07-28 23:15:32 -04:00
Me4502 579f028294 Fixed NeighborNotifyEvent not containing the piston facing direction.
(cherry picked from commit 5637c41)
2016-07-28 20:51:06 -04:00
cpw bc82f2ae5a Fix #3126 - duplicate stat id error - don't use the "universal iterators" in statbuilding, use the one without the duplicate entries. (The duplicate entry one is for rendering setup) 2016-07-28 15:56:30 -04:00
cpw ab64d1a166 Fix a vanilla bug with the blockstate ID map not being properly symmetric with respect to block.getStateFromMeta - closes #3012 properly but probably has a random MCJIRA ticket somewhere too. 2016-07-26 17:16:42 -04:00
Dakota Pierone 0cf2cdfdb3 Update decorate for biomes to support Decorate event 2016-07-24 10:40:14 -07:00
cpw fe96792506 Merge remote-tracking branch 'origin/pr/3087' into 1.10.x 2016-07-24 10:57:47 -04:00
cpw cace1f00b2 Merge remote-tracking branch 'origin/pr/3110' into 1.10.x 2016-07-24 10:08:46 -04:00
Bernhard Bonigl bc27f0e204 Add shouldCauseBlockBreakReset callback to Item. This allows to keep breaking blocks if the NBT or similar changes. 2016-07-24 13:52:27 +02:00
Joseph C. Sible 5ebf77bfd9 Add a test for CreateFluidSourceEvent 2016-07-23 22:39:54 -04:00
cpw 8f74d05d02 Add the new tests into the suite 2016-07-20 21:29:13 -04:00
cpw 80621de9ea Some dummy block replacement tests - it seems they work correctly. 2016-07-20 21:27:03 -04:00
cpw a156d5e0fe Some more substitution tests. It seems like it's working as it should. 2016-07-20 20:39:36 -04:00
cpw 7d4bf619fe More tests. Substitutions now work, and a fix is included. *sigh* Closes too many bugs to count. 2016-07-20 16:03:56 -04:00
cpw 22394f87d5 Some test harness stuffs. Time to get the registry manager properly tested. 2016-07-19 19:21:52 -04:00
mezz 93a7ac3d89 Add TextureDump forge test mod 2016-07-13 17:04:47 -07:00
LexManos 5f234fdcf8 Added support for using static methods as event listeners, Register the .class instead of an instance.
And added an improvement to calltime listener rebuilding.
2016-07-13 12:08:13 -07:00
cpw 565cfb155f Merge remote-tracking branch 'origin/pr/3036' into 1.10.x Closes #3036 Thanks Mezz! 2016-07-12 18:05:13 -04:00
Bernhard Bonigl 432e3ab08a Add an event that allows to modify the looting level based on damage source 2016-07-03 15:19:31 +02:00
mezz 0fc08e383a Add Forge fluid handler test 2016-06-26 02:46:19 -07:00
cpw 260be68723 Update to 1.10 2016-06-23 02:39:55 -04:00
RainWarrior ce481da1d1 Initial support for model visibility system. Implemented it for OBJ, B3D and normal vanilla models; fixed NPE accessing parent state in B3DModel. Fixes #2801. 2016-05-30 01:20:43 +03:00
LexManos df7c7d6dfc Make unit test for EnumHelper more robust and less spammy. Now detects missing accessors as well. 2016-05-24 16:11:12 -07:00
Steven Blom a4e2d0e304 Add Unit Test to detect mismatches between EnumHelper and Enum ctor 2016-05-20 13:25:04 +09:30
LexManos cdc86e9af6 Update mappoings snapshot to 20160518 2016-05-18 05:23:30 -07:00
LexManos b9ac73b0f1 1.9.4 Update.
Major things to note:
Class renames: https://gist.github.com/LexManos/44dd211f90f498ad4015279b103dff86
Tile Entities are now packed in the ChunkData packet.
Forge intends to work around this to better support large moded worlds, but for the time being modders should implement the new function carefully and only send what data they need to!
Minecraft's codebase now has annotations, these are directly from Mojang and should be adheared to!
Added support for package-info.java's containing @Nullable information for all MC code base.
2016-05-18 03:29:10 -07:00
RainWarrior 5445f96327 Extended Animation State Machine format to allow multiple transitions from one state. 2016-05-13 12:46:34 +03:00
LexManos aaa146c10d New LootTable interaction system and event.
Modders can now modify and reference internal elements of a loot table by name.
Editing can ONLY be done in the event and any external editing will cause a exception to be thrown.
See this gist for more information: https://gist.github.com/LexManos/77c983d67b9ad27010428478b66d50fd
2016-05-09 14:15:59 -07:00
Vincent Lee 9f28c90365 Add Potion.renderHUDEffect (#2798) 2016-05-02 14:44:14 -07:00
RainWarrior ab2b07f149 Fixed some test mods not being marked as client-only. 2016-04-05 11:46:05 +03:00
Vincent Lee e8ea52558b Player Interact Event 2016-04-04 19:58:46 -05:00
RainWarrior 77772ac3f5 Changed generic signature of GameRegistry.register methods to work around the type inference bug; updated all example mods to the new block/item registration method. 2016-04-03 10:14:16 +03:00
RainWarrior c891d9fe16 Disabled erroring block, fixed DynBucketTest.TestItem model. 2016-03-25 00:49:34 +03:00
RainWarrior 756c58d5cb Removed RenderWorldEvent, encapsulated all public event fields. 2016-03-24 22:22:21 +03:00
RainWarrior a9d23f5e78 Cleanup: removed IEEP, removed redundant casts, fixed imports, fixed typos. 2016-03-24 22:22:20 +03:00
RainWarrior 08663587d4 Added Capability.cast, to allow avoiding unchecked casts in ICapabilityProvider.getCapability 2016-03-22 09:01:00 +03:00
RainWarrior 4b53f0716b instance -> INSTANCE 2016-03-21 10:48:52 +03:00
RainWarrior 286c8c05b7 Separated model classes to client and common packages. 2016-03-21 10:48:52 +03:00
RainWarrior 5f62404f8a Switched animation system to capabilities, added animated item example, fixed state passing in MultiModel. 2016-03-21 10:48:52 +03:00
cpw 76e93e854a Fix bucket test 2016-03-19 21:36:21 -04:00
cpw ce8a758667 Merge branch 'master' into 1.9 2016-03-19 21:19:19 -04:00
RainWarrior a81dfbc4ef Fixed quads that don't need diffuse lighting getting it anyway. 2016-03-17 14:11:24 +03:00
RainWarrior b8bb8c374c Fixed MultiLayerModel not getting correct submodels; Unified the gui lighting of normal and custom models - diffuse lighting is now done in the pipeline, no need for IColoredBakedQuad anymore. 2016-03-17 07:29:44 +03:00
RainWarrior b81a13d010 Fixed model error reporting, fixed model errors in test mods that shouldn't happen, fixed custom texture loading, made more things private/final. 2016-03-16 01:42:23 +03:00
RainWarrior 5d352bda6c Big model loader refactoring: simplified a lot of things, broke some error reporting. Still generally works. 2016-03-13 16:16:25 +03:00
RainWarrior a799bbad2d First version of updated of ModelLoader, mostly works. 2016-03-13 12:10:50 +03:00
RainWarrior 4650ee2789 Updated to latest mappings. Exc is broken, some anonymous classes didn't map to srg names. 2016-03-13 04:40:03 +03:00
Bernhard Bonigl bcab92daf6 Fix CombinedInvWrapper accessing incorrect slots
Closes #2533
2016-03-12 22:17:57 +01:00
RainWarrior 173cec4149 Fix perspective transformations for left-handed items, disable ModelAnimationDebug until model loading is fixed. 2016-03-10 03:38:58 +03:00
LexManos 90b2c86a9f Added bypass functions to Defaulted registry, DO NOT USE THIS MODDERS FORGE INTERNAL ONLY.
And some other fixups for running.
2016-03-09 14:41:13 -08:00
LexManos 7b7156e87f Interaction hooks need to be re-added but compiles {Doesn't run} 2016-03-09 14:11:56 -08:00
RainWarrior 3e22a2b90d Model UV lock handling from the state to the model, fixed most compile errors in ModelLoader, disabled it (and ModelBakeEvent) until it's functional, fixed some errors in ForgeHooksClient. 2016-03-06 02:51:39 +03:00
RainWarrior 70670d70ea Removed generics from IModel subinterfaces, add ed ModelProcessingHelper instead. 2016-03-06 01:34:04 +03:00
RainWarrior ed8a8b415b Fix various errors in text mods. 2016-03-05 04:43:41 +03:00
LexManos ac7c4d2f6c Some import renames and compile error fixes, killed ~800. 2016-03-01 04:58:03 -08:00
LexManos 250a77b359 Merge pull request #2476 from Abastro/fovfixes
Added Event: EntityViewRenderEvent#FOVModifier
2016-02-29 13:20:46 -08:00
Matthew Miller (Me4502) f1ad05dd8e Added local click position to PlayerInteractEvent. 2016-02-27 11:27:21 +10:00
Abastro c4ca8270b9 Added EntityViewRenderEvent#FOVModifier
Enables mods to modify raw FOV directly.
Avoids modifier limit from FOVUpdateEvent.
Aware of blocks which are needed for fov change related with materials.
2016-02-27 09:25:19 +09:00
LexManos 6b51665c42 Merge pull request #2333 from bonii-xx/universal_bucket
Add an universal bucket.
2016-02-15 17:56:05 -06:00
Bernhard Bonigl 1055206ba8 Add universal bucket 2016-02-16 00:49:01 +01:00
LexManos 74fe690227 Fix chat formatting not surviving line wraps in chat messages. 2016-02-15 14:30:24 -08:00
pau101 cb70f1378c Fix #2321 2016-02-04 22:58:21 -08:00
LexManos 7a0a801740 Merge pull request #2336 from VikeStep/master
[1.8.9] Add EntityTravelToDimensionEvent
2016-01-25 11:07:19 -08:00
RainWarrior 960717eb0c Fixed minor race condition between mouse clicks and TESR in the animation example. 2016-01-25 17:39:43 +03:00
VikeStep 026d179c0d Add EntityTravelToDimensionEvent
Resolve Merge Conflict

Move event call inside conditional
2016-01-25 17:57:52 +10:00
RainWarrior 0710bdf3f5 Model animation system.
Main things of interest:
  * IAnimationStateMachine - state machine for animations; can load
    from json.
  * AnimationTESR - automatic TESR for animated models.
  * AnimationModelBase - same for entities.
  * ITimeValue - time-varying value, used to control animation
    parameters from code.

  * TESRs can now be batched - look at TESR.renderTileEntityFast +
    TE.hasFastRenderer.
  * RegionRenderCache is not accessible to TESRs and other client-side
    logic - MinecraftForgeClient.getRegionRenderCache.
2016-01-24 09:59:38 +03:00
Bartek Bok fae5ff67ed Allow sleeping without bed 2016-01-17 00:43:29 +01:00
LexManos 17db34ae31 New Capability system allowing for more manageable world object features.
When combined with @Optional this should address all issues of soft dependancy on mods/apis.
This also addresses the issue of dynamic functionality in TileEntities/Entities.

Current capability providers: TileEntity, Entity, ItemStack

Also added INBTSerializeable, a generic interface for game objects that can be written to/from NBT tags.

Vanilla capabilities will be coming soon, mostly on request and review.
So start requesting capabiliteis on vanilla/Forge features.
2016-01-11 16:04:22 -08:00
RainWarrior 949e77b46a Model loader improvements: adding custom data/textures to models that don't need them doesn't cause a error now, since it's common to put those in the defaults section of the blockstate json; you can get IModel associated with the variant now - using ModelLoaderRegistry.getModel; MultiLayerModel should now respect transformations applied to it, and respect part transformations. 2016-01-06 22:00:43 +03:00
RainWarrior 856a9c3cdd Fixed perspective transformation handling for fluid models, changed inventory fluid model to use unrotated still texture. 2016-01-04 13:54:45 +03:00
LexManos 1a31ff9f06 Added new get/setRegistryName functions to Item and Block.
And helper functions in GameRegistry to allow for registering using those names automatically.
This is to simplify registration and get rid of the horrible hacks users are doing now with 'unlocalised names'.
2016-01-02 12:58:57 -08:00
RainWarrior d105c444ee SidedProxy now has sensible default values - nested ClientProxy and ServerProxy classes. 2016-01-02 09:59:14 +03:00
RainWarrior db3e039b31 TESRs registering in preinit don't break pistons anymore. Fixes #2298. 2015-12-30 11:37:32 +03:00
RainWarrior 56eba05237 1.8.9 update 2015-12-30 07:15:03 +03:00
Bernhard Bonigl 509cc79112 Fix bucket replacement not loading the bucket model by itself if replacing buckets.
This happens when no other mod that uses the bucket model is present.
Also added a simple method for registering the bucket model, should give
modders an idea on how to use the general model.
2015-12-29 13:31:35 +01:00
RainWarrior 097c0c6130 Added an ability to register custom item variants, not ending with "#inventory". Should allow grouping multiple item models into 1 blockstate json. 2015-12-24 06:06:38 +03:00
Fry c7790f7b35 Merge pull request #2282 from bonii-xx/dynbucket
Add a dynamic bucket model that displays the animated liquid contained
2015-12-22 00:26:25 +03:00
Bernhard Bonigl 4f6784b733 Add a dynamic bucket model that displays the animated liquid contained
Has a config option (default off) that replaces the vanilla buckets with the forge bucket model

New original bucket textures from mr_hazard
2015-12-21 22:22:40 +01:00
Lunatrius b665026378 Fix client side commands adding parts of the color codes on autocomplete (prefix "7" and suffix "r"). 2015-12-19 12:55:26 +01:00
RainWarrior f0ae51bb34 Forge pipeline will now take original model lightmap into account, if present. 2015-12-15 22:27:01 +03:00
RainWarrior 86c09722a0 IModel can now depend on a variant definition (ModelResourceLocation); added MultiLayerModel - simple model that'll render correctly in multiple layers + example of using it. 2015-12-15 21:49:19 +03:00
RainWarrior d6ee373e87 Preparations for the Animation system.
Changes to the Model API - IModelState now works with Optional. Handling of parts of the model is not optional, and coordinate space/result interpretation is up to the caller. IModel doesn't extend IModelPart by default anymore; MapModelState uses composition to achieve previous functionality, IModelPart implementations are disjoint now. Updated perspective handing to the new API, removed IPerspectiveState (MapModelState is now the same thing). Perspective transforms for the default fluid model.
2015-12-14 23:27:27 +03:00
Bernhard Bonigl 2324c2fd20 Add shouldRender() to Potions that allows to hide them completely in the inventory 2015-12-05 10:09:02 +01:00
cpw ff42107b92 A few fixes 2015-11-30 14:14:56 -05:00
Bernhard Bonigl 57d1a657a0 Add a PotionRegistry to handle dynamic distribution and remapping of Potion IDs 2015-11-29 22:02:55 +01:00
LexManos 5549b06f96 Compiler warnings pass, undeprecated SplashProgress related stuff. 2015-11-26 19:38:21 -08:00
cpw 68dfcccd57 Update mappings to 20151122. 2015-11-23 23:18:52 -05:00
RainWarrior 9815d729b5 Fixed NPE is B3D loader caused by the missing vertex normal; updated the example chest model - it's now has 2 meshes; Updated ModelAnimationDebug - it now uses the new chest model, renders the base with the static world renderer, and only the lid with the TESR. 2015-11-23 10:12:01 +03:00
RainWarrior 13d7530e43 Implemented interpolation of TRSR transformations; B3D: added interpolation capabilities to B3DState, animated TESR example in ModelAnimationTest (pure TESR right now, no separation inside the example model between the static and dynamic parts right now). 2015-11-16 06:51:39 +03:00
RainWarrior e833ee81fb Updated various rendering-related patches and classes to 1.8.8; forge still uses vecmath. 2015-11-10 00:03:39 +03:00
RainWarrior 8a11ad7a7a OBJ loader: reworked texture resolution: keys now have to start with #, like every other model loader; models without explicit library now work, remapping is possible by using the key "#OBJModel.Default.Texture.Name"; in addition to remapping by material name, remapping by texture name works too, like in other model formats. 2015-11-07 20:36:57 +03:00
shadekiller666 7a20543d5f OBJLoader: Quick bandages to support/fix the new way that face/vertex normals are calculated, a very quick bandage to patch TextureCoordinates for the time being, and the Parser now uses a Pattern to split strings on whitespace instead of only splitting on " ". 2015-10-29 02:21:28 -07:00
RainWarrior 6b10b41b02 Fixed piston rendering (WorldRenderer offset wasn't applied); fixed TESR being registered too early in one of the debug mods. 2015-10-27 19:02:22 +03:00
RainWarrior 7c7547227c Perspective awareness for vanilla and multi models, fixes #2148.
Improved error handling in MultiModel.
2015-10-27 17:40:05 +03:00
shadekiller666 d1b220f6a3 Added OBJ loader for the ModelLoaderRegistry system. 2015-10-26 19:38:49 +03:00
darkevilmac b9f5e152de Add PlayerSetSpawnEvent 2015-10-10 15:39:27 -07:00