mirror of
https://github.com/GTNewHorizons/ForgeMultipart.git
synced 2026-11-13 00:47:52 +00:00
9db07f8c7cacefff9ef2f70840bbe6594a48739f
TSlottedPart, IRandomDisplayTick, INeighborTileChange, TRandomUpdateTick, ISidedHollowConnect and IMicroMaterialRender. All six are member- and descriptor-identical to the reference. The seven implementors and mixin tiles were diffed too and are unchanged member for member. Five were already pure abstract interfaces in bytecode, so their conversion has no bytecode consequence; exactly one class leaves the jar, TRandomUpdateTick$class. onWorldJoin cannot become a default: TMultiPart declares it, and a superclass method beats an interface default, so the auto-registration would silently never run. It stays abstract and implementors call TickScheduler.loadRandomTick themselves, as RedstoneTorchPart already did. No bridge was written for TRandomUpdateTick$class. No jar in the pack references TRandomUpdateTick in any form, and the frozen baseline holds exactly the eight helpers the inventory lists. 99 plain-JVM tests and 5 Forge server tests pass.
ForgeMultipart
An API for dynamically handling different functional parts in the one block space.
Requirements:
- The latest version of CCL (files.minecraftforge.net/CodeChickenLib/)
- Forge
- A scala compatible IDE and project (For eclipse, download the scala eclipse plugin and right click on the project -> Add Scala Nature)
If you only want to use the API and not modify it:
- Download the latest dev version from files.minecraftforge.net/ForgeMultipart/
- Download the latest dev version of CCL.
- Place both mods in your /libs/ folder and link them as libraries in your IDE.
Implementation of all parts of the API should be clean and easy in Java. The minecraft multipart mod is implemented in java as a test case.
Languages
Scala
85.4%
Java
14.6%