Compare commits

..
54 Commits
Author SHA1 Message Date
cpw dca8a4a550 Merged FML @ 1.7.10 2015-05-13 20:00:48 -04:00
cpw 4270f0fb4a MinecraftForge/FML@0b84b6aa29 Expose the state of the loader 2015-05-07 14:24:14 -04:00
cpw dd49a0cd84 Merge branch '1710ls' into 1.7.10 2015-05-07 14:23:37 -04:00
RainWarrior 88a7c0b233 Updated FML:
MinecraftForge/FML@2ed00c4da0 Splash progress screen will not load in the presence of optifine anymore.
MinecraftForge/FML@adcf2247c6 Loading screen: moved config file to the standard config directory; added the option to load textures from the custom resource pack
MinecraftForge/FML@91338433fa Add classloader exclusion for ASM
MinecraftForge/FML@7c10b93a2d Synchronize the available libraries. Turns out we've been forcing a newer apache commons-lang(3.2.1) for a long time, also sync the dev guava - we've been forcing 17 for a long time too. Bumping commons-lang to 3.3.2 since that's what Mojang are shipping with 1.8. It has no observable ill effects Closes MinecraftForge/FML#651
MinecraftForge/FML@8ccfa24764 Merge pull request MinecraftForge/FML#650 from luacs1998/1.7.10
MinecraftForge/FML@b2650a0bdb Optifine can tell us when they're ready for the new splash screen.
MinecraftForge/FML@02a5a58a1c Fix the ordering of the messages, so they make sense now.
MinecraftForge/FML@dda4313539 Revert "Merge pull request MinecraftForge/FML#650 from luacs1998/1.7.10" This undoes the seriously broken change from Sponge to support Mixins, that breaks a wide variety of coremods. Given the widespread incompatibility it introduces, it won't be re-added at 1.7.10.
MinecraftForge/FML@5dbb481732 Eliminated texture name allocation race condition
MinecraftForge/FML@450b82ca0e Updated default forge logo to animated gif; reverted config folder resolution to Minecraft class due to Loader not being initialized at the point it's needed
2015-05-04 22:18:38 +03:00
cpw 1b1fbbb70d MinecraftForge/FML@dda4313539 Revert "Merge pull request #650 from luacs1998/1.7.10" This undoes the seriously broken change from Sponge to support Mixins, that breaks a wide variety of coremods. Given the widespread incompatibility it introduces, it won't be re-added at 1.7.10. 2015-05-04 09:26:09 -04:00
cpw 815b97bf7c MinecraftForge/FML@adcf2247c6 Loading screen: moved config file to the standard config directory; added the option to load textures from the custom resource pack
MinecraftForge/FML@91338433fa Add classloader exclusion for ASM
MinecraftForge/FML@7c10b93a2d Synchronize the available libraries. Turns out we've been forcing a newer apache commons-lang(3.2.1) for a long time, also sync the dev guava - we've been forcing 17 for a long time too. Bumping commons-lang to 3.3.2 since that's what Mojang are shipping with 1.8. It has no observable ill effects Closes #651
MinecraftForge/FML@8ccfa24764 Merge pull request #650 from luacs1998/1.7.10
MinecraftForge/FML@b2650a0bdb Optifine can tell us when they're ready for the new splash screen.
MinecraftForge/FML@02a5a58a1c Fix the ordering of the messages, so they make sense now.
2015-05-02 22:15:08 -04:00
cpw 37075d0437 MinecraftForge/FML@2ed00c4da0 Splash progress screen will not load in the presence of optifine anymore. 2015-04-25 15:06:20 -04:00
cpw 63e71af229 MinecraftForge/FML@94821fac98 Add a config file that lets you add additional soft dependencies at runtime - injectedDependencies.json 2015-04-25 01:34:25 -04:00
cpw 66a4db5fa0 MinecraftForge/FML@4fe7b469b5 Loading screen: logo rotation is now optional; initial support for animated textures - animation rate is fixed for now.
MinecraftForge/FML@31ae43590a Fix trying to close the screen during error.
2015-04-25 00:47:09 -04:00
cpw 55cbba0764 MinecraftForge/FML@36688e781a Add in resource reloading to the bar. Tidy up some of the labels a bit.
MinecraftForge/FML@a1dc465a55 More progress bar action!
MinecraftForge/FML@bfcbf4ef43 More progress bar hooks
MinecraftForge/FML@a6670c415e Thread errors should be correctly displayed in the crash report now
MinecraftForge/FML@9a16d26186 fixed bar text positioning
MinecraftForge/FML@0059c63028 Track mipmaps and texture upload
MinecraftForge/FML@ef5f809752 Fix broken log message in vanilla.
2015-04-24 19:16:55 -04:00
RainWarrior a297a615b9 MinecraftForge/FML@5785a9c9e8 Fix up multiple injections of cmdline files via versionspecificmoddir. Closes #645
MinecraftForge/FML@bd117be9c3 Correctly track exceptions thrown in the loading screen rendering thread
2015-04-24 05:51:44 +03:00
cpw c12bb689fb MinecraftForge/FML@a39482c4b7 Splash screen implementation
MinecraftForge/FML@01fea095cd Merge branch '1.7.10-load-progress' of github.com:RainWarrior/FML into 1.7.10
MinecraftForge/FML@364b4bbbb0 Call some loader stuffs
MinecraftForge/FML@61a891280d Make sure to close the splash screen if there's gonna be an error display
2015-04-21 00:30:52 -04:00
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 <[email protected]>
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 <[email protected]>
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 <[email protected]>
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 <[email protected]>
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 <[email protected]>
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 <[email protected]>
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 <[email protected]>
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
844 changed files with 50926 additions and 60322 deletions

No files matched your search

-4
View File
@@ -21,7 +21,3 @@
/patches-/
# FML changelog
changelog.txt
/patches_old/
/patches_old_bak/
*.py
*.7z
+4 -13
View File
@@ -1,9 +1,5 @@
buildscript {
repositories {
maven {
name = "central_mirrior"
url = "http://uk.maven.org/maven2"
}
mavenCentral()
mavenLocal()
maven {
@@ -30,10 +26,6 @@ apply plugin: 'maven'
apply plugin: 'forgedev'
repositories {
maven {
name = "central_mirrior"
url = "http://uk.maven.org/maven2"
}
mavenLocal()
flatDir {
name "fileRepo"
@@ -42,12 +34,11 @@ repositories {
}
minecraft {
version = '1.8'
mcpVersion = '9.10'
mappings = 'snapshot_nodoc_20141130'
version = '1.7.10'
mcpVersion = '9.05'
fmlDir = projectDir.getAbsolutePath() + "/fml";
mainClass = 'net.minecraftforge.fml.relauncher.ServerLaunchWrapper'
tweakClass = 'net.minecraftforge.fml.common.launcher.FMLTweaker'
mainClass = 'cpw.mods.fml.relauncher.ServerLaunchWrapper'
tweakClass = 'cpw.mods.fml.common.launcher.FMLTweaker'
installerVersion = "1.4"
}
Binary file not shown.
+4 -5
View File
@@ -29,12 +29,11 @@ repositories {
}
minecraft {
version = '1.8'
mcpVersion = '9.10'
mappings = 'snapshot_nodoc_20141130'
version = '1.7.10'
mcpVersion = '9.05'
fmlDir = projectDir.getAbsolutePath();
mainClass = 'net.minecraftforge.fml.relauncher.ServerLaunchWrapper'
tweakClass = 'net.minecraftforge.fml.common.launcher.FMLTweaker'
mainClass = 'cpw.mods.fml.relauncher.ServerLaunchWrapper'
tweakClass = 'cpw.mods.fml.common.launcher.FMLTweaker'
installerVersion = "1.4"
}
+1129 -10542
View File
File diff suppressed because it is too large. Load diff
+4317
View File
File diff suppressed because it is too large. Load diff
+436 -1905
View File
File diff suppressed because it is too large. Load diff
+21647 -27178
View File
File diff suppressed because it is too large. Load diff
+9 -16
View File
@@ -22,8 +22,8 @@ Params = %(DirConf)s/params.csv
NewIds = %(DirConf)s/newids.csv
[SRGS]
ConfClient = %(DirConf)s/joined.srg
ConfServer = %(DirConf)s/joined.srg
ConfClient = %(DirConf)s/client.srg
ConfServer = %(DirConf)s/server.srg
Client = %(DirTemp)s/client_rg.srg
Server = %(DirTemp)s/server_rg.srg
DeobfClient = %(DirTemp)s/client_deobf.srg
@@ -32,16 +32,14 @@ ReobfClient = %(DirTemp)s/client_ro.srg
ReobfServer = %(DirTemp)s/server_ro.srg
ReobfClientSrg = %(DirTemp)s/client_ro_srg.srg
ReobfServerSrg = %(DirTemp)s/server_ro_srg.srg
ReobfClientCls = %(DirTemp)s/client_ro_cls.srg
ReobfServerCls = %(DirTemp)s/server_ro_cls.srg
[JAR]
DirNatives = %(DirJars)s/bin/natives
Client = %(DirJars)s/bin/minecraft.jar
Server = %(DirJars)s/minecraft_server.jar
LWJGL = %(DirJars)s/bin/jinput.jar,%(DirJars)s/bin/lwjgl.jar,%(DirJars)s/bin/lwjgl_util.jar
MD5Client = 8663a10cecc10eaa683a927ef5371852
MD5Server = 5b19d1a562a8a7c5f9a787ad96c8148b
MD5Client = 595007b790548806f66762507203b896
MD5Server = a1de2db50b0d8bfac45be3e01e54bddf
[RETROGUARD]
Location = %(DirRuntime)s/bin/retroguard.jar
@@ -68,11 +66,6 @@ XClientOut = %(DirTemp)s/minecraft_exc.jar
XServerOut = %(DirTemp)s/minecraft_server_exc.jar
XClientLog = %(DirLogs)s/client_exc.log
XServerLog = %(DirLogs)s/server_exc.log
XClientLogReobf = %(DirLogs)s/client_reobf_exc.log
XServerLogReobf = %(DirLogs)s/server_reobf_exc.log
XClientMeta = %(DirTemp)s/client_meta.log
XServerMeta = %(DirTemp)s/server_meta.log
[DECOMPILE]
ClsClientTemp = %(DirTempCls)s/minecraft
@@ -95,8 +88,8 @@ TestServer = net/minecraft/server/MinecraftServer
PatchClient = %(DirConf)s/patches/minecraft.patch
PatchServer = %(DirConf)s/patches/minecraft_server.patch
PatchTemp = %(DirTemp)s/temp.patch
FFPatchClient = %(DirConf)s/patches/minecraft_ff
FFPatchServer = %(DirConf)s/patches/minecraft_server_ff
FFPatchClient = %(DirConf)s/patches/minecraft_ff.patch
FFPatchServer = %(DirConf)s/patches/minecraft_server_ff.patch
PatchClient_osx = %(DirConf)s/patches/minecraft_osx.patch
PatchServer_osx = %(DirConf)s/patches/minecraft_server_osx.patch
@@ -136,7 +129,8 @@ LogFile = %(DirLogs)s/mcp.log
LogFileErr = %(DirLogs)s/mcperr.log
UpdateUrl = http://mcp.ocean-labs.de/files/mcprolling_{version}/
IgnoreUpdate = %(DirBin)s,%(DirLib)s,%(DirLogs)s,%(DirModSrc)s,%(DirReobf)s,%(DirSrc)s,%(DirTemp)s,%(DirEclipse)s/Client/bin,%(DirEclipse)s/Server/bin,%(DirJars)s/world,%(DirJars)s/saves,%(DirJars)s/resources
RGIndex = 180425
RGIndex = 154000
ParamIndex = 45000
[ASTYLE]
AstyleConfig = %(DirConf)s/astyle.cfg
@@ -164,8 +158,7 @@ CmdSS = %s -cp "{classpath}" -jar %s -i {injar} -o {outjar} -m {mapfile}
CmdSSReobf = %s -cp "{classpath}" -jar %s -i {injar} -o {outjar} -r -m {mapfile} -d {identifier} -e %s
CmdJadretro = %s -jar %s {targetdir}
CmdFernflower = %s -jar %s -din=1 -rbr=0 -dgs=1 -asc=1 -log=WARN {indir} {outdir}
CmdExceptor = %s -jar %s --jarIn {input} --jarOut {output} --mapIn {conf} --log {log} --jsonIn {json} --applyMarkers --generateParams
CmdExceptorDry = %s -jar %s --jarIn {input} --mapIn {conf} --log {log} --jsonIn {json} --applyMarkers
CmdExceptor = %s -jar %s --jarIn {input} --jarOut {output} --mapIn {conf} --log {log} --jsonIn {json} --applyMarkers
CmdRecomp = %s -Xlint:-options -deprecation -g -source 1.6 -target 1.6 -classpath "{classpath}" -sourcepath {sourcepath} -d {outpath} {pkgs}
CmdRecompScala = %s -encoding UTF-8 -deprecation -target:jvm-1.6 -classpath "{classpath}" -sourcepath {sourcepath} -d {outpath} {pkgs}
CmdStartSrv = %s -Xincgc -Xms1024M -Xmx1024M -cp "{classpath}" net.minecraft.server.MinecraftServer
+4224
View File
File diff suppressed because it is too large. Load diff
+1
View File
@@ -0,0 +1 @@
param,name,side
1 param name side
@@ -1,7 +1,7 @@
diff -r -U 3 minecraft\net\minecraft\client\Minecraft.java minecraft_patched\net\minecraft\client\Minecraft.java
--- minecraft\net\minecraft\client\Minecraft.java
+++ minecraft_patched\net\minecraft\client\Minecraft.java
@@ -326,7 +326,7 @@
@@ -695,7 +695,7 @@
while(true) {
try {
@@ -9,4 +9,4 @@ diff -r -U 3 minecraft\net\minecraft\client\Minecraft.java minecraft_patched\net
+ while(this.field_71425_J) {
if(!this.field_71434_R || this.field_71433_S == null) {
try {
this.func_71411_J();
this.func_71411_J();
@@ -1,7 +1,7 @@
diff -r -U 3 minecraft\net\minecraft\client\gui\FontRenderer.java minecraft_patched\net\minecraft\client\gui\FontRenderer.java
--- minecraft\net\minecraft\client\gui\FontRenderer.java
+++ minecraft_patched\net\minecraft\client\gui\FontRenderer.java
@@ -592,8 +592,6 @@
@@ -581,8 +581,6 @@
case 10:
--var5;
break;
@@ -10,7 +10,7 @@ diff -r -U 3 minecraft\net\minecraft\client\gui\FontRenderer.java minecraft_patc
case 167:
if(var5 < var3 - 1) {
++var5;
@@ -607,6 +605,8 @@
@@ -596,6 +594,8 @@
}
}
break;
@@ -0,0 +1,11 @@
diff -r -U 3 minecraft\net\minecraft\client\network\NetHandlerHandshakeMemory.java minecraft_patched\net\minecraft\client\network\NetHandlerHandshakeMemory.java
--- minecraft\net\minecraft\client\network\NetHandlerHandshakeMemory.java
+++ minecraft_patched\net\minecraft\client\network\NetHandlerHandshakeMemory.java
@@ -31,6 +31,7 @@
switch(NetHandlerHandshakeMemory.SwitchEnumConnectionState.field_151263_a[p_147232_2_.ordinal()]) {
case 1:
this.field_147384_b.func_150719_a(new NetHandlerLoginServer(this.field_147385_a, this.field_147384_b));
+ break;
case 2:
throw new UnsupportedOperationException("NYI");
default:
@@ -1,37 +0,0 @@
diff -r -U 3 minecraft\net\minecraft\client\network\NetHandlerPlayClient.java minecraft_patched\net\minecraft\client\network\NetHandlerPlayClient.java
--- minecraft\net\minecraft\client\network\NetHandlerPlayClient.java
+++ minecraft_patched\net\minecraft\client\network\NetHandlerPlayClient.java
@@ -1275,14 +1275,14 @@
private static final String __OBFID = "CL_00002622";
public void func_73878_a(boolean p_73878_1_, int p_73878_2_) {
- NetHandlerPlayClient.thisxxx.field_147299_f = Minecraft.func_71410_x();
+ NetHandlerPlayClient.this.field_147299_f = Minecraft.func_71410_x();
if(p_73878_1_) {
- if(NetHandlerPlayClient.thisxx.field_147299_f.func_147104_D() != null) {
- NetHandlerPlayClient.thisxxxxxxx.field_147299_f.func_147104_D().func_152584_a(ServerData.ServerResourceMode.ENABLED);
+ if(NetHandlerPlayClient.this.field_147299_f.func_147104_D() != null) {
+ NetHandlerPlayClient.this.field_147299_f.func_147104_D().func_152584_a(ServerData.ServerResourceMode.ENABLED);
}
NetHandlerPlayClient.this.field_147302_e.func_179290_a(new C19PacketResourcePackStatus(var3, C19PacketResourcePackStatus.Action.ACCEPTED));
- Futures.addCallback(NetHandlerPlayClient.thisx.field_147299_f.func_110438_M().func_180601_a(var2, var3), new FutureCallback() {
+ Futures.addCallback(NetHandlerPlayClient.this.field_147299_f.func_110438_M().func_180601_a(var2, var3), new FutureCallback() {
private static final String __OBFID = "CL_00002621";
@@ -1294,11 +1294,11 @@
}
});
} else {
- if(NetHandlerPlayClient.thisxxxx.field_147299_f.func_147104_D() != null) {
- NetHandlerPlayClient.thisxxxxx.field_147299_f.func_147104_D().func_152584_a(ServerData.ServerResourceMode.DISABLED);
+ if(NetHandlerPlayClient.this.field_147299_f.func_147104_D() != null) {
+ NetHandlerPlayClient.this.field_147299_f.func_147104_D().func_152584_a(ServerData.ServerResourceMode.DISABLED);
}
- NetHandlerPlayClient.thisxxxxxx.field_147302_e.func_179290_a(new C19PacketResourcePackStatus(var3x, C19PacketResourcePackStatus.Action.DECLINED));
+ NetHandlerPlayClient.this.field_147302_e.func_179290_a(new C19PacketResourcePackStatus(var3, C19PacketResourcePackStatus.Action.DECLINED));
}
ServerList.func_147414_b(NetHandlerPlayClient.this.field_147299_f.func_147104_D());
@@ -1,13 +1,23 @@
diff -r -U 3 minecraft\net\minecraft\client\particle\EffectRenderer.java minecraft_patched\net\minecraft\client\particle\EffectRenderer.java
--- minecraft\net\minecraft\client\particle\EffectRenderer.java
+++ minecraft_patched\net\minecraft\client\particle\EffectRenderer.java
@@ -242,7 +242,8 @@
GlStateManager.func_179112_b(770, 771);
GlStateManager.func_179092_a(516, 0.003921569F);
@@ -53,7 +53,8 @@
}
public void func_78868_a() {
- for(final int var1 = 0; var1 < 4; ++var1) {
+ for(int var11 = 0; var11 < 4; ++var11) {
+ final int var1 = var11;
for(int var2 = 0; var2 < this.field_78876_b[var1].size(); ++var2) {
final EntityFX var3 = (EntityFX)this.field_78876_b[var1].get(var2);
@@ -99,7 +100,8 @@
EntityFX.field_70554_ao = p_78874_1_.field_70137_T + (p_78874_1_.field_70163_u - p_78874_1_.field_70137_T) * (double)p_78874_2_;
EntityFX.field_70555_ap = p_78874_1_.field_70136_U + (p_78874_1_.field_70161_v - p_78874_1_.field_70136_U) * (double)p_78874_2_;
- for(final int var8 = 0; var8 < 3; ++var8) {
+ for(int var8_nf = 0; var8_nf < 3; ++var8_nf) {
+ final int var8 = var8_nf;
for(int var9 = 0; var9 < 2; ++var9) {
if(!this.field_78876_b[var8][var9].isEmpty()) {
switch(var9) {
+ for(int var88 = 0; var88 < 3; ++var88) {
+ final int var8 = var88;
if(!this.field_78876_b[var8].isEmpty()) {
switch(var8) {
case 0:
@@ -0,0 +1,33 @@
diff -r -U 3 minecraft\net\minecraft\client\renderer\RenderBlocks.java minecraft_patched\net\minecraft\client\renderer\RenderBlocks.java
--- minecraft\net\minecraft\client\renderer\RenderBlocks.java
+++ minecraft_patched\net\minecraft\client\renderer\RenderBlocks.java
@@ -1929,16 +1929,16 @@
float var24 = (float)(p_147788_2_ + 1);
float var25 = (float)(p_147788_4_ + 0);
float var26 = (float)(p_147788_4_ + 1);
- boolean var27 = false;
+ int var27 = 0;
if((var19 || var20) && !var21 && !var22) {
- var27 = true;
+ var27 = 1;
}
if((var21 || var22) && !var20 && !var19) {
- var27 = true;
+ var27 = 2;
}
- if(!var27) {
+ if(var27 == 0) {
int var28 = 0;
int var29 = 0;
int var30 = 16;
@@ -1985,7 +1985,7 @@
var5.func_78374_a((double)var24, (double)p_147788_3_ + 0.015625D, (double)var25, (double)var9.func_94214_a((double)var30), (double)var9.func_94207_b((double)var29));
var5.func_78374_a((double)var23, (double)p_147788_3_ + 0.015625D, (double)var25, (double)var9.func_94214_a((double)var28), (double)var9.func_94207_b((double)var29));
var5.func_78374_a((double)var23, (double)p_147788_3_ + 0.015625D, (double)var26, (double)var9.func_94214_a((double)var28), (double)var9.func_94207_b((double)var31));
- } else if(var27) {
+ } else if(var27 == 1) {
var5.func_78374_a((double)var24, (double)p_147788_3_ + 0.015625D, (double)var26, (double)var8.func_94212_f(), (double)var8.func_94210_h());
var5.func_78374_a((double)var24, (double)p_147788_3_ + 0.015625D, (double)var25, (double)var8.func_94212_f(), (double)var8.func_94206_g());
var5.func_78374_a((double)var23, (double)p_147788_3_ + 0.015625D, (double)var25, (double)var8.func_94209_e(), (double)var8.func_94206_g());
@@ -0,0 +1,12 @@
diff -r -U 3 minecraft\net\minecraft\client\renderer\RenderGlobal.java minecraft_patched\net\minecraft\client\renderer\RenderGlobal.java
--- minecraft\net\minecraft\client\renderer\RenderGlobal.java
+++ minecraft_patched\net\minecraft\client\renderer\RenderGlobal.java
@@ -1566,7 +1566,7 @@
double var15 = this.field_72777_q.field_71451_h.field_70165_t - p_72726_2_;
double var17 = this.field_72777_q.field_71451_h.field_70163_u - p_72726_4_;
double var19 = this.field_72777_q.field_71451_h.field_70161_v - p_72726_6_;
- Object var21 = null;
+ EntityFX var21 = null;
if(p_72726_1_.equals("hugeexplosion")) {
this.field_72777_q.field_71452_i.func_78873_a(var21 = new EntityHugeExplodeFX(this.field_72769_h, p_72726_2_, p_72726_4_, p_72726_6_, p_72726_8_, p_72726_10_, p_72726_12_));
} else if(p_72726_1_.equals("largeexplode")) {
@@ -1,12 +0,0 @@
diff -r -U 3 minecraft\net\minecraft\client\renderer\block\model\ModelBlockDefinition.java minecraft_patched\net\minecraft\client\renderer\block\model\ModelBlockDefinition.java
--- minecraft\net\minecraft\client\renderer\block\model\ModelBlockDefinition.java
+++ minecraft_patched\net\minecraft\client\renderer\block\model\ModelBlockDefinition.java
@@ -82,7 +82,7 @@
public ModelBlockDefinition func_178336_a(JsonElement p_178336_1_, Type p_178336_2_, JsonDeserializationContext p_178336_3_) {
JsonObject var4 = p_178336_1_.getAsJsonObject();
List var5 = this.func_178334_a(p_178336_3_, var4);
- return new ModelBlockDefinition(var5);
+ return new ModelBlockDefinition((Collection)var5);
}
protected List func_178334_a(JsonDeserializationContext p_178334_1_, JsonObject p_178334_2_) {
@@ -1,7 +1,7 @@
diff -r -U 3 minecraft\net\minecraft\client\renderer\texture\TextureManager.java minecraft_patched\net\minecraft\client\renderer\texture\TextureManager.java
--- minecraft\net\minecraft\client\renderer\texture\TextureManager.java
+++ minecraft_patched\net\minecraft\client\renderer\texture\TextureManager.java
@@ -57,13 +57,14 @@
@@ -72,13 +72,14 @@
public boolean func_110579_a(ResourceLocation p_110579_1_, final ITextureObject p_110579_2_) {
boolean var3 = true;
@@ -19,7 +19,7 @@ diff -r -U 3 minecraft\net\minecraft\client\renderer\texture\TextureManager.java
var3 = false;
} catch (Throwable var9) {
CrashReport var5 = CrashReport.func_85055_a(var9, "Registering texture");
@@ -80,7 +81,7 @@
@@ -95,7 +96,7 @@
throw new ReportedException(var5);
}
@@ -1,100 +0,0 @@
diff -r -U 3 minecraft\net\minecraft\command\PlayerSelector.java minecraft_patched\net\minecraft\command\PlayerSelector.java
--- minecraft\net\minecraft\command\PlayerSelector.java
+++ minecraft_patched\net\minecraft\command\PlayerSelector.java
@@ -135,7 +135,7 @@
private static List func_179663_a(Map p_179663_0_, String p_179663_1_) {
ArrayList var2 = Lists.newArrayList();
- final String var3 = func_179651_b(p_179663_0_, "type");
+ String var3 = func_179651_b(p_179663_0_, "type");
final boolean var4 = var3 != null && var3.startsWith("!");
if(var4) {
var3 = var3.substring(1);
@@ -159,12 +159,13 @@
});
}
} else {
+ final String var3_f = var3;
var2.add(new Predicate() {
private static final String __OBFID = "CL_00002362";
public boolean func_179613_a(Entity p_179613_1_) {
- return EntityList.func_180123_a(p_179613_1_, var3) != var4;
+ return EntityList.func_180123_a(p_179613_1_, var3_f) != var4;
}
// $FF: synthetic method
public boolean apply(Object p_apply_1_) {
@@ -231,13 +232,14 @@
private static List func_179659_d(Map p_179659_0_) {
ArrayList var1 = Lists.newArrayList();
- final String var2 = func_179651_b(p_179659_0_, "team");
+ String var2 = func_179651_b(p_179659_0_, "team");
final boolean var3 = var2 != null && var2.startsWith("!");
if(var3) {
var2 = var2.substring(1);
}
if(var2 != null) {
+ final String var2_f = var2;
var1.add(new Predicate() {
private static final String __OBFID = "CL_00002355";
@@ -249,7 +251,7 @@
EntityLivingBase var2x = (EntityLivingBase)p_179621_1_;
Team var3x = var2x.func_96124_cp();
String var4 = var3x == null?"":var3x.func_96661_b();
- return var4.equals(var2) != var3;
+ return var4.equals(var2_f) != var3;
}
}
// $FF: synthetic method
@@ -321,19 +323,20 @@
private static List func_179647_f(Map p_179647_0_) {
ArrayList var1 = Lists.newArrayList();
- final String var2 = func_179651_b(p_179647_0_, "name");
+ String var2 = func_179651_b(p_179647_0_, "name");
final boolean var3 = var2 != null && var2.startsWith("!");
if(var3) {
var2 = var2.substring(1);
}
if(var2 != null) {
+ final String var2_f = var2;
var1.add(new Predicate() {
private static final String __OBFID = "CL_00002353";
public boolean func_179600_a(Entity p_179600_1_) {
- return p_179600_1_.func_70005_c_().equals(var2) != var3;
+ return p_179600_1_.func_70005_c_().equals(var2_f) != var3;
}
// $FF: synthetic method
public boolean apply(Object p_apply_1_) {
@@ -372,11 +375,9 @@
private static List func_179662_g(Map p_179662_0_) {
ArrayList var1 = Lists.newArrayList();
- final int var2;
- final int var3;
if(p_179662_0_.containsKey("rym") || p_179662_0_.containsKey("ry")) {
- var2 = func_179650_a(func_179653_a(p_179662_0_, "rym", 0));
- var3 = func_179650_a(func_179653_a(p_179662_0_, "ry", 359));
+ final int var2 = func_179650_a(func_179653_a(p_179662_0_, "rym", 0));
+ final int var3 = func_179650_a(func_179653_a(p_179662_0_, "ry", 359));
var1.add(new Predicate() {
private static final String __OBFID = "CL_00002351";
@@ -393,8 +394,8 @@
}
if(p_179662_0_.containsKey("rxm") || p_179662_0_.containsKey("rx")) {
- var2 = func_179650_a(func_179653_a(p_179662_0_, "rxm", 0));
- var3 = func_179650_a(func_179653_a(p_179662_0_, "rx", 359));
+ final int var2 = func_179650_a(func_179653_a(p_179662_0_, "rxm", 0));
+ final int var3 = func_179650_a(func_179653_a(p_179662_0_, "rx", 359));
var1.add(new Predicate() {
private static final String __OBFID = "CL_00002361";
@@ -1,7 +1,7 @@
diff -r -U 3 minecraft\net\minecraft\inventory\ContainerPlayer.java minecraft_patched\net\minecraft\inventory\ContainerPlayer.java
--- minecraft\net\minecraft\inventory\ContainerPlayer.java
+++ minecraft_patched\net\minecraft\inventory\ContainerPlayer.java
@@ -28,7 +28,7 @@
@@ -29,7 +29,7 @@
this.field_82862_h = p_i1819_3_;
this.func_75146_a(new SlotCrafting(p_i1819_1_.field_70458_d, this.field_75181_e, this.field_75179_f, 0, 144, 36));
@@ -10,7 +10,7 @@ diff -r -U 3 minecraft\net\minecraft\inventory\ContainerPlayer.java minecraft_pa
int var5;
for(var4 = 0; var4 < 2; ++var4) {
for(var5 = 0; var5 < 2; ++var5) {
@@ -37,6 +37,7 @@
@@ -38,6 +38,7 @@
}
for(var4 = 0; var4 < 4; ++var4) {
@@ -18,7 +18,7 @@ diff -r -U 3 minecraft\net\minecraft\inventory\ContainerPlayer.java minecraft_pa
this.func_75146_a(new Slot(p_i1819_1_, p_i1819_1_.func_70302_i_() - 1 - var4, 8, 8 + var4 * 18) {
private static final String __OBFID = "CL_00001755";
@@ -45,11 +46,11 @@
@@ -46,11 +47,11 @@
return 1;
}
public boolean func_75214_a(ItemStack p_75214_1_) {
@@ -26,9 +26,9 @@ diff -r -U 3 minecraft\net\minecraft\inventory\ContainerPlayer.java minecraft_pa
+ return p_75214_1_ == null?false:(p_75214_1_.func_77973_b() instanceof ItemArmor?((ItemArmor)p_75214_1_.func_77973_b()).field_77881_a == var44:(p_75214_1_.func_77973_b() != Item.func_150898_a(Blocks.field_150423_aK) && p_75214_1_.func_77973_b() != Items.field_151144_bL?false:var44 == 0));
}
@SideOnly(Side.CLIENT)
public String func_178171_c() {
- return ItemArmor.field_94603_a[var4];
+ return ItemArmor.field_94603_a[var44];
public IIcon func_75212_b() {
- return ItemArmor.func_94602_b(var4);
+ return ItemArmor.func_94602_b(var44);
}
});
}
@@ -1,7 +1,7 @@
diff -r -U 3 minecraft\net\minecraft\network\PacketBuffer.java minecraft_patched\net\minecraft\network\PacketBuffer.java
--- minecraft\net\minecraft\network\PacketBuffer.java
+++ minecraft_patched\net\minecraft\network\PacketBuffer.java
@@ -799,10 +799,4 @@
@@ -713,10 +713,4 @@
public boolean release(int p_release_1_) {
return this.field_150794_a.release(p_release_1_);
}
@@ -1,14 +0,0 @@
diff -r -U 3 minecraft\net\minecraft\server\network\NetHandlerLoginServer.java minecraft_patched\net\minecraft\server\network\NetHandlerLoginServer.java
--- minecraft\net\minecraft\server\network\NetHandlerLoginServer.java
+++ minecraft_patched\net\minecraft\server\network\NetHandlerLoginServer.java
@@ -95,10 +95,6 @@
public void operationComplete(ChannelFuture p_operationComplete_1_) {
NetHandlerLoginServer.this.field_147333_a.func_179289_a(NetHandlerLoginServer.this.field_147327_f.func_175577_aI());
}
- // $FF: synthetic method
- public void operationComplete(Future p_operationComplete_1_) {
- this.operationComplete((ChannelFuture)p_operationComplete_1_);
- }
}, new GenericFutureListener[0]);
}
@@ -1,12 +0,0 @@
diff -r -U 3 minecraft\net\minecraft\util\BlockPos.java minecraft_patched\net\minecraft\util\BlockPos.java
--- minecraft\net\minecraft\util\BlockPos.java
+++ minecraft_patched\net\minecraft\util\BlockPos.java
@@ -194,7 +194,7 @@
protected BlockPos.MutableBlockPos func_179313_a() {
if(this.field_179314_b == null) {
- this.field_179314_b = new BlockPos.MutableBlockPos(var2xxx.func_177958_n(), var2.func_177956_o(), var2x.func_177952_p(), null);
+ this.field_179314_b = new BlockPos.MutableBlockPos(var2.func_177958_n(), var2.func_177956_o(), var2.func_177952_p(), null);
return this.field_179314_b;
} else if(this.field_179314_b.equals(var3)) {
return (BlockPos.MutableBlockPos)this.endOfData();
@@ -1,7 +1,7 @@
diff -r -U 3 minecraft\net\minecraft\world\storage\ThreadedFileIOBase.java minecraft_patched\net\minecraft\world\storage\ThreadedFileIOBase.java
--- minecraft\net\minecraft\world\storage\ThreadedFileIOBase.java
+++ minecraft_patched\net\minecraft\world\storage\ThreadedFileIOBase.java
@@ -25,6 +25,7 @@
@@ -21,6 +21,7 @@
}
public void run() {
+3 -3
View File
@@ -1,4 +1,4 @@
[VERSION]
MCPVersion = 9.10
ClientVersion = 1.8
ServerVersion = 1.8
MCPVersion = 9.05
ClientVersion = 1.7.10
ServerVersion = 1.7.10
Binary file not shown.
-7
View File
@@ -24,13 +24,6 @@ archivesBaseName = "modid"
minecraft {
version = "${version}"
runDir = "eclipse"
// the mappings can be changed at any time, and must be in the following format.
// snapshot_YYYYMMDD snapshot are built nightly.
// stable_# stables are built at the discretion of the MCP team.
// Use non-default mappings at your own risk. they may not allways work.
// simply re-run your setup task after changing the mappings to update your workspace.
mappings = "${mappings}"
}
dependencies {
@@ -1,9 +1,9 @@
package com.example.examplemod;
import net.minecraft.init.Blocks;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.common.Mod.EventHandler;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.EventHandler;
import cpw.mods.fml.common.event.FMLInitializationEvent;
@Mod(modid = ExampleMod.MODID, version = ExampleMod.VERSION)
public class ExampleMod
-314
View File
@@ -1,314 +0,0 @@
{
"id": "@minecraft_version@-@project@@version@",
"time": "@timestamp@",
"releaseTime": "1960-01-01T00:00:00-0700",
"type": "release",
"minecraftArguments": "--version FML_DEV --tweakClass net.minecraftforge.fml.common.launcher.FMLTweaker",
"libraries": [
{
"name": "net.minecraft:launchwrapper:1.11"
},
{
"name": "com.google.code.findbugs:jsr305:1.3.9",
"children": ["sources"],
"url" : "http://repo.maven.apache.org/maven2"
},
{
"name": "org.ow2.asm:asm-debug-all:5.0.3",
"children" : ["sources"],
"url" : "http://repo.maven.apache.org/maven2"
},
{
"name": "com.typesafe.akka:akka-actor_2.11:2.3.3",
"children" : ["sources"],
"url" : "http://repo.maven.apache.org/maven2"
},
{
"name": "com.typesafe:config:1.2.1",
"children" : ["sources"],
"url" : "http://repo.maven.apache.org/maven2"
},
{
"name": "org.scala-lang:scala-actors-migration_2.11:1.1.0",
"children" : ["sources"],
"url" : "http://repo.maven.apache.org/maven2"
},
{
"name": "org.scala-lang:scala-compiler:2.11.1",
"children" : ["sources"],
"url" : "http://repo.maven.apache.org/maven2"
},
{
"name": "org.scala-lang.plugins:scala-continuations-library_2.11:1.0.2",
"children" : ["sources"],
"url" : "http://repo.maven.apache.org/maven2"
},
{
"name": "org.scala-lang.plugins:scala-continuations-plugin_2.11.1:1.0.2",
"children" : ["sources"],
"url" : "http://repo.maven.apache.org/maven2"
},
{
"name": "org.scala-lang:scala-library:2.11.1",
"children" : ["sources"],
"url" : "http://repo.maven.apache.org/maven2"
},
{
"name": "org.scala-lang.modules:scala-parser-combinators_2.11:1.0.1",
"children" : ["sources"],
"url" : "http://repo.maven.apache.org/maven2"
},
{
"name": "org.scala-lang:scala-reflect:2.11.1",
"children" : ["sources"],
"url" : "http://repo.maven.apache.org/maven2"
},
{
"name": "org.scala-lang.modules:scala-swing_2.11:1.0.1",
"children" : ["sources"],
"url" : "http://repo.maven.apache.org/maven2"
},
{
"name": "org.scala-lang.modules:scala-xml_2.11:1.0.2",
"children" : ["sources"],
"url" : "http://repo.maven.apache.org/maven2"
},
{
"name": "lzma:lzma:0.0.1"
},
{
"name": "java3d:vecmath:1.5.2"
},
{
"name": "net.sf.trove4j:trove4j:3.0.3"
},
{
"name": "com.ibm.icu:icu4j-core-mojang:51.2"
},
{
"name": "net.sf.jopt-simple:jopt-simple:4.6",
"children" : ["sources"],
"url" : "http://repo.maven.apache.org/maven2"
},
{
"name": "com.paulscode:codecjorbis:20101023"
},
{
"name": "com.paulscode:codecwav:20101023"
},
{
"name": "com.paulscode:libraryjavasound:20101123"
},
{
"name": "com.paulscode:librarylwjglopenal:20100824"
},
{
"name": "com.paulscode:soundsystem:20120107"
},
{
"name": "io.netty:netty-all:4.0.15.Final"
},
{
"name": "com.google.guava:guava:17.0"
},
{
"name": "org.apache.commons:commons-lang3:3.3.2"
},
{
"name": "commons-io:commons-io:2.4"
},
{
"name": "commons-codec:commons-codec:1.9"
},
{
"name": "net.java.jinput:jinput:2.0.5"
},
{
"name": "net.java.jutils:jutils:1.0.0"
},
{
"name": "com.google.code.gson:gson:2.2.4"
},
{
"name": "com.mojang:authlib:1.5.17"
},
{
"name": "com.mojang:realms:1.6.1"
},
{
"name": "org.apache.commons:commons-compress:1.8.1"
},
{
"name": "org.apache.httpcomponents:httpclient:4.3.3"
},
{
"name": "commons-logging:commons-logging:1.1.3"
},
{
"name": "org.apache.httpcomponents:httpcore:4.3.2"
},
{
"name": "org.apache.logging.log4j:log4j-api:2.0-beta9"
},
{
"name": "org.apache.logging.log4j:log4j-core:2.0-beta9"
},
{
"name": "org.lwjgl.lwjgl:lwjgl:2.9.1",
"rules": [
{
"action": "allow"
},
{
"action": "disallow",
"os": {
"name": "osx"
}
}
]
},
{
"name": "org.lwjgl.lwjgl:lwjgl_util:2.9.1",
"rules": [
{
"action": "allow"
},
{
"action": "disallow",
"os": {
"name": "osx"
}
}
]
},
{
"name": "org.lwjgl.lwjgl:lwjgl-platform:2.9.1",
"rules": [
{
"action": "allow"
},
{
"action": "disallow",
"os": {
"name": "osx"
}
}
],
"natives": {
"linux": "natives-linux",
"windows": "natives-windows",
"osx": "natives-osx"
},
"extract": {
"exclude": [
"META-INF/"
]
}
},
{
"name": "org.lwjgl.lwjgl:lwjgl:2.9.2-nightly-20140822",
"rules": [
{
"action": "allow",
"os": {
"name": "osx"
}
}
]
},
{
"name": "org.lwjgl.lwjgl:lwjgl_util:2.9.2-nightly-20140822",
"rules": [
{
"action": "allow",
"os": {
"name": "osx"
}
}
]
},
{
"name": "org.lwjgl.lwjgl:lwjgl-platform:2.9.2-nightly-20140822",
"rules": [
{
"action": "allow",
"os": {
"name": "osx"
}
}
],
"natives": {
"linux": "natives-linux",
"windows": "natives-windows",
"osx": "natives-osx"
},
"extract": {
"exclude": [
"META-INF/"
]
}
},
{
"name": "net.java.jinput:jinput-platform:2.0.5",
"natives": {
"linux": "natives-linux",
"windows": "natives-windows",
"osx": "natives-osx"
},
"extract": {
"exclude": [
"META-INF/"
]
}
},
{
"name": "tv.twitch:twitch:6.5"
},
{
"name": "tv.twitch:twitch-platform:6.5",
"rules": [
{
"action": "allow"
},
{
"action": "disallow",
"os": {
"name": "linux"
}
}
],
"natives": {
"linux": "natives-linux",
"windows": "natives-windows-${arch}",
"osx": "natives-osx"
},
"extract": {
"exclude": [
"META-INF/"
]
}
},
{
"name": "tv.twitch:twitch-external-platform:4.5",
"rules": [
{
"action": "allow",
"os": {
"name": "windows"
}
}
],
"natives": {
"windows": "natives-windows-${arch}"
},
"extract": {
"exclude": [
"META-INF/"
]
}
}
],
"mainClass": "net.minecraft.launchwrapper.Launch",
"minimumLauncherVersion": 14,
"assets": "1.8"
}
-124
View File
@@ -1,124 +0,0 @@
{
"install": {
"profileName": "@project@",
"target":"@minecraft_version@-@project@@version@",
"path":"@artifact@",
"version":"@project@ @version@",
"filePath":"@universal_jar@",
"welcome":"Welcome to the simple @project@ installer.",
"minecraft":"@minecraft_version@",
"mirrorList" : "http://files.minecraftforge.net/mirror-brand.list",
"logo":"/big_logo.png"
},
"versionInfo": {
"id": "@minecraft_version@-@project@@version@",
"time": "@timestamp@",
"releaseTime": "1960-01-01T00:00:00-0700",
"type": "release",
"minecraftArguments": "--username ${auth_player_name} --version ${version_name} --gameDir ${game_directory} --assetsDir ${assets_root} --assetIndex ${assets_index_name} --uuid ${auth_uuid} --accessToken ${auth_access_token} --userProperties ${user_properties} --userType ${user_type} --tweakClass net.minecraftforge.fml.common.launcher.FMLTweaker",
"mainClass": "net.minecraft.launchwrapper.Launch",
"minimumLauncherVersion": 14,
"assets": "1.8",
"inheritsFrom": "1.8",
"jar": "1.8",
"libraries": [
{
"name": "@artifact@",
"url": "http://files.minecraftforge.net/maven/"
},
{
"name": "net.minecraft:launchwrapper:1.11",
"serverreq":true
},
{
"name": "org.ow2.asm:asm-all:5.0.3",
"serverreq":true
},
{
"name": "com.typesafe.akka:akka-actor_2.11:2.3.3",
"url" : "http://files.minecraftforge.net/maven/",
"checksums" : [ "ed62e9fc709ca0f2ff1a3220daa8b70a2870078e", "25a86ccfdb6f6dfe08971f4825d0a01be83a6f2e" ],
"serverreq":true,
"clientreq":true
},
{
"name": "com.typesafe:config:1.2.1",
"url" : "http://files.minecraftforge.net/maven/",
"checksums" : [ "f771f71fdae3df231bcd54d5ca2d57f0bf93f467", "7d7bc36df0989d72f2d5d057309675777acc528b" ],
"serverreq":true,
"clientreq":true
},
{
"name": "org.scala-lang:scala-actors-migration_2.11:1.1.0",
"url" : "http://files.minecraftforge.net/maven/",
"checksums" : [ "dfa8bc42b181d5b9f1a5dd147f8ae308b893eb6f", "8c9aaeeb68487ca519411a14068e1b4d69739207" ],
"serverreq":true,
"clientreq":true
},
{
"name": "org.scala-lang:scala-compiler:2.11.1",
"url" : "http://files.minecraftforge.net/maven/",
"checksums" : [ "56ea2e6c025e0821f28d73ca271218b8dd04926a", "1444992390544ba3780867a13ff696a89d7d1639" ],
"serverreq":true,
"clientreq":true
},
{
"name": "org.scala-lang.plugins:scala-continuations-library_2.11:1.0.2",
"url" : "http://files.minecraftforge.net/maven/",
"checksums" : [ "87213338cd5a153a7712cb574c0ddd2edfee0386", "0b4c1bf8d48993f138d6e10c0c144e50acfff581" ],
"serverreq":true,
"clientreq":true
},
{
"name": "org.scala-lang.plugins:scala-continuations-plugin_2.11.1:1.0.2",
"url" : "http://files.minecraftforge.net/maven/",
"checksums" : [ "1f7371605d4ba42aa26d3443440c0083c587b4e9", "1ea655dda4504ae0a367327e2340cd3beaee6c73" ],
"serverreq":true,
"clientreq":true
},
{
"name": "org.scala-lang:scala-library:2.11.1",
"url" : "http://files.minecraftforge.net/maven/",
"checksums" : [ "0e11da23da3eabab9f4777b9220e60d44c1aab6a", "1e4df76e835201c6eabd43adca89ab11f225f134" ],
"serverreq":true,
"clientreq":true
},
{
"name": "org.scala-lang:scala-parser-combinators_2.11:1.0.1",
"url" : "http://files.minecraftforge.net/maven/",
"checksums" : [ "f05d7345bf5a58924f2837c6c1f4d73a938e1ff0", "a1cbbcbde1dcc614f4253ed1aa0b320bc78d8f1d" ],
"serverreq":true,
"clientreq":true
},
{
"name": "org.scala-lang:scala-reflect:2.11.1",
"url" : "http://files.minecraftforge.net/maven/",
"checksums" : [ "6580347e61cc7f8e802941e7fde40fa83b8badeb", "91ce0f0be20f4a536321724b4b3bbc6530ddcd88" ],
"serverreq":true,
"clientreq":true
},
{
"name": "org.scala-lang:scala-swing_2.11:1.0.1",
"url" : "http://files.minecraftforge.net/maven/",
"checksums" : [ "b1cdd92bd47b1e1837139c1c53020e86bb9112ae", "d77152691dcf5bbdb00529af37aa7d3d887b3e63" ],
"serverreq":true,
"clientreq":true
},
{
"name": "org.scala-lang:scala-xml_2.11:1.0.2",
"url" : "http://files.minecraftforge.net/maven/",
"checksums" : [ "7a80ec00aec122fba7cd4e0d4cdd87ff7e4cb6d0", "62736b01689d56b6d09a0164b7ef9da2b0b9633d" ],
"serverreq":true,
"clientreq":true
},
{
"name": "lzma:lzma:0.0.1",
"serverreq":true
},
{
"name": "net.sf.jopt-simple:jopt-simple:4.5",
"serverreq":true
}
]
}
}
-241
View File
@@ -1,241 +0,0 @@
{
"id": "1.8",
"time": "2014-09-02T08:24:35+00:00",
"releaseTime": "2014-09-02T08:24:35+00:00",
"type": "release",
"minecraftArguments": "--username ${auth_player_name} --version ${version_name} --gameDir ${game_directory} --assetsDir ${assets_root} --assetIndex ${assets_index_name} --uuid ${auth_uuid} --accessToken ${auth_access_token} --userProperties ${user_properties} --userType ${user_type}",
"minimumLauncherVersion": 14,
"assets": "1.8",
"libraries": [
{
"name": "java3d:vecmath:1.5.2"
},
{
"name": "net.sf.trove4j:trove4j:3.0.3"
},
{
"name": "com.ibm.icu:icu4j-core-mojang:51.2"
},
{
"name": "net.sf.jopt-simple:jopt-simple:4.6"
},
{
"name": "com.paulscode:codecjorbis:20101023"
},
{
"name": "com.paulscode:codecwav:20101023"
},
{
"name": "com.paulscode:libraryjavasound:20101123"
},
{
"name": "com.paulscode:librarylwjglopenal:20100824"
},
{
"name": "com.paulscode:soundsystem:20120107"
},
{
"name": "io.netty:netty-all:4.0.15.Final"
},
{
"name": "com.google.guava:guava:17.0"
},
{
"name": "org.apache.commons:commons-lang3:3.3.2"
},
{
"name": "commons-io:commons-io:2.4"
},
{
"name": "commons-codec:commons-codec:1.9"
},
{
"name": "net.java.jinput:jinput:2.0.5"
},
{
"name": "net.java.jutils:jutils:1.0.0"
},
{
"name": "com.google.code.gson:gson:2.2.4"
},
{
"name": "com.mojang:authlib:1.5.21"
},
{
"name": "com.mojang:realms:1.6.1"
},
{
"name": "org.apache.commons:commons-compress:1.8.1"
},
{
"name": "org.apache.httpcomponents:httpclient:4.3.3"
},
{
"name": "commons-logging:commons-logging:1.1.3"
},
{
"name": "org.apache.httpcomponents:httpcore:4.3.2"
},
{
"name": "org.apache.logging.log4j:log4j-api:2.0-beta9"
},
{
"name": "org.apache.logging.log4j:log4j-core:2.0-beta9"
},
{
"name": "org.lwjgl.lwjgl:lwjgl:2.9.1",
"rules": [
{
"action": "allow"
},
{
"action": "disallow",
"os": {
"name": "osx"
}
}
]
},
{
"name": "org.lwjgl.lwjgl:lwjgl_util:2.9.1",
"rules": [
{
"action": "allow"
},
{
"action": "disallow",
"os": {
"name": "osx"
}
}
]
},
{
"name": "org.lwjgl.lwjgl:lwjgl-platform:2.9.1",
"natives": {
"linux": "natives-linux",
"windows": "natives-windows",
"osx": "natives-osx"
},
"extract": {
"exclude": [
"META-INF/"
]
},
"rules": [
{
"action": "allow"
},
{
"action": "disallow",
"os": {
"name": "osx"
}
}
]
},
{
"name": "org.lwjgl.lwjgl:lwjgl:2.9.2-nightly-20140822",
"rules": [
{
"action": "allow",
"os": {
"name": "osx"
}
}
]
},
{
"name": "org.lwjgl.lwjgl:lwjgl_util:2.9.2-nightly-20140822",
"rules": [
{
"action": "allow",
"os": {
"name": "osx"
}
}
]
},
{
"name": "org.lwjgl.lwjgl:lwjgl-platform:2.9.2-nightly-20140822",
"natives": {
"linux": "natives-linux",
"windows": "natives-windows",
"osx": "natives-osx"
},
"extract": {
"exclude": [
"META-INF/"
]
},
"rules": [
{
"action": "allow",
"os": {
"name": "osx"
}
}
]
},
{
"name": "net.java.jinput:jinput-platform:2.0.5",
"natives": {
"linux": "natives-linux",
"windows": "natives-windows",
"osx": "natives-osx"
},
"extract": {
"exclude": [
"META-INF/"
]
}
},
{
"name": "tv.twitch:twitch:6.5"
},
{
"name": "tv.twitch:twitch-platform:6.5",
"rules": [
{
"action": "allow"
},
{
"action": "disallow",
"os": {
"name": "linux"
}
}
],
"natives": {
"linux": "natives-linux",
"windows": "natives-windows-${arch}",
"osx": "natives-osx"
},
"extract": {
"exclude": [
"META-INF/"
]
}
},
{
"name": "tv.twitch:twitch-external-platform:4.5",
"rules": [
{
"action": "allow",
"os": {
"name": "windows"
}
}
],
"natives": {
"windows": "natives-windows-${arch}"
},
"extract": {
"exclude": [
"META-INF/"
]
}
}
],
"mainClass": "net.minecraft.client.main.Main"
}
@@ -1,24 +1,27 @@
--- ../src-base/minecraft/net/minecraft/block/Block.java
+++ ../src-work/minecraft/net/minecraft/block/Block.java
@@ -39,8 +39,9 @@
@@ -1,5 +1,6 @@
package net.minecraft.block;
+import cpw.mods.fml.common.registry.GameData;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import java.util.Iterator;
@@ -32,7 +33,7 @@
public class Block
{
private static final ResourceLocation field_176230_a = new ResourceLocation("air");
- public static final RegistryNamespacedDefaultedByKey field_149771_c = new RegistryNamespacedDefaultedByKey(field_176230_a);
- public static final ObjectIntIdentityMap field_176229_d = new ObjectIntIdentityMap();
+ public static final RegistryNamespacedDefaultedByKey field_149771_c = net.minecraftforge.fml.common.registry.GameData.getBlockRegistry();
+ @Deprecated //Modders: DO NOT use this! Use GameRegistry
+ public static final ObjectIntIdentityMap field_176229_d = net.minecraftforge.fml.common.registry.GameData.getBlockStateIDMap();
- public static final RegistryNamespaced field_149771_c = new RegistryNamespacedDefaultedByKey("air");
+ public static final RegistryNamespaced field_149771_c = GameData.getBlockRegistry();
private CreativeTabs field_149772_a;
protected String field_149768_d;
public static final Block.SoundType field_149769_e = new Block.SoundType("stone", 1.0F, 1.0F);
public static final Block.SoundType field_149766_f = new Block.SoundType("wood", 1.0F, 1.0F);
@@ -124,6 +125,9 @@
private String field_149770_b;
@@ -102,6 +103,8 @@
protected IIcon field_149761_L;
private static final String __OBFID = "CL_00000199";
+ public final net.minecraftforge.fml.common.registry.RegistryDelegate<Block> delegate =
+ ((net.minecraftforge.fml.common.registry.FMLControlledNamespacedRegistry)field_149771_c).getDelegate(this, Block.class);
+
+ public final cpw.mods.fml.common.registry.RegistryDelegate<Block> delegate =
+ ((cpw.mods.fml.common.registry.FMLControlledNamespacedRegistry)field_149771_c).getDelegate(this, Block.class);
public static int func_149682_b(Block p_149682_0_)
{
return field_149771_c.func_148757_b(p_149682_0_);
@@ -1,10 +1,17 @@
--- ../src-base/minecraft/net/minecraft/client/ClientBrandRetriever.java
+++ ../src-work/minecraft/net/minecraft/client/ClientBrandRetriever.java
@@ -10,6 +10,6 @@
@@ -1,5 +1,6 @@
package net.minecraft.client;
+import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -10,6 +11,6 @@
public static String getClientModName()
{
- return "vanilla";
+ return net.minecraftforge.fml.common.FMLCommonHandler.instance().getModName();
+ return FMLCommonHandler.instance().getModName();
}
}
@@ -1,26 +1,26 @@
--- ../src-base/minecraft/net/minecraft/client/LoadingScreenRenderer.java
+++ ../src-work/minecraft/net/minecraft/client/LoadingScreenRenderer.java
@@ -139,6 +139,10 @@
GlStateManager.func_179086_m(16640);
@@ -1,5 +1,6 @@
package net.minecraft.client;
+import cpw.mods.fml.client.FMLClientHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.client.gui.Gui;
@@ -138,6 +139,8 @@
GL11.glClear(GL11.GL_COLOR_BUFFER_BIT | GL11.GL_DEPTH_BUFFER_BIT);
}
+ try
+ if (!FMLClientHandler.instance().handleLoadingScreen(scaledresolution))
+ {
+ if (!net.minecraftforge.fml.client.FMLClientHandler.instance().handleLoadingScreen(scaledresolution)) //FML Don't render while FML's pre-screen is rendering
+ {
Tessellator tessellator = Tessellator.func_178181_a();
WorldRenderer worldrenderer = tessellator.func_178180_c();
Tessellator tessellator = Tessellator.field_78398_a;
this.field_73725_b.func_110434_K().func_110577_a(Gui.field_110325_k);
@@ -177,6 +181,12 @@
GlStateManager.func_179120_a(770, 771, 1, 0);
this.field_73725_b.field_71466_p.func_175063_a(this.field_73726_c, (float)((l - this.field_73725_b.field_71466_p.func_78256_a(this.field_73726_c)) / 2), (float)(i1 / 2 - 4 - 16), 16777215);
this.field_73725_b.field_71466_p.func_175063_a(this.field_73727_a, (float)((l - this.field_73725_b.field_71466_p.func_78256_a(this.field_73727_a)) / 2), (float)(i1 / 2 - 4 + 8), 16777215);
float f = 32.0F;
@@ -175,6 +178,7 @@
OpenGlHelper.func_148821_a(770, 771, 1, 0);
this.field_73725_b.field_71466_p.func_78261_a(this.field_73726_c, (l - this.field_73725_b.field_71466_p.func_78256_a(this.field_73726_c)) / 2, i1 / 2 - 4 - 16, 16777215);
this.field_73725_b.field_71466_p.func_78261_a(this.field_73727_a, (l - this.field_73725_b.field_71466_p.func_78256_a(this.field_73727_a)) / 2, i1 / 2 - 4 + 8, 16777215);
+ }
+ }
+ catch (java.io.IOException e)
+ {
+ com.google.common.base.Throwables.propagate(e);
+ } //FML End
this.field_146588_g.func_147609_e();
if (OpenGlHelper.func_148822_b())
@@ -1,62 +1,111 @@
--- ../src-base/minecraft/net/minecraft/client/Minecraft.java
+++ ../src-work/minecraft/net/minecraft/client/Minecraft.java
@@ -410,10 +410,10 @@
@@ -9,6 +9,9 @@
import com.google.common.util.concurrent.ListenableFutureTask;
import com.mojang.authlib.minecraft.MinecraftSessionService;
import com.mojang.authlib.yggdrasil.YggdrasilAuthenticationService;
+import cpw.mods.fml.client.FMLClientHandler;
+import cpw.mods.fml.common.FMLCommonHandler;
+import cpw.mods.fml.common.StartupQuery;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import io.netty.util.concurrent.GenericFutureListener;
@@ -169,6 +172,8 @@
import org.lwjgl.opengl.PixelFormat;
import org.lwjgl.util.glu.GLU;
+import com.google.common.collect.MapDifference;
+
@SideOnly(Side.CLIENT)
public class Minecraft implements IPlayerUsage
{
@@ -344,21 +349,23 @@
File file2 = new File(file1, "crash-" + (new SimpleDateFormat("yyyy-MM-dd_HH.mm.ss")).format(new Date()) + "-client.txt");
System.out.println(p_71377_1_.func_71502_e());
+ int retVal;
if (p_71377_1_.func_71497_f() != null)
{
System.out.println("#@!@# Game crashed! Crash report saved to: #@!@# " + p_71377_1_.func_71497_f());
- System.exit(-1);
+ retVal = -1;
}
else if (p_71377_1_.func_147149_a(file2))
{
System.out.println("#@!@# Game crashed! Crash report saved to: #@!@# " + file2.getAbsolutePath());
- System.exit(-1);
+ retVal = -1;
}
else
{
System.out.println("#@?@# Game crashed! Crash report could not be saved. #@?@#");
- System.exit(-2);
+ retVal = -2;
}
+ FMLCommonHandler.instance().handleExit(retVal);
}
public void func_71367_a(String p_71367_1_, int p_71367_2_)
@@ -471,11 +478,11 @@
this.field_110451_am = new SimpleReloadableResourceManager(this.field_110452_an);
this.field_135017_as = new LanguageManager(this.field_110452_an, this.field_71474_y.field_74363_ab);
this.field_110451_am.func_110542_a(this.field_135017_as);
- this.func_110436_a();
+ net.minecraftforge.fml.client.FMLClientHandler.instance().beginMinecraftLoading(this, this.field_110449_ao, this.field_110451_am);
+ FMLClientHandler.instance().beginMinecraftLoading(this, this.field_110449_ao, this.field_110451_am);
this.field_71446_o = new TextureManager(this.field_110451_am);
this.field_110451_am.func_110542_a(this.field_71446_o);
- this.func_180510_a(this.field_71446_o);
+ net.minecraftforge.fml.client.SplashProgress.drawVanillaScreen(this.field_71446_o);
this.func_175595_al();
this.field_152350_aA = new SkinManager(this.field_71446_o, new File(this.field_110446_Y, "skins"), this.field_152355_az);
this.field_71469_aa = new AnvilSaveConverter(new File(this.field_71412_D, "saves"));
@@ -449,6 +449,8 @@
}
});
this.field_71417_B = new MouseHelper();
+ net.minecraftforge.fml.common.ProgressManager.ProgressBar bar= net.minecraftforge.fml.common.ProgressManager.push("Rendering Setup", 9);
+ bar.step("GL Setup");
this.func_71361_d("Pre startup");
GlStateManager.func_179098_w();
GlStateManager.func_179103_j(7425);
@@ -462,17 +464,21 @@
GlStateManager.func_179096_D();
GlStateManager.func_179128_n(5888);
this.func_71361_d("Startup");
+ bar.step("Loading Texture Map");
this.field_147128_au = new TextureMap("textures");
this.field_147128_au.func_147633_a(this.field_71474_y.field_151442_I);
this.field_71446_o.func_110580_a(TextureMap.field_110575_b, this.field_147128_au);
this.field_71446_o.func_110577_a(TextureMap.field_110575_b);
this.field_147128_au.func_174937_a(false, this.field_71474_y.field_151442_I > 0);
+ bar.step("Loading Model Manager");
this.field_175617_aL = new ModelManager(this.field_147128_au);
this.field_110451_am.func_110542_a(this.field_175617_aL);
+ bar.step("Loading Item Renderer");
this.field_175621_X = new RenderItem(this.field_71446_o, this.field_175617_aL);
this.field_175616_W = new RenderManager(this.field_71446_o, this.field_175621_X);
this.field_175620_Y = new ItemRenderer(this);
this.field_110451_am.func_110542_a(this.field_175621_X);
- this.func_71357_I();
+ cpw.mods.fml.client.SplashProgress.drawVanillaScreen();
this.field_147127_av = new SoundHandler(this.field_110451_am, this.field_71474_y);
this.field_110451_am.func_110542_a(this.field_147127_av);
this.field_147126_aw = new MusicTicker(this);
@@ -492,7 +499,10 @@
this.field_110451_am.func_110542_a(this.field_71464_q);
this.field_110451_am.func_110542_a(new GrassColorReloadListener());
this.field_110451_am.func_110542_a(new FoliageColorReloadListener());
+ cpw.mods.fml.common.ProgressManager.ProgressBar bar= cpw.mods.fml.common.ProgressManager.push("Rendering Setup", 9);
+ bar.step("Loading Render Manager");
RenderManager.field_78727_a.field_78721_f = new ItemRenderer(this);
+ bar.step("Loading Entity Renderer");
this.field_71460_t = new EntityRenderer(this, this.field_110451_am);
this.field_110451_am.func_110542_a(this.field_71460_t);
this.field_175618_aM = new BlockRendererDispatcher(this.field_175617_aL.func_174954_c(), this.field_71474_y);
@@ -482,19 +488,21 @@
this.field_71458_u = new GuiAchievement(this);
GlStateManager.func_179083_b(0, 0, this.field_71443_c, this.field_71440_d);
AchievementList.field_76004_f.func_75988_a(new IStatStringFormat()
@@ -510,6 +520,7 @@
}
}
});
+ bar.step("Loading GL properties");
this.field_71417_B = new MouseHelper();
this.func_71361_d("Pre startup");
GL11.glEnable(GL11.GL_TEXTURE_2D);
@@ -524,27 +535,35 @@
GL11.glLoadIdentity();
GL11.glMatrixMode(GL11.GL_MODELVIEW);
this.func_71361_d("Startup");
+ bar.step("Render Global instance");
this.field_71438_f = new RenderGlobal(this);
+ bar.step("Building Blocks Texture");
this.field_147128_au = new TextureMap(0, "textures/blocks");
+ bar.step("Anisotropy and Mipmaps");
this.field_147128_au.func_147632_b(this.field_71474_y.field_151443_J);
this.field_147128_au.func_147633_a(this.field_71474_y.field_151442_I);
+ bar.step("Loading Blocks Texture");
this.field_71446_o.func_130088_a(TextureMap.field_110575_b, this.field_147128_au);
+ bar.step("Loading Items Texture");
this.field_71446_o.func_130088_a(TextureMap.field_110576_c, new TextureMap(1, "textures/items"));
+ bar.step("Viewport");
GL11.glViewport(0, 0, this.field_71443_c, this.field_71440_d);
this.field_71452_i = new EffectRenderer(this.field_71441_e, this.field_71446_o);
+ net.minecraftforge.fml.common.ProgressManager.pop(bar);
+ net.minecraftforge.fml.client.FMLClientHandler.instance().finishMinecraftLoading();
+ cpw.mods.fml.common.ProgressManager.pop(bar);
+ FMLClientHandler.instance().finishMinecraftLoading();
this.func_71361_d("Post startup");
this.field_71456_v = new GuiIngame(this);
if (this.field_71475_ae != null)
{
- this.func_147108_a(new GuiConnecting(new GuiMainMenu(), this, this.field_71475_ae, this.field_71477_af));
+ net.minecraftforge.fml.client.FMLClientHandler.instance().connectToServerAtStartup(this.field_71475_ae, this.field_71477_af);
+ FMLClientHandler.instance().connectToServerAtStartup(this.field_71475_ae, this.field_71477_af);
}
else
{
@@ -64,96 +113,60 @@
}
- this.field_71446_o.func_147645_c(this.field_152354_ay);
+ net.minecraftforge.fml.client.SplashProgress.clearVanillaResources(field_71446_o, field_152354_ay);
+ cpw.mods.fml.client.SplashProgress.clearVanillaResources(field_71446_o, field_152354_ay);
this.field_152354_ay = null;
this.field_71461_s = new LoadingScreenRenderer(this);
@@ -503,6 +511,7 @@
@@ -553,6 +572,7 @@
this.func_71352_k();
}
+ net.minecraftforge.fml.client.FMLClientHandler.instance().onInitializationComplete();
+ FMLClientHandler.instance().onInitializationComplete();
try
{
Display.setVSyncEnabled(this.field_71474_y.field_74352_v);
@@ -681,21 +690,23 @@
File file2 = new File(file1, "crash-" + (new SimpleDateFormat("yyyy-MM-dd_HH.mm.ss")).format(new Date()) + "-client.txt");
Bootstrap.func_179870_a(p_71377_1_.func_71502_e());
+ int retVal;
if (p_71377_1_.func_71497_f() != null)
{
Bootstrap.func_179870_a("#@!@# Game crashed! Crash report saved to: #@!@# " + p_71377_1_.func_71497_f());
- System.exit(-1);
+ retVal = -1;
}
else if (p_71377_1_.func_147149_a(file2))
{
Bootstrap.func_179870_a("#@!@# Game crashed! Crash report saved to: #@!@# " + file2.getAbsolutePath());
- System.exit(-1);
+ retVal = -1;
}
else
{
Bootstrap.func_179870_a("#@?@# Game crashed! Crash report could not be saved. #@?@#");
- System.exit(-2);
+ retVal = -2;
}
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().handleExit(retVal);
}
public boolean func_152349_b()
@@ -999,7 +1010,7 @@
{
while (!this.field_152351_aB.isEmpty())
{
- ((FutureTask)this.field_152351_aB.poll()).run();
+ net.minecraftforge.fml.common.FMLCommonHandler.callFuture(((FutureTask)this.field_152351_aB.poll()));
}
}
@@ -1034,9 +1045,11 @@
@@ -970,9 +990,11 @@
if (!this.field_71454_w)
{
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().onRenderTickStart(this.field_71428_T.field_74281_c);
+ FMLCommonHandler.instance().onRenderTickStart(this.field_71428_T.field_74281_c);
this.field_71424_I.func_76318_c("gameRenderer");
this.field_71460_t.func_78480_b(this.field_71428_T.field_74281_c);
this.field_71424_I.func_76319_b();
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().onRenderTickEnd(this.field_71428_T.field_74281_c);
+ FMLCommonHandler.instance().onRenderTickEnd(this.field_71428_T.field_74281_c);
}
this.field_71424_I.func_76319_b();
@@ -1591,6 +1604,8 @@
GL11.glFlush();
@@ -1554,6 +1576,8 @@
--this.field_71467_ac;
}
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().onPreClientTick();
+ FMLCommonHandler.instance().onPreClientTick();
+
this.field_71424_I.func_76320_a("gui");
if (!this.field_71445_n)
@@ -1744,6 +1759,7 @@
@@ -1698,6 +1722,7 @@
this.field_71462_r.func_146274_d();
}
}
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().fireMouseInput();
+ FMLCommonHandler.instance().fireMouseInput();
}
if (this.field_71429_W > 0)
@@ -1920,6 +1936,7 @@
@@ -1835,6 +1860,7 @@
}
}
}
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().fireKeyInput();
+ FMLCommonHandler.instance().fireKeyInput();
}
for (i = 0; i < 9; ++i)
@@ -2120,12 +2137,15 @@
for (j = 0; j < 9; ++j)
@@ -2025,12 +2051,15 @@
this.field_71453_ak.func_74428_b();
}
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().onPostClientTick();
+ FMLCommonHandler.instance().onPostClientTick();
+
this.field_71424_I.func_76319_b();
this.field_71423_H = func_71386_F();
@@ -161,15 +174,15 @@
public void func_71371_a(String p_71371_1_, String p_71371_2_, WorldSettings p_71371_3_)
{
+ net.minecraftforge.fml.client.FMLClientHandler.instance().startIntegratedServer(p_71371_1_, p_71371_2_, p_71371_3_);
+ FMLClientHandler.instance().startIntegratedServer(p_71371_1_, p_71371_2_, p_71371_3_);
this.func_71403_a((WorldClient)null);
System.gc();
ISaveHandler isavehandler = this.field_71469_aa.func_75804_a(p_71371_1_, false);
@@ -2161,6 +2181,12 @@
@@ -2066,6 +2095,12 @@
while (!this.field_71437_Z.func_71200_ad())
{
+ if (!net.minecraftforge.fml.common.StartupQuery.check())
+ if (!StartupQuery.check())
+ {
+ func_71403_a(null);
+ func_147108_a(null);
@@ -178,20 +191,11 @@
String s2 = this.field_71437_Z.func_71195_b_();
if (s2 != null)
@@ -2186,7 +2212,7 @@
SocketAddress socketaddress = this.field_71437_Z.func_147137_ag().func_151270_a();
NetworkManager networkmanager = NetworkManager.func_150722_a(socketaddress);
networkmanager.func_150719_a(new NetHandlerLoginClient(networkmanager, this, (GuiScreen)null));
- networkmanager.func_179290_a(new C00Handshake(47, socketaddress.toString(), 0, EnumConnectionState.LOGIN));
+ networkmanager.func_179290_a(new C00Handshake(47, socketaddress.toString(), 0, EnumConnectionState.LOGIN, true));
networkmanager.func_179290_a(new C00PacketLoginStart(this.func_110432_I().func_148256_e()));
this.field_71453_ak = networkmanager;
}
@@ -2237,6 +2263,7 @@
@@ -2141,6 +2176,7 @@
this.field_110448_aq.func_148529_f();
this.func_71351_a((ServerData)null);
this.field_71455_al = false;
+ net.minecraftforge.fml.client.FMLClientHandler.instance().handleClientWorldClosing(this.field_71441_e);
+ FMLClientHandler.instance().handleClientWorldClosing(this.field_71441_e);
}
this.field_147127_av.func_147690_c();
@@ -1,6 +1,6 @@
--- ../src-base/minecraft/net/minecraft/client/gui/FontRenderer.java
+++ ../src-work/minecraft/net/minecraft/client/gui/FontRenderer.java
@@ -57,7 +57,7 @@
@@ -54,7 +54,7 @@
this.field_111273_g = p_i1035_2_;
this.field_78298_i = p_i1035_3_;
this.field_78293_l = p_i1035_4_;
@@ -9,25 +9,25 @@
for (int i = 0; i < 32; ++i)
{
@@ -105,7 +105,7 @@
@@ -102,7 +102,7 @@
try
{
- bufferedimage = TextureUtil.func_177053_a(Minecraft.func_71410_x().func_110442_L().func_110536_a(this.field_111273_g).func_110527_b());
+ bufferedimage = TextureUtil.func_177053_a(getResourceInputStream(this.field_111273_g));
- bufferedimage = ImageIO.read(Minecraft.func_71410_x().func_110442_L().func_110536_a(this.field_111273_g).func_110527_b());
+ bufferedimage = ImageIO.read(getResourceInputStream(this.field_111273_g));
}
catch (IOException ioexception)
{
@@ -172,7 +172,7 @@
@@ -167,7 +167,7 @@
{
try
{
- inputstream = Minecraft.func_71410_x().func_110442_L().func_110536_a(new ResourceLocation("font/glyph_sizes.bin")).func_110527_b();
+ inputstream = getResourceInputStream(new ResourceLocation("font/glyph_sizes.bin"));
- InputStream inputstream = Minecraft.func_71410_x().func_110442_L().func_110536_a(new ResourceLocation("font/glyph_sizes.bin")).func_110527_b();
+ InputStream inputstream = getResourceInputStream(new ResourceLocation("font/glyph_sizes.bin"));
inputstream.read(this.field_78287_e);
}
catch (IOException ioexception)
@@ -195,7 +195,7 @@
@@ -186,7 +186,7 @@
float f = (float)(p_78266_1_ % 16 * 8);
float f1 = (float)(p_78266_1_ / 16 * 8);
float f2 = p_78266_2_ ? 1.0F : 0.0F;
@@ -36,7 +36,7 @@
float f3 = (float)this.field_78286_d[p_78266_1_] - 0.01F;
GL11.glBegin(GL11.GL_TRIANGLE_STRIP);
GL11.glTexCoord2f(f / 128.0F, f1 / 128.0F);
@@ -222,7 +222,7 @@
@@ -213,7 +213,7 @@
private void func_78257_a(int p_78257_1_)
{
@@ -45,34 +45,34 @@
}
protected float func_78277_a(char p_78277_1_, boolean p_78277_2_)
@@ -269,7 +269,7 @@
@@ -260,7 +260,7 @@
public int func_175065_a(String p_175065_1_, float p_175065_2_, float p_175065_3_, int p_175065_4_, boolean p_175065_5_)
public int func_85187_a(String p_85187_1_, int p_85187_2_, int p_85187_3_, int p_85187_4_, boolean p_85187_5_)
{
- GlStateManager.func_179141_d();
- GL11.glEnable(GL11.GL_ALPHA_TEST);
+ enableAlpha();
this.func_78265_b();
int j;
int l;
@@ -341,7 +341,7 @@
@@ -332,7 +332,7 @@
k = this.field_78285_g[j];
this.field_78304_r = k;
- GlStateManager.func_179131_c((float)(k >> 16) / 255.0F, (float)(k >> 8 & 255) / 255.0F, (float)(k & 255) / 255.0F, this.field_78305_q);
- GL11.glColor4f((float)(k >> 16) / 255.0F, (float)(k >> 8 & 255) / 255.0F, (float)(k & 255) / 255.0F, this.field_78305_q);
+ setColor((float)(k >> 16) / 255.0F, (float)(k >> 8 & 255) / 255.0F, (float)(k & 255) / 255.0F, this.field_78305_q);
}
else if (j == 16)
{
@@ -370,7 +370,7 @@
@@ -361,7 +361,7 @@
this.field_78299_w = false;
this.field_78300_v = false;
this.field_78301_u = false;
- GlStateManager.func_179131_c(this.field_78291_n, this.field_78292_o, this.field_78306_p, this.field_78305_q);
- GL11.glColor4f(this.field_78291_n, this.field_78292_o, this.field_78306_p, this.field_78305_q);
+ setColor(this.field_78291_n, this.field_78292_o, this.field_78306_p, this.field_78305_q);
}
++i;
@@ -429,6 +429,15 @@
@@ -420,6 +420,15 @@
++f;
}
@@ -86,29 +86,30 @@
+ {
+ {
Tessellator tessellator;
WorldRenderer worldrenderer;
@@ -504,7 +513,7 @@
this.field_78292_o = (float)(p_180455_4_ >> 8 & 255) / 255.0F;
this.field_78306_p = (float)(p_180455_4_ & 255) / 255.0F;
this.field_78305_q = (float)(p_180455_4_ >> 24 & 255) / 255.0F;
- GlStateManager.func_179131_c(this.field_78291_n, this.field_78292_o, this.field_78306_p, this.field_78305_q);
if (this.field_78299_w)
@@ -492,7 +501,7 @@
this.field_78292_o = (float)(p_78258_4_ >> 8 & 255) / 255.0F;
this.field_78306_p = (float)(p_78258_4_ & 255) / 255.0F;
this.field_78305_q = (float)(p_78258_4_ >> 24 & 255) / 255.0F;
- GL11.glColor4f(this.field_78291_n, this.field_78292_o, this.field_78306_p, this.field_78305_q);
+ setColor(this.field_78291_n, this.field_78292_o, this.field_78306_p, this.field_78305_q);
this.field_78295_j = p_180455_2_;
this.field_78296_k = p_180455_3_;
this.func_78255_a(p_180455_1_, p_180455_5_);
@@ -842,6 +851,26 @@
this.field_78295_j = (float)p_78258_2_;
this.field_78296_k = (float)p_78258_3_;
this.func_78255_a(p_78258_1_, p_78258_5_);
@@ -829,4 +838,24 @@
{
return this.field_78294_m;
}
+
+ protected void setColor(float r, float g, float b, float a)
+ {
+ GlStateManager.func_179131_c(r,g,b,a);
+ GL11.glColor4f(r, g, b, a);
+ }
+
+ protected void enableAlpha()
+ {
+ GlStateManager.func_179141_d();
+ GL11.glEnable(GL11.GL_ALPHA_TEST);
+ }
+
+ protected void bindTexture(ResourceLocation location)
@@ -120,7 +121,4 @@
+ {
+ return Minecraft.func_71410_x().func_110442_L().func_110536_a(location).func_110527_b();
+ }
+
public int func_175064_b(char p_175064_1_)
{
return this.field_78285_g["0123456789abcdef".indexOf(p_175064_1_)];
}
@@ -1,14 +1,14 @@
--- ../src-base/minecraft/net/minecraft/client/gui/GuiButton.java
+++ ../src-work/minecraft/net/minecraft/client/gui/GuiButton.java
@@ -22,6 +22,7 @@
@@ -23,6 +23,7 @@
public boolean field_146125_m;
protected boolean field_146123_n;
private static final String __OBFID = "CL_00000668";
+ public int packedFGColour; //FML
+ public int packedFGColour;
public GuiButton(int p_i1020_1_, int p_i1020_2_, int p_i1020_3_, String p_i1020_4_)
{
@@ -75,8 +76,12 @@
@@ -76,8 +77,12 @@
this.func_146119_b(p_146112_1_, p_146112_2_, p_146112_3_);
int l = 14737632;
@@ -1,6 +1,6 @@
--- ../src-base/minecraft/net/minecraft/client/gui/GuiCreateWorld.java
+++ ../src-work/minecraft/net/minecraft/client/gui/GuiCreateWorld.java
@@ -213,6 +213,8 @@
@@ -211,6 +211,8 @@
}
}
@@ -0,0 +1,21 @@
--- ../src-base/minecraft/net/minecraft/client/gui/GuiIngame.java
+++ ../src-work/minecraft/net/minecraft/client/gui/GuiIngame.java
@@ -1,5 +1,6 @@
package net.minecraft.client.gui;
+import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import java.awt.Color;
@@ -314,6 +315,11 @@
this.func_73731_b(fontrenderer, s, k - fontrenderer.func_78256_a(s) - 2, 2, 14737632);
s = "Allocated memory: " + j5 * 100L / i5 + "% (" + j5 / 1024L / 1024L + "MB)";
this.func_73731_b(fontrenderer, s, k - fontrenderer.func_78256_a(s) - 2, 12, 14737632);
+ int offset = 22;
+ for (String brd : FMLCommonHandler.instance().getBrandings(false))
+ {
+ this.func_73731_b(fontrenderer, brd, k - fontrenderer.func_78256_a(brd) - 2, offset+=10, 14737632);
+ }
j3 = MathHelper.func_76128_c(this.field_73839_d.field_71439_g.field_70165_t);
k3 = MathHelper.func_76128_c(this.field_73839_d.field_71439_g.field_70163_u);
int l3 = MathHelper.func_76128_c(this.field_73839_d.field_71439_g.field_70161_v);
@@ -1,23 +1,30 @@
--- ../src-base/minecraft/net/minecraft/client/gui/GuiIngameMenu.java
+++ ../src-work/minecraft/net/minecraft/client/gui/GuiIngameMenu.java
@@ -30,8 +30,9 @@
@@ -1,5 +1,6 @@
package net.minecraft.client.gui;
+import cpw.mods.fml.client.FMLClientHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.client.gui.achievement.GuiAchievements;
@@ -29,8 +30,9 @@
this.field_146292_n.add(new GuiButton(4, this.field_146294_l / 2 - 100, this.field_146295_m / 4 + 24 + b0, I18n.func_135052_a("menu.returnToGame", new Object[0])));
this.field_146292_n.add(new GuiButton(0, this.field_146294_l / 2 - 100, this.field_146295_m / 4 + 96 + b0, 98, 20, I18n.func_135052_a("menu.options", new Object[0])));
+ this.field_146292_n.add(new GuiButton(12, this.field_146294_l / 2 + 2, this.field_146295_m / 4 + 96 + b0, 98, 20, I18n.func_135052_a("fml.menu.modoptions")));
+ this.field_146292_n.add(new GuiButton(12, this.field_146294_l / 2 + 2, this.field_146295_m / 4 + 96 + b0, 98, 20, "Mod Options..."));
GuiButton guibutton;
- this.field_146292_n.add(guibutton = new GuiButton(7, this.field_146294_l / 2 + 2, this.field_146295_m / 4 + 96 + b0, 98, 20, I18n.func_135052_a("menu.shareToLan", new Object[0])));
+ this.field_146292_n.add(guibutton = new GuiButton(7, this.field_146294_l / 2 - 100, this.field_146295_m / 4 + 72 + b0, 200, 20, I18n.func_135052_a("menu.shareToLan", new Object[0])));
this.field_146292_n.add(new GuiButton(5, this.field_146294_l / 2 - 100, this.field_146295_m / 4 + 48 + b0, 98, 20, I18n.func_135052_a("gui.achievements", new Object[0])));
this.field_146292_n.add(new GuiButton(6, this.field_146294_l / 2 + 2, this.field_146295_m / 4 + 48 + b0, 98, 20, I18n.func_135052_a("gui.stats", new Object[0])));
guibutton.field_146124_l = this.field_146297_k.func_71356_B() && !this.field_146297_k.func_71401_C().func_71344_c();
@@ -65,6 +66,10 @@
@@ -64,6 +66,10 @@
break;
case 7:
this.field_146297_k.func_147108_a(new GuiShareToLan(this));
+ break;
+ case 12:
+ net.minecraftforge.fml.client.FMLClientHandler.instance().showInGameModOptions(this);
+ FMLClientHandler.instance().showInGameModOptions(this);
+ break;
}
}
@@ -1,39 +1,68 @@
--- ../src-base/minecraft/net/minecraft/client/gui/GuiMainMenu.java
+++ ../src-work/minecraft/net/minecraft/client/gui/GuiMainMenu.java
@@ -198,6 +198,11 @@
@@ -1,5 +1,7 @@
package net.minecraft.client.gui;
+import cpw.mods.fml.client.GuiModList;
+import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import java.io.BufferedReader;
@@ -9,6 +11,7 @@
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
+import java.util.List;
import java.util.Random;
import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.OpenGlHelper;
@@ -29,6 +32,9 @@
import org.lwjgl.opengl.GLContext;
import org.lwjgl.util.glu.Project;
+import com.google.common.base.Strings;
+import com.google.common.collect.Lists;
+
@SideOnly(Side.CLIENT)
public class GuiMainMenu extends GuiScreen implements GuiYesNoCallback
{
@@ -190,7 +196,13 @@
{
this.field_146292_n.add(new GuiButton(1, this.field_146294_l / 2 - 100, p_73969_1_, I18n.func_135052_a("menu.singleplayer", new Object[0])));
this.field_146292_n.add(new GuiButton(2, this.field_146294_l / 2 - 100, p_73969_1_ + p_73969_2_ * 1, I18n.func_135052_a("menu.multiplayer", new Object[0])));
this.field_146292_n.add(this.field_175372_K = new GuiButton(14, this.field_146294_l / 2 - 100, p_73969_1_ + p_73969_2_ * 2, I18n.func_135052_a("menu.online", new Object[0])));
+ GuiButton fmlModButton = new GuiButton(6, this.field_146294_l / 2 - 100, p_73969_1_ + p_73969_2_ * 2, I18n.func_135052_a("fml.menu.mods"));
- this.field_146292_n.add(new GuiButton(14, this.field_146294_l / 2 - 100, p_73969_1_ + p_73969_2_ * 2, I18n.func_135052_a("menu.online", new Object[0])));
+ GuiButton realmsButton = new GuiButton(14, this.field_146294_l / 2 - 100, p_73969_1_ + p_73969_2_ * 2, I18n.func_135052_a("menu.online", new Object[0]));
+ GuiButton fmlModButton = new GuiButton(6, this.field_146294_l / 2 - 100, p_73969_1_ + p_73969_2_ * 2, "Mods");
+ fmlModButton.field_146128_h = this.field_146294_l / 2 + 2;
+ field_175372_K.field_146120_f = 98;
+ realmsButton.field_146120_f = 98;
+ fmlModButton.field_146120_f = 98;
+ this.field_146292_n.add(realmsButton);
+ this.field_146292_n.add(fmlModButton);
}
private void func_73972_b(int p_73972_1_, int p_73972_2_)
@@ -245,6 +250,11 @@
@@ -238,6 +250,11 @@
this.field_146297_k.func_71400_g();
}
+ if (p_146284_1_.field_146127_k == 6)
+ {
+ this.field_146297_k.func_147108_a(new net.minecraftforge.fml.client.GuiModList(this));
+ this.field_146297_k.func_147108_a(new GuiModList(this));
+ }
+
if (p_146284_1_.field_146127_k == 11)
{
this.field_146297_k.func_71371_a("Demo_World", "Demo_World", DemoWorldServer.field_73071_a);
@@ -492,7 +502,15 @@
@@ -481,7 +498,15 @@
s = s + " Demo";
}
- this.func_73731_b(this.field_146289_q, s, 2, this.field_146295_m - 10, -1);
+ java.util.List<String> brandings = com.google.common.collect.Lists.reverse(net.minecraftforge.fml.common.FMLCommonHandler.instance().getBrandings(true));
+ List<String> brandings = Lists.reverse(FMLCommonHandler.instance().getBrandings(true));
+ for (int i = 0; i < brandings.size(); i++)
+ {
+ String brd = brandings.get(i);
+ if (!com.google.common.base.Strings.isNullOrEmpty(brd))
+ if (!Strings.isNullOrEmpty(brd))
+ {
+ this.func_73731_b(this.field_146289_q, brd, 2, this.field_146295_m - ( 10 + i * (this.field_146289_q.field_78288_b + 1)), 16777215);
+ }
@@ -1,19 +1,27 @@
--- ../src-base/minecraft/net/minecraft/client/gui/GuiMultiplayer.java
+++ ../src-work/minecraft/net/minecraft/client/gui/GuiMultiplayer.java
@@ -41,6 +41,7 @@
@@ -2,6 +2,7 @@
import com.google.common.base.Splitter;
import com.google.common.collect.Lists;
+import cpw.mods.fml.client.FMLClientHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import java.util.List;
@@ -40,6 +41,7 @@
public GuiMultiplayer(GuiScreen p_i1040_1_)
{
this.field_146798_g = p_i1040_1_;
+ net.minecraftforge.fml.client.FMLClientHandler.instance().setupServerList();
+ FMLClientHandler.instance().setupServerList();
}
public void func_73866_w_()
@@ -373,7 +374,7 @@
@@ -366,7 +368,7 @@
private void func_146791_a(ServerData p_146791_1_)
{
- this.field_146297_k.func_147108_a(new GuiConnecting(this, this.field_146297_k, p_146791_1_));
+ net.minecraftforge.fml.client.FMLClientHandler.instance().connectToServer(this, p_146791_1_);
+ FMLClientHandler.instance().connectToServer(this, p_146791_1_);
}
public void func_146790_a(int p_146790_1_)
@@ -1,12 +0,0 @@
--- ../src-base/minecraft/net/minecraft/client/gui/GuiOverlayDebug.java
+++ ../src-work/minecraft/net/minecraft/client/gui/GuiOverlayDebug.java
@@ -170,6 +170,9 @@
long l = j - k;
ArrayList arraylist = Lists.newArrayList(new String[] {String.format("Java: %s %dbit", new Object[]{System.getProperty("java.version"), Integer.valueOf(this.field_175242_a.func_147111_S() ? 64 : 32)}), String.format("Mem: % 2d%% %03d/%03dMB", new Object[]{Long.valueOf(l * 100L / i), Long.valueOf(func_175240_a(l)), Long.valueOf(func_175240_a(i))}), String.format("Allocated: % 2d%% %03dMB", new Object[]{Long.valueOf(j * 100L / i), Long.valueOf(func_175240_a(j))}), "", String.format("Display: %dx%d (%s)", new Object[]{Integer.valueOf(Display.getWidth()), Integer.valueOf(Display.getHeight()), GL11.glGetString(GL11.GL_VENDOR)}), GL11.glGetString(GL11.GL_RENDERER), GL11.glGetString(GL11.GL_VERSION)});
+ arraylist.add("");
+ arraylist.addAll(net.minecraftforge.fml.common.FMLCommonHandler.instance().getBrandings(false));
+
if (this.func_175236_d())
{
return arraylist;
@@ -1,11 +1,18 @@
--- ../src-base/minecraft/net/minecraft/client/gui/GuiSelectWorld.java
+++ ../src-work/minecraft/net/minecraft/client/gui/GuiSelectWorld.java
@@ -187,7 +187,7 @@
@@ -1,5 +1,6 @@
package net.minecraft.client.gui;
+import cpw.mods.fml.client.FMLClientHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import java.text.DateFormat;
@@ -179,7 +180,7 @@
if (this.field_146297_k.func_71359_d().func_90033_f(s))
{
- this.field_146297_k.func_71371_a(s, s1, (WorldSettings)null);
+ net.minecraftforge.fml.client.FMLClientHandler.instance().tryLoadExistingWorld(this, s, s1);
+ FMLClientHandler.instance().tryLoadExistingWorld(this, s, s1);
}
}
}
@@ -1,23 +1,31 @@
--- ../src-base/minecraft/net/minecraft/client/gui/ServerListEntryNormal.java
+++ ../src-work/minecraft/net/minecraft/client/gui/ServerListEntryNormal.java
@@ -84,7 +84,7 @@
boolean flag2 = this.field_148301_e.field_82821_f < 47;
@@ -2,6 +2,7 @@
import com.google.common.base.Charsets;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
+import cpw.mods.fml.client.FMLClientHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
@@ -83,7 +84,7 @@
boolean flag2 = this.field_148301_e.field_82821_f < 5;
boolean flag3 = flag1 || flag2;
this.field_148300_d.field_71466_p.func_78276_b(this.field_148301_e.field_78847_a, p_180790_2_ + 32 + 3, p_180790_3_ + 1, 16777215);
- List list = this.field_148300_d.field_71466_p.func_78271_c(this.field_148301_e.field_78843_d, p_180790_4_ - 32 - 2);
+ List list = this.field_148300_d.field_71466_p.func_78271_c(net.minecraftforge.fml.client.FMLClientHandler.instance().fixDescription(this.field_148301_e.field_78843_d), p_180790_4_ - 48 - 2);
this.field_148300_d.field_71466_p.func_78276_b(this.field_148301_e.field_78847_a, p_148279_2_ + 32 + 3, p_148279_3_ + 1, 16777215);
- List list = this.field_148300_d.field_71466_p.func_78271_c(this.field_148301_e.field_78843_d, p_148279_4_ - 32 - 2);
+ List list = this.field_148300_d.field_71466_p.func_78271_c(FMLClientHandler.instance().fixDescription(this.field_148301_e.field_78843_d), p_148279_4_ - 48 - 2);
for (int l1 = 0; l1 < Math.min(list.size(), 2); ++l1)
{
@@ -178,6 +178,11 @@
int k2 = p_180790_6_ - p_180790_2_;
int l2 = p_180790_7_ - p_180790_3_;
@@ -174,6 +175,11 @@
int k2 = p_148279_7_ - p_148279_2_;
int l2 = p_148279_8_ - p_148279_3_;
+ String tooltip = net.minecraftforge.fml.client.FMLClientHandler.instance().enhanceServerListEntry(this, this.field_148301_e, p_180790_2_, p_180790_4_, p_180790_3_, k2, l2);
+ String tooltip = FMLClientHandler.instance().enhanceServerListEntry(this, this.field_148301_e, p_148279_2_, p_148279_4_, p_148279_3_, k2, l2);
+ if (tooltip != null)
+ {
+ this.field_148303_c.func_146793_a(tooltip);
+ } else
if (k2 >= p_180790_4_ - 15 && k2 <= p_180790_4_ - 5 && l2 >= 0 && l2 <= 8)
if (k2 >= p_148279_4_ - 15 && k2 <= p_148279_4_ - 5 && l2 >= 0 && l2 <= 8)
{
this.field_148303_c.func_146793_a(s1);
@@ -1,11 +0,0 @@
--- ../src-base/minecraft/net/minecraft/client/multiplayer/GuiConnecting.java
+++ ../src-work/minecraft/net/minecraft/client/multiplayer/GuiConnecting.java
@@ -69,7 +69,7 @@
inetaddress = InetAddress.getByName(p_146367_1_);
GuiConnecting.this.field_146371_g = NetworkManager.func_150726_a(inetaddress, p_146367_2_);
GuiConnecting.this.field_146371_g.func_150719_a(new NetHandlerLoginClient(GuiConnecting.this.field_146371_g, GuiConnecting.this.field_146297_k, GuiConnecting.this.field_146374_i));
- GuiConnecting.this.field_146371_g.func_179290_a(new C00Handshake(47, p_146367_1_, p_146367_2_, EnumConnectionState.LOGIN));
+ GuiConnecting.this.field_146371_g.func_179290_a(new C00Handshake(47, p_146367_1_, p_146367_2_, EnumConnectionState.LOGIN, true));
GuiConnecting.this.field_146371_g.func_179290_a(new C00PacketLoginStart(GuiConnecting.this.field_146297_k.func_110432_I().func_148256_e()));
}
catch (UnknownHostException unknownhostexception)
@@ -1,10 +0,0 @@
--- ../src-base/minecraft/net/minecraft/client/network/NetHandlerHandshakeMemory.java
+++ ../src-work/minecraft/net/minecraft/client/network/NetHandlerHandshakeMemory.java
@@ -24,6 +24,7 @@
public void func_147383_a(C00Handshake p_147383_1_)
{
+ if (!net.minecraftforge.fml.common.FMLCommonHandler.instance().handleServerHandshake(p_147383_1_, this.field_147384_b)) return;
this.field_147384_b.func_150723_a(p_147383_1_.func_149594_c());
this.field_147384_b.func_150719_a(new NetHandlerLoginServer(this.field_147385_a, this.field_147384_b));
}
@@ -1,14 +1,41 @@
--- ../src-base/minecraft/net/minecraft/client/network/NetHandlerLoginClient.java
+++ ../src-work/minecraft/net/minecraft/client/network/NetHandlerLoginClient.java
@@ -92,7 +92,10 @@
@@ -5,6 +5,9 @@
import com.mojang.authlib.exceptions.InvalidCredentialsException;
import com.mojang.authlib.minecraft.MinecraftSessionService;
import com.mojang.authlib.yggdrasil.YggdrasilAuthenticationService;
+
+import cpw.mods.fml.client.FMLClientHandler;
+import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import io.netty.util.concurrent.Future;
@@ -23,6 +26,7 @@
import net.minecraft.network.login.server.S00PacketDisconnect;
import net.minecraft.network.login.server.S01PacketEncryptionRequest;
import net.minecraft.network.login.server.S02PacketLoginSuccess;
+import net.minecraft.network.play.client.C17PacketCustomPayload;
import net.minecraft.util.ChatComponentTranslation;
import net.minecraft.util.CryptManager;
import net.minecraft.util.IChatComponent;
@@ -100,7 +104,7 @@
public void func_147390_a(S02PacketLoginSuccess p_147390_1_)
{
this.field_175091_e = p_147390_1_.func_179730_a();
this.field_147393_d.func_150723_a(EnumConnectionState.PLAY);
- this.field_147393_d.func_150719_a(new NetHandlerPlayClient(this.field_147394_b, this.field_147395_c, this.field_147393_d, this.field_175091_e));
+ net.minecraftforge.fml.common.network.internal.FMLNetworkHandler.fmlClientHandshake(this.field_147393_d);
+ NetHandlerPlayClient nhpc = new NetHandlerPlayClient(this.field_147394_b, this.field_147395_c, this.field_147393_d, this.field_175091_e);
+ this.field_147393_d.func_150719_a(nhpc);
+ net.minecraftforge.fml.client.FMLClientHandler.instance().setPlayClient(nhpc);
- this.field_147393_d.func_150723_a(EnumConnectionState.PLAY);
+ FMLNetworkHandler.fmlClientHandshake(this.field_147393_d);
}
public void func_147231_a(IChatComponent p_147231_1_)
@@ -114,7 +118,10 @@
if (p_147232_2_ == EnumConnectionState.PLAY)
{
- this.field_147393_d.func_150719_a(new NetHandlerPlayClient(this.field_147394_b, this.field_147395_c, this.field_147393_d));
+ NetHandlerPlayClient nhpc = new NetHandlerPlayClient(this.field_147394_b, this.field_147395_c, this.field_147393_d);
+ this.field_147393_d.func_150719_a(nhpc);
+ FMLClientHandler.instance().setPlayClient(nhpc);
+
}
}
@@ -1,11 +1,19 @@
--- ../src-base/minecraft/net/minecraft/client/network/NetHandlerPlayClient.java
+++ ../src-work/minecraft/net/minecraft/client/network/NetHandlerPlayClient.java
@@ -247,7 +247,7 @@
@@ -2,6 +2,7 @@
import com.google.common.base.Charsets;
import com.mojang.authlib.GameProfile;
+import cpw.mods.fml.common.network.handshake.NetworkDispatcher;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
@@ -232,7 +233,7 @@
public void func_147282_a(S01PacketJoinGame p_147282_1_)
{
PacketThreadUtil.func_180031_a(p_147282_1_, this, this.field_147299_f);
this.field_147299_f.field_71442_b = new PlayerControllerMP(this.field_147299_f, this);
- this.field_147300_g = new WorldClient(this, new WorldSettings(0L, p_147282_1_.func_149198_e(), false, p_147282_1_.func_149195_d(), p_147282_1_.func_149196_i()), p_147282_1_.func_149194_f(), p_147282_1_.func_149192_g(), this.field_147299_f.field_71424_I);
+ this.field_147300_g = new WorldClient(this, new WorldSettings(0L, p_147282_1_.func_149198_e(), false, p_147282_1_.func_149195_d(), p_147282_1_.func_149196_i()), net.minecraftforge.fml.common.network.handshake.NetworkDispatcher.get(func_147298_b()).getOverrideDimension(p_147282_1_), p_147282_1_.func_149192_g(), this.field_147299_f.field_71424_I);
this.field_147299_f.field_71474_y.field_74318_M = p_147282_1_.func_149192_g();
+ this.field_147300_g = new WorldClient(this, new WorldSettings(0L, p_147282_1_.func_149198_e(), false, p_147282_1_.func_149195_d(), p_147282_1_.func_149196_i()), NetworkDispatcher.get(func_147298_b()).getOverrideDimension(p_147282_1_), p_147282_1_.func_149192_g(), this.field_147299_f.field_71424_I);
this.field_147300_g.field_72995_K = true;
this.field_147299_f.func_71403_a(this.field_147300_g);
this.field_147299_f.field_71439_g.field_71093_bK = p_147282_1_.func_149194_f();
@@ -1,10 +1,18 @@
--- ../src-base/minecraft/net/minecraft/client/network/OldServerPinger.java
+++ ../src-work/minecraft/net/minecraft/client/network/OldServerPinger.java
@@ -148,6 +148,7 @@
@@ -4,6 +4,7 @@
import com.google.common.base.Splitter;
import com.google.common.collect.Iterables;
import com.mojang.authlib.GameProfile;
+import cpw.mods.fml.client.FMLClientHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import io.netty.bootstrap.Bootstrap;
@@ -147,6 +148,7 @@
p_147224_1_.func_147407_a((String)null);
}
+ net.minecraftforge.fml.client.FMLClientHandler.instance().bindServerListData(p_147224_1_, serverstatusresponse);
this.field_175092_e = Minecraft.func_71386_F();
networkmanager.func_179290_a(new C01PacketPing(this.field_175092_e));
+ FMLClientHandler.instance().bindServerListData(p_147224_1_, serverstatusresponse);
networkmanager.func_150725_a(new C01PacketPing(Minecraft.func_71386_F()), new GenericFutureListener[0]);
this.field_147403_d = true;
}
@@ -0,0 +1,102 @@
--- ../src-base/minecraft/net/minecraft/client/renderer/RenderBlocks.java
+++ ../src-work/minecraft/net/minecraft/client/renderer/RenderBlocks.java
@@ -40,6 +40,7 @@
import net.minecraft.init.Blocks;
import net.minecraft.item.Item;
import net.minecraft.item.ItemBlock;
+import net.minecraft.src.FMLRenderAccessLibrary;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.tileentity.TileEntityFlowerPot;
import net.minecraft.util.Direction;
@@ -245,7 +246,53 @@
{
p_147805_1_.func_149719_a(this.field_147845_a, p_147805_2_, p_147805_3_, p_147805_4_);
this.func_147775_a(p_147805_1_);
- return l == 0 ? this.func_147784_q(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 4 ? this.func_147721_p(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 31 ? this.func_147742_r(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 1 ? this.func_147746_l(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 40 ? this.func_147774_a((BlockDoublePlant)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 2 ? this.func_147791_c(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 20 ? this.func_147726_j(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 11 ? this.func_147735_a((BlockFence)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 39 ? this.func_147779_s(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 5 ? this.func_147788_h(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 13 ? this.func_147755_t(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 9 ? this.func_147766_a((BlockRailBase)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 19 ? this.func_147724_m(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 23 ? this.func_147783_o(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 6 ? this.func_147796_n(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 3 ? this.func_147801_a((BlockFire)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 8 ? this.func_147794_i(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 7 ? this.func_147760_u(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 10 ? this.func_147722_a((BlockStairs)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 27 ? this.func_147802_a((BlockDragonEgg)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 32 ? this.func_147807_a((BlockWall)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 12 ? this.func_147790_e(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 29 ? this.func_147723_f(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 30 ? this.func_147756_g(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 14 ? this.func_147773_v(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 15 ? this.func_147759_a((BlockRedstoneRepeater)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 36 ? this.func_147748_a((BlockRedstoneDiode)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 37 ? this.func_147781_a((BlockRedstoneComparator)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 16 ? this.func_147731_b(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_, false) : (l == 17 ? this.func_147809_c(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_, true) : (l == 18 ? this.func_147767_a((BlockPane)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 41 ? this.func_147733_k(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 21 ? this.func_147776_a((BlockFenceGate)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 24 ? this.func_147785_a((BlockCauldron)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 33 ? this.func_147752_a((BlockFlowerPot)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 35 ? this.func_147725_a((BlockAnvil)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 25 ? this.func_147741_a((BlockBrewingStand)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 26 ? this.func_147743_a((BlockEndPortalFrame)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 28 ? this.func_147772_a((BlockCocoa)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 34 ? this.func_147797_a((BlockBeacon)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : (l == 38 ? this.func_147803_a((BlockHopper)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) : false))))))))))))))))))))))))))))))))))))))));
+
+ switch (l)
+ {
+ //regex: ' : \(l == ([\d]+) \?' replace: ';\ncase \1: return' ::: IMPORTANT: REMEMBER THIS ON FIRST line!
+ case 0 : return this.func_147784_q(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 4: return this.func_147721_p(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 31: return this.func_147742_r(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 1: return this.func_147746_l(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 40: return this.func_147774_a((BlockDoublePlant)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 2: return this.func_147791_c(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 20: return this.func_147726_j(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 11: return this.func_147735_a((BlockFence)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 39: return this.func_147779_s(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 5: return this.func_147788_h(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 13: return this.func_147755_t(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 9: return this.func_147766_a((BlockRailBase)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 19: return this.func_147724_m(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 23: return this.func_147783_o(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 6: return this.func_147796_n(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 3: return this.func_147801_a((BlockFire)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 8: return this.func_147794_i(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 7: return this.func_147760_u(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 10: return this.func_147722_a((BlockStairs)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 27: return this.func_147802_a((BlockDragonEgg)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 32: return this.func_147807_a((BlockWall)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 12: return this.func_147790_e(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 29: return this.func_147723_f(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 30: return this.func_147756_g(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 14: return this.func_147773_v(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 15: return this.func_147759_a((BlockRedstoneRepeater)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 36: return this.func_147748_a((BlockRedstoneDiode)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 37: return this.func_147781_a((BlockRedstoneComparator)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 16: return this.func_147731_b(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_, false) ;
+ case 17: return this.func_147809_c(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_, true) ;
+ case 18: return this.func_147767_a((BlockPane)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 41: return this.func_147733_k(p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 21: return this.func_147776_a((BlockFenceGate)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 24: return this.func_147785_a((BlockCauldron)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 33: return this.func_147752_a((BlockFlowerPot)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 35: return this.func_147725_a((BlockAnvil)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 25: return this.func_147741_a((BlockBrewingStand)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 26: return this.func_147743_a((BlockEndPortalFrame)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 28: return this.func_147772_a((BlockCocoa)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 34: return this.func_147797_a((BlockBeacon)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_) ;
+ case 38: return this.func_147803_a((BlockHopper)p_147805_1_, p_147805_2_, p_147805_3_, p_147805_4_);
+ default: return FMLRenderAccessLibrary.renderWorldBlock(this, field_147845_a, p_147805_2_, p_147805_3_, p_147805_4_, p_147805_1_, l);
+ }
}
}
@@ -8089,6 +8136,10 @@
this.func_147799_a((BlockHopper)p_147800_1_, 0, 0, 0, 0, true);
GL11.glTranslatef(0.5F, 0.5F, 0.5F);
}
+ else
+ {
+ FMLRenderAccessLibrary.renderInventoryBlock(this, p_147800_1_, p_147800_2_, j);
+ }
}
else
{
@@ -8147,7 +8198,24 @@
public static boolean func_147739_a(int p_147739_0_)
{
- return p_147739_0_ == 0 ? true : (p_147739_0_ == 31 ? true : (p_147739_0_ == 39 ? true : (p_147739_0_ == 13 ? true : (p_147739_0_ == 10 ? true : (p_147739_0_ == 11 ? true : (p_147739_0_ == 27 ? true : (p_147739_0_ == 22 ? true : (p_147739_0_ == 21 ? true : (p_147739_0_ == 16 ? true : (p_147739_0_ == 26 ? true : (p_147739_0_ == 32 ? true : (p_147739_0_ == 34 ? true : (p_147739_0_ == 35 ? true : (p_147739_0_ == -1 ? false : false))))))))))))));
+ switch (p_147739_0_)
+ {
+ case 0 : return true ;
+ case 31: return true ;
+ case 39: return true ;
+ case 13: return true ;
+ case 10: return true ;
+ case 11: return true ;
+ case 27: return true ;
+ case 22: return true ;
+ case 21: return true ;
+ case 16: return true ;
+ case 26: return true ;
+ case 32: return true ;
+ case 34: return true ;
+ case 35: return true ;
+ default: return FMLRenderAccessLibrary.renderItemAsFull3DBlock(p_147739_0_);
+ }
}
public IIcon func_147793_a(Block p_147793_1_, IBlockAccess p_147793_2_, int p_147793_3_, int p_147793_4_, int p_147793_5_, int p_147793_6_)
@@ -1,11 +1,18 @@
--- ../src-base/minecraft/net/minecraft/client/renderer/entity/RenderVillager.java
+++ ../src-work/minecraft/net/minecraft/client/renderer/entity/RenderVillager.java
@@ -48,7 +48,7 @@
@@ -1,5 +1,6 @@
package net.minecraft.client.renderer.entity;
+import cpw.mods.fml.common.registry.VillagerRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.client.model.ModelVillager;
@@ -53,7 +54,7 @@
case 4:
return field_110906_m;
default:
- return field_110903_f;
+ return net.minecraftforge.fml.common.registry.VillagerRegistry.getVillagerSkin(p_110775_1_.func_70946_n(), field_110903_f);
+ return VillagerRegistry.getVillagerSkin(p_110775_1_.func_70946_n(), field_110903_f);
}
}
@@ -1,51 +1,51 @@
--- ../src-base/minecraft/net/minecraft/client/renderer/texture/TextureMap.java
+++ ../src-work/minecraft/net/minecraft/client/renderer/texture/TextureMap.java
@@ -91,6 +91,7 @@
@@ -96,6 +96,7 @@
this.field_94252_e.clear();
this.field_94258_i.clear();
int j = Integer.MAX_VALUE;
int k = 1 << this.field_147636_j;
+ net.minecraftforge.fml.common.ProgressManager.ProgressBar bar = net.minecraftforge.fml.common.ProgressManager.push("Texture stitching", this.field_110574_e.size());
+ cpw.mods.fml.common.ProgressManager.ProgressBar bar = cpw.mods.fml.common.ProgressManager.push("Texture stitching", this.field_110574_e.size());
Iterator iterator = this.field_110574_e.entrySet().iterator();
TextureAtlasSprite textureatlassprite;
while (iterator.hasNext())
@@ -99,6 +100,7 @@
TextureAtlasSprite textureatlassprite = (TextureAtlasSprite)entry.getValue();
ResourceLocation resourcelocation = new ResourceLocation(textureatlassprite.func_94215_i());
@@ -105,6 +106,7 @@
ResourceLocation resourcelocation = new ResourceLocation((String)entry.getKey());
textureatlassprite = (TextureAtlasSprite)entry.getValue();
ResourceLocation resourcelocation1 = this.func_147634_a(resourcelocation, 0);
+ bar.step(resourcelocation1.func_110623_a());
try
{
@@ -150,12 +152,14 @@
@@ -156,12 +158,14 @@
}
catch (RuntimeException runtimeexception)
{
- field_147635_d.error("Unable to parse metadata from " + resourcelocation1, runtimeexception);
+ //logger.error("Unable to parse metadata from " + resourcelocation1, runtimeexception);
+ net.minecraftforge.fml.client.FMLClientHandler.instance().trackBrokenTexture(resourcelocation1, runtimeexception.getMessage());
+ cpw.mods.fml.client.FMLClientHandler.instance().trackBrokenTexture(resourcelocation1, runtimeexception.getMessage());
continue;
}
catch (IOException ioexception1)
{
- field_147635_d.error("Using missing texture, unable to load " + resourcelocation1, ioexception1);
+ //logger.error("Using missing texture, unable to load " + resourcelocation1, ioexception1);
+ net.minecraftforge.fml.client.FMLClientHandler.instance().trackMissingTexture(resourcelocation1);
+ cpw.mods.fml.client.FMLClientHandler.instance().trackMissingTexture(resourcelocation1);
continue;
}
@@ -171,6 +175,7 @@
@@ -169,6 +173,7 @@
stitcher.func_110934_a(textureatlassprite);
}
+ net.minecraftforge.fml.common.ProgressManager.pop(bar);
int j1 = Math.min(j, k);
int k1 = MathHelper.func_151239_c(j1);
+ cpw.mods.fml.common.ProgressManager.pop(bar);
int i1 = MathHelper.func_151239_c(j);
@@ -181,10 +186,12 @@
if (i1 < this.field_147636_j)
@@ -178,10 +183,12 @@
}
Iterator iterator1 = this.field_110574_e.values().iterator();
+ bar = net.minecraftforge.fml.common.ProgressManager.push("Mipmap generation", this.field_110574_e.size());
+ bar = cpw.mods.fml.common.ProgressManager.push("Mipmap generation", this.field_110574_e.size());
while (iterator1.hasNext())
{
@@ -54,12 +54,12 @@
try
{
@@ -225,9 +232,12 @@
@@ -222,9 +229,12 @@
this.field_94249_f.func_147963_d(this.field_147636_j);
stitcher.func_110934_a(this.field_94249_f);
+ net.minecraftforge.fml.common.ProgressManager.pop(bar);
+ bar = net.minecraftforge.fml.common.ProgressManager.push("Texture creation", 3);
+ cpw.mods.fml.common.ProgressManager.pop(bar);
+ bar = cpw.mods.fml.common.ProgressManager.push("Texture creation", 3);
try
{
@@ -67,25 +67,24 @@
stitcher.func_94305_f();
}
catch (StitcherException stitcherexception)
@@ -236,11 +246,13 @@
@@ -233,10 +243,12 @@
}
field_147635_d.info("Created: {}x{} {}-atlas", new Object[] {Integer.valueOf(stitcher.func_110935_a()), Integer.valueOf(stitcher.func_110936_b()), this.field_94254_c});
+ bar.step("Allocating GL texture");
TextureUtil.func_180600_a(this.func_110552_b(), this.field_147636_j, stitcher.func_110935_a(), stitcher.func_110936_b());
TextureUtil.func_147946_a(this.func_110552_b(), this.field_147636_j, stitcher.func_110935_a(), stitcher.func_110936_b(), (float)this.field_147637_k);
HashMap hashmap = Maps.newHashMap(this.field_110574_e);
Iterator iterator2 = stitcher.func_94309_g().iterator();
TextureAtlasSprite textureatlassprite2;
+ bar.step("Uploading GL texture");
while (iterator2.hasNext())
{
textureatlassprite2 = (TextureAtlasSprite)iterator2.next();
@@ -276,6 +288,7 @@
textureatlassprite = (TextureAtlasSprite)iterator2.next();
@@ -274,6 +286,7 @@
textureatlassprite = (TextureAtlasSprite)iterator2.next();
textureatlassprite.func_94217_a(this.field_94249_f);
}
TextureUtil.func_177055_a(this.field_94254_c.replaceAll("/", "_"), this.func_110552_b(), this.field_147636_j, stitcher.func_110935_a(), stitcher.func_110936_b());
+ net.minecraftforge.fml.common.ProgressManager.pop(bar);
+ cpw.mods.fml.common.ProgressManager.pop(bar);
}
private ResourceLocation func_147634_a(ResourceLocation p_147634_1_, int p_147634_2_)
@@ -1,15 +1,14 @@
--- ../src-base/minecraft/net/minecraft/client/renderer/texture/TextureUtil.java
+++ ../src-work/minecraft/net/minecraft/client/renderer/texture/TextureUtil.java
@@ -202,9 +202,11 @@
@@ -201,8 +201,11 @@
public static void func_180600_a(int p_180600_0_, int p_180600_1_, int p_180600_2_, int p_180600_3_)
public static void func_147946_a(int p_147946_0_, int p_147946_1_, int p_147946_2_, int p_147946_3_, float p_147946_4_)
{
+ synchronized (net.minecraftforge.fml.client.SplashProgress.class)
+ synchronized(cpw.mods.fml.client.SplashProgress.class)
+ {
func_147942_a(p_180600_0_);
func_94277_a(p_180600_0_);
-
func_147942_a(p_147946_0_);
func_94277_a(p_147946_0_);
+ }
if (p_180600_1_ >= 0)
if (OpenGlHelper.field_148825_d)
{
GL11.glTexParameteri(GL11.GL_TEXTURE_2D, GL12.GL_TEXTURE_MAX_LEVEL, p_180600_1_);
@@ -1,10 +0,0 @@
--- ../src-base/minecraft/net/minecraft/client/resources/FallbackResourceManager.java
+++ ../src-work/minecraft/net/minecraft/client/resources/FallbackResourceManager.java
@@ -70,6 +70,7 @@
throw new FileNotFoundException(p_110536_1_.toString());
}
+ @SuppressWarnings("resource")
protected InputStream func_177245_a(ResourceLocation p_177245_1_, IResourcePack p_177245_2_) throws IOException
{
InputStream inputstream = p_177245_2_.func_110590_a(p_177245_1_);
@@ -1,10 +1,19 @@
--- ../src-base/minecraft/net/minecraft/client/resources/LanguageManager.java
+++ ../src-work/minecraft/net/minecraft/client/resources/LanguageManager.java
@@ -83,6 +83,7 @@
@@ -3,6 +3,8 @@
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.google.common.collect.Sets;
+
+import cpw.mods.fml.common.registry.LanguageRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import java.io.IOException;
@@ -83,6 +85,7 @@
}
field_135049_a.func_135022_a(p_110549_1_, arraylist);
+ net.minecraftforge.fml.common.registry.LanguageRegistry.instance().mergeLanguageTable(field_135049_a.field_135032_a, this.field_135048_c);
+ LanguageRegistry.instance().mergeLanguageTable(field_135049_a.field_135032_a, this.field_135048_c);
StringTranslate.func_135063_a(field_135049_a.field_135032_a);
}
@@ -1,11 +0,0 @@
--- ../src-base/minecraft/net/minecraft/client/resources/Locale.java
+++ ../src-work/minecraft/net/minecraft/client/resources/Locale.java
@@ -107,6 +107,8 @@
private void func_135021_a(InputStream p_135021_1_) throws IOException
{
+ p_135021_1_ = net.minecraftforge.fml.common.FMLCommonHandler.instance().loadLanguage(field_135032_a, p_135021_1_);
+ if (p_135021_1_ == null) return;
Iterator iterator = IOUtils.readLines(p_135021_1_, Charsets.UTF_8).iterator();
while (iterator.hasNext())
@@ -4,7 +4,7 @@
public void func_110541_a(List p_110541_1_)
{
this.func_110543_a();
+ net.minecraftforge.fml.common.ProgressManager.ProgressBar resReload = net.minecraftforge.fml.common.ProgressManager.push("Loading Resources", p_110541_1_.size()+1);
+ cpw.mods.fml.common.ProgressManager.ProgressBar resReload = cpw.mods.fml.common.ProgressManager.push("Loading Resources", p_110541_1_.size()+1);
field_147967_a.info("Reloading ResourceManager: " + field_130074_a.join(Iterables.transform(p_110541_1_, new Function()
{
private static final String __OBFID = "CL_00001092";
@@ -18,29 +18,29 @@
+ resReload.step("Reloading listeners");
this.func_110544_b();
+ net.minecraftforge.fml.common.ProgressManager.pop(resReload);
+ cpw.mods.fml.common.ProgressManager.pop(resReload);
}
public void func_110542_a(IResourceManagerReloadListener p_110542_1_)
{
this.field_110546_b.add(p_110542_1_);
+ net.minecraftforge.fml.common.ProgressManager.ProgressBar resReload = net.minecraftforge.fml.common.ProgressManager.push("Loading Resource", 1);
+ cpw.mods.fml.common.ProgressManager.ProgressBar resReload = cpw.mods.fml.common.ProgressManager.push("Loading Resource", 1);
+ resReload.step(p_110542_1_.getClass());
p_110542_1_.func_110549_a(this);
+ net.minecraftforge.fml.common.ProgressManager.pop(resReload);
+ cpw.mods.fml.common.ProgressManager.pop(resReload);
}
private void func_110544_b()
{
Iterator iterator = this.field_110546_b.iterator();
+ net.minecraftforge.fml.common.ProgressManager.ProgressBar resReload = net.minecraftforge.fml.common.ProgressManager.push("Reloading", this.field_110546_b.size());
+ cpw.mods.fml.common.ProgressManager.ProgressBar resReload = cpw.mods.fml.common.ProgressManager.push("Reloading", this.field_110546_b.size());
while (iterator.hasNext())
{
IResourceManagerReloadListener iresourcemanagerreloadlistener = (IResourceManagerReloadListener)iterator.next();
+ resReload.step(iresourcemanagerreloadlistener.getClass());
iresourcemanagerreloadlistener.func_110549_a(this);
}
+ net.minecraftforge.fml.common.ProgressManager.pop(resReload);
+ cpw.mods.fml.common.ProgressManager.pop(resReload);
}
}
@@ -1,41 +0,0 @@
--- ../src-base/minecraft/net/minecraft/client/resources/model/ModelBakery.java
+++ ../src-work/minecraft/net/minecraft/client/resources/model/ModelBakery.java
@@ -318,6 +318,7 @@
private void func_177592_e()
{
+ this.field_177613_u.clear(); //FML clear this to prevent double ups.
this.field_177613_u.put(Item.func_150898_a(Blocks.field_150348_b), Lists.newArrayList(new String[] {"stone", "granite", "granite_smooth", "diorite", "diorite_smooth", "andesite", "andesite_smooth"}));
this.field_177613_u.put(Item.func_150898_a(Blocks.field_150346_d), Lists.newArrayList(new String[] {"dirt", "coarse_dirt", "podzol"}));
this.field_177613_u.put(Item.func_150898_a(Blocks.field_150344_f), Lists.newArrayList(new String[] {"oak_planks", "spruce_planks", "birch_planks", "jungle_planks", "acacia_planks", "dark_oak_planks"}));
@@ -360,6 +361,10 @@
this.field_177613_u.put(Item.func_150898_a(Blocks.field_180390_bo), Lists.newArrayList(new String[] {"oak_fence_gate"}));
this.field_177613_u.put(Item.func_150898_a(Blocks.field_180407_aO), Lists.newArrayList(new String[] {"oak_fence"}));
this.field_177613_u.put(Items.field_179570_aq, Lists.newArrayList(new String[] {"oak_door"}));
+ for (Entry<net.minecraftforge.fml.common.registry.RegistryDelegate<Item>, Set<String>> e : customVariantNames.entrySet())
+ {
+ this.field_177613_u.put(e.getKey().get(), Lists.newArrayList(e.getValue().iterator()));
+ }
}
private List func_177596_a(Item p_177596_1_)
@@ -809,4 +814,19 @@
field_177617_q.field_178317_b = "class generation marker";
field_177616_r.field_178317_b = "block entity marker";
}
+
+ /***********************************************************
+ * FML Start
+ ***********************************************************/
+ private static Map<net.minecraftforge.fml.common.registry.RegistryDelegate<Item>, Set<String>> customVariantNames = Maps.newHashMap();
+ public static void addVariantName(Item item, String... names)
+ {
+ if (customVariantNames.containsKey(item.delegate))
+ customVariantNames.get(item.delegate).addAll(Lists.newArrayList(names));
+ else
+ customVariantNames.put(item.delegate, Sets.newHashSet(names));
+ }
+ /***********************************************************
+ * FML End
+ ***********************************************************/
}
@@ -1,10 +1,19 @@
--- ../src-base/minecraft/net/minecraft/client/settings/GameSettings.java
+++ ../src-work/minecraft/net/minecraft/client/settings/GameSettings.java
@@ -1067,6 +1067,7 @@
@@ -2,6 +2,8 @@
import com.google.common.collect.Maps;
import com.google.gson.Gson;
+
+import cpw.mods.fml.client.FMLClientHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import java.io.BufferedReader;
@@ -1049,6 +1051,7 @@
public void func_74303_b()
{
+ if (net.minecraftforge.fml.client.FMLClientHandler.instance().isLoading()) return;
+ if (FMLClientHandler.instance().isLoading()) return;
try
{
PrintWriter printwriter = new PrintWriter(new FileWriter(this.field_74354_ai));
@@ -1,19 +1,17 @@
--- ../src-base/minecraft/net/minecraft/crash/CrashReport.java
+++ ../src-work/minecraft/net/minecraft/crash/CrashReport.java
@@ -126,6 +126,7 @@
@@ -1,5 +1,6 @@
package net.minecraft.crash;
+import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import java.io.File;
@@ -140,6 +141,7 @@
return IntCache.func_85144_b();
}
});
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().enhanceCrashReport(this, this.field_85061_c);
+ FMLCommonHandler.instance().enhanceCrashReport(this, this.field_85061_c);
}
public String func_71501_a()
@@ -220,6 +221,8 @@
{
StringBuilder stringbuilder = new StringBuilder();
stringbuilder.append("---- Minecraft Crash Report ----\n");
+ net.minecraftforge.fml.common.asm.transformers.BlamingTransformer.onCrash(stringbuilder);
+ net.minecraftforge.fml.relauncher.CoreModManager.onCrash(stringbuilder);
stringbuilder.append("// ");
stringbuilder.append(func_71503_h());
stringbuilder.append("\n\n");
@@ -1,6 +1,28 @@
--- ../src-base/minecraft/net/minecraft/entity/EntityList.java
+++ ../src-work/minecraft/net/minecraft/entity/EntityList.java
@@ -153,9 +153,10 @@
@@ -5,6 +5,7 @@
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Set;
+
import net.minecraft.entity.ai.EntityMinecartMobSpawner;
import net.minecraft.entity.boss.EntityDragon;
import net.minecraft.entity.boss.EntityWither;
@@ -63,9 +64,13 @@
import net.minecraft.stats.StatBase;
import net.minecraft.stats.StatList;
import net.minecraft.world.World;
+
+import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
+import cpw.mods.fml.common.FMLLog;
+
public class EntityList
{
private static final Logger field_151516_b = LogManager.getLogger();
@@ -145,9 +150,10 @@
p_75615_0_.func_82580_o("Type");
}
@@ -12,17 +34,18 @@
if (oclass != null)
{
@@ -169,7 +170,17 @@
@@ -161,7 +167,17 @@
if (entity != null)
{
- entity.func_70020_e(p_75615_0_);
+ try
+ {
entity.func_70020_e(p_75615_0_);
+ entity.func_70020_e(p_75615_0_);
+ }
+ catch (Exception e)
+ {
+ net.minecraftforge.fml.common.FMLLog.log(org.apache.logging.log4j.Level.ERROR, e,
+ FMLLog.log(Level.ERROR, e,
+ "An Entity %s(%s) has thrown an exception during loading, its state cannot be restored. Report this to the mod author",
+ p_75615_0_.func_74779_i("id"), oclass.getName());
+ entity = null;
@@ -1,10 +1,22 @@
--- ../src-base/minecraft/net/minecraft/entity/EntityTracker.java
+++ ../src-work/minecraft/net/minecraft/entity/EntityTracker.java
@@ -58,6 +58,8 @@
@@ -39,6 +39,8 @@
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
+import cpw.mods.fml.common.registry.EntityRegistry;
+
public class EntityTracker
{
private static final Logger field_151249_a = LogManager.getLogger();
@@ -56,6 +58,11 @@
public void func_72786_a(Entity p_72786_1_)
{
+ if (net.minecraftforge.fml.common.registry.EntityRegistry.instance().tryTrackingEntity(this, p_72786_1_)) return;
+ if (EntityRegistry.instance().tryTrackingEntity(this, p_72786_1_))
+ {
+ return;
+ }
+
if (p_72786_1_ instanceof EntityPlayerMP)
{
@@ -1,6 +1,15 @@
--- ../src-base/minecraft/net/minecraft/entity/EntityTrackerEntry.java
+++ ../src-work/minecraft/net/minecraft/entity/EntityTrackerEntry.java
@@ -388,6 +388,14 @@
@@ -57,6 +57,8 @@
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
+import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
+
public class EntityTrackerEntry
{
private static final Logger field_151262_p = LogManager.getLogger();
@@ -377,6 +379,14 @@
this.field_73138_k = this.field_73132_a.field_70181_x;
this.field_73135_l = this.field_73132_a.field_70179_y;
@@ -9,19 +18,22 @@
+ int posZ = MathHelper.func_76128_c(this.field_73132_a.field_70161_v * 32.0D);
+ if (posX != this.field_73128_d || posY != this.field_73129_e || posZ != this.field_73126_f)
+ {
+ net.minecraftforge.fml.common.network.internal.FMLNetworkHandler.makeEntitySpawnAdjustment(this.field_73132_a, p_73117_1_, this.field_73128_d, this.field_73129_e, this.field_73126_f);
+ FMLNetworkHandler.makeEntitySpawnAdjustment(this.field_73132_a, p_73117_1_, this.field_73128_d, this.field_73129_e, this.field_73126_f);
+ }
+
if (this.field_73143_t && !(packet instanceof S0FPacketSpawnMob))
{
p_73117_1_.field_71135_a.func_147359_a(new S12PacketEntityVelocity(this.field_73132_a.func_145782_y(), this.field_73132_a.field_70159_w, this.field_73132_a.field_70181_x, this.field_73132_a.field_70179_y));
@@ -474,6 +482,9 @@
@@ -456,6 +466,12 @@
field_151262_p.warn("Fetching addPacket for removed entity");
}
+ Packet pkt = net.minecraftforge.fml.common.network.internal.FMLNetworkHandler.getEntitySpawningPacket(this.field_73132_a);
+ if (pkt != null) return pkt;
+ Packet pkt = FMLNetworkHandler.getEntitySpawningPacket(this.field_73132_a);
+
+ if (pkt != null)
+ {
+ return pkt;
+ }
if (this.field_73132_a instanceof EntityItem)
{
return new S0EPacketSpawnObject(this.field_73132_a, 2, 1);
@@ -1,8 +1,8 @@
--- ../src-base/minecraft/net/minecraft/entity/boss/IBossDisplayData.java
+++ ../src-work/minecraft/net/minecraft/entity/boss/IBossDisplayData.java
@@ -4,7 +4,6 @@
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.util.IChatComponent;
-@SideOnly(Side.CLIENT)
public interface IBossDisplayData
@@ -1,10 +1,20 @@
--- ../src-base/minecraft/net/minecraft/entity/item/EntityItem.java
+++ ../src-work/minecraft/net/minecraft/entity/item/EntityItem.java
@@ -366,6 +366,7 @@
@@ -17,6 +17,8 @@
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
+import cpw.mods.fml.common.FMLCommonHandler;
+
public class EntityItem extends Entity
{
private static final Logger field_145803_d = LogManager.getLogger();
@@ -325,6 +327,8 @@
}
}
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().firePlayerItemPickupEvent(p_70100_1_, this);
if (!this.func_174814_R())
{
this.field_70170_p.func_72956_a(p_70100_1_, "random.pop", 0.2F, ((this.field_70146_Z.nextFloat() - this.field_70146_Z.nextFloat()) * 0.7F + 1.0F) * 2.0F);
+ FMLCommonHandler.instance().firePlayerItemPickupEvent(p_70100_1_, this);
+
this.field_70170_p.func_72956_a(p_70100_1_, "random.pop", 0.2F, ((this.field_70146_Z.nextFloat() - this.field_70146_Z.nextFloat()) * 0.7F + 1.0F) * 2.0F);
p_70100_1_.func_71001_a(this, i);
@@ -1,8 +1,8 @@
--- ../src-base/minecraft/net/minecraft/entity/monster/EntitySlime.java
+++ ../src-work/minecraft/net/minecraft/entity/monster/EntitySlime.java
@@ -271,7 +271,7 @@
@@ -247,7 +247,7 @@
{
Chunk chunk = this.field_70170_p.func_175726_f(new BlockPos(MathHelper.func_76128_c(this.field_70165_t), 0, MathHelper.func_76128_c(this.field_70161_v)));
Chunk chunk = this.field_70170_p.func_72938_d(MathHelper.func_76128_c(this.field_70165_t), MathHelper.func_76128_c(this.field_70161_v));
- if (this.field_70170_p.func_72912_H().func_76067_t() == WorldType.field_77138_c && this.field_70146_Z.nextInt(4) != 1)
+ if (this.field_70170_p.func_72912_H().func_76067_t().handleSlimeSpawnReduction(field_70146_Z, field_70170_p))
@@ -1,35 +1,26 @@
--- ../src-base/minecraft/net/minecraft/entity/passive/EntityVillager.java
+++ ../src-work/minecraft/net/minecraft/entity/passive/EntityVillager.java
@@ -83,6 +83,7 @@
private boolean field_82190_bM;
private boolean field_175564_by;
private InventoryBasic field_175560_bz;
+ @Deprecated //Use VillagerRegistry
private static final EntityVillager.ITradeList[][][][] field_175561_bA = new EntityVillager.ITradeList[][][][] {{{{new EntityVillager.EmeraldForItems(Items.field_151015_O, new EntityVillager.PriceInfo(18, 22)), new EntityVillager.EmeraldForItems(Items.field_151174_bG, new EntityVillager.PriceInfo(15, 19)), new EntityVillager.EmeraldForItems(Items.field_151172_bF, new EntityVillager.PriceInfo(15, 19)), new EntityVillager.ListItemForEmeralds(Items.field_151025_P, new EntityVillager.PriceInfo(-4, -2))}, {new EntityVillager.EmeraldForItems(Item.func_150898_a(Blocks.field_150423_aK), new EntityVillager.PriceInfo(8, 13)), new EntityVillager.ListItemForEmeralds(Items.field_151158_bO, new EntityVillager.PriceInfo(-3, -2))}, {new EntityVillager.EmeraldForItems(Item.func_150898_a(Blocks.field_150440_ba), new EntityVillager.PriceInfo(7, 12)), new EntityVillager.ListItemForEmeralds(Items.field_151034_e, new EntityVillager.PriceInfo(-5, -7))}, {new EntityVillager.ListItemForEmeralds(Items.field_151106_aX, new EntityVillager.PriceInfo(-6, -10)), new EntityVillager.ListItemForEmeralds(Items.field_151105_aU, new EntityVillager.PriceInfo(1, 1))}}, {{new EntityVillager.EmeraldForItems(Items.field_151007_F, new EntityVillager.PriceInfo(15, 20)), new EntityVillager.EmeraldForItems(Items.field_151044_h, new EntityVillager.PriceInfo(16, 24)), new EntityVillager.ItemAndEmeraldToItem(Items.field_151115_aP, new EntityVillager.PriceInfo(6, 6), Items.field_179566_aV, new EntityVillager.PriceInfo(6, 6))}, {new EntityVillager.ListEnchantedItemForEmeralds(Items.field_151112_aM, new EntityVillager.PriceInfo(7, 8))}}, {{new EntityVillager.EmeraldForItems(Item.func_150898_a(Blocks.field_150325_L), new EntityVillager.PriceInfo(16, 22)), new EntityVillager.ListItemForEmeralds(Items.field_151097_aZ, new EntityVillager.PriceInfo(3, 4))}, {new EntityVillager.ListItemForEmeralds(new ItemStack(Item.func_150898_a(Blocks.field_150325_L), 1, 0), new EntityVillager.PriceInfo(1, 2)), new EntityVillager.ListItemForEmeralds(new ItemStack(Item.func_150898_a(Blocks.field_150325_L), 1, 1), new EntityVillager.PriceInfo(1, 2)), new EntityVillager.ListItemForEmeralds(new ItemStack(Item.func_150898_a(Blocks.field_150325_L), 1, 2), new EntityVillager.PriceInfo(1, 2)), new EntityVillager.ListItemForEmeralds(new ItemStack(Item.func_150898_a(Blocks.field_150325_L), 1, 3), new EntityVillager.PriceInfo(1, 2)), new EntityVillager.ListItemForEmeralds(new ItemStack(Item.func_150898_a(Blocks.field_150325_L), 1, 4), new EntityVillager.PriceInfo(1, 2)), new EntityVillager.ListItemForEmeralds(new ItemStack(Item.func_150898_a(Blocks.field_150325_L), 1, 5), new EntityVillager.PriceInfo(1, 2)), new EntityVillager.ListItemForEmeralds(new ItemStack(Item.func_150898_a(Blocks.field_150325_L), 1, 6), new EntityVillager.PriceInfo(1, 2)), new EntityVillager.ListItemForEmeralds(new ItemStack(Item.func_150898_a(Blocks.field_150325_L), 1, 7), new EntityVillager.PriceInfo(1, 2)), new EntityVillager.ListItemForEmeralds(new ItemStack(Item.func_150898_a(Blocks.field_150325_L), 1, 8), new EntityVillager.PriceInfo(1, 2)), new EntityVillager.ListItemForEmeralds(new ItemStack(Item.func_150898_a(Blocks.field_150325_L), 1, 9), new EntityVillager.PriceInfo(1, 2)), new EntityVillager.ListItemForEmeralds(new ItemStack(Item.func_150898_a(Blocks.field_150325_L), 1, 10), new EntityVillager.PriceInfo(1, 2)), new EntityVillager.ListItemForEmeralds(new ItemStack(Item.func_150898_a(Blocks.field_150325_L), 1, 11), new EntityVillager.PriceInfo(1, 2)), new EntityVillager.ListItemForEmeralds(new ItemStack(Item.func_150898_a(Blocks.field_150325_L), 1, 12), new EntityVillager.PriceInfo(1, 2)), new EntityVillager.ListItemForEmeralds(new ItemStack(Item.func_150898_a(Blocks.field_150325_L), 1, 13), new EntityVillager.PriceInfo(1, 2)), new EntityVillager.ListItemForEmeralds(new ItemStack(Item.func_150898_a(Blocks.field_150325_L), 1, 14), new EntityVillager.PriceInfo(1, 2)), new EntityVillager.ListItemForEmeralds(new ItemStack(Item.func_150898_a(Blocks.field_150325_L), 1, 15), new EntityVillager.PriceInfo(1, 2))}}, {{new EntityVillager.EmeraldForItems(Items.field_151007_F, new EntityVillager.PriceInfo(15, 20)), new EntityVillager.ListItemForEmeralds(Items.field_151032_g, new EntityVillager.PriceInfo(-12, -8))}, {new EntityVillager.ListItemForEmeralds(Items.field_151031_f, new EntityVillager.PriceInfo(2, 3)), new EntityVillager.ItemAndEmeraldToItem(Item.func_150898_a(Blocks.field_150351_n), new EntityVillager.PriceInfo(10, 10), Items.field_151145_ak, new EntityVillager.PriceInfo(6, 10))}}}, {{{new EntityVillager.EmeraldForItems(Items.field_151121_aF, new EntityVillager.PriceInfo(24, 36)), new EntityVillager.ListEnchantedBookForEmeralds()}, {new EntityVillager.EmeraldForItems(Items.field_151122_aG, new EntityVillager.PriceInfo(8, 10)), new EntityVillager.ListItemForEmeralds(Items.field_151111_aL, new EntityVillager.PriceInfo(10, 12)), new EntityVillager.ListItemForEmeralds(Item.func_150898_a(Blocks.field_150342_ Line truncated
private static final String __OBFID = "CL_00001707";
@@ -1,5 +1,6 @@
package net.minecraft.entity.passive;
@@ -540,6 +541,7 @@
+import cpw.mods.fml.common.registry.VillagerRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import java.util.Collections;
@@ -422,6 +423,7 @@
private void func_175554_cu()
MerchantRecipeList merchantrecipelist;
merchantrecipelist = new MerchantRecipeList();
+ VillagerRegistry.manageVillagerTrades(merchantrecipelist, this, this.func_70946_n(), this.field_70146_Z);
int k;
label50:
@@ -626,7 +628,7 @@
public IEntityLivingData func_110161_a(IEntityLivingData p_110161_1_)
{
+ //TODO: Hook into VillagerRegistry
EntityVillager.ITradeList[][][] aitradelist = field_175561_bA[this.func_70946_n()];
if (this.field_175563_bv != 0 && this.field_175562_bw != 0)
@@ -648,6 +650,7 @@
}
}
+ //TODO: Hook into VillagerRegistry to get name
if (s1 != null)
{
ChatComponentTranslation chatcomponenttranslation = new ChatComponentTranslation("entity.Villager." + s1, new Object[0]);
@@ -710,7 +713,7 @@
public IEntityLivingData func_180482_a(DifficultyInstance p_180482_1_, IEntityLivingData p_180482_2_)
{
p_180482_2_ = super.func_180482_a(p_180482_1_, p_180482_2_);
p_110161_1_ = super.func_110161_a(p_110161_1_);
- this.func_70938_b(this.field_70170_p.field_73012_v.nextInt(5));
+ net.minecraftforge.fml.common.registry.VillagerRegistry.setRandomProfession(this, this.field_70170_p.field_73012_v);
this.func_175552_ct();
return p_180482_2_;
+ VillagerRegistry.applyRandomTrade(this, field_70170_p.field_73012_v);
return p_110161_1_;
}
@@ -1,41 +1,40 @@
--- ../src-base/minecraft/net/minecraft/entity/player/EntityPlayer.java
+++ ../src-work/minecraft/net/minecraft/entity/player/EntityPlayer.java
@@ -200,6 +200,7 @@
@@ -2,6 +2,9 @@
import com.google.common.base.Charsets;
import com.mojang.authlib.GameProfile;
+
+import cpw.mods.fml.common.FMLCommonHandler;
+import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import java.util.Collection;
@@ -193,6 +196,7 @@
public void func_70071_h_()
{
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().onPlayerPreTick(this);
this.field_70145_X = this.func_175149_v();
if (this.func_175149_v())
@@ -344,6 +345,7 @@
+ FMLCommonHandler.instance().onPlayerPreTick(this);
if (this.field_71074_e != null)
{
this.func_70107_b(d3, this.field_70163_u, d4);
ItemStack itemstack = this.field_71071_by.func_70448_g();
@@ -316,6 +320,7 @@
this.field_71100_bB.func_75118_a(this);
this.func_71064_a(StatList.field_75948_k, 1);
}
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().onPlayerPostTick(this);
+ FMLCommonHandler.instance().onPlayerPostTick(this);
}
public int func_82145_z()
@@ -2139,6 +2141,22 @@
this.field_175153_bG = p_175150_1_;
@@ -2031,6 +2036,11 @@
}
}
+ /**
+ * Opens a GUI with this player, uses FML's IGuiHandler system.
+ * Allows for extension by modders.
+ *
+ * @param mod The mod trying to open a GUI
+ * @param modGuiId GUI ID
+ * @param world Current World
+ * @param x Passed directly to IGuiHandler, data meaningless Typically world X position
+ * @param y Passed directly to IGuiHandler, data meaningless Typically world Y position
+ * @param z Passed directly to IGuiHandler, data meaningless Typically world Z position
+ */
+ public void openGui(Object mod, int modGuiId, World world, int x, int y, int z)
+ {
+ net.minecraftforge.fml.common.network.internal.FMLNetworkHandler.openGui(this, mod, modGuiId, world, x, y, z);
+ FMLNetworkHandler.openGui(this, mod, modGuiId, world, x, y, z);
+ }
+
public static enum EnumChatVisibility
public static enum EnumStatus
{
FULL(0, "options.chat.visibility.full"),
OK,
@@ -1,10 +1,17 @@
--- ../src-base/minecraft/net/minecraft/inventory/SlotCrafting.java
+++ ../src-work/minecraft/net/minecraft/inventory/SlotCrafting.java
@@ -113,6 +113,7 @@
@@ -1,5 +1,6 @@
package net.minecraft.inventory;
+import cpw.mods.fml.common.FMLCommonHandler;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
@@ -103,6 +104,7 @@
public void func_82870_a(EntityPlayer p_82870_1_, ItemStack p_82870_2_)
{
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().firePlayerCraftingEvent(p_82870_1_, p_82870_2_, field_75239_a);
+ FMLCommonHandler.instance().firePlayerCraftingEvent(p_82870_1_, p_82870_2_, field_75239_a);
this.func_75208_c(p_82870_2_);
ItemStack[] aitemstack = CraftingManager.func_77594_a().func_180303_b(this.field_75239_a, p_82870_1_.field_70170_p);
for (int i = 0; i < this.field_75239_a.func_70302_i_(); ++i)
@@ -0,0 +1,18 @@
--- ../src-base/minecraft/net/minecraft/inventory/SlotFurnace.java
+++ ../src-work/minecraft/net/minecraft/inventory/SlotFurnace.java
@@ -1,5 +1,6 @@
package net.minecraft.inventory;
+import cpw.mods.fml.common.FMLCommonHandler;
import net.minecraft.entity.item.EntityXPOrb;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Items;
@@ -83,6 +84,8 @@
this.field_75228_b = 0;
+ FMLCommonHandler.instance().firePlayerSmeltedEvent(field_75229_a, p_75208_1_);
+
if (p_75208_1_.func_77973_b() == Items.field_151042_j)
{
this.field_75229_a.func_71064_a(AchievementList.field_76016_k, 1);
@@ -1,11 +0,0 @@
--- ../src-base/minecraft/net/minecraft/inventory/SlotFurnaceOutput.java
+++ ../src-work/minecraft/net/minecraft/inventory/SlotFurnaceOutput.java
@@ -83,6 +83,8 @@
this.field_75228_b = 0;
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().firePlayerSmeltedEvent(field_75229_a, p_75208_1_);
+
if (p_75208_1_.func_77973_b() == Items.field_151042_j)
{
this.field_75229_a.func_71029_a(AchievementList.field_76016_k);
@@ -1,23 +1,29 @@
--- ../src-base/minecraft/net/minecraft/item/Item.java
+++ ../src-work/minecraft/net/minecraft/item/Item.java
@@ -47,8 +47,8 @@
@@ -3,6 +3,8 @@
import com.google.common.collect.HashMultimap;
import com.google.common.collect.Multimap;
import com.google.common.collect.Sets;
+
+import cpw.mods.fml.common.registry.GameData;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import java.util.HashSet;
@@ -46,7 +48,7 @@
public class Item
{
- public static final RegistryNamespaced field_150901_e = new RegistryNamespaced();
- private static final Map field_179220_a = Maps.newHashMap();
+ public static final RegistryNamespaced field_150901_e = net.minecraftforge.fml.common.registry.GameData.getItemRegistry();
+ private static final Map field_179220_a = net.minecraftforge.fml.common.registry.GameData.getBlockItemMap();
+ public static final RegistryNamespaced field_150901_e = GameData.getItemRegistry();
protected static final UUID field_111210_e = UUID.fromString("CB3F55D3-645C-4F38-A497-9C13A33DB5CF");
private CreativeTabs field_77701_a;
protected static Random field_77697_d = new Random();
@@ -61,6 +61,9 @@
private String field_77774_bZ;
@@ -62,6 +64,8 @@
protected String field_111218_cA;
private static final String __OBFID = "CL_00000041";
+ public final net.minecraftforge.fml.common.registry.RegistryDelegate<Item> delegate =
+ ((net.minecraftforge.fml.common.registry.FMLControlledNamespacedRegistry)field_150901_e).getDelegate(this, Item.class);
+
+ public final cpw.mods.fml.common.registry.RegistryDelegate<Item> delegate =
+ ((cpw.mods.fml.common.registry.FMLControlledNamespacedRegistry)field_150901_e).getDelegate(this, Item.class);
public static int func_150891_b(Item p_150891_0_)
{
return p_150891_0_ == null ? 0 : field_150901_e.func_148757_b(p_150891_0_);
@@ -1,11 +1,11 @@
--- ../src-base/minecraft/net/minecraft/item/ItemEmptyMap.java
+++ ../src-work/minecraft/net/minecraft/item/ItemEmptyMap.java
@@ -24,7 +24,7 @@
p_77659_2_.func_72823_a(s, mapdata);
mapdata.field_76197_d = 0;
mapdata.func_176054_a(p_77659_3_.field_70165_t, p_77659_3_.field_70161_v, mapdata.field_76197_d);
- mapdata.field_76200_c = (byte)p_77659_2_.field_73011_w.func_177502_q();
+ mapdata.field_76200_c = p_77659_2_.field_73011_w.func_177502_q();
@@ -25,7 +25,7 @@
int i = 128 * (1 << mapdata.field_76197_d);
mapdata.field_76201_a = (int)(Math.round(p_77659_3_.field_70165_t / (double)i) * (long)i);
mapdata.field_76199_b = (int)(Math.round(p_77659_3_.field_70161_v / (double)i) * (long)i);
- mapdata.field_76200_c = (byte)p_77659_2_.field_73011_w.field_76574_g;
+ mapdata.field_76200_c = p_77659_2_.field_73011_w.field_76574_g;
mapdata.func_76185_a();
--p_77659_1_.field_77994_a;
@@ -1,11 +1,11 @@
--- ../src-base/minecraft/net/minecraft/item/ItemMap.java
+++ ../src-work/minecraft/net/minecraft/item/ItemMap.java
@@ -58,7 +58,7 @@
mapdata = new MapData(s);
mapdata.field_76197_d = 3;
mapdata.func_176054_a((double)p_77873_2_.func_72912_H().func_76079_c(), (double)p_77873_2_.func_72912_H().func_76074_e(), mapdata.field_76197_d);
- mapdata.field_76200_c = (byte)p_77873_2_.field_73011_w.func_177502_q();
+ mapdata.field_76200_c = p_77873_2_.field_73011_w.func_177502_q();
@@ -57,7 +57,7 @@
int i = 128 * (1 << mapdata.field_76197_d);
mapdata.field_76201_a = Math.round((float)p_77873_2_.func_72912_H().func_76079_c() / (float)i) * i;
mapdata.field_76199_b = Math.round((float)(p_77873_2_.func_72912_H().func_76074_e() / i)) * i;
- mapdata.field_76200_c = (byte)p_77873_2_.field_73011_w.field_76574_g;
+ mapdata.field_76200_c = p_77873_2_.field_73011_w.field_76574_g;
mapdata.func_76185_a();
p_77873_2_.func_72823_a(s, mapdata);
}
@@ -1,23 +1,23 @@
--- ../src-base/minecraft/net/minecraft/item/ItemStack.java
+++ ../src-work/minecraft/net/minecraft/item/ItemStack.java
@@ -52,6 +52,7 @@
private boolean field_179551_k;
@@ -45,6 +45,7 @@
private EntityItemFrame field_82843_f;
private static final String __OBFID = "CL_00000043";
+ private net.minecraftforge.fml.common.registry.RegistryDelegate<Item> delegate;
+ private cpw.mods.fml.common.registry.RegistryDelegate<Item> delegate;
public ItemStack(Block p_i1876_1_)
{
this(p_i1876_1_, 1);
@@ -83,7 +84,7 @@
this.field_179553_i = false;
this.field_179550_j = null;
this.field_179551_k = false;
@@ -72,7 +73,7 @@
public ItemStack(Item p_i1881_1_, int p_i1881_2_, int p_i1881_3_)
{
- this.field_151002_e = p_i1881_1_;
+ this.func_150996_a(p_i1881_1_);
+ func_150996_a(p_i1881_1_);
this.field_77994_a = p_i1881_2_;
this.field_77991_e = p_i1881_3_;
@@ -123,7 +124,7 @@
@@ -106,7 +107,7 @@
public Item func_77973_b()
{
@@ -25,22 +25,17 @@
+ return this.delegate != null ? this.delegate.get() : null;
}
public boolean func_179546_a(EntityPlayer p_179546_1_, World p_179546_2_, BlockPos p_179546_3_, EnumFacing p_179546_4_, float p_179546_5_, float p_179546_6_, float p_179546_7_)
@@ -172,11 +173,11 @@
{
if (p_77963_1_.func_150297_b("id", 8))
{
- this.field_151002_e = Item.func_111206_d(p_77963_1_.func_74779_i("id"));
+ this.func_150996_a(Item.func_111206_d(p_77963_1_.func_74779_i("id")));
}
else
{
- this.field_151002_e = Item.func_150899_d(p_77963_1_.func_74765_d("id"));
+ this.func_150996_a(Item.func_150899_d(p_77963_1_.func_74765_d("id")));
}
@SideOnly(Side.CLIENT)
@@ -164,7 +165,7 @@
public void func_77963_c(NBTTagCompound p_77963_1_)
{
- this.field_151002_e = Item.func_150899_d(p_77963_1_.func_74765_d("id"));
+ func_150996_a(Item.func_150899_d(p_77963_1_.func_74765_d("id")));
this.field_77994_a = p_77963_1_.func_74771_c("Count");
@@ -870,6 +871,7 @@
this.field_77991_e = p_77963_1_.func_74765_d("Damage");
@@ -744,6 +745,7 @@
public void func_150996_a(Item p_150996_1_)
{
@@ -1,45 +1,42 @@
--- ../src-base/minecraft/net/minecraft/network/NetworkManager.java
+++ ../src-work/minecraft/net/minecraft/network/NetworkManager.java
@@ -88,6 +88,11 @@
this.field_179294_g = p_i46004_1_;
}
@@ -2,6 +2,8 @@
+ public EnumPacketDirection getDirection()
+ {
+ return this.field_179294_g;
+ }
import com.google.common.collect.Queues;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
+
public void channelActive(ChannelHandlerContext p_channelActive_1_) throws Exception
{
super.channelActive(p_channelActive_1_);
@@ -175,7 +180,7 @@
+import cpw.mods.fml.common.network.internal.FMLProxyPacket;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import io.netty.bootstrap.Bootstrap;
@@ -142,7 +144,7 @@
final EnumConnectionState enumconnectionstate = EnumConnectionState.func_150752_a(p_150732_1_);
final EnumConnectionState enumconnectionstate1 = (EnumConnectionState)this.field_150746_k.attr(field_150739_c).get();
- if (enumconnectionstate1 != enumconnectionstate)
+ if (enumconnectionstate1 != enumconnectionstate && !( p_150732_1_ instanceof net.minecraftforge.fml.common.network.internal.FMLProxyPacket))
+ if (enumconnectionstate1 != enumconnectionstate && !( p_150732_1_ instanceof FMLProxyPacket))
{
field_150735_g.debug("Disabled auto read");
this.field_150746_k.config().setAutoRead(false);
@@ -183,7 +188,7 @@
@@ -150,7 +152,7 @@
if (this.field_150746_k.eventLoop().inEventLoop())
{
- if (enumconnectionstate != enumconnectionstate1)
+ if (enumconnectionstate != enumconnectionstate1 && !( p_150732_1_ instanceof net.minecraftforge.fml.common.network.internal.FMLProxyPacket))
+ if (enumconnectionstate != enumconnectionstate1 && !( p_150732_1_ instanceof FMLProxyPacket))
{
this.func_150723_a(enumconnectionstate);
}
@@ -204,7 +209,7 @@
private static final String __OBFID = "CL_00001243";
@@ -164,7 +166,7 @@
private static final String __OBFID = "CL_00001241";
public void run()
{
- if (enumconnectionstate != enumconnectionstate1)
+ if (enumconnectionstate != enumconnectionstate1 && !( p_150732_1_ instanceof net.minecraftforge.fml.common.network.internal.FMLProxyPacket))
+ if (enumconnectionstate != enumconnectionstate1 && !( p_150732_1_ instanceof FMLProxyPacket))
{
NetworkManager.this.func_150723_a(enumconnectionstate);
}
@@ -409,6 +414,11 @@
@@ -315,6 +317,11 @@
this.channelRead0(p_channelRead0_1_, (Packet)p_channelRead0_2_);
}
@@ -1,11 +1,20 @@
--- ../src-base/minecraft/net/minecraft/network/NetworkSystem.java
+++ ../src-work/minecraft/net/minecraft/network/NetworkSystem.java
@@ -110,7 +110,7 @@
@@ -1,6 +1,8 @@
package net.minecraft.network;
import com.google.common.util.concurrent.ThreadFactoryBuilder;
+
+import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import io.netty.bootstrap.ServerBootstrap;
@@ -84,7 +86,7 @@
;
}
- p_initChannel_1_.pipeline().addLast("timeout", new ReadTimeoutHandler(30)).addLast("legacy_query", new PingResponseHandler(NetworkSystem.this)).addLast("splitter", new MessageDeserializer2()).addLast("decoder", new MessageDeserializer(EnumPacketDirection.SERVERBOUND)).addLast("prepender", new MessageSerializer2()).addLast("encoder", new MessageSerializer(EnumPacketDirection.CLIENTBOUND));
+ p_initChannel_1_.pipeline().addLast("timeout", new ReadTimeoutHandler(net.minecraftforge.fml.common.network.internal.FMLNetworkHandler.READ_TIMEOUT)).addLast("legacy_query", new PingResponseHandler(NetworkSystem.this)).addLast("splitter", new MessageDeserializer2()).addLast("decoder", new MessageDeserializer(EnumPacketDirection.SERVERBOUND)).addLast("prepender", new MessageSerializer2()).addLast("encoder", new MessageSerializer(EnumPacketDirection.CLIENTBOUND));
NetworkManager networkmanager = new NetworkManager(EnumPacketDirection.SERVERBOUND);
- p_initChannel_1_.pipeline().addLast("timeout", new ReadTimeoutHandler(30)).addLast("legacy_query", new PingResponseHandler(NetworkSystem.this)).addLast("splitter", new MessageDeserializer2()).addLast("decoder", new MessageDeserializer(NetworkManager.field_152462_h)).addLast("prepender", new MessageSerializer2()).addLast("encoder", new MessageSerializer(NetworkManager.field_152462_h));
+ p_initChannel_1_.pipeline().addLast("timeout", new ReadTimeoutHandler(FMLNetworkHandler.READ_TIMEOUT)).addLast("legacy_query", new PingResponseHandler(NetworkSystem.this)).addLast("splitter", new MessageDeserializer2()).addLast("decoder", new MessageDeserializer(NetworkManager.field_152462_h)).addLast("prepender", new MessageSerializer2()).addLast("encoder", new MessageSerializer(NetworkManager.field_152462_h));
NetworkManager networkmanager = new NetworkManager(false);
NetworkSystem.this.field_151272_f.add(networkmanager);
p_initChannel_1_.pipeline().addLast("packet_handler", networkmanager);
@@ -1,18 +1,27 @@
--- ../src-base/minecraft/net/minecraft/network/ServerStatusResponse.java
+++ ../src-work/minecraft/net/minecraft/network/ServerStatusResponse.java
@@ -233,6 +233,7 @@
@@ -8,6 +8,8 @@
import com.google.gson.JsonSerializationContext;
import com.google.gson.JsonSerializer;
import com.mojang.authlib.GameProfile;
+import cpw.mods.fml.client.FMLClientHandler;
+import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
import java.lang.reflect.Type;
import java.util.UUID;
import net.minecraft.util.IChatComponent;
@@ -233,6 +235,7 @@
serverstatusresponse.func_151320_a(JsonUtils.func_151200_h(jsonobject, "favicon"));
}
+ net.minecraftforge.fml.client.FMLClientHandler.instance().captureAdditionalData(serverstatusresponse, jsonobject);
+ FMLClientHandler.instance().captureAdditionalData(serverstatusresponse, jsonobject);
return serverstatusresponse;
}
@@ -260,6 +261,7 @@
@@ -260,6 +263,7 @@
jsonobject.addProperty("favicon", p_serialize_1_.func_151316_d());
}
+ net.minecraftforge.fml.common.network.internal.FMLNetworkHandler.enhanceStatusQuery(jsonobject);
+ FMLNetworkHandler.enhanceStatusQuery(jsonobject);
return jsonobject;
}
@@ -1,48 +0,0 @@
--- ../src-base/minecraft/net/minecraft/network/handshake/client/C00Handshake.java
+++ ../src-work/minecraft/net/minecraft/network/handshake/client/C00Handshake.java
@@ -16,6 +16,7 @@
private int field_149599_c;
private EnumConnectionState field_149597_d;
private static final String __OBFID = "CL_00001372";
+ private boolean hasFMLMarker = false;
public C00Handshake() {}
@@ -28,18 +29,26 @@
this.field_149597_d = p_i45266_4_;
}
+ public C00Handshake(int protocol, String address, int port, EnumConnectionState state, boolean addFMLMarker)
+ {
+ this(protocol, address, port, state);
+ this.hasFMLMarker = addFMLMarker;
+ }
+
public void func_148837_a(PacketBuffer p_148837_1_) throws IOException
{
this.field_149600_a = p_148837_1_.func_150792_a();
this.field_149598_b = p_148837_1_.func_150789_c(255);
this.field_149599_c = p_148837_1_.readUnsignedShort();
this.field_149597_d = EnumConnectionState.func_150760_a(p_148837_1_.func_150792_a());
+ this.hasFMLMarker = this.field_149598_b.contains("\0FML\0");
+ this.field_149598_b = this.field_149598_b.split("\0")[0];
}
public void func_148840_b(PacketBuffer p_148840_1_) throws IOException
{
p_148840_1_.func_150787_b(this.field_149600_a);
- p_148840_1_.func_180714_a(this.field_149598_b);
+ p_148840_1_.func_180714_a(this.field_149598_b + "\0FML\0");
p_148840_1_.writeShort(this.field_149599_c);
p_148840_1_.func_150787_b(this.field_149597_d.func_150759_c());
}
@@ -63,4 +72,9 @@
{
this.func_180770_a((INetHandlerHandshakeServer)p_148833_1_);
}
+
+ public boolean hasFMLMarker()
+ {
+ return this.hasFMLMarker;
+ }
}
@@ -1,14 +0,0 @@
--- ../src-base/minecraft/net/minecraft/network/play/client/C17PacketCustomPayload.java
+++ ../src-work/minecraft/net/minecraft/network/play/client/C17PacketCustomPayload.java
@@ -47,7 +47,11 @@
public void func_148840_b(PacketBuffer p_148840_1_) throws IOException
{
p_148840_1_.func_180714_a(this.field_149562_a);
+ synchronized(this) { //This may be access multiple times, from multiple threads, lets be safe.
+ this.field_149561_c.markReaderIndex();
p_148840_1_.writeBytes((ByteBuf)this.field_149561_c);
+ this.field_149561_c.resetReaderIndex();
+ }
}
public void func_148833_a(INetHandlerPlayServer p_148833_1_)
@@ -1,14 +1,31 @@
--- ../src-base/minecraft/net/minecraft/network/play/server/S3FPacketCustomPayload.java
+++ ../src-work/minecraft/net/minecraft/network/play/server/S3FPacketCustomPayload.java
@@ -46,7 +46,11 @@
public void func_148840_b(PacketBuffer p_148840_1_) throws IOException
{
p_148840_1_.func_180714_a(this.field_149172_a);
+ synchronized(this) { //This may be access multiple times, from multiple threads, lets be safe.
+ this.field_149171_b.markReaderIndex();
p_148840_1_.writeBytes((ByteBuf)this.field_149171_b);
+ this.field_149171_b.resetReaderIndex();
+ }
@@ -27,23 +27,24 @@
this.field_149172_a = p_i45190_1_;
this.field_149171_b = p_i45190_2_;
- if (p_i45190_2_.length >= 1048576)
+ //TODO: Remove this when FML protocol is re-written. To restore vanilla compatibility.
+ if (p_i45190_2_.length > 0x1FFF9A) // Max size of ANY MC packet is 0x1FFFFF minus max size of this packet (101)
{
- throw new IllegalArgumentException("Payload may not be larger than 1048576 bytes");
+ throw new IllegalArgumentException("Payload may not be larger than 2097050 bytes");
}
}
public void func_148837_a(PacketBuffer p_148837_1_) throws IOException
{
this.field_149172_a = p_148837_1_.func_150789_c(20);
- this.field_149171_b = new byte[p_148837_1_.readUnsignedShort()];
+ this.field_149171_b = new byte[cpw.mods.fml.common.network.ByteBufUtils.readVarShort(p_148837_1_)];
p_148837_1_.readBytes(this.field_149171_b);
}
public void func_148840_b(PacketBuffer p_148840_1_) throws IOException
{
p_148840_1_.func_150785_a(this.field_149172_a);
- p_148840_1_.writeShort(this.field_149171_b.length);
+ cpw.mods.fml.common.network.ByteBufUtils.writeVarShort(p_148840_1_, this.field_149171_b.length);
p_148840_1_.writeBytes(this.field_149171_b);
}
public void func_180734_a(INetHandlerPlayClient p_180734_1_)
@@ -1,19 +1,10 @@
--- ../src-base/minecraft/net/minecraft/realms/RealmsConnect.java
+++ ../src-work/minecraft/net/minecraft/realms/RealmsConnect.java
@@ -39,6 +39,7 @@
@@ -40,6 +40,7 @@
try
{
+ net.minecraftforge.fml.client.FMLClientHandler.instance().connectToRealmsServer(p_connect_1_, p_connect_2_);
+ cpw.mods.fml.client.FMLClientHandler.instance().connectToRealmsServer(p_connect_1_, p_connect_2_);
inetaddress = InetAddress.getByName(p_connect_1_);
if (RealmsConnect.this.aborted)
@@ -60,7 +61,7 @@
return;
}
- RealmsConnect.this.connection.func_179290_a(new C00Handshake(47, p_connect_1_, p_connect_2_, EnumConnectionState.LOGIN));
+ RealmsConnect.this.connection.func_179290_a(new C00Handshake(47, p_connect_1_, p_connect_2_, EnumConnectionState.LOGIN, true));
if (RealmsConnect.this.aborted)
{
@@ -1,115 +1,118 @@
--- ../src-base/minecraft/net/minecraft/server/MinecraftServer.java
+++ ../src-work/minecraft/net/minecraft/server/MinecraftServer.java
@@ -399,7 +399,7 @@
@@ -5,6 +5,11 @@
import com.mojang.authlib.GameProfileRepository;
import com.mojang.authlib.minecraft.MinecraftSessionService;
import com.mojang.authlib.yggdrasil.YggdrasilAuthenticationService;
+
+import cpw.mods.fml.common.FMLCommonHandler;
+import cpw.mods.fml.common.Loader;
+import cpw.mods.fml.common.LoaderState;
+import cpw.mods.fml.common.StartupQuery;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import io.netty.buffer.ByteBuf;
@@ -343,7 +348,7 @@
public void func_71260_j()
{
- if (!this.field_71290_O)
+ if (!this.field_71290_O && net.minecraftforge.fml.common.Loader.instance().hasReachedState(net.minecraftforge.fml.common.LoaderState.SERVER_STARTED) && !field_71316_v) // make sure the save is valid and we don't save twice
+ if (!this.field_71290_O && Loader.instance().hasReachedState(LoaderState.SERVER_STARTED) && !field_71316_v) // make sure the save is valid and we don't save twice
{
field_147145_h.info("Stopping server");
@@ -456,6 +456,7 @@
@@ -394,6 +399,7 @@
{
if (this.func_71197_b())
{
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().handleServerStarted();
this.field_175591_ab = func_130071_aq();
long i = 0L;
+ FMLCommonHandler.instance().handleServerStarted();
long i = func_130071_aq();
long l = 0L;
this.field_147147_p.func_151315_a(new ChatComponentText(this.field_71286_C));
@@ -500,12 +501,20 @@
Thread.sleep(Math.max(1L, 50L - i));
@@ -438,12 +444,20 @@
Thread.sleep(Math.max(1L, 50L - l));
this.field_71296_Q = true;
}
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().handleServerStopping();
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().expectServerStopped(); // has to come before finalTick to avoid race conditions
+ FMLCommonHandler.instance().handleServerStopping();
+ FMLCommonHandler.instance().expectServerStopped(); // has to come before finalTick to avoid race conditions
}
else
{
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().expectServerStopped(); // has to come before finalTick to avoid race conditions
+ FMLCommonHandler.instance().expectServerStopped(); // has to come before finalTick to avoid race conditions
this.func_71228_a((CrashReport)null);
}
}
+ catch (net.minecraftforge.fml.common.StartupQuery.AbortedException e)
+ catch (StartupQuery.AbortedException e)
+ {
+ // ignore silently
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().expectServerStopped(); // has to come before finalTick to avoid race conditions
+ FMLCommonHandler.instance().expectServerStopped(); // has to come before finalTick to avoid race conditions
+ }
catch (Throwable throwable1)
{
field_147145_h.error("Encountered an unexpected exception", throwable1);
@@ -531,6 +540,7 @@
@@ -469,6 +483,7 @@
field_147145_h.error("We were unable to save this crash report to disk.");
}
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().expectServerStopped(); // has to come before finalTick to avoid race conditions
+ FMLCommonHandler.instance().expectServerStopped(); // has to come before finalTick to avoid race conditions
this.func_71228_a(crashreport);
}
finally
@@ -546,6 +556,8 @@
@@ -484,6 +499,8 @@
}
finally
{
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().handleServerStopped();
+ FMLCommonHandler.instance().handleServerStopped();
+ this.field_71316_v = true;
this.func_71240_o();
}
}
@@ -591,6 +603,7 @@
@@ -529,6 +546,7 @@
public void func_71217_p()
{
long i = System.nanoTime();
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().onPreServerTick();
+ FMLCommonHandler.instance().onPreServerTick();
++this.field_71315_w;
if (this.field_71295_T)
@@ -644,6 +657,7 @@
@@ -582,6 +600,7 @@
this.field_71304_b.func_76319_b();
this.field_71304_b.func_76319_b();
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().onPostServerTick();
+ FMLCommonHandler.instance().onPostServerTick();
}
public void func_71190_q()
@@ -657,7 +671,7 @@
{
try
{
- ((FutureTask)this.field_175589_i.poll()).run();
+ net.minecraftforge.fml.common.FMLCommonHandler.callFuture(((FutureTask)this.field_175589_i.poll()));
}
catch (Throwable throwable2)
{
@@ -686,6 +700,7 @@
@@ -608,6 +627,7 @@
}
this.field_71304_b.func_76320_a("tick");
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().onPreWorldTick(worldserver);
+ FMLCommonHandler.instance().onPreWorldTick(worldserver);
CrashReport crashreport;
try
@@ -710,6 +725,7 @@
@@ -632,6 +652,7 @@
throw new ReportedException(crashreport);
}
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().onPostWorldTick(worldserver);
+ FMLCommonHandler.instance().onPostWorldTick(worldserver);
this.field_71304_b.func_76319_b();
this.field_71304_b.func_76320_a("tracker");
worldserver.func_73039_n().func_72788_a();
@@ -741,6 +757,7 @@
@@ -663,6 +684,7 @@
public void func_71256_s()
{
+ net.minecraftforge.fml.common.StartupQuery.reset();
this.field_175590_aa = new Thread(this, "Server thread");
this.field_175590_aa.start();
}
@@ -787,7 +804,7 @@
+ StartupQuery.reset();
(new Thread("Server thread")
{
private static final String __OBFID = "CL_00001418";
@@ -715,7 +737,7 @@
public String getServerModName()
{
- return "vanilla";
+ return net.minecraftforge.fml.common.FMLCommonHandler.instance().getModName();
+ return FMLCommonHandler.instance().getModName();
}
public CrashReport func_71230_b(CrashReport p_71230_1_)
@@ -1,6 +1,13 @@
--- ../src-base/minecraft/net/minecraft/server/dedicated/DedicatedServer.java
+++ ../src-work/minecraft/net/minecraft/server/dedicated/DedicatedServer.java
@@ -49,6 +49,7 @@
@@ -1,5 +1,6 @@
package net.minecraft.server.dedicated;
+import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import java.io.BufferedReader;
@@ -48,6 +49,7 @@
private boolean field_71338_p;
private WorldSettings.GameType field_71337_q;
private boolean field_71335_s;
@@ -8,37 +15,37 @@
private static final String __OBFID = "CL_00001784";
public DedicatedServer(File p_i1508_1_)
@@ -113,6 +114,8 @@
@@ -112,6 +114,8 @@
field_155771_h.warn("To start the server with more ram, launch it as \"java -Xmx1024M -Xms1024M -jar minecraft_server.jar\"");
}
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().onServerStart(this);
+ FMLCommonHandler.instance().onServerStart(this);
+
field_155771_h.info("Loading properties");
this.field_71340_o = new PropertyManager(new File("server.properties"));
this.field_154332_n = new ServerEula(new File("eula.txt"));
@@ -204,6 +207,7 @@
@@ -203,6 +207,7 @@
}
else
{
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().onServerStarted();
+ FMLCommonHandler.instance().onServerStarted();
this.func_152361_a(new DedicatedPlayerList(this));
long j = System.nanoTime();
@@ -250,6 +254,7 @@
@@ -248,6 +253,7 @@
this.func_71191_d((this.func_71207_Z() + 8) / 16 * 16);
this.func_71191_d(MathHelper.func_76125_a(this.func_71207_Z(), 64, 256));
this.field_71340_o.func_73667_a("max-build-height", Integer.valueOf(this.func_71207_Z()));
+ if (!net.minecraftforge.fml.common.FMLCommonHandler.instance().handleServerAboutToStart(this)) return false;
+ if (!FMLCommonHandler.instance().handleServerAboutToStart(this)) { return false; }
field_155771_h.info("Preparing level \"" + this.func_71270_I() + "\"");
this.func_71247_a(this.func_71270_I(), this.func_71270_I(), k, worldtype, s2);
long i1 = System.nanoTime() - j;
@@ -278,7 +283,7 @@
thread1.start();
@@ -268,7 +274,7 @@
this.field_71339_n.func_72602_a();
}
- return true;
+ return net.minecraftforge.fml.common.FMLCommonHandler.instance().handleServerStarting(this);
+ return FMLCommonHandler.instance().handleServerStarting(this);
}
}
}
@@ -1,6 +1,14 @@
--- ../src-base/minecraft/net/minecraft/server/gui/MinecraftServerGui.java
+++ ../src-work/minecraft/net/minecraft/server/gui/MinecraftServerGui.java
@@ -79,6 +79,7 @@
@@ -13,6 +13,7 @@
import java.awt.event.FocusEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
+import java.util.concurrent.CountDownLatch;
import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.JPanel;
@@ -79,6 +80,7 @@
System.exit(0);
}
});
@@ -8,17 +16,19 @@
}
public MinecraftServerGui(DedicatedServer p_i2362_1_)
@@ -164,8 +165,13 @@
@@ -164,8 +166,15 @@
return jpanel;
}
+ private java.util.concurrent.CountDownLatch latch = new java.util.concurrent.CountDownLatch(1);
+ private CountDownLatch latch = new CountDownLatch(1);
public void func_164247_a(final JTextArea p_164247_1_, final JScrollPane p_164247_2_, final String p_164247_3_)
{
+ try
+ {
+ latch.await();
+ } catch (InterruptedException e){} //Prevent logging until after constructor has ended.
+ } catch (InterruptedException e)
+ {
+ }
if (!SwingUtilities.isEventDispatchThread())
{
SwingUtilities.invokeLater(new Runnable()
@@ -1,23 +1,21 @@
--- ../src-base/minecraft/net/minecraft/server/integrated/IntegratedServer.java
+++ ../src-work/minecraft/net/minecraft/server/integrated/IntegratedServer.java
@@ -144,9 +144,10 @@
@@ -1,5 +1,6 @@
package net.minecraft.server.integrated;
+import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import java.io.File;
@@ -105,9 +106,10 @@
this.func_71245_h(true);
field_147148_h.info("Generating keypair");
this.func_71253_a(CryptManager.func_75891_b());
+ if (!net.minecraftforge.fml.common.FMLCommonHandler.instance().handleServerAboutToStart(this)) return false;
+ if (!FMLCommonHandler.instance().handleServerAboutToStart(this)) { return false; }
this.func_71247_a(this.func_71270_I(), this.func_71221_J(), this.field_71350_m.func_77160_d(), this.field_71350_m.func_77165_h(), this.field_71350_m.func_82749_j());
this.func_71205_p(this.func_71214_G() + " - " + this.field_71305_c[0].func_72912_H().func_76065_j());
- return true;
+ return net.minecraftforge.fml.common.FMLCommonHandler.instance().handleServerStarting(this);
+ return FMLCommonHandler.instance().handleServerStarting(this);
}
public void func_71217_p()
@@ -171,7 +172,7 @@
{
try
{
- ((FutureTask)this.field_175589_i.poll()).run();
+ net.minecraftforge.fml.common.FMLCommonHandler.callFuture(((FutureTask)this.field_175589_i.poll()));
}
catch (Throwable throwable)
{
@@ -1,16 +1,16 @@
--- ../src-base/minecraft/net/minecraft/server/management/PlayerProfileCache.java
+++ ../src-work/minecraft/net/minecraft/server/management/PlayerProfileCache.java
@@ -204,26 +204,12 @@
@@ -224,26 +224,12 @@
{
List list = null;
BufferedReader bufferedreader = null;
- label64:
- label81:
{
try
{
bufferedreader = Files.newReader(this.field_152665_g, Charsets.UTF_8);
list = (List)this.field_152660_b.fromJson(bufferedreader, field_152666_h);
- break label64;
- break label81;
- }
- catch (FileNotFoundException filenotfoundexception)
- {
@@ -27,7 +27,7 @@
if (list != null)
{
this.field_152661_c.clear();
@@ -242,6 +228,20 @@
@@ -268,6 +254,20 @@
}
}
}
@@ -1,6 +1,23 @@
--- ../src-base/minecraft/net/minecraft/server/management/ServerConfigurationManager.java
+++ ../src-work/minecraft/net/minecraft/server/management/ServerConfigurationManager.java
@@ -103,7 +103,7 @@
@@ -4,6 +4,8 @@
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.mojang.authlib.GameProfile;
+
+import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import java.io.File;
@@ -58,6 +60,7 @@
import net.minecraft.world.WorldSettings;
import net.minecraft.world.demo.DemoWorldManager;
import net.minecraft.world.storage.IPlayerFileData;
+import net.minecraft.world.storage.SaveHandler;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
@@ -98,7 +101,7 @@
this.field_72405_c = 8;
}
@@ -9,24 +26,24 @@
{
GameProfile gameprofile = p_72355_2_.func_146103_bH();
PlayerProfileCache playerprofilecache = this.field_72400_f.func_152358_ax();
@@ -125,7 +125,7 @@
WorldInfo worldinfo = worldserver.func_72912_H();
BlockPos blockpos = worldserver.func_175694_M();
@@ -119,7 +122,7 @@
WorldServer worldserver = this.field_72400_f.func_71218_a(p_72355_2_.field_71093_bK);
ChunkCoordinates chunkcoordinates = worldserver.func_72861_E();
this.func_72381_a(p_72355_2_, (EntityPlayerMP)null, worldserver);
- NetHandlerPlayServer nethandlerplayserver = new NetHandlerPlayServer(this.field_72400_f, p_72355_1_, p_72355_2_);
+ p_72355_2_.field_71135_a = nethandlerplayserver;
nethandlerplayserver.func_147359_a(new S01PacketJoinGame(p_72355_2_.func_145782_y(), p_72355_2_.field_71134_c.func_73081_b(), worldinfo.func_76093_s(), worldserver.field_73011_w.func_177502_q(), worldserver.func_175659_aa(), this.func_72352_l(), worldinfo.func_76067_t(), worldserver.func_82736_K().func_82766_b("reducedDebugInfo")));
nethandlerplayserver.func_147359_a(new S3FPacketCustomPayload("MC|Brand", (new PacketBuffer(Unpooled.buffer())).func_180714_a(this.func_72365_p().getServerModName())));
nethandlerplayserver.func_147359_a(new S41PacketServerDifficulty(worldinfo.func_176130_y(), worldinfo.func_176123_z()));
@@ -168,6 +168,7 @@
nethandlerplayserver.func_147359_a(new S01PacketJoinGame(p_72355_2_.func_145782_y(), p_72355_2_.field_71134_c.func_73081_b(), worldserver.func_72912_H().func_76093_s(), worldserver.field_73011_w.field_76574_g, worldserver.field_73013_u, this.func_72352_l(), worldserver.func_72912_H().func_76067_t()));
nethandlerplayserver.func_147359_a(new S3FPacketCustomPayload("MC|Brand", this.func_72365_p().getServerModName().getBytes(Charsets.UTF_8)));
nethandlerplayserver.func_147359_a(new S05PacketSpawnPosition(chunkcoordinates.field_71574_a, chunkcoordinates.field_71572_b, chunkcoordinates.field_71573_c));
@@ -161,6 +164,7 @@
p_72355_2_.func_71116_b();
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().firePlayerLoggedIn(p_72355_2_);
+ FMLCommonHandler.instance().firePlayerLoggedIn(p_72355_2_);
if (nbttagcompound != null && nbttagcompound.func_150297_b("Riding", 10))
{
Entity entity = EntityList.func_75615_a(nbttagcompound.func_74775_l("Riding"), worldserver);
@@ -281,8 +282,23 @@
@@ -248,8 +252,23 @@
return nbttagcompound1;
}
@@ -40,7 +57,7 @@
+ }
+ else
+ {
+ return ((net.minecraft.world.storage.SaveHandler)this.field_72412_k).getPlayerNBT(player);
+ return ((SaveHandler)this.field_72412_k).getPlayerNBT(player);
+ }
+ }
protected void func_72391_b(EntityPlayerMP p_72391_1_)
@@ -50,27 +67,27 @@
this.field_72412_k.func_75753_a(p_72391_1_);
StatisticsFile statisticsfile = (StatisticsFile)this.field_148547_k.get(p_72391_1_.func_110124_au());
@@ -315,6 +331,7 @@
@@ -281,6 +300,7 @@
public void func_72367_e(EntityPlayerMP p_72367_1_)
{
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().firePlayerLoggedOut(p_72367_1_);
+ FMLCommonHandler.instance().firePlayerLoggedOut(p_72367_1_);
p_72367_1_.func_71029_a(StatList.field_75947_j);
this.func_72391_b(p_72367_1_);
WorldServer worldserver = p_72367_1_.func_71121_q();
@@ -473,6 +490,7 @@
this.field_177454_f.put(entityplayermp1.func_110124_au(), entityplayermp1);
@@ -436,6 +456,7 @@
this.field_72404_b.add(entityplayermp1);
entityplayermp1.func_71116_b();
entityplayermp1.func_70606_j(entityplayermp1.func_110143_aJ());
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().firePlayerRespawnEvent(entityplayermp1);
+ FMLCommonHandler.instance().firePlayerRespawnEvent(entityplayermp1);
return entityplayermp1;
}
@@ -498,6 +516,7 @@
@@ -461,6 +482,7 @@
PotionEffect potioneffect = (PotionEffect)iterator.next();
p_72356_1_.field_71135_a.func_147359_a(new S1DPacketEntityEffect(p_72356_1_.func_145782_y(), potioneffect));
}
+ net.minecraftforge.fml.common.FMLCommonHandler.instance().firePlayerChangedDimensionEvent(p_72356_1_, j, p_72356_2_);
+ FMLCommonHandler.instance().firePlayerChangedDimensionEvent(p_72356_1_, j, p_72356_2_);
}
public void func_82448_a(Entity p_82448_1_, int p_82448_2_, WorldServer p_82448_3_, WorldServer p_82448_4_)
@@ -1,10 +1,23 @@
--- ../src-base/minecraft/net/minecraft/server/network/NetHandlerHandshakeTCP.java
+++ ../src-work/minecraft/net/minecraft/server/network/NetHandlerHandshakeTCP.java
@@ -23,6 +23,8 @@
@@ -1,5 +1,6 @@
package net.minecraft.server.network;
+import cpw.mods.fml.common.FMLCommonHandler;
import io.netty.util.concurrent.GenericFutureListener;
import net.minecraft.network.EnumConnectionState;
import net.minecraft.network.NetworkManager;
@@ -24,6 +25,14 @@
public void func_147383_a(C00Handshake p_147383_1_)
{
+ if (!net.minecraftforge.fml.common.FMLCommonHandler.instance().handleServerHandshake(p_147383_1_, this.field_147386_b)) return;
+ if (!FMLCommonHandler.instance().shouldAllowPlayerLogins())
+ {
+ ChatComponentText chatcomponenttext = new ChatComponentText("Server is still starting! Please wait before reconnecting.");
+ this.field_147386_b.func_150725_a(new S00PacketDisconnect(chatcomponenttext), new GenericFutureListener[0]);
+ this.field_147386_b.func_150718_a(chatcomponenttext);
+ return;
+ }
+
switch (NetHandlerHandshakeTCP.SwitchEnumConnectionState.field_151291_a[p_147383_1_.func_149594_c().ordinal()])
{
@@ -1,20 +1,29 @@
--- ../src-base/minecraft/net/minecraft/server/network/NetHandlerLoginServer.java
+++ ../src-work/minecraft/net/minecraft/server/network/NetHandlerLoginServer.java
@@ -62,7 +62,7 @@
@@ -3,6 +3,8 @@
import com.google.common.base.Charsets;
import com.mojang.authlib.GameProfile;
import com.mojang.authlib.exceptions.AuthenticationUnavailableException;
+
+import cpw.mods.fml.common.network.internal.FMLNetworkHandler;
import io.netty.util.concurrent.GenericFutureListener;
import java.math.BigInteger;
import java.security.PrivateKey;
@@ -58,7 +60,7 @@
this.func_147326_c();
}
- if (this.field_147336_h++ == 600)
+ if (this.field_147336_h++ == net.minecraftforge.fml.common.network.internal.FMLNetworkHandler.LOGIN_TIMEOUT)
+ if (this.field_147336_h++ == FMLNetworkHandler.LOGIN_TIMEOUT)
{
this.func_147322_a("Took too long to log in");
}
@@ -113,7 +113,7 @@
}
this.field_147333_a.func_179290_a(new S02PacketLoginSuccess(this.field_147337_i));
@@ -96,7 +98,7 @@
{
this.field_147328_g = NetHandlerLoginServer.LoginState.ACCEPTED;
this.field_147333_a.func_150725_a(new S02PacketLoginSuccess(this.field_147337_i), new GenericFutureListener[0]);
- this.field_147327_f.func_71203_ab().func_72355_a(this.field_147333_a, this.field_147327_f.func_71203_ab().func_148545_a(this.field_147337_i));
+ net.minecraftforge.fml.common.network.internal.FMLNetworkHandler.fmlServerHandshake(this.field_147327_f.func_71203_ab(), this.field_147333_a, this.field_147327_f.func_71203_ab().func_148545_a(this.field_147337_i));
+ FMLNetworkHandler.fmlServerHandshake(this.field_147327_f.func_71203_ab(), this.field_147333_a, this.field_147327_f.func_71203_ab().func_148545_a(this.field_147337_i));
}
}
@@ -1,6 +1,28 @@
--- ../src-base/minecraft/net/minecraft/tileentity/TileEntity.java
+++ ../src-work/minecraft/net/minecraft/tileentity/TileEntity.java
@@ -89,9 +89,10 @@
@@ -1,10 +1,12 @@
package net.minecraft.tileentity;
+import cpw.mods.fml.common.FMLLog;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.Callable;
+
import net.minecraft.block.Block;
import net.minecraft.block.BlockJukebox;
import net.minecraft.crash.CrashReportCategory;
@@ -12,6 +14,8 @@
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.network.Packet;
import net.minecraft.world.World;
+
+import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
@@ -87,9 +91,10 @@
{
TileEntity tileentity = null;
@@ -12,29 +34,29 @@
if (oclass != null)
{
@@ -109,7 +110,17 @@
}
else
@@ -103,7 +108,17 @@
if (tileentity != null)
{
+ try
+ {
field_145852_a.warn("Skipping BlockEntity with id " + p_145827_0_.func_74779_i("id"));
tileentity.func_145839_a(p_145827_0_);
+ }
+ catch (Exception ex)
+ {
+ net.minecraftforge.fml.common.FMLLog.log(org.apache.logging.log4j.Level.ERROR, ex,
+ FMLLog.log(Level.ERROR, ex,
+ "A TileEntity %s(%s) has thrown an exception during loading, its state cannot be restored. Report this to the mod author",
+ p_145827_0_.func_74779_i("id"), oclass.getName());
+ tileentity = null;
+ }
}
return tileentity;
@@ -141,7 +152,6 @@
else
{
@@ -137,7 +152,6 @@
}
}
- @SideOnly(Side.CLIENT)
public double func_145835_a(double p_145835_1_, double p_145835_3_, double p_145835_5_)
{
double d3 = (double)this.field_174879_c.func_177958_n() + 0.5D - p_145835_1_;
double d3 = (double)this.field_145851_c + 0.5D - p_145835_1_;
@@ -1,6 +1,13 @@
--- ../src-base/minecraft/net/minecraft/tileentity/TileEntityFurnace.java
+++ ../src-work/minecraft/net/minecraft/tileentity/TileEntityFurnace.java
@@ -348,7 +348,15 @@
@@ -1,5 +1,6 @@
package net.minecraft.tileentity;
+import cpw.mods.fml.common.registry.GameRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.block.Block;
@@ -322,7 +323,15 @@
}
}
@@ -13,7 +20,7 @@
+ if (item == Items.field_151129_at) return 20000;
+ if (item == Item.func_150898_a(Blocks.field_150345_g)) return 100;
+ if (item == Items.field_151072_bj) return 2400;
+ return net.minecraftforge.fml.common.registry.GameRegistry.getFuelValue(p_145952_0_);
+ return GameRegistry.getFuelValue(p_145952_0_);
}
}
@@ -1,11 +0,0 @@
--- ../src-base/minecraft/net/minecraft/util/MessageSerializer.java
+++ ../src-work/minecraft/net/minecraft/util/MessageSerializer.java
@@ -49,7 +49,7 @@
{
if (p_encode_2_ instanceof S0CPacketSpawnPlayer)
{
- p_encode_2_ = p_encode_2_;
+ //p_encode_2_ = p_encode_2_; FML: Kill warning
}
p_encode_2_.func_148840_b(packetbuffer);
@@ -1,26 +1,13 @@
--- ../src-base/minecraft/net/minecraft/util/ResourceLocation.java
+++ ../src-work/minecraft/net/minecraft/util/ResourceLocation.java
@@ -1,7 +1,5 @@
@@ -1,10 +1,7 @@
package net.minecraft.util;
-import net.minecraftforge.fml.relauncher.Side;
-import net.minecraftforge.fml.relauncher.SideOnly;
-import cpw.mods.fml.relauncher.Side;
-import cpw.mods.fml.relauncher.SideOnly;
import org.apache.commons.lang3.Validate;
-@SideOnly(Side.CLIENT)
public class ResourceLocation
@@ -22,7 +20,6 @@
this(0, func_177516_a(p_i1293_1_));
}
- @SideOnly(Side.CLIENT)
public ResourceLocation(String p_i1292_1_, String p_i1292_2_)
{
this(0, new String[] {p_i1292_1_, p_i1292_2_});
@@ -51,7 +48,6 @@
return this.field_110625_b;
}
- @SideOnly(Side.CLIENT)
public String func_110624_b()
{
return this.field_110626_a;
{
private final String field_110626_a;
@@ -1,6 +1,20 @@
--- ../src-base/minecraft/net/minecraft/util/StringTranslate.java
+++ ../src-work/minecraft/net/minecraft/util/StringTranslate.java
@@ -18,16 +18,38 @@
@@ -3,10 +3,13 @@
import com.google.common.base.Splitter;
import com.google.common.collect.Iterables;
import com.google.common.collect.Maps;
+
+import cpw.mods.fml.common.registry.LanguageRegistry;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import java.io.IOException;
import java.io.InputStream;
+import java.util.HashMap;
import java.util.IllegalFormatException;
import java.util.Iterator;
import java.util.Map;
@@ -18,16 +21,35 @@
{
private static final Pattern field_111053_a = Pattern.compile("%(\\d+\\$)?[\\d\\.]*[df]");
private static final Splitter field_135065_b = Splitter.on('=').limit(2);
@@ -24,20 +38,17 @@
+
+ private static void inject(StringTranslate inst, InputStream inputstream)
+ {
+ java.util.HashMap<String, String> map = parseLangFile(inputstream);
+ HashMap<String, String> map = parseLangFile(inputstream);
+ inst.field_74816_c.putAll(map);
+ inst.field_150511_e = System.currentTimeMillis();
+ }
+
+ public static java.util.HashMap<String,String> parseLangFile(InputStream inputstream)
+ public static HashMap<String,String> parseLangFile(InputStream inputstream)
+ {
+ java.util.HashMap<String,String> table = Maps.newHashMap();
+ HashMap<String,String> table = Maps.newHashMap();
try
{
- InputStream inputstream = StringTranslate.class.getResourceAsStream("/assets/minecraft/lang/en_US.lang");
+ inputstream = net.minecraftforge.fml.common.FMLCommonHandler.instance().loadLanguage(table, inputstream);
+ if (inputstream == null) return table;
+
Iterator iterator = IOUtils.readLines(inputstream, Charsets.UTF_8).iterator();
while (iterator.hasNext())
@@ -1,6 +1,6 @@
--- ../src-base/minecraft/net/minecraft/world/World.java
+++ ../src-work/minecraft/net/minecraft/world/World.java
@@ -1626,8 +1626,6 @@
@@ -1800,14 +1800,14 @@
}
}
@@ -8,17 +8,16 @@
-
if (!this.field_147483_b.isEmpty())
{
this.field_175730_i.removeAll(this.field_147483_b);
@@ -1635,6 +1633,8 @@
this.field_147482_g.removeAll(this.field_147483_b);
this.field_147483_b.clear();
}
+ this.field_147481_N = false; //FML Move below remove to prevent CMEs
+ this.field_147481_N = false;
+
this.field_72984_F.func_76318_c("pendingBlockEntities");
if (!this.field_147484_a.isEmpty())
@@ -3429,7 +3429,7 @@
@@ -3598,7 +3598,7 @@
@SideOnly(Side.CLIENT)
public double func_72919_O()
{
@@ -26,4 +25,4 @@
+ return this.field_72986_A.func_76067_t().getHorizon(this);
}
public void func_175715_c(int p_175715_1_, BlockPos p_175715_2_, int p_175715_3_)
public CrashReportCategory func_72914_a(CrashReport p_72914_1_)
@@ -1,19 +1,13 @@
--- ../src-base/minecraft/net/minecraft/world/WorldProvider.java
+++ ../src-work/minecraft/net/minecraft/world/WorldProvider.java
@@ -52,26 +52,12 @@
@@ -50,20 +50,12 @@
protected void func_76572_b()
{
- WorldType worldtype = this.field_76579_a.func_72912_H().func_76067_t();
-
- if (worldtype == WorldType.field_77138_c)
- if (this.field_76579_a.func_72912_H().func_76067_t() == WorldType.field_77138_c)
- {
- FlatGeneratorInfo flatgeneratorinfo = FlatGeneratorInfo.func_82651_a(this.field_76579_a.func_72912_H().func_82571_y());
- this.field_76578_c = new WorldChunkManagerHell(BiomeGenBase.func_180276_a(flatgeneratorinfo.func_82648_a(), BiomeGenBase.field_180279_ad), 0.5F);
- }
- else if (worldtype == WorldType.field_180272_g)
- {
- this.field_76578_c = new WorldChunkManagerHell(BiomeGenBase.field_76772_c, 0.0F);
- this.field_76578_c = new WorldChunkManagerHell(BiomeGenBase.func_150568_d(flatgeneratorinfo.func_82648_a()), 0.5F);
- }
- else
- {
@@ -24,12 +18,12 @@
public IChunkProvider func_76555_c()
{
- return (IChunkProvider)(this.field_76577_b == WorldType.field_77138_c ? new ChunkProviderFlat(this.field_76579_a, this.field_76579_a.func_72905_C(), this.field_76579_a.func_72912_H().func_76089_r(), this.field_82913_c) : (this.field_76577_b == WorldType.field_180272_g ? new ChunkProviderDebug(this.field_76579_a) : (this.field_76577_b == WorldType.field_180271_f ? new ChunkProviderGenerate(this.field_76579_a, this.field_76579_a.func_72905_C(), this.field_76579_a.func_72912_H().func_76089_r(), this.field_82913_c) : new ChunkProviderGenerate(this.field_76579_a, this.field_76579_a.func_72905_C(), this.field_76579_a.func_72912_H().func_76089_r(), this.field_82913_c))));
- return (IChunkProvider)(this.field_76577_b == WorldType.field_77138_c ? new ChunkProviderFlat(this.field_76579_a, this.field_76579_a.func_72905_C(), this.field_76579_a.func_72912_H().func_76089_r(), this.field_82913_c) : new ChunkProviderGenerate(this.field_76579_a, this.field_76579_a.func_72905_C(), this.field_76579_a.func_72912_H().func_76089_r()));
+ return field_76577_b.getChunkGenerator(field_76579_a, field_82913_c);
}
public boolean func_76566_a(int p_76566_1_, int p_76566_2_)
@@ -177,13 +163,13 @@
@@ -179,19 +171,19 @@
public int func_76557_i()
{
@@ -37,6 +31,13 @@
+ return this.field_76577_b.getMinimumSpawnHeight(this.field_76579_a);
}
@SideOnly(Side.CLIENT)
public boolean func_76564_j()
{
- return this.field_76577_b != WorldType.field_77138_c && !this.field_76576_e;
+ return this.field_76577_b.hasVoidParticles(this.field_76576_e);
}
@SideOnly(Side.CLIENT)
public double func_76565_k()
{
Loaded 100 of 844 files, more files were not shown because too many files have changed in this diff. Show more