Commit graph

46 commits

Author SHA1 Message Date
cpw
3c55b46ca0
Big cleanup of logging. Might do some tweaks of the userdev logging, but this should be good for vanilla..
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
2019-01-26 22:18:28 -05: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
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
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
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
David Quintana
e98951ee65 Fix blockstate id map calculation. (#5279) 2019-01-11 14:52:30 -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
LexManos
7c0d94ce9c Patch work, most of block classes, and fix eclipse run configs. 2018-11-16 23:15:39 -08: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
c77d00efe4 Recipe work. No longer a registry. OreDictionary related code removed in favor of Tags. Started moving some OreDict items to tags.
Added code to RuntimeEnumExtender to return existing enum values with the same name if they exist instead of creating more.
2018-09-16 04:20:28 -07:00
LexManos
b4c23aba8e Command work, and Added TileEntityType as a Forge Registry. 2018-09-15 00:59:19 -07:00
tterrag
3f743887e7 More compile cleanups. (#5139) 2018-09-14 09:30:56 -07:00
LexManos
bec9214d0c Fix launching in dev 2018-09-10 13:08:35 -07:00
LexManos
2798080f60 More error cleanup, reinstanted IForgeReigstryEntry.
The abstract class will be used as the default, and to enable delegates but we should keep it api simple by keeping the interface.
Removed some patches that didnt get removed in the rebase.
2018-09-05 20:06:18 -07:00
cpw
d7e9217695 Network init 2018-09-05 13:14:16 -07:00
cpw
b50b768852 Server starts 2018-09-05 13:13:53 -07:00
cpw
77c3310711 Zeroth pass on 1.13 2018-09-05 12:56:01 -07:00
cpw
d0ab0e166c Well, it works, for a game, now. 2018-09-05 12:30:02 -07:00
cpw
06b16aaa19 Some more stuffs. ObjectHolder's replacement? 2018-09-05 11:58:31 -07:00
cpw
c1f0e1b68f Holy Moly, it's a big fat commit of broken code! 2018-09-05 11:16:33 -07:00
LexManos
0cf5ef221c Run licenseFormat to apply license header to all files. 2018-07-01 14:17:31 -07:00
Ben Staddon
43895d773e Add validation to recipe registry (#4957) 2018-06-26 22:00:53 -07:00
Ben Staddon
1d863cdefc Check name prefix used for tile entity registrations (#4681) 2018-05-16 22:52:32 -07:00
Ben Staddon
2353800d61 Fix typo in validation of vanilla registry wrappers (#4899) 2018-04-26 21:18:39 -07:00
rguy96
274dfc23ef Fix GameData#revert ignoring RegistryManager parameter (#4232) 2017-10-31 11:29:35 -07:00
mezz
083daeb5ed Update mcp mappings to 20171003 2017-10-03 22:08:36 -07:00
LexManos
303a775fc3 Add new /forge entity list command for displaying a list of all entities in world.
As well as tracking down chunks with large amounts of entities.
2017-09-25 12:56:09 -07:00
kashike
f2b07e8db1 Introduce entity entry builder, useful in the Register<EntityEntry> event replacing needed calls to EntityRegistry. (#4408) 2017-09-20 13:03:03 -07:00
LexManos
52702e5cc9 Fix issue saving observers using different metadata then vanilla. 2017-08-30 13:20:51 -07:00
LexManos
45dfce0013 Fix for dummied server side registry entries while client has read entries. 2017-08-22 02:08:34 -07:00
LexManos
28e341002f Add support for server side only recipes, as well as detection of vanilla client recipe book filter to prevent errors. 2017-08-15 05:10:07 -07:00
LexManos
afea45dccc Fix tripwire statemap not being complete when mappings change. Closes #3924 2017-07-18 12:53:55 -07:00
LexManos
872d721e77 Send remap event when data is frozen to notify modders to bake things.
Fixes search not working when connecting to vanilla servers.
2017-07-13 14:45:51 -07:00
LexManos
7b0a005167 Fix log spam when creating dummy blocks. 2017-07-05 14:40:43 -07:00
Kina
81584d4215 Correct the default resource location of potion registry (#4117) 2017-07-02 13:13:46 -05:00
mezz
8581225da8 Use java 8 collection functions 2017-06-28 00:14:10 -07:00
LexManos
c565984822 Allow the recipe registry to be modified. 2017-06-27 15:17:26 -07:00
LexManos
3ae30478db More work on registry override ability. Closes #4079 2017-06-25 20:45:48 -07:00
LexManos
b542179242 Make Dummy block an Air block. 2017-06-24 15:06:28 -07:00
mezz
27321efb1f Clean up logging 2017-06-24 01:46:05 -07:00
LexManos
dd42f84a47 Loosen up registry locks until data freeze. 2017-06-23 17:52:59 -07:00
LexManos
f4afb6f56c Implement override tracking and syncing.
Overrides MUST be registered within a tracked event so we know what mod it came from.
This will allow servers/saves to select which mod 'wins' and becomes to active entry.
This should also mean that when connecting to a vanilla server things will revert.
2017-06-23 16:59:57 -05:00
LexManos
e805b12df8 Fixup some registry tests, dummies are now persisted across syncing. 2017-06-23 16:59:57 -05:00
LexManos
dee84dc1e4 More work, game loads and runs now.
Moved Registry events to directly AFTER PreInit instead of before.
This allows modders to register handlers for it without @EventBusSubscriber.
It also allows you to register custom things needed before the construction of blocks or items such as Fluids.
TODO: Move Fluids to a real registry.
@ObjectHolder can now be used on private fields.
Reworked FMLModIdMappingEvent to include data for all registries.
Tile Entities are now registrable.
2017-06-23 16:59:57 -05:00
LexManos
a26d89c876 First pass of registry rewrite.
Tests do not run yet.
Things of note:
Removed the idea of substitutions, just register multiple items with the same name they will override each other like a normal map.
Decoupled Forge registries from vanilla classes. They now use bouncer classes. MODDERS SHOULD NEVER USE THESE
Introduced more stringent registry locking. As it sits things are only allowed to be registered during the RegistryEvent.Registry phases!
This is to force modders to split up their registrations, and pave the way for calling these functions multiple times during a single MC lifecycle.
ObjectHolder, Missing Mappings, etc... *should* now work for all registry types, nothing should be special cased to Blocks/Items anymore.
Added optional generic dummy factory to registries, to allow registry creators the ability to dummy more then just Blocks.
Re-worked the ItemStack transformer and applied it to ItemBlock and ItemBlockSpecial. Allowing us to cleanup reflective hacks in Block callbacks.
Registry onAdd callback is now only fired on the ACTIVE registry, fixing any issues of temp registries overriding active objects.
2017-06-23 16:59:57 -05:00