Commit Graph

214 Commits

Author SHA1 Message Date
LexManos 0cf5ef221c Run licenseFormat to apply license header to all files. 2018-07-01 14:17:31 -07:00
mezz 979797a2a6 Give immediate and complete error messages when there is a crash during startup (#4869) 2018-05-12 23:54:10 -07:00
mezz ad099a4bfe Revert "Give immediate and complete error messages when there is a crash during startup (#4869)"
This reverts commit a38f5fd6a2.
2018-05-12 22:36:45 -07:00
mezz a38f5fd6a2
Give immediate and complete error messages when there is a crash during startup (#4869) 2018-05-12 16:56:57 -07:00
LexManos 4df55f3bd3 Only revert to frozen data on server shutdown on client. Should fix race condition exposed by #4904 2018-04-29 17:57:33 -07:00
mezz a794f1daff
Improve missing mod dependency error screen (#4762) 2018-04-14 18:17:06 -07:00
Ben Staddon 97a2143fc2 Clean up Reader/Writer handling to use a specified charset (#4872) 2018-04-14 17:00:38 -07:00
mezz ae654edfc2
Fix up logging and log4j configuration (#4802) 2018-03-17 18:41:16 -07:00
mezz bdb65e9ed7 Improve the "Mod rejections" error message when connecting to a server (#4761) 2018-02-26 22:05:08 -08:00
Ben Staddon d18c03968e Clean up some GUI code and change magic numbers to GL constants (#4734) 2018-02-11 11:48:02 -08:00
Tyler Hancock 01f573dbaa Added a tooltip color event. (#4595) 2018-01-18 12:54:35 -08:00
mezz d0bdb23300
Minor code and documentation cleanup. (#4664) 2018-01-12 23:54:29 -08:00
Justin ae790c2345 [macOS] Fix missing text on loading error screens (#4532) 2017-12-16 17:42:17 -08:00
mezz 49596910fc Prevent tooltips from going off the top of the screen. 2017-12-06 21:10:51 -08:00
Justin a59d20fc02 Fix resource loading on some mac systems when SplashProgress is enabled (#4082) 2017-11-09 22:32:01 -08:00
Zaggy1024 9c7538db8d Added a cloud renderer that uploads geometry to the GPU. (#4143) 2017-10-31 11:45:46 -07:00
Benjamin K 45c2ff5329 Fix CustomModLoadingErrorDisplayScreen not being handled during init or preinit. (#4320) 2017-09-06 14:14:50 -07:00
BlayTheNinth da85dcadf5 Allow custom GuiEditArrayEntries without having to recreate the object in several places (#4329) 2017-09-06 14:03:13 -07:00
Ben Staddon 0fde64ac38 Clean up uses of deprecated library functions (#4130)
Avoid catching and rethrowing runtime exceptions
Append error messages to exceptions instead of the log
2017-07-12 21:50:28 -07:00
mezz cd4d701b5f Fix game freeze when resizing the window too small on the mods gui (#4148) 2017-07-08 22:55:45 -07:00
mezz 9675585891 Use lambdas for short anonymous methods 2017-06-27 23:18:09 -07:00
mezz 93025510ae Use multiple catch, try-with-resources, replace system.out and e.printStackTrace 2017-06-27 22:57:10 -07:00
LexManos 10ca404e9e Fix the creative menu search function. Closes #4100 2017-06-27 21:34:03 -07:00
LexManos 7281708df6 Repopulate client SearchTreeManager when registries are refreshed. Closes #4094 2017-06-27 16:28:08 -07:00
BlayTheNinth 5aac07b5b1 Remove incorrect call to .toString() when instantiating custom config array entries. (#4078) 2017-06-27 00:54:49 -05:00
Ben Staddon 9a09ff68aa Remove some deprecated methods and clean up 2017-06-25 22:30:18 -07:00
mezz 7892ca922c Remove the call to client.refreshResources during loading (#4032) 2017-06-25 22:13:58 -07:00
RainWarrior dc043ac79f Cleanup of model system, taking advantage of java 8;
replaced guava Optional and Function with java 8 versions.
2017-06-25 04:08:20 +03:00
LexManos 1c24600bbb Reload client recipe book after loading modded recipes. 2017-06-24 15:34:09 -07:00
mezz d769d83224 Update MCP to 20170624 2017-06-24 00:56:21 -07:00
Ben Staddon b0dfaa2b81 Remove Java 8 warnings now that Minecraft requires it 2017-06-23 23:31:50 -07:00
LexManos a26d89c876 First pass of registry rewrite.
Tests do not run yet.
Things of note:
Removed the idea of substitutions, just register multiple items with the same name they will override each other like a normal map.
Decoupled Forge registries from vanilla classes. They now use bouncer classes. MODDERS SHOULD NEVER USE THESE
Introduced more stringent registry locking. As it sits things are only allowed to be registered during the RegistryEvent.Registry phases!
This is to force modders to split up their registrations, and pave the way for calling these functions multiple times during a single MC lifecycle.
ObjectHolder, Missing Mappings, etc... *should* now work for all registry types, nothing should be special cased to Blocks/Items anymore.
Added optional generic dummy factory to registries, to allow registry creators the ability to dummy more then just Blocks.
Re-worked the ItemStack transformer and applied it to ItemBlock and ItemBlockSpecial. Allowing us to cleanup reflective hacks in Block callbacks.
Registry onAdd callback is now only fired on the ACTIVE registry, fixing any issues of temp registries overriding active objects.
2017-06-23 16:59:57 -05:00
diesieben07 0e9820c51c Clean up Logging (#3953)
# Conflicts:
#	patches/minecraft/net/minecraft/client/renderer/texture/Stitcher.java.patch
#	patches/minecraft/net/minecraft/client/renderer/texture/TextureMap.java.patch
#	patches/minecraft/net/minecraft/entity/EntityList.java.patch
#	patches/minecraft/net/minecraft/tileentity/TileEntity.java.patch
#	src/main/java/net/minecraftforge/oredict/OreDictionary.java
2017-06-22 23:18:49 -07:00
mezz e3777f4559 Add missing Override annotations 2017-06-17 18:24:17 -07:00
mezz c2845967cc Update MCP mappings to 20170617 2017-06-17 18:06:04 -07:00
mezz 3d322ef925 Update mcp mappings to 20170611 2017-06-17 17:13:44 -07:00
LexManos f1cca475ea Initial patch update to 1.12.
Some things to note:
Netty is screwy so currently can't join single player. @cpw
Crafting has been MAJORY reworked. The current GameRegistry functions are nooped, this is IN THE WORKS.
  Just need to move the recipe list to a full class registry, and then re implement the in-code recipe registration.
  Also, it IS advised that modders move to JSON, because ideally we'll see a S->C recipe syncing system in 1.13
  which would allow servers to have custom recipes.
  OreDictionary currently 1/2 works, need to write a better algorithm for replacing ingredients.
  Please be patient
Rendering:
  A lot of functions got a new float parameter, this is similar to partial ticks, needs more research
2017-06-10 22:22:02 -04:00
mezz 1c0b53f3bf Print system details on startup without printing a full crash report (#3909) 2017-05-21 12:30:57 -07:00
mezz 14d8151b02 Reduce memory pressure from new objects during loading screen (#3907) 2017-05-20 14:21:32 -07:00
mezz e4d04afd95 When the window is closed during loading, exit the game quickly (#3858) 2017-05-01 17:14:55 -07:00
mezz 91cc592a3a Remove splash.properties option for Mojang logo (has been disabled) (#3859)
Fix backgound color being applied to the Forge logo
2017-05-01 17:13:43 -07:00
ichttt cbf6cb9744 Fix GuiMultipleModsErrored ignoring scrolling with mouse wheel. (#3861) 2017-05-01 17:12:33 -07:00
Justin 460a2189d6 Prevent NPE in ConfigManager and fix config gui being enabled for all mods. Fixes #3856. (#3860) 2017-04-27 19:02:50 -07:00
cpw cec90d7f48 Add in a check to the splash screen. If the Display.update call takes
too long on average (over first 200 frames) we'll use a sleep based
timer to allow mods doing splash screen work some time on the
LWJGL global lock.

(cherry picked from commit 03d7eaa)
2017-04-10 08:33:01 -04:00
mezz 15aee5b18a Skip loading models if there is a fatal mod dependency error (#3772) Close #3768 2017-04-07 16:48:00 -07:00
BlayTheNinth 52409e15cf Fix custom array entry class for config GUI being ignored when adding new entries (#3697) 2017-04-07 16:05:50 -07:00
Justin 4d23ce1314 Fix java 6/7 compatibility in GuiConfig (#3824) 2017-04-04 17:19:13 -07:00
sinus 25497d310b Adding config GUIs to the @Config based configuration System (#3735)
Lots of internal API that modders should not touch. See test mods for example usages.
2017-04-01 14:24:50 -07:00
mezz 67247fba29 Fix #3733 Splash Screen memory bar background matches screen background (#3775) 2017-03-14 21:03:37 -05:00
ichttt bd4fe54753 Improve exception messages during initialization. 2017-02-23 17:15:11 -08:00
James Mitchell c545b8ecd4 Clean up null issues, add more annotations (#3590) 2017-01-11 15:17:56 -08:00
James Mitchell a561f4c41c Fix #3561 import io.IOUtils instead of compress.utils.IOUtils (#3562) 2016-12-23 15:23:31 -08:00
James Mitchell 5165dc52bf Update MCP mappings to snapshot_nodoc_20161220 (#3551) 2016-12-21 15:52:30 -08:00
James Mitchell e9143859c0 Fix some resources that are never closed, close in a finally block (#3544) 2016-12-21 11:13:27 -08:00
James Mitchell 6a125ae0d4 Fix uses of uppercase "Forge" where it fails Loader.isModLoaded(modID) (#3513) 2016-12-17 13:23:39 -08:00
James Mitchell 20e026e601 [1.11] Add memory display to loading screen (#3447) 2016-12-17 13:16:24 -08:00
LexManos 4b7219c07f Fix for showing config default values twice in tooltip (#2257) (#3338)
(cherry picked from commit be73ec3d5ebd972cfacb0f255f71112a0430bc43)
2016-12-05 12:07:44 -08:00
Marvin Rösch 5da0ac73b9 Update assets to new Forge brand (#3464) 2016-11-30 14:56:31 -08:00
LexManos 8d20258f3c First pass at exposing data fixers to modders.
Each mod gets its own version number, mods SHOULD NOT rely on other
mod's fixers, just care about yourself.
Walkers can use IDataFixerData to retrieve their version.
2016-11-28 16:05:41 -08:00
LexManos f8cba13b5b Fix localizations not loading correctly in legacy resource packs. 2016-11-15 22:59:31 -08:00
cpw 7a84376044 Add in registry registration events, new subscription events you can use to make sure you're registering things at the "best" time. 2016-09-17 21:13:15 -04:00
LexManos b879cc9b73 Fix potential shading issue in GuiEditArrayEntries. Closes #3247 2016-09-12 14:48:55 -07:00
LexManos 4cd0f88a69 Add RenderTooltipEvent (#3034) 2016-08-12 13:57:07 -07:00
LexManos fe2243df9f Removed unintentional functionality when using the Splash Screen. 2016-08-08 17:54:12 -07:00
LexManos 0f6b16cada Added config option to disable Forge's fix of Stair/Slab face culling.
Some vanilla resource packs exploit this issue in their custom models causing unintended rendering issues.
2016-07-30 10:31:46 -07:00
cpw 543156a008 Tidy up some more todos 2016-07-27 10:52:48 -04:00
cpw 056ff67a81 Mark it for actual removal in 1.11 2016-07-27 10:41:20 -04:00
cpw efbd21e3eb Fix that the Missing blocks/items/registries prompt often got stuck. 2016-06-25 01:07:45 -04:00
cpw c8d775c865 In accordance with our stated goal of relicensing Forge to LGPL v2.1, this commit enacts that change. Although it is using the 1.9.4 codebase, it is intended that this branch become public with the 1.10 changes, as such the license will take effect at that time. The three commits from persons who have failed to accept the new license, as documented in #2789, have had their commits reverted. This should complete the license transition. Commits after the commit date of this commit should be considered licensed by LGPLv2.1, as indicated in LICENSE-new.txt. All patches are now considered owned by the Forge project and Forge Development LLC in particular (note that they will not get the license boilerplate, as they are machine generated files). 2016-06-22 23:49:48 -04:00
mezz 86d5b5a872 Improve the "missing mods" on-screen error message (#2997) 2016-06-22 22:18:34 -04:00
cpw dd09da27b5 Slight tweak to early loading, to accommodate FMP 2016-06-13 09:33:26 -04:00
cpw caa61e1be9 Merge branch '1.9.4' 2016-05-31 00:34:03 -04:00
mezz 86baf7462f Improve JavaDoc links, fix some broken JavaDocs (#2833)
Improve JavaDoc links, fix broken JavaDocs
2016-05-29 14:05:07 -07:00
LexManos cdc86e9af6 Update mappoings snapshot to 20160518 2016-05-18 05:23:30 -07:00
LexManos b9ac73b0f1 1.9.4 Update.
Major things to note:
Class renames: https://gist.github.com/LexManos/44dd211f90f498ad4015279b103dff86
Tile Entities are now packed in the ChunkData packet.
Forge intends to work around this to better support large moded worlds, but for the time being modders should implement the new function carefully and only send what data they need to!
Minecraft's codebase now has annotations, these are directly from Mojang and should be adheared to!
Added support for package-info.java's containing @Nullable information for all MC code base.
2016-05-18 03:29:10 -07:00
LexManos d8249b7886 Add a java version detection and nag system for users on Java 7 or below.
Added detection of mods that rely on Java 8 and a graceful error screen.
The nag screen will be shown once a day. It can be disabled by editing the forge.cfg.
However it is HIGHLY recomended that user update to Java 8.
2016-05-03 18:26:52 -07:00
LexManos 26b5059396 Fix sluggish scrolling on GuiScrollList's and fix small rendering issue with scroll bar on certian screen sizes. 2016-05-02 14:13:33 -07:00
LexManos 1811d88266 Merge pull request #2616 from iTitus/updateNotificationIcon
Add update notification icon made by @gigaherz, closes #2582
2016-04-03 18:22:27 -07:00
mezz da2964fbd3 Make tooltips layout in the right direction, wrap if there is no room
Same as #2649, but for Minecraft 1.9
2016-03-24 20:39:08 -07:00
RainWarrior 75032ebf9c Made some more public fields either private or final. 2016-03-24 22:22:21 +03:00
RainWarrior 08c00662a0 Removed LanguageRegistry and CollectionWrapperFactory. 2016-03-24 22:22:21 +03:00
RainWarrior a9d23f5e78 Cleanup: removed IEEP, removed redundant casts, fixed imports, fixed typos. 2016-03-24 22:22:20 +03:00
iTitus ecd6f4c1d2 Add flashing update notification icon made by @gigaherz, closes #2582
It is added to the "Mods" button in the main menu and to out-of-date mods in the mod list (there it replaces the "U").
Also fixes a little typo.
2016-03-23 14:48:29 +01:00
RainWarrior 286c8c05b7 Separated model classes to client and common packages. 2016-03-21 10:48:52 +03:00
RainWarrior 4650ee2789 Updated to latest mappings. Exc is broken, some anonymous classes didn't map to srg names. 2016-03-13 04:40:03 +03:00
cpw 2dcb2187c0 Some client handler cleanup 2016-03-06 23:42:30 -05:00
LexManos 8a506022d7 More work on misc things. 2016-03-03 02:57:38 -08:00
RainWarrior 24b66ff9f3 GuiOverlayDebug, ItemModelMesher, RenderManager, Stitcher fixed + minor fixes in forge gui classes. 2016-03-02 15:32:22 +03:00
LexManos 7fadb5aeb8 Small renames before bed. 2016-03-02 01:44:41 -08:00
RainWarrior d9b69fda65 FontRenderer 2016-03-01 21:08:51 +03:00
LexManos ac7c4d2f6c Some import renames and compile error fixes, killed ~800. 2016-03-01 04:58:03 -08:00
iLexiconn 776f5b91d5 Added hook to add entity spectator shader 2016-02-13 00:09:04 +01:00
RainWarrior 0710bdf3f5 Model animation system.
Main things of interest:
  * IAnimationStateMachine - state machine for animations; can load
    from json.
  * AnimationTESR - automatic TESR for animated models.
  * AnimationModelBase - same for entities.
  * ITimeValue - time-varying value, used to control animation
    parameters from code.

  * TESRs can now be batched - look at TESR.renderTileEntityFast +
    TE.hasFastRenderer.
  * RegionRenderCache is not accessible to TESRs and other client-side
    logic - MinecraftForgeClient.getRegionRenderCache.
2016-01-24 09:59:38 +03:00
LexManos 2594196c15 Fixed GuiWrongMinecraft having wrong Log file name. Closes #2348 2016-01-10 20:31:55 -08:00
RainWarrior 104feb2973 Reverted Render registration changes due to them working. 2016-01-01 08:51:56 +03:00
RainWarrior a4123580b1 Nobody is left behind. 2016-01-01 02:17:10 +03:00
RainWarrior cf2bbd1353 Fixed RenderingRegistry not working. Closes #2312. 2016-01-01 02:01:03 +03:00
RainWarrior 56eba05237 1.8.9 update 2015-12-30 07:15:03 +03:00
LexManos b9d1d92654 Fixed ModList GUI rendering incorrectly. Closes #2254 2015-12-10 01:01:51 -08:00
cpw 97ef6a5d1f Giant registry fixup 2015-11-28 03:07:53 -05:00
LexManos 5549b06f96 Compiler warnings pass, undeprecated SplashProgress related stuff. 2015-11-26 19:38:21 -08:00
cpw 68dfcccd57 Update mappings to 20151122. 2015-11-23 23:18:52 -05:00
cpw 84c3ef0f5c Merge branch 'master' into 1.8.8 2015-11-23 22:39:49 -05:00
Lex Manos 767d733948 Enable the normal ModList GUI in game. Use GL_SCISSOR to support the transparent in-game GUI. 2015-11-18 00:28:26 -08:00
cpw 02e6d581d3 Merge branch 'master' into noci-1.8.8 2015-11-13 09:46:50 -05:00
cpw ce40f91fb0 WorldGen rejects, lots of them. Couple of small fixes elsewhere. 2015-11-12 23:30:53 -05:00
RainWarrior 426340fed5 Updated FML Gui methods to WorldRenderer API changes. 2015-11-11 19:17:32 +03:00
Lex Manos ffbad6633d Fixed Open url confirm screen not showing URL. 2015-11-08 12:52:41 -08:00
Choonster 729fca7722 Fix texture error message for broken textures
-- Fixes #2100
-- Iterates over badTextureDomains instead of missingTextures.keySet()
as a domain can have broken textures without any missing textures
2015-11-06 06:52:09 +11:00
Lex Manos d790008353 Introduce a new centralized version checking system.
Using the @Mod annotation mods can opt-in to a centrally controlled update system.
This is PURELY a notification system and will NOT automatically download any updates.
The End User can control which mods check for updates and disabel the system entirely using the Forge Config and GUI.
Format for the json the URL must point to is described here: https://gist.github.com/LexManos/7aacb9aa991330523884
2015-11-04 14:37:15 -08:00
Lex Manos 479c7f8b54 Redesign the ModList GUI to use a scrolling list for the main body content.
Allowing for larger information to be displayed.
URLs are auto-detected and now clickable.
Mod Logos are now centered, it looks better.
2015-11-04 13:57:47 -08:00
The_Fireplace 6dc50ace6b Fixed a bug that caused the config option name to overlap with the selectable values when using GuiConfigEntries.SelectValueEntry, fixes #2114 2015-10-31 18:28:29 -05:00
Lex Manos 90a88efd8a Fixed issue where config folder would not be created before SplashProgress tried to read from it.
Default macs to disable the new loading screen due to to many macs having issues.
Users can enable it again by editing their config.
Catch and gracefully handle more errors when starting up the Splash Screen.
2015-08-22 18:55:32 -07:00
cpw 614bbcb0da FML is no more. FML has ceased to be. FML's expired and gone to meet its maker. FML's a stiff! Bereft of life, FML rests in peace. 2015-08-01 23:51:40 -04:00