30 lines
948 B
Java
30 lines
948 B
Java
package appeng.items.misc;
|
|
|
|
import net.fabricmc.api.EnvType;
|
|
import net.fabricmc.api.Environment;
|
|
import net.fabricmc.fabric.api.object.builder.v1.client.model.FabricModelPredicateProviderRegistry;
|
|
import net.minecraft.item.Item;
|
|
|
|
import appeng.bootstrap.components.IClientSetupComponent;
|
|
import appeng.core.AppEng;
|
|
|
|
/**
|
|
* Exposes a predicate "growth", which is used in the item model to
|
|
* differentiate the growth stages.
|
|
*/
|
|
public class CrystalSeedRendering implements IClientSetupComponent {
|
|
private final Item item;
|
|
|
|
public CrystalSeedRendering(Item item) {
|
|
this.item = item;
|
|
}
|
|
|
|
@Override
|
|
@Environment(EnvType.CLIENT)
|
|
public void setup() {
|
|
// Expose the growth of the seed to the model system
|
|
FabricModelPredicateProviderRegistry.register(item, AppEng.makeId("growth"),
|
|
(is, w, p) -> CrystalSeedItem.getGrowthTicks(is) / (float) CrystalSeedItem.GROWTH_TICKS_REQUIRED);
|
|
}
|
|
}
|