Skip to content

Commit a60d89f

Browse files
committed
Initial 1.16 port.
1 parent 03effb8 commit a60d89f

26 files changed

+97
-97
lines changed

.circleci/config.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ jobs:
1616
TAG_VERSION="$(echo "$CIRCLE_TAG" | sed -E 's/[^0-9]+//')"
1717
sed -Ei 's/^(\s*version = ")([0-9]+\.){2}[0-9]+-DEV\.0+"$/\1'$TAG_VERSION'.'$CIRCLE_BUILD_NUM'"/' build.gradle
1818
else
19-
[[ $CIRCLE_BRANCH = '1.15.2' ]] && LIB_VERSION=MASTER || LIB_VERSION=DEV
19+
[[ $CIRCLE_BRANCH = '1.16.1' ]] && LIB_VERSION=MASTER || LIB_VERSION=DEV
2020
sed -Ei 's/^(\s*version = "([0-9]+\.){2}[0-9]+-)DEV\.0+"$/\1'$LIB_VERSION'.'$CIRCLE_BUILD_NUM'"/' build.gradle
2121
fi
2222
- restore_cache:
@@ -91,7 +91,7 @@ jobs:
9191
TAG_BUILD="$(echo "$CIRCLE_TAG" | sed -E 's/-[0-9.-]+$//' | sed -E 's/(^|-)([^-])/\U\2/g')"
9292
TAG_VERSION="$(echo "$CIRCLE_TAG" | sed -E 's/[^0-9]+//')"
9393
PROJECT_ID="$(jq -r .projectId $TAG_BUILD/curseforge.json)"
94-
METADATA="$(jq -n '{"changelog": $ARGS.positional[0], "changelogType": "markdown", "displayName": $ARGS.positional[1], "gameVersions": [7722, 7498, 4458], "releaseType": "release"}' --args "$DESCRIPTION" "v$TAG_VERSION.$CIRCLE_BUILD_NUM")"
94+
METADATA="$(jq -n '{"changelog": $ARGS.positional[0], "changelogType": "markdown", "displayName": $ARGS.positional[1], "gameVersions": [7892, 7498, 4458], "releaseType": "release"}' --args "$DESCRIPTION" "v$TAG_VERSION.$CIRCLE_BUILD_NUM")"
9595
FILE="$(ls /tmp/workspace/libs/*.jar | head -n 1)"
9696
curl -XPOST "https://minecraft.curseforge.com/api/projects/$PROJECT_ID/upload-file" -F "file=@$FILE" -F "metadata=$METADATA" -H "X-Api-Token: $CURSEFORGE_TOKEN"
9797
workflows:

MagicDoorknob/src/main/java/com/tomboshoven/minecraft/magicdoorknob/blocks/Blocks.java

+2-3
Original file line numberDiff line numberDiff line change
@@ -21,20 +21,19 @@
2121
@ParametersAreNonnullByDefault
2222
@MethodsReturnNonnullByDefault
2323
public final class Blocks {
24-
private static final DeferredRegister<Block> BLOCKS = new DeferredRegister<>(ForgeRegistries.BLOCKS, MagicDoorknobMod.MOD_ID);
24+
private static final DeferredRegister<Block> BLOCKS = DeferredRegister.create(ForgeRegistries.BLOCKS, MagicDoorknobMod.MOD_ID);
2525

2626
/**
2727
* The material the magic door and doorway are made of:
2828
* - Not liquid
2929
* - Solid
3030
* - Block movement
3131
* - Opaque
32-
* - Requires no tool
3332
* - Not flammable
3433
* - Not replaceable
3534
* - Block pushes
3635
*/
37-
private static final Material DOORWAY_MATERIAL = new Material(MaterialColor.AIR, false, true, true, true, true, false, false, PushReaction.BLOCK);
36+
private static final Material DOORWAY_MATERIAL = new Material(MaterialColor.AIR, false, true, true, true, false, false, PushReaction.BLOCK);
3837

3938
/**
4039
* A magic doorway block. Generated by a magic doorknob.

MagicDoorknob/src/main/java/com/tomboshoven/minecraft/magicdoorknob/blocks/MagicDoorwayPartBaseBlock.java

+6-7
Original file line numberDiff line numberDiff line change
@@ -66,15 +66,14 @@ public int getOpacity(BlockState state, IBlockReader worldIn, BlockPos pos) {
6666
return super.getOpacity(state, worldIn, pos);
6767
}
6868

69-
@SuppressWarnings("deprecation")
7069
@Override
71-
public float getBlockHardness(BlockState blockState, IBlockReader worldIn, BlockPos pos) {
72-
// Use the base block's hardness.
73-
TileEntity tileEntity = worldIn.getTileEntity(pos);
70+
public float getSlipperiness(BlockState state, IWorldReader world, BlockPos pos, @Nullable Entity entity) {
71+
// Use the base block's slipperiness.
72+
TileEntity tileEntity = world.getTileEntity(pos);
7473
if (tileEntity instanceof MagicDoorwayPartBaseTileEntity) {
75-
return ((MagicDoorwayPartBaseTileEntity) tileEntity).getBaseBlockState().getBlockHardness(worldIn, pos);
74+
return ((MagicDoorwayPartBaseTileEntity) tileEntity).getBaseBlockState().getSlipperiness(world, pos, entity);
7675
}
77-
return super.getBlockHardness(blockState, worldIn, pos);
76+
return super.getSlipperiness(state, world, pos, entity);
7877
}
7978

8079
@Override
@@ -115,7 +114,7 @@ public enum EnumPartType implements IStringSerializable {
115114
}
116115

117116
@Override
118-
public String getName() {
117+
public String func_176610_l() {
119118
return name;
120119
}
121120

MagicDoorknob/src/main/java/com/tomboshoven/minecraft/magicdoorknob/blocks/colorhandlers/DoorwayBlockColorHandler.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
import net.minecraft.client.renderer.color.IBlockColor;
99
import net.minecraft.tileentity.TileEntity;
1010
import net.minecraft.util.math.BlockPos;
11-
import net.minecraft.world.ILightReader;
11+
import net.minecraft.world.IBlockDisplayReader;
1212
import net.minecraftforge.api.distmarker.Dist;
1313
import net.minecraftforge.api.distmarker.OnlyIn;
1414

@@ -23,7 +23,7 @@
2323
@MethodsReturnNonnullByDefault
2424
class DoorwayBlockColorHandler implements IBlockColor {
2525
@Override
26-
public int getColor(BlockState state, @Nullable ILightReader worldIn, @Nullable BlockPos pos, int tintIndex) {
26+
public int getColor(BlockState state, @Nullable IBlockDisplayReader worldIn, @Nullable BlockPos pos, int tintIndex) {
2727
if (worldIn != null && pos != null) {
2828
BlockColors blockColors = Minecraft.getInstance().getBlockColors();
2929

MagicDoorknob/src/main/java/com/tomboshoven/minecraft/magicdoorknob/blocks/tileentities/MagicDoorwayPartBaseTileEntity.java

+14-11
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package com.tomboshoven.minecraft.magicdoorknob.blocks.tileentities;
22

3-
import com.mojang.datafixers.Dynamic;
43
import com.tomboshoven.minecraft.magicdoorknob.items.Items;
54
import com.tomboshoven.minecraft.magicdoorknob.items.MagicDoorknobItem;
65
import com.tomboshoven.minecraft.magicdoorknob.modelloaders.textured.ModelTextureProperty;
@@ -9,12 +8,12 @@
98
import net.minecraft.block.Blocks;
109
import net.minecraft.client.Minecraft;
1110
import net.minecraft.client.renderer.BlockModelShapes;
12-
import net.minecraft.client.renderer.model.Material;
11+
import net.minecraft.client.renderer.model.RenderMaterial;
1312
import net.minecraft.client.renderer.texture.MissingTextureSprite;
1413
import net.minecraft.client.renderer.texture.TextureAtlasSprite;
1514
import net.minecraft.inventory.container.PlayerContainer;
1615
import net.minecraft.nbt.CompoundNBT;
17-
import net.minecraft.nbt.NBTDynamicOps;
16+
import net.minecraft.nbt.NBTUtil;
1817
import net.minecraft.network.NetworkManager;
1918
import net.minecraft.network.play.server.SUpdateTileEntityPacket;
2019
import net.minecraft.tileentity.TileEntity;
@@ -73,7 +72,7 @@ private CompoundNBT writeInternal(CompoundNBT compound) {
7372
CompoundNBT result = super.write(compound);
7473
ResourceLocation registryName = baseBlockState.getBlock().getRegistryName();
7574
if (registryName != null) {
76-
compound.put("baseBlock", BlockState.serialize(NBTDynamicOps.INSTANCE, baseBlockState).getValue());
75+
compound.put("baseBlock", NBTUtil.writeBlockState(baseBlockState));
7776
}
7877
if (doorknob != null) {
7978
result.putString("doorknobType", doorknob.getTypeName());
@@ -82,9 +81,13 @@ private CompoundNBT writeInternal(CompoundNBT compound) {
8281
}
8382

8483
@Override
85-
public void read(CompoundNBT compound) {
86-
super.read(compound);
87-
baseBlockState = BlockState.deserialize(new Dynamic<>(NBTDynamicOps.INSTANCE, compound.get("baseBlock")));
84+
public void func_230337_a_(BlockState state, CompoundNBT compound) {
85+
super.func_230337_a_(state, compound);
86+
read(compound);
87+
}
88+
89+
private void read(CompoundNBT compound) {
90+
baseBlockState = NBTUtil.readBlockState(compound.getCompound("baseBlock"));
8891
String doorknobType = compound.getString("doorknobType");
8992
doorknob = Items.DOORKNOBS.get(doorknobType);
9093
}
@@ -116,17 +119,17 @@ public IModelData getModelData() {
116119
// Get the base block texture
117120
World world = getWorld();
118121
TextureAtlasSprite blockTexture = world == null ? null : blockModelShapes.getTexture(baseBlockState, world, getPos());
119-
Material blockMaterial;
122+
RenderMaterial blockMaterial;
120123
if (blockTexture == null || blockTexture instanceof MissingTextureSprite) {
121124
// If we can't find the texture, use a transparent one instead, to deal with things like air.
122-
blockMaterial = new Material(PlayerContainer.LOCATION_BLOCKS_TEXTURE, new ResourceLocation(MOD_ID, "block/empty"));
125+
blockMaterial = new RenderMaterial(PlayerContainer.LOCATION_BLOCKS_TEXTURE, new ResourceLocation(MOD_ID, "block/empty"));
123126
}
124127
else {
125-
blockMaterial = new Material(blockTexture.getAtlasTexture().getTextureLocation(), blockTexture.getName());
128+
blockMaterial = new RenderMaterial(blockTexture.getAtlasTexture().getTextureLocation(), blockTexture.getName());
126129
}
127130

128131
// Get the highlight texture
129-
Material doorknobMaterial;
132+
RenderMaterial doorknobMaterial;
130133
if (doorknob != null) {
131134
doorknobMaterial = doorknob.getMainMaterial();
132135
} else {

MagicDoorknob/src/main/java/com/tomboshoven/minecraft/magicdoorknob/blocks/tileentities/TileEntities.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010

1111
@SuppressWarnings("ConstantConditions")
1212
public final class TileEntities {
13-
private static final DeferredRegister<TileEntityType<?>> TILE_ENTITIES = new DeferredRegister<>(ForgeRegistries.TILE_ENTITIES, MagicDoorknobMod.MOD_ID);
13+
private static final DeferredRegister<TileEntityType<?>> TILE_ENTITIES = DeferredRegister.create(ForgeRegistries.TILE_ENTITIES, MagicDoorknobMod.MOD_ID);
1414

1515
static final RegistryObject<TileEntityType<MagicDoorTileEntity>> MAGIC_DOOR =
1616
TILE_ENTITIES.register("magic_door",

MagicDoorknob/src/main/java/com/tomboshoven/minecraft/magicdoorknob/items/Items.java

+3-3
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@
77
import net.minecraft.item.Item;
88
import net.minecraft.item.ItemGroup;
99
import net.minecraft.item.ItemTier;
10+
import net.minecraft.tags.ITag.INamedTag;
1011
import net.minecraft.tags.ItemTags;
11-
import net.minecraft.tags.Tag;
1212
import net.minecraft.util.ResourceLocation;
1313
import net.minecraftforge.common.Tags;
1414
import net.minecraftforge.event.RegistryEvent.Register;
@@ -45,7 +45,7 @@ private Items() {
4545
* @param mainTexture The main texture of the doorknob
4646
* @param recipeTag The tag to use in recipes
4747
*/
48-
private static void addDoorknob(IForgeRegistry<? super Item> registry, String typeName, IItemTier tier, ResourceLocation mainTexture, Tag<Item> recipeTag) {
48+
private static void addDoorknob(IForgeRegistry<? super Item> registry, String typeName, IItemTier tier, ResourceLocation mainTexture, INamedTag<Item> recipeTag) {
4949
MagicDoorknobItem i = new MagicDoorknobItem(new Item.Properties().group(ItemGroup.TOOLS), typeName, tier, mainTexture, recipeTag);
5050
i.setRegistryName(MagicDoorknobMod.MOD_ID, String.format("magic_doorknob_%s", typeName));
5151
registry.register(i);
@@ -61,7 +61,7 @@ private static void addDoorknob(IForgeRegistry<? super Item> registry, String ty
6161
* @param blockName The name of the block that provides the texture of the doorknob
6262
* @param recipeTag The tag to use in recipes
6363
*/
64-
private static void addDoorknob(IForgeRegistry<? super Item> registry, String typeName, IItemTier tier, String blockName, Tag<Item> recipeTag) {
64+
private static void addDoorknob(IForgeRegistry<? super Item> registry, String typeName, IItemTier tier, String blockName, INamedTag<Item> recipeTag) {
6565
addDoorknob(registry, typeName, tier, new ResourceLocation("minecraft", String.format("block/%s", blockName)), recipeTag);
6666
}
6767

MagicDoorknob/src/main/java/com/tomboshoven/minecraft/magicdoorknob/items/MagicDoorknobItem.java

+7-7
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,13 @@
99
import mcp.MethodsReturnNonnullByDefault;
1010
import net.minecraft.block.Block;
1111
import net.minecraft.block.BlockState;
12-
import net.minecraft.client.renderer.model.Material;
12+
import net.minecraft.client.renderer.model.RenderMaterial;
1313
import net.minecraft.inventory.container.PlayerContainer;
1414
import net.minecraft.item.BlockItemUseContext;
1515
import net.minecraft.item.IItemTier;
1616
import net.minecraft.item.Item;
1717
import net.minecraft.item.ItemUseContext;
18-
import net.minecraft.tags.Tag;
18+
import net.minecraft.tags.ITag.INamedTag;
1919
import net.minecraft.tileentity.TileEntity;
2020
import net.minecraft.util.ActionResultType;
2121
import net.minecraft.util.Direction;
@@ -43,7 +43,7 @@ public class MagicDoorknobItem extends Item {
4343
// The item material, used for determining doorway generation properties
4444
private final IItemTier tier;
4545
// The item tag to use in recipes
46-
private final Tag<Item> recipeTag;
46+
private final INamedTag<Item> recipeTag;
4747

4848
/**
4949
* @param properties The item properties
@@ -52,7 +52,7 @@ public class MagicDoorknobItem extends Item {
5252
* @param mainTextureLocation The main material for rendering the block
5353
* @param recipeTag The item tag to use in recipes
5454
*/
55-
MagicDoorknobItem(Item.Properties properties, String typeName, IItemTier tier, ResourceLocation mainTextureLocation, Tag<Item> recipeTag) {
55+
MagicDoorknobItem(Item.Properties properties, String typeName, IItemTier tier, ResourceLocation mainTextureLocation, INamedTag<Item> recipeTag) {
5656
super(properties);
5757

5858
this.typeName = typeName;
@@ -225,8 +225,8 @@ private boolean isReplaceable(IBlockReader world, BlockPos pos) {
225225
* @return The location of the main texture of the doorknob
226226
*/
227227
@OnlyIn(Dist.CLIENT)
228-
public Material getMainMaterial() {
229-
return new Material(PlayerContainer.LOCATION_BLOCKS_TEXTURE, mainTextureLocation);
228+
public RenderMaterial getMainMaterial() {
229+
return new RenderMaterial(PlayerContainer.LOCATION_BLOCKS_TEXTURE, mainTextureLocation);
230230
}
231231

232232
/**
@@ -246,7 +246,7 @@ public IItemTier getTier() {
246246
/**
247247
* @return The item tag for use in recipes
248248
*/
249-
public Tag<Item> getRecipeTag() {
249+
public INamedTag<Item> getRecipeTag() {
250250
return recipeTag;
251251
}
252252
}

MagicDoorknob/src/main/java/com/tomboshoven/minecraft/magicdoorknob/modelloaders/ModelLoaders.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
import com.tomboshoven.minecraft.magicdoorknob.modelloaders.textured.TexturedModelLoader;
55
import net.minecraft.client.renderer.RenderType;
66
import net.minecraft.client.renderer.RenderTypeLookup;
7-
import net.minecraft.client.renderer.model.Material;
7+
import net.minecraft.client.renderer.model.RenderMaterial;
88
import net.minecraft.inventory.container.PlayerContainer;
99
import net.minecraft.util.ResourceLocation;
1010
import net.minecraftforge.api.distmarker.Dist;
@@ -30,7 +30,7 @@ public static void register(IEventBus eventBus) {
3030
private static void registerModelLoaders(ModelRegistryEvent event) {
3131
// Initialize textured model loader
3232
TexturedModelLoader modelLoader = new TexturedModelLoader();
33-
modelLoader.registerTexture(new Material(PlayerContainer.LOCATION_BLOCKS_TEXTURE, new ResourceLocation(MOD_ID, "block/empty")));
33+
modelLoader.registerTexture(new RenderMaterial(PlayerContainer.LOCATION_BLOCKS_TEXTURE, new ResourceLocation(MOD_ID, "block/empty")));
3434
ModelLoaderRegistry.registerLoader(new ResourceLocation(MOD_ID, "textured"), modelLoader);
3535

3636
// Translucent has the best results across block types

MagicDoorknob/src/main/java/com/tomboshoven/minecraft/magicdoorknob/modelloaders/textured/ITextureMapper.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import mcp.MethodsReturnNonnullByDefault;
44
import net.minecraft.block.BlockState;
5-
import net.minecraft.client.renderer.model.Material;
5+
import net.minecraft.client.renderer.model.RenderMaterial;
66
import net.minecraftforge.api.distmarker.Dist;
77
import net.minecraftforge.api.distmarker.OnlyIn;
88
import net.minecraftforge.client.model.data.IModelData;
@@ -23,5 +23,5 @@ public interface ITextureMapper {
2323
* @param extraData Extra model data if available
2424
* @return The appropriate material
2525
*/
26-
Material mapSprite(PropertySprite spriteToMap, @Nullable BlockState blockState, @Nullable IModelData extraData);
26+
RenderMaterial mapSprite(PropertySprite spriteToMap, @Nullable BlockState blockState, @Nullable IModelData extraData);
2727
}

MagicDoorknob/src/main/java/com/tomboshoven/minecraft/magicdoorknob/modelloaders/textured/ModelDataTextureMapper.java

+5-5
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import mcp.MethodsReturnNonnullByDefault;
44
import net.minecraft.block.BlockState;
5-
import net.minecraft.client.renderer.model.Material;
5+
import net.minecraft.client.renderer.model.RenderMaterial;
66
import net.minecraft.client.renderer.texture.MissingTextureSprite;
77
import net.minecraft.inventory.container.PlayerContainer;
88
import net.minecraft.util.ResourceLocation;
@@ -22,15 +22,15 @@
2222
@OnlyIn(Dist.CLIENT)
2323
class ModelDataTextureMapper implements ITextureMapper {
2424
@Override
25-
public Material mapSprite(PropertySprite spriteToMap, @Nullable BlockState blockState, @Nullable IModelData extraData) {
25+
public RenderMaterial mapSprite(PropertySprite spriteToMap, @Nullable BlockState blockState, @Nullable IModelData extraData) {
2626
if (extraData != null) {
2727
ResourceLocation name = spriteToMap.getName();
28-
ModelProperty<Material> modelProperty = ModelTextureProperty.get(name);
29-
Material material = extraData.getData(modelProperty);
28+
ModelProperty<RenderMaterial> modelProperty = ModelTextureProperty.get(name);
29+
RenderMaterial material = extraData.getData(modelProperty);
3030
if (material != null) {
3131
return material;
3232
}
3333
}
34-
return new Material(PlayerContainer.LOCATION_BLOCKS_TEXTURE, MissingTextureSprite.getLocation());
34+
return new RenderMaterial(PlayerContainer.LOCATION_BLOCKS_TEXTURE, MissingTextureSprite.getLocation());
3535
}
3636
}

MagicDoorknob/src/main/java/com/tomboshoven/minecraft/magicdoorknob/modelloaders/textured/ModelTextureProperty.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import com.google.common.collect.Maps;
44
import mcp.MethodsReturnNonnullByDefault;
5-
import net.minecraft.client.renderer.model.Material;
5+
import net.minecraft.client.renderer.model.RenderMaterial;
66
import net.minecraft.util.ResourceLocation;
77
import net.minecraftforge.client.model.data.ModelProperty;
88

@@ -15,7 +15,7 @@
1515
*/
1616
@ParametersAreNonnullByDefault
1717
@MethodsReturnNonnullByDefault
18-
public final class ModelTextureProperty extends ModelProperty<Material> {
18+
public final class ModelTextureProperty extends ModelProperty<RenderMaterial> {
1919
// Lazily filled map of model texture properties.
2020
// Can't just use equality as they are used in an IdentityHashMap.
2121
private static final Map<ResourceLocation, ModelTextureProperty> PROPERTIES = Maps.newHashMap();

0 commit comments

Comments
 (0)