Skip to content

Commit 1a4d9a7

Browse files
committed
port: mixins
1 parent a1bd96d commit 1a4d9a7

5 files changed

Lines changed: 15 additions & 14 deletions

File tree

src/main/java/rbasamoyai/createbigcannons/cannon_control/contraption/MountedBigCannonContraption.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,7 @@ public class MountedBigCannonContraption extends AbstractMountedCannonContraptio
8484
public boolean assemble(Level level, BlockPos pos) throws AssemblyException {
8585
if (!this.collectCannonBlocks(level, pos)) return false;
8686
this.bounds = this.createBoundsFromExtensionLengths();
87+
startMoving(level);
8788
return !this.blocks.isEmpty();
8889
}
8990

src/main/java/rbasamoyai/createbigcannons/mixin/client/PitchOrientedContraptionEntityMixin.java

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
package rbasamoyai.createbigcannons.mixin.client;
2-
/* fixme
2+
import net.minecraft.util.Mth;
33

44
import org.spongepowered.asm.mixin.Mixin;
55

66
import com.mojang.blaze3d.vertex.PoseStack;
77
import com.simibubi.create.content.contraptions.OrientedContraptionEntity;
88

9-
import dev.engine_room.flywheel.util.transform.TransformStack;
9+
import dev.engine_room.flywheel.lib.transform.TransformStack;
1010
import net.minecraft.core.Direction;
1111
import net.minecraft.world.entity.EntityType;
1212
import net.minecraft.world.level.Level;
@@ -27,18 +27,17 @@ public void applyLocalTransforms(PoseStack stack, float partialTicks) {
2727

2828
stack.translate(-0.5f, 0.0f, -0.5f);
2929

30-
TransformStack tstack = TransformStack.cast(stack)
30+
TransformStack tstack = TransformStack.of(stack)
3131
.nudge(this.getId())
32-
.centre()
33-
.rotateY(yaw);
32+
.center()
33+
.rotateY(yaw + Mth.TWO_PI);
3434

3535
if (this.getInitialOrientation().getAxis() == Direction.Axis.X) {
3636
tstack.rotateZ(pitch);
3737
} else {
3838
tstack.rotateX(pitch);
3939
}
40-
tstack.unCentre();
40+
tstack.uncenter();
4141
}
4242

4343
}
44-
*/

src/main/java/rbasamoyai/createbigcannons/mixin/compat/create/ChassisBlockEntityMixin.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ public abstract class ChassisBlockEntityMixin extends SmartBlockEntity {
4646
}
4747

4848
@ModifyExpressionValue(method = "getIncludedBlockPositionsRadial",
49-
at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/contraptions/BlockMovementChecks;isNotSupportive(Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z"))
49+
at = @At(value = "INVOKE", target = "Lcom/simibubi/create/api/contraption/BlockMovementChecks;isNotSupportive(Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z"))
5050
private boolean createbigcannons$getIncludedBlockPositionsRadial$1(boolean original, Direction forcedMovement, boolean visualize,
5151
@Local(ordinal = 0) List<BlockPos> positions,
5252
@Local(ordinal = 1) BlockPos searchPos,
@@ -63,7 +63,7 @@ public abstract class ChassisBlockEntityMixin extends SmartBlockEntity {
6363
}
6464

6565
@ModifyExpressionValue(method = "getIncludedBlockPositionsLinear",
66-
at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/contraptions/BlockMovementChecks;isNotSupportive(Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z"))
66+
at = @At(value = "INVOKE", target = "Lcom/simibubi/create/api/contraption/BlockMovementChecks;isNotSupportive(Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z"))
6767
private boolean createbigcannons$getIncludedBlockPositionsLinear$1(boolean original, Direction forcedMovement, boolean visualize,
6868
@Local List<BlockPos> positions,
6969
@Local BlockPos currentPos,

src/main/java/rbasamoyai/createbigcannons/mixin/compat/create/ContraptionMixin.java

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -58,18 +58,16 @@ public abstract class ContraptionMixin {
5858

5959
@Shadow
6060
public boolean disassembled;
61-
/* fixme
6261

6362
@Inject(method = "searchMovedStructure",
64-
at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/contraptions/BlockMovementChecks;isBrittle(Lnet/minecraft/world/level/block/state/BlockState;)Z", shift = At.Shift.BEFORE))
63+
at = @At(value = "INVOKE", target = "Lcom/simibubi/create/api/contraption/BlockMovementChecks;isBrittle(Lnet/minecraft/world/level/block/state/BlockState;)Z", shift = At.Shift.BEFORE))
6564
private void createbigcannons$searchMovedStructure$setForcedDirection(Level level, BlockPos pos, Direction forcedDirection,
6665
CallbackInfoReturnable<Boolean> cir,
6766
@Local(argsOnly = true) LocalRef<Direction> forcedDirectionRef) {
6867
if (!(CBCModifiedContraptionRegistry.canLoadBigCannon(this.createbigcannons$self))) return;
6968
if (forcedDirectionRef.get() == null)
7069
forcedDirectionRef.set(((CanLoadBigCannon) this.createbigcannons$self).createbigcannons$getAssemblyMovementDirection(level));
7170
}
72-
*/
7371

7472
@Inject(method = "searchMovedStructure",
7573
at = @At(value = "INVOKE", target = "Ljava/util/Queue;add(Ljava/lang/Object;)Z", shift = At.Shift.AFTER),
@@ -171,7 +169,7 @@ public abstract class ContraptionMixin {
171169
}
172170

173171
@Inject(method = "moveBlock",
174-
at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/contraptions/BlockMovementChecks;isBrittle(Lnet/minecraft/world/level/block/state/BlockState;)Z"))
172+
at = @At(value = "INVOKE", target = "Lcom/simibubi/create/api/contraption/BlockMovementChecks;isBrittle(Lnet/minecraft/world/level/block/state/BlockState;)Z"))
175173
private void createbigcannons$moveBlock$addFrontier$0(Level level, Direction forcedDirection, Queue<BlockPos> frontier,
176174
Set<BlockPos> visited, CallbackInfoReturnable<Boolean> cir,
177175
@Local(ordinal = 0) BlockPos pos,

src/main/resources/createbigcannons-common.mixins.json

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,8 @@
1515
"client.LightingMixin",
1616
"client.RPLClientHandlersMixin",
1717
"client.SoundEngineMixin",
18-
"client.ValueSettingsClientMixin"
18+
"client.ValueSettingsClientMixin",
19+
"client.PitchOrientedContraptionEntityMixin"
1920
],
2021
"mixins": [
2122
"ArmorStandMixin",
@@ -29,7 +30,9 @@
2930
"compat.create.AbstractContraptionEntityMixin",
3031
"compat.create.AllSoundEventsMixin",
3132
"compat.create.BeltMovementHandlerMixin",
33+
"compat.create.ChassisBlockEntityMixin",
3234
"compat.create.ContraptionColliderMixin",
35+
"compat.create.ContraptionMixin",
3336
"compat.create.FilterItemMixin",
3437
"compat.create.GantryContraptionMixin",
3538
"compat.create.MechanicalBearingBlockEntityMixin",

0 commit comments

Comments
 (0)