Algent f2f1870931 refactor: port TItemMultiPart to Java
Replaces ItemMultiPart.scala with Java implementations of JItemMultiPart,
TItemMultiPart and the TItemMultiPart$class bridge. The interface is
descriptor-identical to the reference, JItemMultiPart keeps its
constructor and both instance methods and gains only additive statics, and
the bridge keeps all three public statics for ProjRed, its only consumer.
The emitted class-file set for this area is unchanged.

This is the first converted trait that extends a Minecraft class rather
than TMultiPart, so the linearization check ran against Item. The same
split applied: getHitDepth became a real default because Item does not
declare it, while onItemUse stayed abstract because Item does and a
default would silently lose to the vanilla implementation. The rule
generalises to the implementor's actual superclass.

The bridge's getHitDepth ignores its part argument and calls the static
directly, matching the reference whose trait body never used this. The
onItemUse path still dispatches getHitDepth through the interface, so an
implementor's override is honoured.

Validated with 57 plain-JVM tests, a clean build, and the Java 8 Forge
dedicated-server suite.
2026-08-14 21:25:57 +02:00
2026-04-27 13:42:24 +02:00
2026-08-14 21:25:57 +02:00
2023-01-19 15:33:54 +00:00
2025-06-03 12:52:42 -06:00
2026-08-14 16:52:22 +02:00
2022-01-17 22:09:17 -08:00
2026-04-27 13:42:24 +02:00
2026-03-08 19:23:42 +01:00
2021-11-19 23:01:31 +01:00
2013-06-26 21:26:28 +10:00
2013-07-31 20:55:14 +10:00
2023-06-27 17:23:32 +09:00
2026-04-27 13:42:24 +02:00

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.

S
Description
No description provided
Readme
4.1 MiB
0 Stars 1 Watchers 0 Forks
Languages
Scala 85.4%
Java 14.6%