Skip to content

Commit d291ab0

Browse files
committed
BREAKING: Rename FieldProjectionSize enum to MiniaturizationFieldSize
1 parent 2117210 commit d291ab0

File tree

17 files changed

+83
-71
lines changed

17 files changed

+83
-71
lines changed

src/api/java/dev/compactmods/crafting/api/field/IMiniaturizationField.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,13 +15,13 @@ public interface IMiniaturizationField {
1515

1616
AxisAlignedBB getBounds();
1717

18-
FieldProjectionSize getFieldSize();
18+
MiniaturizationFieldSize getFieldSize();
1919

2020
BlockPos getCenter();
2121

2222
void setCenter(BlockPos center);
2323

24-
void setSize(FieldProjectionSize size);
24+
void setSize(MiniaturizationFieldSize size);
2525

2626
int getProgress();
2727

@@ -79,7 +79,7 @@ default CompoundNBT clientData() {
7979

8080
default void loadClientData(CompoundNBT nbt) {
8181
this.setCenter(BlockPos.of(nbt.getLong("center")));
82-
this.setSize(FieldProjectionSize.valueOf(nbt.getString("size")));
82+
this.setSize(MiniaturizationFieldSize.valueOf(nbt.getString("size")));
8383
this.setCraftingState(EnumCraftingState.valueOf(nbt.getString("state")));
8484

8585
if (nbt.contains("recipe")) {

src/api/java/dev/compactmods/crafting/api/field/FieldProjectionSize.java renamed to src/api/java/dev/compactmods/crafting/api/field/MiniaturizationFieldSize.java

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
import net.minecraft.util.math.AxisAlignedBB;
1111
import net.minecraft.util.math.BlockPos;
1212

13-
public enum FieldProjectionSize implements IStringSerializable {
13+
public enum MiniaturizationFieldSize implements IStringSerializable {
1414
/**
1515
* Inactive field. Does not have dimensions.
1616
*/
@@ -45,21 +45,21 @@ public enum FieldProjectionSize implements IStringSerializable {
4545

4646
private final String name;
4747

48-
public static final Codec<FieldProjectionSize> CODEC =
49-
Codec.STRING.xmap(FieldProjectionSize::valueOf, FieldProjectionSize::name);
48+
public static final Codec<MiniaturizationFieldSize> CODEC =
49+
Codec.STRING.xmap(MiniaturizationFieldSize::valueOf, MiniaturizationFieldSize::name);
5050

51-
public static final FieldProjectionSize[] VALID_SIZES = new FieldProjectionSize[] {
51+
public static final MiniaturizationFieldSize[] VALID_SIZES = new MiniaturizationFieldSize[] {
5252
SMALL, MEDIUM, LARGE, ABSURD
5353
};
5454

55-
FieldProjectionSize(String name, int size, int distance) {
55+
MiniaturizationFieldSize(String name, int size, int distance) {
5656
this.size = size;
5757
this.projectorDistance = distance;
5858
this.name = name;
5959
}
6060

6161
@Nonnull
62-
public static Optional<FieldProjectionSize> fromDimensions(double size) {
62+
public static Optional<MiniaturizationFieldSize> fromDimensions(double size) {
6363
// smaller than small, larger than max size, or not an odd size
6464
if(size < SMALL.getDimensions() || size > maximum().getDimensions() || size % 2 == 0)
6565
return Optional.empty();
@@ -94,7 +94,7 @@ public String getName() {
9494
return this.name;
9595
}
9696

97-
public static FieldProjectionSize maximum() {
97+
public static MiniaturizationFieldSize maximum() {
9898
return ABSURD;
9999
}
100100

@@ -126,6 +126,11 @@ public BlockPos getOppositeProjectorPosition(BlockPos projectorPos, Direction pr
126126
return getProjectorLocationForDirection(center, projectorFacing);
127127
}
128128

129+
public AxisAlignedBB getBoundsAtOrigin() {
130+
int offset = this.size;
131+
return getBoundsAtPosition(BlockPos.ZERO.offset(offset, offset, offset));
132+
}
133+
129134
public AxisAlignedBB getBoundsAtPosition(BlockPos center) {
130135
return new AxisAlignedBB(center).inflate(this.size);
131136
}

src/api/java/dev/compactmods/crafting/api/recipe/layers/dim/IDynamicSizedRecipeLayer.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package dev.compactmods.crafting.api.recipe.layers.dim;
22

3+
import dev.compactmods.crafting.api.field.MiniaturizationFieldSize;
34
import net.minecraft.util.math.AxisAlignedBB;
45

56
public interface IDynamicSizedRecipeLayer {
@@ -9,6 +10,12 @@ public interface IDynamicSizedRecipeLayer {
910
*/
1011
void setRecipeDimensions(AxisAlignedBB dimensions);
1112

13+
default void setRecipeDimensions(MiniaturizationFieldSize fieldSize) {
14+
int dim = fieldSize.getDimensions();
15+
AxisAlignedBB aabb = new AxisAlignedBB(0, 0, 0, dim, 1, dim);
16+
setRecipeDimensions(aabb);
17+
}
18+
1219
/**
1320
* Used to recalculate dynamic-sized recipe layers. Expected to be called
1421
* any time components or base recipe dimensions change.

src/main/java/dev/compactmods/crafting/client/ClientPacketHandler.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
import dev.compactmods.crafting.field.MiniaturizationField;
55
import dev.compactmods.crafting.field.capability.CapabilityActiveWorldFields;
66
import dev.compactmods.crafting.projector.block.FieldProjectorBlock;
7-
import dev.compactmods.crafting.api.field.FieldProjectionSize;
7+
import dev.compactmods.crafting.api.field.MiniaturizationFieldSize;
88
import net.minecraft.client.Minecraft;
99
import net.minecraft.client.world.ClientWorld;
1010
import net.minecraft.nbt.CompoundNBT;
@@ -13,7 +13,7 @@
1313

1414
public abstract class ClientPacketHandler {
1515

16-
public static void handleFieldActivation(BlockPos[] projectorLocations, FieldProjectionSize fieldSize) {
16+
public static void handleFieldActivation(BlockPos[] projectorLocations, MiniaturizationFieldSize fieldSize) {
1717
Minecraft mc = Minecraft.getInstance();
1818
mc.submitAsync(() -> {
1919
ClientWorld cw = mc.level;

src/main/java/dev/compactmods/crafting/field/FieldHelper.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import dev.compactmods.crafting.CompactCrafting;
44
import dev.compactmods.crafting.field.capability.CapabilityActiveWorldFields;
5-
import dev.compactmods.crafting.api.field.FieldProjectionSize;
5+
import dev.compactmods.crafting.api.field.MiniaturizationFieldSize;
66
import dev.compactmods.crafting.api.field.IMiniaturizationField;
77
import dev.compactmods.crafting.projector.block.FieldProjectorBlock;
88
import dev.compactmods.crafting.server.ServerConfig;
@@ -20,7 +20,7 @@ public static void checkBlockPlacement(World level, BlockPos pos) {
2020
if (level.isClientSide())
2121
return;
2222

23-
int maxDimensions = FieldProjectionSize.maximum().getDimensions();
23+
int maxDimensions = MiniaturizationFieldSize.maximum().getDimensions();
2424
AxisAlignedBB searchArea = new AxisAlignedBB(pos, pos).inflate(maxDimensions);
2525

2626
BlockPos[] nearbyProjectors = BlockPos.betweenClosedStream(searchArea)

src/main/java/dev/compactmods/crafting/field/MiniaturizationField.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
import dev.compactmods.crafting.server.ServerConfig;
1515
import dev.compactmods.crafting.util.BlockSpaceUtil;
1616
import dev.compactmods.crafting.api.EnumCraftingState;
17-
import dev.compactmods.crafting.api.field.FieldProjectionSize;
17+
import dev.compactmods.crafting.api.field.MiniaturizationFieldSize;
1818
import dev.compactmods.crafting.api.field.IFieldListener;
1919
import dev.compactmods.crafting.api.field.IMiniaturizationField;
2020
import dev.compactmods.crafting.api.recipe.IMiniaturizationRecipe;
@@ -38,7 +38,7 @@
3838

3939
public class MiniaturizationField implements IMiniaturizationField {
4040

41-
private FieldProjectionSize size;
41+
private MiniaturizationFieldSize size;
4242
private BlockPos center;
4343
private boolean loaded;
4444

@@ -59,17 +59,17 @@ public class MiniaturizationField implements IMiniaturizationField {
5959
public MiniaturizationField() {
6060
}
6161

62-
private MiniaturizationField(FieldProjectionSize size, BlockPos center) {
62+
private MiniaturizationField(MiniaturizationFieldSize size, BlockPos center) {
6363
this.center = center;
6464
this.size = size;
6565
this.craftingState = EnumCraftingState.NOT_MATCHED;
6666
}
6767

68-
public static MiniaturizationField fromSizeAndCenter(FieldProjectionSize fieldSize, BlockPos center) {
68+
public static MiniaturizationField fromSizeAndCenter(MiniaturizationFieldSize fieldSize, BlockPos center) {
6969
return new MiniaturizationField(fieldSize, center);
7070
}
7171

72-
public FieldProjectionSize getFieldSize() {
72+
public MiniaturizationFieldSize getFieldSize() {
7373
return this.size;
7474
}
7575

@@ -83,7 +83,7 @@ public void setCenter(BlockPos center) {
8383
}
8484

8585
@Override
86-
public void setSize(FieldProjectionSize size) {
86+
public void setSize(MiniaturizationFieldSize size) {
8787
this.size = size;
8888
}
8989

src/main/java/dev/compactmods/crafting/field/capability/CapabilityActiveWorldFields.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
import dev.compactmods.crafting.data.NbtListCollector;
55
import dev.compactmods.crafting.field.ActiveWorldFields;
66
import dev.compactmods.crafting.field.MiniaturizationField;
7-
import dev.compactmods.crafting.api.field.FieldProjectionSize;
7+
import dev.compactmods.crafting.api.field.MiniaturizationFieldSize;
88
import dev.compactmods.crafting.api.field.IActiveWorldFields;
99
import dev.compactmods.crafting.api.field.IMiniaturizationField;
1010
import net.minecraft.nbt.CompoundNBT;
@@ -49,7 +49,7 @@ public void readNBT(Capability<IActiveWorldFields> capability, IActiveWorldField
4949
return;
5050

5151
CompoundNBT f = (CompoundNBT) item;
52-
FieldProjectionSize size = FieldProjectionSize.valueOf(f.getString("size"));
52+
MiniaturizationFieldSize size = MiniaturizationFieldSize.valueOf(f.getString("size"));
5353
BlockPos center = NBTUtil.readBlockPos(f.getCompound("center"));
5454

5555
MiniaturizationField field = MiniaturizationField.fromSizeAndCenter(size, center);

src/main/java/dev/compactmods/crafting/field/capability/CapabilityMiniaturizationField.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
import javax.annotation.Nullable;
44
import dev.compactmods.crafting.field.MiniaturizationField;
55
import dev.compactmods.crafting.api.EnumCraftingState;
6-
import dev.compactmods.crafting.api.field.FieldProjectionSize;
6+
import dev.compactmods.crafting.api.field.MiniaturizationFieldSize;
77
import dev.compactmods.crafting.api.field.IMiniaturizationField;
88
import net.minecraft.nbt.CompoundNBT;
99
import net.minecraft.nbt.INBT;
@@ -53,7 +53,7 @@ public void readNBT(Capability<IMiniaturizationField> capability, IMiniaturizati
5353
CompoundNBT fieldInfo = (CompoundNBT) nbt;
5454

5555
BlockPos center = NBTUtil.readBlockPos(fieldInfo.getCompound("center"));
56-
FieldProjectionSize size = FieldProjectionSize.valueOf(fieldInfo.getString("size"));
56+
MiniaturizationFieldSize size = MiniaturizationFieldSize.valueOf(fieldInfo.getString("size"));
5757

5858
if (fieldInfo.contains("craftingState")) {
5959
EnumCraftingState state = EnumCraftingState.valueOf(fieldInfo.getString("craftingState"));

src/main/java/dev/compactmods/crafting/network/FieldActivatedPacket.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
import dev.compactmods.crafting.CompactCrafting;
44
import dev.compactmods.crafting.client.ClientPacketHandler;
5-
import dev.compactmods.crafting.api.field.FieldProjectionSize;
5+
import dev.compactmods.crafting.api.field.MiniaturizationFieldSize;
66
import net.minecraft.network.PacketBuffer;
77
import net.minecraft.util.math.BlockPos;
88
import net.minecraftforge.api.distmarker.Dist;
@@ -15,7 +15,7 @@
1515

1616
public class FieldActivatedPacket extends FieldChangedPacket {
1717

18-
public FieldActivatedPacket(FieldProjectionSize fieldSize, BlockPos fieldCenter) {
18+
public FieldActivatedPacket(MiniaturizationFieldSize fieldSize, BlockPos fieldCenter) {
1919
super(fieldSize, fieldCenter);
2020
}
2121

src/main/java/dev/compactmods/crafting/network/FieldChangedPacket.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,24 +2,24 @@
22

33
import com.mojang.serialization.Codec;
44
import com.mojang.serialization.codecs.RecordCodecBuilder;
5-
import dev.compactmods.crafting.api.field.FieldProjectionSize;
5+
import dev.compactmods.crafting.api.field.MiniaturizationFieldSize;
66
import net.minecraft.util.math.BlockPos;
77

88
public class FieldChangedPacket {
99

10-
protected FieldProjectionSize fieldSize;
10+
protected MiniaturizationFieldSize fieldSize;
1111
protected BlockPos fieldCenter;
1212
protected BlockPos[] projectorLocations;
1313

1414
protected static final Codec<FieldChangedPacket> CODEC = RecordCodecBuilder.create(i -> i.group(
15-
Codec.STRING.xmap(FieldProjectionSize::valueOf, Enum::name)
15+
Codec.STRING.xmap(MiniaturizationFieldSize::valueOf, Enum::name)
1616
.fieldOf("size").forGetter(x -> x.fieldSize),
1717

1818
BlockPos.CODEC.fieldOf("center").forGetter(x -> x.fieldCenter)
1919

2020
).apply(i, FieldChangedPacket::new));
2121

22-
protected FieldChangedPacket(FieldProjectionSize fieldSize, BlockPos center) {
22+
protected FieldChangedPacket(MiniaturizationFieldSize fieldSize, BlockPos center) {
2323
this.fieldSize = fieldSize;
2424
this.fieldCenter = center;
2525
this.projectorLocations = fieldSize.getProjectorLocations(center).toArray(BlockPos[]::new);

0 commit comments

Comments
 (0)