Brennan Ward
a15c4dc9b0
Add recipe types for faster runtime iteration. ( #5312 )
2019-01-25 10:22:41 -08:00
tterrag
7c11fe1022
Fix capability attach event not firing with base type
2019-01-24 21:04:50 -05:00
liach
c01b336095
Improves topological sort
...
This can be used for mod sorting, dependencies between registries, etc.
e.g. https://github.com/MinecraftForge/MinecraftForge/pull/4694#issuecomment-412520302
New features:
Now accepts guava graph
Performance improvement: no longer reverse the graph; changed dfs to bfs
Accepets a comparator for secondary order, e.g. natural order, index by map
Now properly reports all cycles in a graph with Tarjan's strongly connected component algorithm
Adds a test to prove the validity of the sort and cycle detection
Modified build.gradle for test source directory and dependencies
Mod loading changes:
Sort mod file info instead of suppliers (we don't have suppliers instances)
Moves cycle error reporting out of topological sort and into mod sorter
Prevent mod file dependencies between mods that share the same file
Signed-off-by: liach <liach@users.noreply.github.com>
2019-01-21 03:06:27 +00:00
cpw
040cc4bf16
Expose a couple of mods.toml properties properly. Half-implemented
...
override namespace - still needs to be reviewed and determined how this
might work in detail.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-01-20 21:26:31 -05:00
SquidDev
eefc4d3e84
Use the reply logical side when enqueing work
...
When receiving a packet, NetworkDirection.getLogicalSide details where
the packet was the packet was sent from. Therefore, on a client it'll
be SERVER (and vice virsa), and so the work is queued on the sever
thread, instead of using Minecraft.
2019-01-20 12:31:12 -05:00
ichttt
c3c979f11a
Use minecraft's util class to open files
2019-01-20 12:23:44 -05:00
ichttt
276d0c49c1
Validate mod ids
2019-01-20 12:23:44 -05:00
cpw
7c840dce35
Fix classcast in autoeventsubscriber, also actually make progression
...
work properly. This whole thing is a bit of a gross hack.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-01-20 12:20:27 -05:00
alexbegt
2bee5f7ac6
Fix recipe constants being overridden by a blank map. Closes #5380
2019-01-20 16:03:09 +00:00
cpw
60524f0f3e
Fix case error in AutomaticEventSubscriber
...
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-01-20 00:32:11 -05:00
cpw
f4d2d1a24b
Move Registry Events to the mod event bus.
...
Add infrastructure to allow parallel or synchronous dispatch of
mod events, and pass-through of events to the dispatch system.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-01-19 23:27:27 -05:00
tterrag
ff2e35c243
Greatly improve DeferredWorkQueue API ( #5357 )
2019-01-18 21:10:22 -05:00
tterrag
0d1a2f2af3
Add utilities that RuntimeEnumExtender expects to exist
2019-01-17 13:11:54 -05:00
LexManos
3b029ba031
Re-introduce patch for injecting registry mappings during world loading.
...
And re-introduce registry freezing to ONLY the Register events.
Filter ObjectHolders by registry type and fire between every Register event.
2019-01-16 12:28:13 -08:00
tterrag
cd21f7b927
Implement ConfigValue as a wrapper around ForgeConfigSpec results ( #5361 )
2019-01-15 23:28:40 -05:00
cpw
56a3926b86
Fix up event naming, move them to sensible packages and document everything a bit.
2019-01-14 22:43:17 -05:00
Vincent Lee
220bf8730a
[1.13] Expand tag deserializer to add optional values and remove values without overwriting everything. ( #5350 )
2019-01-14 19:23:36 -08:00
mezz
118eac8f39
Fix mod lifecycle event names
2019-01-14 14:00:15 -08:00
cpw
99452a8b45
Update a bunch of libs, rename some of the mod events to more
...
meaningful names.
2019-01-14 00:39:00 -05:00
LexManos
eb42614288
Add list support to ForgeConfigSpec.
...
Fix incorrect Supplier used in ForgeConfigSpec.
Port ForgeChunkManager config to new system.
Delete old Configuration classes. It's finally gone!
2019-01-11 23:01:08 -08:00
XCompWiz
f2b54acd67
Allow providing a BufferedImage for banner render generation ( #5041 )
...
Ported to 1.13 using NativeImage
Co-authored-by: tterrag <tterrag1098@gmail.com>
2019-01-11 18:32:17 -05:00
Tim
497bc10d0a
Fix Mesa biome entry tags in the BiomeDictionary ( #5177 )
2019-01-11 18:32:17 -05:00
Ben Staddon
c1bb5cb250
Patch PotionHelper to use registry delegates ( #5142 )
2019-01-11 18:32:17 -05:00
tterrag
958bbf6c9a
Fix MC-136995 - Chunk loading and unloading issue with entities placed in exact positions. ( #5160 )
...
This includes three commits from 1.12.x:
c20a5e8805
93b704b459
ee0d43bbde
Scatter gun patches to improve entity tracking and position tracking.
Provided by Aikar through the Paper project, this commit of patches combines the following patches:
fd1bd5223a/Spigot-Server-Patches/0306-Mark-chunk-dirty-anytime-entities-change-to-guarante.patch
fd1bd5223a/Spigot-Server-Patches/0315-Always-process-chunk-registration-after-moving.patch
fd1bd5223a/Spigot-Server-Patches/0335-Ensure-chunks-are-always-loaded-on-hard-position-set.patch
fd1bd5223a/Spigot-Server-Patches/0378-Sync-Player-Position-to-Vehicles.patch
Co-authored-by: Gabriel Harris-Rouquette <github@gabizou.com>
2019-01-11 18:32:16 -05:00
David Quintana
e98951ee65
Fix blockstate id map calculation. ( #5279 )
2019-01-11 14:52:30 -08:00
LexManos
3765d912a5
Move @EventBusSubscriber application to just after construction instead of pre-init.
2019-01-11 12:28:06 -08:00
Vincent Lee
849bc00b46
Make Block.Builder methods accessible. Closes #5310 ( #5313 )
2019-01-11 11:47:51 -08:00
Vincent Lee
985a48f02e
Fix datapack walking not working for mod datapacks. Closes #5334 ( #5335 )
2019-01-09 20:59:40 -08:00
Vincent Lee
4e196a445a
Add missing setSeed calls to ForgeBlockModelRenderer ( #5338 )
2019-01-09 20:57:55 -08:00
LexManos
36d2e67b07
Reimplement @ObjectHolder scanning, and expose system for others to add handlers.
...
Fix forgedev and userdev run configs.
Fix issue in log functions assuming String arguments.
2019-01-09 20:57:01 -08:00
LexManos
f7acc73282
Update userdev and runconfigs for ForgeGradle changes.
2019-01-08 00:29:36 -08:00
cpw
60926ad6ea
Fix some translation strings. Will pull a big string update from crowdin too.
2019-01-06 21:02:08 -05:00
cpw
f734e614e4
Fire registry events before preinit and after construct.
2019-01-06 17:19:18 -05:00
cpw
1b40618f02
Fix classloading properly. ModLoadingClassLoader doesn't work
...
with the proper delegation model. Abandoned it, in favour of injecting
locators into the Transformer classloader directly.
2019-01-06 16:24:32 -05:00
cpw
58c78560fa
Fix up some stuff with resource packs, so the guilist works properly.
2019-01-05 10:19:47 -05:00
cpw
fd9c83b65f
Finish up classloading system. Use ModJARURL to locate resources
...
and enable ModLauncher to use those instead. This allows all mods to load
within the scope of the game classloader, removing weird conflicts and
class discovery problems.
2019-01-04 23:56:10 -05:00
cpw
6baddc7e26
client and server work standalone and in forge dev. Next up userdev.
...
Moved some launchplugin code to the launcher. Moved servermain to
the launcher.
server currently needs cmdline arguments --fml.forgeVersion=24.0.51-1.13-pre --fml.mcVersion=1.13 --fml.mcpVersion=2018.09.12.04.11.00 --fml.forgeGroup=net.minecraftforge.test
2019-01-01 21:35:23 -05:00
cpw
e9580877b4
fix up some discovery code, and make regular runtime _mostly_ work.
...
Still WIP and doesn't quite get to main screen yet.
2019-01-01 16:50:04 -05:00
LexManos
440649bb95
Fix new launcher jar packaging.
...
Run license checker over new code.
2018-12-31 16:48:23 -08:00
cpw
48846bc0ba
separated fmllauncher code from main forge mod code. This enables much
...
stronger classloader separation between the two sides. Forge now
loads as a regular mod.
Still needs a bunch of debugging, but structure looks good and game loads
in forge dev.
2018-12-31 16:34:33 -05:00
cpw
558e1d2fb0
ResourceLocation Utils for doing things..
2018-12-31 16:34:33 -05:00
tterrag
0b26047ea8
Better documentation for IForgeWorldType, TERFast, TERAnimation
...
Also rename AnimationTESR to TileEntityRendererAnimation
2018-12-29 12:18:10 -05:00
tterrag
7f5a57f4af
Fix patch mistake in IForgeWorldType: CUSTOMIZED -> BUFFET
2018-12-29 12:01:41 -05:00
mezz
dc12cda505
Clean progress bar code and fix TextureMap patch ( #5304 )
2018-12-28 18:05:05 -08:00
mezz
b4cf6f7f36
Implement GuiScreen events for mouse and keyboard ( #5297 )
2018-12-23 23:46:42 -08:00
mezz
f2f04407a4
Add the sender to NetworkEvent.Context for server-side event handlers ( #5295 )
2018-12-22 23:24:11 -08:00
tterrag
8a11e3bac4
Port most of the world patches ( #5294 )
2018-12-22 10:31:18 -08:00
LexManos
4879b0611a
Change how Forge itself is located to be loaded similar to a real mod.
...
Fixes Minecraft/Forge annotation data missing.
Fix Capability injection.
2018-12-21 16:07:39 -08:00
tterrag
d11a67499d
FastTESR -> TileEntityRendererFast
2018-12-21 17:53:01 -05:00
tterrag
b3b8c78527
Rendering patches ( #5262 )
2018-12-21 14:45:35 -08:00
LexManos
a992a4325b
Change getWorld function name to prevent inheritance change in Chunk
2018-12-18 16:11:03 -08:00
David Quintana
c1225f3876
Fix the path handling for mod jar resource packs. ( #5228 )
2018-12-18 12:48:39 -08:00
David Quintana
152836c907
Add raytrace logic to the GuiOverlayDebugForge, so that the debug overlay can show the currently targetted block and liquid. ( #5278 )
2018-12-16 12:47:16 -08:00
David Quintana
52b6da1759
Fix classloading issues in userdev (and possibly also for things like tests within forgedev) ( #5275 )
2018-12-13 15:33:35 -08:00
LexManos
f13465012b
World and TileEntity patch work.
...
TerrtainGen events are removed, 1.13's world gen re-write invalidates them all.
2018-12-13 01:15:53 -08:00
LexManos
7265900c62
More entity patch work. ISpecialArmor deleted.
2018-12-10 22:19:43 -08:00
Liqueur Librazy
719ea50d1a
Use getRawSchemeSpecificPart to preserve escape characters in uri, fix #5236 ( #5237 )
2018-12-10 11:07:50 -08:00
LexManos
bbf1ea41b8
world.gen.feature patches, worldgen should be stable with vanilla. In all places I looked.
2018-12-06 18:09:47 -08:00
LexManos
eb22f42fea
More patch work, our async chunk loading doesn't appear to be viable for 1.13.
2018-12-05 18:08:27 -08:00
LexManos
dd32e74e34
Entity patches progress.
2018-12-05 01:16:33 -08:00
malte0811
e1b4a150c3
Fix race condition causing the FML handshake to hang ( #5222 )
2018-12-04 12:22:01 -08:00
LexManos
76d912c0ba
Include project group in ForgeVersion and determine path to patched jar.
...
While testing we install to net.minecraftforge.test. So don't hardcode it.
2018-12-04 11:55:50 -08:00
LexManos
a3c8e04ee6
Item and NBT patches, IShearable blocks are responsible for setting themselves to air, to allow for setting other states.
2018-12-03 18:04:37 -08:00
LexManos
bf9158172f
Most client patches done except the render pipeline.
...
Someone who has more in depth knowledge of that rendering system will need to do it.
2018-11-28 22:15:05 -08:00
LexManos
47a11b9a7e
GUI Patches
2018-11-21 21:23:24 -08:00
LexManos
b6ddb0a7cf
More patchwork.
2018-11-19 19:55:46 -08:00
LexManos
7c0d94ce9c
Patch work, most of block classes, and fix eclipse run configs.
2018-11-16 23:15:39 -08:00
malte0811
b5264cacf0
Fix crash when placing furnaces or brewing stands in 1.13 ( #5225 )
2018-11-15 13:55:18 -08:00
David Quintana
64c8f67939
Add missing license headers. ( #5192 )
2018-10-19 20:35:29 -07:00
tterrag
74703e2a60
Fix mod asset loading
2018-10-11 18:06:16 -04:00
cpw
43ed744d46
run textcomponenttranslations through the ForgeI18N message format translator as well.
2018-10-05 22:21:30 -04:00
cpw
e199e78a4f
load languages on the server as well as the client, and fix up a bunch of data packs.
2018-10-05 21:42:15 -04:00
cpw
1c9b5fae5e
Server run profile, also setup logging for client profile.
2018-10-05 01:25:27 -04:00
cpw
2b23eb96fb
Tweak library locating code. Works well on vanilla and dev now.
2018-10-04 23:24:02 -04:00
cpw
ca765b857b
Move the version packages somewhere that is now filtered so it doesn't
...
load twice.
2018-10-04 19:28:45 -04:00
cpw
978d0ff2e3
Fall colours
...
🎃 🎃 🎃 🎃 🎃 🎃 🎃 🎃 🎃 🎃
2018-10-04 18:40:34 -04:00
cpw
129870dbe8
Missing language now presents to the UI.
2018-10-04 11:31:08 -04:00
cpw
d5e04dbcb5
Better error passing from early to game client launch.
2018-10-04 00:57:08 -04:00
cpw
c6e7bbe18b
Use the maven artifact code rather than our very outdated copy
2018-10-03 22:47:07 -04:00
cpw
0b11b0e6bb
Launch in the vanilla launcher now.
2018-10-02 00:32:41 -04:00
cpw
6485a48d79
Use latest paulscode (removes need for soundfix transformer) and fix gitignore.
2018-09-30 14:29:14 -04:00
cpw
fe12687ec1
Branding fixup.
2018-09-30 14:29:14 -04:00
cpw
0024d9d283
Config GUI tweaks, and MCP is now part of the "minecraft" entry.
2018-09-30 14:29:14 -04:00
cpw
015ac2547e
Fixup the config GUI and get things working again.
2018-09-29 01:29:49 -04:00
cpw
bb9eca96a8
Basic error display GUI.
2018-09-28 21:07:46 -04:00
cpw
09e2aeaec4
Some tweaks to get the launcher working.
2018-09-24 00:07:33 -04:00
LexManos
94e1a8e0a4
Update mappings to 09/21 snapshots.
...
Conflict with getMatrix in ITransformation, so renamed to getMatrixVec.
2018-09-22 03:40:22 -07:00
LexManos
5ed03945a0
Disable eclipse compiler and switch to SRG patches.
2018-09-22 00:38:21 -07:00
tterrag
d08f8e1a78
Fix remaining issues preventing compilation, launching, and loading worlds ( #5156 )
...
Fix duplicate ID for ingredient serializers
Fix KeyBinding compile errors. No GuiKeyBindingList patches yet.
Implement controls GUI and WorldServer patches
2018-09-21 19:07:48 -07:00
LexManos
c191851ec0
Fixed all compile errors except the 4 in KeyBinding.
2018-09-21 15:50:37 -07:00
LexManos
a0e217b1dc
More because git likes to split to many
2018-09-21 02:17:20 -07:00
LexManos
e2a17ac31b
Ran License checker to fix the headers of files missing them.
2018-09-21 02:15:03 -07:00
LexManos
cdfa7caaeb
More work on compile errors, New system for ToolClasses, using a ToolType class instead to de-stringify things.
2018-09-21 01:47:12 -07:00
Anthony Anderson
0cd21ebe7e
Block patches and event work ( #5138 )
2018-09-20 13:11:02 -07:00
LexManos
b25f92b0c0
Add concept of pushing/poping levels to ForgeConfigSpec as well as comments on those levels.
2018-09-18 12:19:19 -07:00
tterrag
c4cf950863
Fix the rest of the "easy" compile errors ( #5151 )
...
* Add Entity.changeDimension patch and transitively required patches
* Fix throws declaration on CommandSetDimension#execute
* Fix rest of errors in fluid package
* Add PLAYER_REACH attribute
* Fix compile errors in fml.client.config and add GuiButton patch
* Delete unnecessary client.config classes, fix all config errors
* Comment some fluid errors in models
* Fix all errors in common package root, except ForgeHooks
* Mass comment network package
* Experimental conversion of extended states to generic base class
* Fix errors in common.util
* Remove config annotation stuff cuz lex said so
* Make extended state stuff compile fully
2018-09-18 00:04:02 -04:00
LexManos
6814cbf0df
Beginning work on redesigning Config API.
2018-09-17 20:40:42 -07:00
LexManos
02c31cc867
More work on recipes, custom ingredients, recipes, and constants should work now.
2018-09-17 03:41:16 -07:00
cpw
03d19f2e70
Tweak to remove javac compile errors related to generics on registries.
...
Also remove the recipes registry call - they're gone from registries completely.
2018-09-16 22:27:08 -04:00
cpw
abacf8e141
Net handling pass 2. Tidied up login packet sourcing, generate registry packets.
2018-09-16 20:59:25 -04:00