Commit graph

2311 commits

Author SHA1 Message Date
cpw
50215307f2 MinecraftForge/FML@d14d1a8fea Update to use the inherited jar format. Simplifies a lot.. 2015-04-20 22:27:10 -04:00
cpw
96cbadb874 Expose the fluid that a block was constructed with, useful for 'non-default'
configuration of fluidblocks. Shouldn't be used outside of this purpose.
2015-04-20 10:29:04 -04:00
cpw
50608986fe Replace the OLD fluid in the fluidID map, not the new one.. 2015-04-20 10:01:36 -04:00
cpw
7bbe8df2b8 Fix static initializer derp. 2015-04-20 09:26:27 -04:00
cpw
0543828603 Make FluidStack hold a delegate for the fluid. This can then float based on what is "live" at present. 2015-04-20 09:06:23 -04:00
cpw
7e9d2fb509 Reformat ItemArmor$ArmorMaterial.getBaseItem to use an if/then/else structure. The switch
causes the generation of an internal class which may derp custom armor addition.
Closes #1799
2015-04-19 12:04:22 -04:00
cpw
dcb2f2588c Actually use the override constraint in ticket requests. Closes #1802 2015-04-19 11:57:39 -04:00
cpw
178acfbb20 Change logging to avoid the String.format bug. Closes #1809 2015-04-19 11:52:23 -04:00
cpw
57408af2a3 MinecraftForge/FML@8f9e3a7e30 Exceptions during construction phase should not propogate and cause an immediate crash. Closes #638 2015-04-18 21:54:01 -04:00
cpw
54af750717 Verify that the fluid registry doesn't contain "junk" fluids thru reflection. 2015-04-18 21:37:45 -04:00
Lex Manos
1effc27790 Fixed NBTSizeTracker missing a lot of data being read. Also made new NBT object allocation claim 32-bits in the size tracker.
(cherry picked from commit de066a86da)

Conflicts:
	patches/minecraft/net/minecraft/nbt/CompressedStreamTools.java.patch
	patches/minecraft/net/minecraft/nbt/NBTTagList.java.patch
2015-04-18 21:22:44 -04:00
KingLemming
61984561cd Merge pull request #1805 from KingLemming/1.7.10
OreDict functionality updates.
2015-04-16 17:20:43 -04:00
King Lemming
cd3bbfb02c Adds some new Ore querying functionality.
Also attempts to size initial Hashmaps in a logical manner.

Signed-off-by: King Lemming <kinglemming@gmail.com>
2015-04-16 17:18:37 -04:00
LexManos
475d7fc02d Revert KL's change, requesting a ore WILL register it.
Registering like this and returning a new empty list allows for modders to register their recipes and such without requiring to be executed after someone actually adds an item. If handled properly this allows for more flexible load orders, and more responsive code.
2015-04-13 21:28:16 -07:00
KingLemming
b30b551197 Merge pull request #1796 from KingLemming/1.7.10
Adjusts OreDictionary to prevent invalid registrations.
2015-04-13 22:41:25 -04:00
King Lemming
3cd7f6bd87 Adjusts OreDictionary to prevent invalid registrations.
Getting Ore Names for a non-existent ore will no longer automatically add that Name to the list nor generate an ID.

Tweaks a warning message in the FluidContainerRegistry. No functionality change.

Signed-off-by: King Lemming <kinglemming@gmail.com>
2015-04-13 22:40:38 -04:00
cpw
277495c8e4 MinecraftForge/FML@dfce4cd8d0 Allow registering custom language adapters.
MinecraftForge/FML@9fecd72cf0 Some tidyup of the PR
MinecraftForge/FML@10ac2a4fd9 Fix itemCtorArgs javadoc in registerBlock
MinecraftForge/FML@86f70d37a4 Patch TracingPrintStream to handle Kotlin IO.
2015-04-11 18:20:11 -04:00
cpw
5c88164211 And handle the null case in the constructor itself. Closes #1794 (again) 2015-04-11 17:38:15 -04:00
cpw
230d757a89 Fix NPE - Closes #1794 2015-04-11 17:27:14 -04:00
cpw
9671179453 Fluids are now tracked internally by mod. This allows for the server and the world to specify a "default"
in the case of a possible alternative fluid implementation. If you always called registerFluid, things
should work pretty seamlessly, but if you didn't (gating with an isFluidRegistered check for example)
you should change to register anyway. This way, even if you're not default in the overall instance, you may
become default if you're the only mod present on a server, for example, or in a world save.

This should radically decrease the mixups caused by mod load ordering problems, and other issues around fluid
tracking.
2015-04-11 17:18:53 -04:00
cpw
eb12936a52 MinecraftForge/FML@0da1263ff9 Enhance error output for bad textures a bit more and try and capture more types of error.. 2015-04-11 12:30:20 -04:00
cpw
345d905438 MinecraftForge/FML@be5ec06e31 Cleaning up the missing resource stack spam, and condensing the information into a usefully understandable format. 2015-04-11 01:03:50 -04:00
cpw
6049d371f3 MinecraftForge/FML@ce791cb1f2 Rework EventSubscriptionTransformer to bake @Cancelable and @HasResult values, should increase EventBus performance even more by removing logic from Event constructors.
MinecraftForge/FML@852710962a Clean up some dead code
2015-04-10 22:46:53 -04:00
KingLemming
6d3494a853 Merge pull request #1791 from KingLemming/1.7.10-fluid
FCR Warning + Denial
2015-04-10 20:11:17 -04:00
King Lemming
37d63b3fe9 Adds a warning to the FluidContainerRegistry when a mod does something stupid! Also denies the registration.
Signed-off-by: King Lemming <kinglemming@gmail.com>
2015-04-10 20:09:58 -04:00
KingLemming
291c57b624 Merge pull request #1789 from KingLemming/1.7.10-fluid
1.7.10 fluid
2015-04-10 16:41:29 -04:00
King Lemming
186f92479d Fixes FluidContainerRegistry properly - no more corner case where client/server mods disagree.
Also clarifies the 2x Fluid registration error message somewhat.

Signed-off-by: King Lemming <kinglemming@gmail.com>
2015-04-10 16:38:45 -04:00
KingLemming
7e9dfb1a11 Merge pull request #4 from MinecraftForge/1.7.10
1.7.10
2015-04-10 16:24:33 -04:00
KingLemming
806b4a3bdf Merge pull request #1784 from KingLemming/1.7.10-fluid
Change to FluidContainerRegistry
2015-04-09 17:45:09 -04:00
King Lemming
433b7ca589 Fixes #1782
Signed-off-by: King Lemming <kinglemming@gmail.com>
2015-04-09 17:28:20 -04:00
KingLemming
78db5732ca Merge pull request #2 from MinecraftForge/1.7.10
1.7.10
2015-04-09 16:56:04 -04:00
LexManos
24802143eb Merge pull request #1775 from Prototik/patch-1
[1.7.10] Fix FluidRegsitry.registerFluid
2015-04-08 09:25:01 -07:00
Sergey Shatunov
a42cf1ae37 Fix FluidRegsitry.registerFluid
FluidRegistry:
```java
    static BiMap<String, Fluid> fluids = HashBiMap.create();
    static BiMap<Fluid, Integer> fluidIDs = HashBiMap.create();
...
    public static boolean registerFluid(Fluid fluid)
    {
        if (fluidIDs.containsKey(fluid.getName()))
            ^^^^^^^
```
There is definitely should be fluids instead fluidIDs. This mistake broke many mods.
2015-04-08 17:26:40 +06:00
Lex Manos
02ebc9ca21 Restore binary compatibility issues in FluidRegistry caused by recent changes. 2015-04-07 20:06:55 -07:00
Lex Manos
1fd39578b0 MinecraftForge/FML@31cf2a9cab Remove J7 only constructor in EnhancedRuntimeException, J6 compiling compatibility restored. 2015-04-07 20:06:01 -07:00
cpw
4f0e2fb9c4 You shouldn't be creating FluidStacks from unregistered Fluids. Warn clearly on failed registrations, and make a useful log message for failed fluidstack
creations. Should help a lot with tracking down broken mods that are doing this wrongly.
2015-04-05 22:48:09 -04:00
King Lemming
f7395f517b Allow for duplicate Fluid Blocks. It's annoying to be sure but just as with the OreDictionary, we'll have to handle it.
Signed-off-by: King Lemming <kinglemming@gmail.com>
2015-04-05 22:30:39 -04:00
cpw
defaddecec Fix formatting 2015-04-05 22:30:39 -04:00
cpw
7506a5b7ad Add in a fluidid transformer 2015-04-05 22:30:39 -04:00
King Lemming
3fc40b955a Removed fluidID from ItemStack.
This fixes a rather huge issue where FluidStacks on the client could be desynced if a modder was unaware of it.

This is a breaking change but can be mitigated with a transformer to the getter getFluidID().

Signed-off-by: King Lemming <kinglemming@gmail.com>
2015-04-05 22:30:39 -04:00
cpw
38b9febfe5 Forge really should have always supported the concept of an "exact spawn". Individual world providers can still
change this behaviour of course, but for default maps it makes sense to support it as a config option.
2015-04-03 10:31:25 -04:00
cpw
e837b2e2cd MinecraftForge/FML@12ccf9cf49 Rather than try to fall back to the backup level.dat in case of weirdness in the ID map, just fail hard. There is probably a serious modder derp in this case and there's nothing FML can do to recover the situation except avoid making it worse.
MinecraftForge/FML@e8cd368da3 It's an IllegalState not an IllegalArgument *sigh*
MinecraftForge/FML@2be9c74342 And fix itemblocks being removed, leaving behind a residual block. This is a legitimate action - use the missing mapping event to let the mod tell us about it
MinecraftForge/FML@7d8804cf65 You can't setAction to BLOCKONLY
MinecraftForge/FML@c73861efe6 Cherry-pick 01aaa7dc97480b381ca0d192ec65016d7baeb747 Fix mods defined via --mods or --modListFile launch args not being searched for coremods. #560
MinecraftForge/FML@94c45b48c1 Fix json cache crash, handle the file much more cleanly. Probably an MC JIRA since it's a vanilla bug. Closes #619
2015-04-03 10:26:17 -04:00
cpw
e1c83de490 Comment on previous commit fix - it worked. Thanks to skyboy and tterrag for investigating and verifying.
A chest as an acheivement icon will recreate the original problem, for note.
2015-04-01 07:13:14 -04:00
cpw
1b7ce7592c Experimental "fix" for the weird rendering in the Acheivements screen. Thanks skyboy for spotting this. 2015-03-31 20:50:16 -04:00
Lex Manos
9e7e9e5cbf MinecraftForge/FML@24cb4a42c4 Enhance output of common FML errors in crash reports and server GUI.
Force load anonymous minecraft classes used in crash reports. This prevents some crashes being hiddedn behind class definiton exceptions.
2015-03-27 02:54:55 -07:00
cpw
ce10d0dfd0 MinecraftForge/FML@4ca6f6e19f What a dumb oversight. One needs to copy the active substitution set to the active gamedata. Doesn't work well otherwise.
MinecraftForge/FML@6f6cec96be Substitutions need to be activated when they're registered, otherwise they won't appear in world, ever.
MinecraftForge/FML@13ac015f0c Change iterator behaviour for the registry - include substitutions in the standard iterator, so that vanilla MC methods visit them (so they can get textures etc). The fml special one only visits the absolute set, used mostly for sanity checking and serialization.
2015-03-22 13:07:06 -04:00
cpw
c9fd2b6173 MinecraftForge/FML@6b0ae369eb Try and improve performance of the registry by avoiding superType.cast.
MinecraftForge/FML@dfebcafd49 Something I meant to add a long time ago, but it got overlooked. My apologies. Presend the (int) dimension ID in the serverhello packet. This should be 100% backward compatible with existing servers but bumping a server to this version will allow clients with this version as well to now login in dimensions outside the byte range. Probably fixes a bunch of mods that add dimensions.
MinecraftForge/FML@6011419fa0 Clean up my patch. Terrible person I am..
MinecraftForge/FML@c6bbd0e82d Forgot that I need a noarg ctor. I'm so rusty.
MinecraftForge/FML@6edc1635de Need to load the dimension from disk - do it without filling out the player so that the normal player loading (including events) works properly
2015-03-20 16:12:05 -04:00
Lex Manos
9704f25aa8 Fixed potential NPEs in Structure code caused by componenets not being able to load. 2015-02-05 17:03:43 -08:00
Lex Manos
9c50745bdb Updated FML:
MinecraftForge/FML@1de3bf733a Fix FML's package for net.miencraftforge on maven. Fixes uploading of new builds. Note: 1.7.10 builds are bug fixes only while FML/Forge for 1.8 stabelizes.
MinecraftForge/FML@05ecefb538 Update to ASM5 for Java 8 support
MinecraftForge/FML@1112c455b9 Merge pull request #595 from Grinch/master
2015-02-03 00:26:17 -08:00
LexManos
c9670d3c1d Merge pull request #1646 from Ivorforce/patch-1
Fix fluid tanks incorrectly reading NBT when empty
2015-01-22 21:09:59 -08:00