Fabric port in progress
This commit is contained in:
@@ -29,11 +29,11 @@ import javax.annotation.Nullable;
|
||||
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.client.render.model.BakedQuad;
|
||||
import net.minecraft.client.render.model.ItemOverrideList;
|
||||
import net.minecraft.client.renderer.texture.TextureAtlasSprite;
|
||||
import net.minecraft.client.render.model.json.ModelOverrideList;
|
||||
import net.minecraft.client.texture.Sprite;
|
||||
import net.minecraft.util.math.Direction;
|
||||
import net.minecraftforge.client.model.data.IDynamicBakedModel;
|
||||
import net.minecraftforge.client.model.data.IModelData;
|
||||
|
||||
|
||||
import appeng.client.render.cablebus.CubeBuilder;
|
||||
import appeng.tile.crafting.CraftingCubeModelData;
|
||||
@@ -47,13 +47,13 @@ import appeng.util.Platform;
|
||||
*/
|
||||
abstract class CraftingCubeBakedModel implements IDynamicBakedModel {
|
||||
|
||||
private final TextureAtlasSprite ringCorner;
|
||||
private final Sprite ringCorner;
|
||||
|
||||
private final TextureAtlasSprite ringHor;
|
||||
private final Sprite ringHor;
|
||||
|
||||
private final TextureAtlasSprite ringVer;
|
||||
private final Sprite ringVer;
|
||||
|
||||
CraftingCubeBakedModel(TextureAtlasSprite ringCorner, TextureAtlasSprite ringHor, TextureAtlasSprite ringVer) {
|
||||
CraftingCubeBakedModel(Sprite ringCorner, Sprite ringHor, Sprite ringVer) {
|
||||
this.ringCorner = ringCorner;
|
||||
this.ringHor = ringHor;
|
||||
this.ringVer = ringVer;
|
||||
@@ -256,33 +256,33 @@ abstract class CraftingCubeBakedModel implements IDynamicBakedModel {
|
||||
float x1, float y1, float z1, float x2, float y2, float z2);
|
||||
|
||||
@Override
|
||||
public boolean isAmbientOcclusion() {
|
||||
public boolean useAmbientOcclusion() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isGui3d() {
|
||||
public boolean hasDepth() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isBuiltInRenderer() {
|
||||
public boolean isBuiltin() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public TextureAtlasSprite getParticleTexture() {
|
||||
public Sprite getSprite() {
|
||||
return this.ringCorner;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean func_230044_c_() {
|
||||
public boolean isSideLit() {
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ItemOverrideList getOverrides() {
|
||||
return ItemOverrideList.EMPTY;
|
||||
public ModelOverrideList getOverrides() {
|
||||
return ModelOverrideList.EMPTY;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -28,11 +28,11 @@ import com.mojang.datafixers.util.Pair;
|
||||
import net.minecraft.client.render.model.BakedModel;
|
||||
import net.minecraft.client.render.model.IModelTransform;
|
||||
import net.minecraft.client.render.model.IUnbakedModel;
|
||||
import net.minecraft.client.render.model.ItemOverrideList;
|
||||
import net.minecraft.client.render.model.json.ModelOverrideList;
|
||||
import net.minecraft.client.render.model.Material;
|
||||
import net.minecraft.client.render.model.ModelLoader;
|
||||
import net.minecraft.client.renderer.texture.AtlasTexture;
|
||||
import net.minecraft.client.renderer.texture.TextureAtlasSprite;
|
||||
import net.minecraft.client.texture.Sprite;
|
||||
import net.minecraft.util.Identifier;
|
||||
import net.minecraftforge.client.model.IModelConfiguration;
|
||||
import net.minecraftforge.client.model.geometry.IModelGeometry;
|
||||
@@ -76,12 +76,12 @@ class CraftingCubeModel implements IModelGeometry<CraftingCubeModel> {
|
||||
|
||||
@Override
|
||||
public BakedModel bake(IModelConfiguration owner, ModelLoader bakery,
|
||||
Function<Material, TextureAtlasSprite> spriteGetter, IModelTransform modelTransform,
|
||||
ItemOverrideList overrides, Identifier modelLocation) {
|
||||
Function<Material, Sprite> spriteGetter, IModelTransform modelTransform,
|
||||
ModelOverrideList overrides, Identifier modelLocation) {
|
||||
// Retrieve our textures and pass them on to the baked model
|
||||
TextureAtlasSprite ringCorner = spriteGetter.apply(RING_CORNER);
|
||||
TextureAtlasSprite ringSideHor = spriteGetter.apply(RING_SIDE_HOR);
|
||||
TextureAtlasSprite ringSideVer = spriteGetter.apply(RING_SIDE_VER);
|
||||
Sprite ringCorner = spriteGetter.apply(RING_CORNER);
|
||||
Sprite ringSideHor = spriteGetter.apply(RING_SIDE_HOR);
|
||||
Sprite ringSideVer = spriteGetter.apply(RING_SIDE_VER);
|
||||
|
||||
switch (this.type) {
|
||||
case UNIT:
|
||||
@@ -102,8 +102,8 @@ class CraftingCubeModel implements IModelGeometry<CraftingCubeModel> {
|
||||
}
|
||||
}
|
||||
|
||||
private static TextureAtlasSprite getLightTexture(Function<Material, TextureAtlasSprite> textureGetter,
|
||||
AbstractCraftingUnitBlock.CraftingUnitType type) {
|
||||
private static Sprite getLightTexture(Function<Material, Sprite> textureGetter,
|
||||
AbstractCraftingUnitBlock.CraftingUnitType type) {
|
||||
switch (type) {
|
||||
case ACCELERATOR:
|
||||
return textureGetter.apply(ACCELERATOR_LIGHT);
|
||||
|
||||
@@ -4,13 +4,13 @@ import javax.annotation.Nullable;
|
||||
|
||||
import com.google.common.collect.ImmutableMap;
|
||||
import net.minecraft.client.render.model.BakedModel;
|
||||
import net.minecraft.client.render.model.json.ModelOverrideList;
|
||||
import net.minecraft.client.render.model.json.ModelTransformation;
|
||||
import net.minecraft.client.util.math.MatrixStack;
|
||||
|
||||
import net.minecraft.client.MinecraftClient;
|
||||
import net.minecraft.client.gui.screen.Screen;
|
||||
import net.minecraft.client.renderer.TransformationMatrix;
|
||||
import net.minecraft.client.render.model.ItemCameraTransforms;
|
||||
import net.minecraft.client.render.model.ItemOverrideList;
|
||||
import net.minecraft.entity.LivingEntity;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.world.World;
|
||||
@@ -25,12 +25,12 @@ import appeng.items.misc.EncodedPatternItem;
|
||||
* holding shift - The itemstack is being rendered in the UI (not on the ground,
|
||||
* etc.)
|
||||
*
|
||||
* We do this by abusing a custom {@link ItemOverrideList} since it will be
|
||||
* We do this by abusing a custom {@link ModelOverrideList} since it will be
|
||||
* called each frame with the itemstack that is about to be rendered. We return
|
||||
* a custom IBakedModel ({@link ShiftHoldingModelWrapper} if the player is
|
||||
* holding down shift from the override list. This custom baked model implements
|
||||
* {@link #doesHandlePerspectives()} and returns the crafting result model if
|
||||
* the model for {@link ItemCameraTransforms.TransformType#GUI} is requested.
|
||||
* the model for {@link ModelTransformation.TransformType#GUI} is requested.
|
||||
*/
|
||||
public class EncodedPatternBakedModel extends DelegateBakedModel {
|
||||
|
||||
@@ -42,7 +42,7 @@ public class EncodedPatternBakedModel extends DelegateBakedModel {
|
||||
}
|
||||
|
||||
@Override
|
||||
public ItemOverrideList getOverrides() {
|
||||
public ModelOverrideList getOverrides() {
|
||||
return this.overrides;
|
||||
}
|
||||
|
||||
@@ -71,12 +71,12 @@ public class EncodedPatternBakedModel extends DelegateBakedModel {
|
||||
}
|
||||
|
||||
@Override
|
||||
public BakedModel handlePerspective(ItemCameraTransforms.TransformType cameraTransformType, MatrixStack mat) {
|
||||
public BakedModel handlePerspective(ModelTransformation.TransformType cameraTransformType, MatrixStack mat) {
|
||||
// No need to re-check for shift being held since this model is only handed out
|
||||
// in that case
|
||||
if (cameraTransformType == ItemCameraTransforms.TransformType.GUI) {
|
||||
ImmutableMap<ItemCameraTransforms.TransformType, TransformationMatrix> transforms = PerspectiveMapWrapper
|
||||
.getTransforms(outputModel.getItemCameraTransforms());
|
||||
if (cameraTransformType == ModelTransformation.TransformType.GUI) {
|
||||
ImmutableMap<ModelTransformation.TransformType, TransformationMatrix> transforms = PerspectiveMapWrapper
|
||||
.getTransforms(outputModel.getTransformation());
|
||||
return PerspectiveMapWrapper.handlePerspective(this.outputModel, transforms, cameraTransformType, mat);
|
||||
} else {
|
||||
return getBaseModel().handlePerspective(cameraTransformType, mat);
|
||||
@@ -86,8 +86,8 @@ public class EncodedPatternBakedModel extends DelegateBakedModel {
|
||||
// This determines diffuse lighting in the UI, and since we want to render
|
||||
// the outputModel in the UI, we need to use it's setting here
|
||||
@Override
|
||||
public boolean func_230044_c_() {
|
||||
return outputModel.func_230044_c_();
|
||||
public boolean isSideLit() {
|
||||
return outputModel.isSideLit();
|
||||
}
|
||||
|
||||
}
|
||||
@@ -98,7 +98,7 @@ public class EncodedPatternBakedModel extends DelegateBakedModel {
|
||||
}
|
||||
|
||||
@Override
|
||||
public BakedModel handlePerspective(ItemCameraTransforms.TransformType cameraTransformType, MatrixStack mat) {
|
||||
public BakedModel handlePerspective(ModelTransformation.TransformType cameraTransformType, MatrixStack mat) {
|
||||
return getBaseModel().handlePerspective(cameraTransformType, mat);
|
||||
}
|
||||
|
||||
@@ -108,7 +108,7 @@ public class EncodedPatternBakedModel extends DelegateBakedModel {
|
||||
* actually check if shift is being held, and if so, determine the crafting
|
||||
* output model.
|
||||
*/
|
||||
private class CustomOverrideList extends ItemOverrideList {
|
||||
private class CustomOverrideList extends ModelOverrideList {
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
|
||||
@@ -9,10 +9,10 @@ import com.mojang.datafixers.util.Pair;
|
||||
import net.minecraft.client.render.model.BakedModel;
|
||||
import net.minecraft.client.render.model.IModelTransform;
|
||||
import net.minecraft.client.render.model.IUnbakedModel;
|
||||
import net.minecraft.client.render.model.ItemOverrideList;
|
||||
import net.minecraft.client.render.model.json.ModelOverrideList;
|
||||
import net.minecraft.client.render.model.Material;
|
||||
import net.minecraft.client.render.model.ModelLoader;
|
||||
import net.minecraft.client.renderer.texture.TextureAtlasSprite;
|
||||
import net.minecraft.client.texture.Sprite;
|
||||
import net.minecraft.util.Identifier;
|
||||
import net.minecraftforge.client.model.IModelConfiguration;
|
||||
import net.minecraftforge.client.model.geometry.IModelGeometry;
|
||||
@@ -36,8 +36,8 @@ public class EncodedPatternModel implements IModelGeometry<EncodedPatternModel>
|
||||
|
||||
@Override
|
||||
public BakedModel bake(IModelConfiguration owner, ModelLoader bakery,
|
||||
Function<Material, TextureAtlasSprite> spriteGetter, IModelTransform modelTransform,
|
||||
ItemOverrideList overrides, Identifier modelLocation) {
|
||||
Function<Material, Sprite> spriteGetter, IModelTransform modelTransform,
|
||||
ModelOverrideList overrides, Identifier modelLocation) {
|
||||
BakedModel baseModel = bakery.getBakedModel(this.baseModel, modelTransform, spriteGetter);
|
||||
return new EncodedPatternBakedModel(baseModel);
|
||||
}
|
||||
|
||||
@@ -19,9 +19,9 @@
|
||||
package appeng.client.render.crafting;
|
||||
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.client.renderer.texture.TextureAtlasSprite;
|
||||
import net.minecraft.client.texture.Sprite;
|
||||
import net.minecraft.util.math.Direction;
|
||||
import net.minecraftforge.client.model.data.IModelData;
|
||||
|
||||
|
||||
import appeng.block.crafting.AbstractCraftingUnitBlock;
|
||||
import appeng.client.render.cablebus.CubeBuilder;
|
||||
@@ -33,12 +33,12 @@ import appeng.client.render.cablebus.CubeBuilder;
|
||||
*/
|
||||
class LightBakedModel extends CraftingCubeBakedModel {
|
||||
|
||||
private final TextureAtlasSprite baseTexture;
|
||||
private final Sprite baseTexture;
|
||||
|
||||
private final TextureAtlasSprite lightTexture;
|
||||
private final Sprite lightTexture;
|
||||
|
||||
LightBakedModel(TextureAtlasSprite ringCorner, TextureAtlasSprite ringHor, TextureAtlasSprite ringVer,
|
||||
TextureAtlasSprite baseTexture, TextureAtlasSprite lightTexture) {
|
||||
LightBakedModel(Sprite ringCorner, Sprite ringHor, Sprite ringVer,
|
||||
Sprite baseTexture, Sprite lightTexture) {
|
||||
super(ringCorner, ringHor, ringVer);
|
||||
this.baseTexture = baseTexture;
|
||||
this.lightTexture = lightTexture;
|
||||
|
||||
@@ -19,9 +19,9 @@
|
||||
package appeng.client.render.crafting;
|
||||
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.client.renderer.texture.TextureAtlasSprite;
|
||||
import net.minecraft.client.texture.Sprite;
|
||||
import net.minecraft.util.math.Direction;
|
||||
import net.minecraftforge.client.model.data.IModelData;
|
||||
|
||||
|
||||
import appeng.api.util.AEColor;
|
||||
import appeng.block.crafting.CraftingMonitorBlock;
|
||||
@@ -38,19 +38,19 @@ import appeng.tile.crafting.CraftingMonitorModelData;
|
||||
*/
|
||||
public class MonitorBakedModel extends CraftingCubeBakedModel {
|
||||
|
||||
private final TextureAtlasSprite chassisTexture;
|
||||
private final Sprite chassisTexture;
|
||||
|
||||
private final TextureAtlasSprite baseTexture;
|
||||
private final Sprite baseTexture;
|
||||
|
||||
private final TextureAtlasSprite lightDarkTexture;
|
||||
private final Sprite lightDarkTexture;
|
||||
|
||||
private final TextureAtlasSprite lightMediumTexture;
|
||||
private final Sprite lightMediumTexture;
|
||||
|
||||
private final TextureAtlasSprite lightBrightTexture;
|
||||
private final Sprite lightBrightTexture;
|
||||
|
||||
MonitorBakedModel(TextureAtlasSprite ringCorner, TextureAtlasSprite ringHor, TextureAtlasSprite ringVer,
|
||||
TextureAtlasSprite chassisTexture, TextureAtlasSprite baseTexture, TextureAtlasSprite lightDarkTexture,
|
||||
TextureAtlasSprite lightMediumTexture, TextureAtlasSprite lightBrightTexture) {
|
||||
MonitorBakedModel(Sprite ringCorner, Sprite ringHor, Sprite ringVer,
|
||||
Sprite chassisTexture, Sprite baseTexture, Sprite lightDarkTexture,
|
||||
Sprite lightMediumTexture, Sprite lightBrightTexture) {
|
||||
super(ringCorner, ringHor, ringVer);
|
||||
this.chassisTexture = chassisTexture;
|
||||
this.baseTexture = baseTexture;
|
||||
|
||||
@@ -19,9 +19,9 @@
|
||||
package appeng.client.render.crafting;
|
||||
|
||||
import net.minecraft.block.BlockState;
|
||||
import net.minecraft.client.renderer.texture.TextureAtlasSprite;
|
||||
import net.minecraft.client.texture.Sprite;
|
||||
import net.minecraft.util.math.Direction;
|
||||
import net.minecraftforge.client.model.data.IModelData;
|
||||
|
||||
|
||||
import appeng.client.render.cablebus.CubeBuilder;
|
||||
|
||||
@@ -30,10 +30,10 @@ import appeng.client.render.cablebus.CubeBuilder;
|
||||
*/
|
||||
class UnitBakedModel extends CraftingCubeBakedModel {
|
||||
|
||||
private final TextureAtlasSprite unitTexture;
|
||||
private final Sprite unitTexture;
|
||||
|
||||
UnitBakedModel(TextureAtlasSprite ringCorner, TextureAtlasSprite ringHor, TextureAtlasSprite ringVer,
|
||||
TextureAtlasSprite unitTexture) {
|
||||
UnitBakedModel(Sprite ringCorner, Sprite ringHor, Sprite ringVer,
|
||||
Sprite unitTexture) {
|
||||
super(ringCorner, ringHor, ringVer);
|
||||
this.unitTexture = unitTexture;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user