Regular mods are now automatically de-duped based on the version number -
the highest version file of a "root mod id" is now selected automatically.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
event channels that care about such things. Mods using simplechannel
don't need to care.
Also, put a sync wrapper around crashreportextender, so it doesn't
die sometimes randomly during startup.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
* Reimplement forge blockstates variant through the use of a pseudo-model that handles the model loading, retexturing, custom data, etc. on behalf of the blockstates loader. This model gets injected into the model registry with an autogenerated unique name, to not collide with other model locations.
* Fix model loaders not being properly initialized by calling the reload method from the loader register function. In 1.12, registering a reload listener caused the listener to be called right away from the register method. This is not true anymore.
off-thread GUIs in any way shape or form, and we need the main thread to do real work.
Fix forge fading in wrongly.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
- Fix race condition lazy-initializing flowing fluid block data.
- Fix typo in ItemTextureQuadConverter that prevents certain animated textures from being used in the fluid bucket.
- Fix calls to onContentsChanged in FluidTank.
- Fix FluidUtil.tryEmptyContainer logic when simulating.
- Fix EmptyFluidHandler.fill returning the wrong number.
respective behavioural components. This should facilitate fixing the
server pack data pack ordering, as well as other new features of mod
resource packs.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
to the local client - it is not needed because obviously not. Seems to have
fixed the problem. Probably infinity new bugs by this.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
at client connection time. This means the client now knows about the
dimensiontype properly and can access the ModDimension information on
the client.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
As a result, we can now support coloured log output again, by default.
Regen run configs to get the change (you should do this every update, you
know :D)
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
as to scope. Its functionality will be tied to the events in future -
so mods can request the deferred work through methods on the Mod Lifecycle
events directly. The API will be coming soon.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
even though there were still parallel threads running. Also, handle exceptions
in the AutomaticEventSubscriber rather than leaking them to the Parallel processor.
Actually closes#6148
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
- Change static lookup map to an instance variable
- Add an instance variable for the "empty pot" for the current block
- Keep one instance of the lookup map between the empty pot and all its full versions
- Convert everything to use delegates
* Some (sadly breaking) improvements to the API, after feedback and concerns provided by users:
- Moved calculation of the translation key to the FluidAttributes constructor, so that builders can be shared between still & flowing sub-fluids.
- Moved biome-based coloring to a dedicated FluidAttributes.Water variant, which is not used by default.
- Added logic to automatically gather fluid textures into the list of textures to bake.
- Patched BucketItem and FlowingFluidBlock to avoid eager access to the fluid objects.
- Added a ForgeFlowingFluid class, as a more user-friendly way to construct a new FlowingFluid.
* Fix nulls returning from non-null methods, and null-check of non-nullable values.
* Fix missed computation of the isEmpty flag in FluidStack
* Cleanup getAmount/isEmpty calls.
* Remove redundant suppliers. That info is readily available from the vanilla Fluid / FluidState.
- Moved forge fluids into FluidAttributes companion object to the vanilla Fluid. By gigaherz
- Redesigned the Fluid API to be closer to the Items API. By King Lemming
Co-authored-by: King Lemming <kinglemming@gmail.com>
Add early error for setting invalid world directory. Closes#6084
Fix PlayerTickEvent not firing when dead, even if player isn't removed from world yet. Closes#6074
Fix PlayerDestroyItemEvent not firing for some cases. Closes#6067
`import net.minecraftforge.fml.common.gameevent.PlayerEvent;`
to
`import net.minecraftforge.event.entity.player.PlayerEvent;`
and
`import net.minecraftforge.fml.common.gameevent.TickEvent;`
to
`import net.minecraftforge.event.TickEvent;`
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
Also fixed the "translations" not being available early if an exception occurs
by force loading the forge and MC ones. Closes#5984
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
Fixed trees able to be generated through water. Closes#6000
Change Block#toString to use getRegistryName instead of getNameForObject Closes#5937
Allow Cooking Recipes to deserialize results with stack sizes. Closes#5960
when passed a modid and a type (CLIENT, COMMON or SERVER) will display
a link in the caller's chat to open that file in the OS file viewer of choice.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
be overridden in the fml.toml config file if desired).
Will load any type of config tracked file from there - client, common, server
or custom tracked file. This means you can ship defaults for your pack
in a defaultconfig directory. I am thinking about ways to force a specific
config override for an existing config.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
Seriously, this is how to do targeted changes to specific classes.
In this case, adding a fieldtomethod redirect for EffectInstance.potion
to allow substitution.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
class as suggested in the issue.
Note: most tests are commented out at the present time, pending
rework. Tests that work, work.
Signed-off-by: cpw <cpw+github@weeksfamily.ca>
Add AT for GameRules.register Closes#5946
Fix Forge Blockstate loader model path is inconsistent with vanilla blockstates Closes#5892
Fix client crashing when opting not to load a world when there's missing blocks Closes#5886
Fixed wrong example path for the access transformer in the MDK build.gradle. #5891
Added getters for mouse x/y velocity and if the middle-mouse button is being held down. #5776
Modify issue template for better clarity. #5874
Fixed grindstone not using ItemStack-sensitive getMaxDamage. #5831
Added ParticleManager.registerFactory to Forge's AT. #5896
Fixed NPE in SidedInvWrapper when side was null. #5787
Moved EndermanEntity.setAttackTarget super call to allow LivingSetAttackTargetEvent the ability to override default behavior. #5778
Added field to make "Looking at" debug info maximum distance configurable #5714