Skip to content

Commit 015ca99

Browse files
committed
- Rework 1.21.5 update by @BigBeefyCow666 (removed gameplay changes that were breaking the mod)
- Added issue button of Mod Menu redirecting to github issues page.
1 parent 8be3489 commit 015ca99

7 files changed

Lines changed: 32 additions & 47 deletions

File tree

gradle.properties

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,12 @@ org.gradle.parallel=true
55
# Fabric Properties
66
# check these on https://fabricmc.net/develop
77
minecraft_version=1.21.5
8-
loader_version=0.16.13
8+
loader_version=0.16.14
99

1010
# Mod Properties
1111
mod_version=1.0.4+mc1.21.5
1212
maven_group=net.robofox.copperrails
1313
archives_base_name=copperrails
1414

1515
# Dependencies
16-
fabric_version=0.120.0+1.21.5
16+
fabric_version=0.122.0+1.21.5

src/main/java/net/robofox/copperrails/block/ModBlocks.java

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,10 @@
2222

2323
public class ModBlocks {
2424

25-
// .setId(ResourceKey.create(Registries.BLOCK, ResourceLocation.fromNamespaceAndPath(CopperRails.MOD_ID, "waxed_oxidized_copper_rail")))
26-
2725
public static final Block COPPER_RAIL = register(new OxidizableCopperRailBlock(WeatheringCopper.WeatherState.UNAFFECTED, BlockBehaviour.Properties.ofFullCopy(Blocks.POWERED_RAIL).mapColor(MapColor.COLOR_ORANGE).setId(ResourceKey.create(Registries.BLOCK, ResourceLocation.fromNamespaceAndPath(CopperRails.MOD_ID, "copper_rail")))), "copper_rail");
2826
public static final Block EXPOSED_COPPER_RAIL = register(new OxidizableCopperRailBlock(WeatheringCopper.WeatherState.EXPOSED, BlockBehaviour.Properties.ofFullCopy(Blocks.POWERED_RAIL).mapColor(MapColor.TERRACOTTA_LIGHT_GRAY).setId(ResourceKey.create(Registries.BLOCK, ResourceLocation.fromNamespaceAndPath(CopperRails.MOD_ID, "exposed_copper_rail")))), "exposed_copper_rail");
2927
public static final Block WEATHERED_COPPER_RAIL = register(new OxidizableCopperRailBlock(WeatheringCopper.WeatherState.WEATHERED, BlockBehaviour.Properties.ofFullCopy(Blocks.POWERED_RAIL).mapColor(MapColor.WARPED_STEM).setId(ResourceKey.create(Registries.BLOCK, ResourceLocation.fromNamespaceAndPath(CopperRails.MOD_ID, "weathered_copper_rail")))), "weathered_copper_rail");
30-
public static final Block OXIDIZED_COPPER_RAIL = register(new OxidizableCopperRailBlock(WeatheringCopper.WeatherState.OXIDIZED, BlockBehaviour.Properties.ofFullCopy(Blocks.POWERED_RAIL).mapColor(MapColor.WARPED_NYLIUM).setId(ResourceKey.create(Registries.BLOCK, ResourceLocation.fromNamespaceAndPath(CopperRails.MOD_ID, "oxidized_rail")))), "oxidized_copper_rail");
28+
public static final Block OXIDIZED_COPPER_RAIL = register(new OxidizableCopperRailBlock(WeatheringCopper.WeatherState.OXIDIZED, BlockBehaviour.Properties.ofFullCopy(Blocks.POWERED_RAIL).mapColor(MapColor.WARPED_NYLIUM).setId(ResourceKey.create(Registries.BLOCK, ResourceLocation.fromNamespaceAndPath(CopperRails.MOD_ID, "oxidized_copper_rail")))), "oxidized_copper_rail");
3129
public static final Block WAXED_COPPER_RAIL = register(new GenericCopperRailBlock(BlockBehaviour.Properties.ofFullCopy(ModBlocks.COPPER_RAIL).setId(ResourceKey.create(Registries.BLOCK, ResourceLocation.fromNamespaceAndPath(CopperRails.MOD_ID, "waxed_copper_rail")))), "waxed_copper_rail");
3230
public static final Block WAXED_EXPOSED_COPPER_RAIL = register(new GenericCopperRailBlock(BlockBehaviour.Properties.ofFullCopy(ModBlocks.EXPOSED_COPPER_RAIL).setId(ResourceKey.create(Registries.BLOCK, ResourceLocation.fromNamespaceAndPath(CopperRails.MOD_ID, "waxed_exposed_copper_rail")))), "waxed_exposed_copper_rail");
3331
public static final Block WAXED_WEATHERED_COPPER_RAIL = register(new GenericCopperRailBlock(BlockBehaviour.Properties.ofFullCopy(ModBlocks.WEATHERED_COPPER_RAIL).setId(ResourceKey.create(Registries.BLOCK, ResourceLocation.fromNamespaceAndPath(CopperRails.MOD_ID, "waxed_weathered_copper_rail")))), "waxed_weathered_copper_rail");

src/main/java/net/robofox/copperrails/mixin/MinecartBehaviorMixin.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,14 @@
44
import net.minecraft.world.entity.vehicle.MinecartBehavior;
55
import org.spongepowered.asm.mixin.Mixin;
66
import org.spongepowered.asm.mixin.Shadow;
7-
import org.spongepowered.asm.mixin.injection.ModifyArg;
87

98
@Mixin(MinecartBehavior.class)
109
public abstract class MinecartBehaviorMixin {
10+
1111
@Shadow
1212
protected final AbstractMinecart minecart;
1313

1414
public MinecartBehaviorMixin(AbstractMinecart minecart) {
1515
this.minecart = minecart;
1616
}
17-
1817
}

src/main/java/net/robofox/copperrails/mixin/OldMinecartBehaviorMixin.java

Lines changed: 23 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -47,17 +47,9 @@ public boolean isPoweringRail(BlockState state, Block block) {
4747
}
4848
}
4949

50-
@Redirect(
51-
method = "moveAlongTrack",
52-
at = @At(value = "INVOKE", target = "Ljava/lang/Math;min(DD)D"))
53-
private double newMin(double min, double hozDist) {
54-
return Math.min(getMaxRailSpeed() / (3/4), hozDist);
55-
}
56-
5750
@Unique
58-
public double getMaxRailSpeed(/*BlockState blockState*/) {
59-
// Block block = blockState.getBlock();
60-
Block block = this.minecart.getInBlockState().getBlock();
51+
public double getMaxRailSpeed(BlockState blockState) {
52+
Block block = blockState.getBlock();
6153
if (block == ModBlocks.COPPER_RAIL || block == ModBlocks.WAXED_COPPER_RAIL) {
6254
return CopperRailsConfig.COPPER_SPEED;
6355
} else if (block == ModBlocks.EXPOSED_COPPER_RAIL || block == ModBlocks.WAXED_EXPOSED_COPPER_RAIL) {
@@ -79,32 +71,29 @@ public double getMaxRailSpeed(/*BlockState blockState*/) {
7971
* @reason Rewrite all getMaxSpeed (very short) to increase max speed
8072
*/
8173
@Overwrite
82-
public double getMaxSpeed(ServerLevel $$0) {
83-
// return (this.minecart.isInWater() ? CopperRailsConfig.NORMAL_RAIL_SPEED / 2.0 : CopperRailsConfig.NORMAL_RAIL_SPEED);
84-
double maxSpeed = getMaxRailSpeed();
85-
return (this.minecart.isInWater() ? maxSpeed / 2.0 : maxSpeed);
74+
public double getMaxSpeed(ServerLevel serverLevel) {
75+
return (this.minecart.isInWater() ? CopperRailsConfig.NORMAL_RAIL_SPEED / 2.0 : CopperRailsConfig.NORMAL_RAIL_SPEED);
8676
}
8777

88-
// @Unique
89-
// private double convergeAbs(double speed, double targetSpeed) {
90-
// if (Math.abs(speed) > targetSpeed) {
91-
// return Math.signum(speed) * Math.min(Math.abs(speed) * 1 /*0.7*/, targetSpeed);
92-
// } else {
93-
// return speed;
94-
// }
95-
// }
96-
//
97-
// @Redirect(
98-
// method = "moveAlongTrack",
99-
// at = @At(
100-
// value = "INVOKE",
101-
// target = "Lnet/minecraft/world/entity/vehicle/OldMinecartBehavior;setDeltaMovement(Lnet/minecraft/world/phys/Vec3;)V",
102-
// ordinal = 9))
103-
// public void setVelocityClamp(OldMinecartBehavior minecart, Vec3 velocity) {
104-
//// double maxSpeed = getMaxRailSpeed(minecart.minecart.getInBlockState());
105-
// double maxSpeed = getMaxRailSpeed();
106-
// minecart.setDeltaMovement(convergeAbs(velocity.x, maxSpeed), velocity.y, convergeAbs(velocity.z, maxSpeed));
107-
// }
78+
@Unique
79+
private double convergeAbs(double speed, double targetSpeed) {
80+
if (Math.abs(speed) > targetSpeed) {
81+
return Math.signum(speed) * Math.max(Math.abs(speed) * 0.7, targetSpeed);
82+
} else {
83+
return speed;
84+
}
85+
}
86+
87+
@Redirect(
88+
method = "moveAlongTrack",
89+
at = @At(
90+
value = "INVOKE",
91+
target = "Lnet/minecraft/world/entity/vehicle/OldMinecartBehavior;setDeltaMovement(Lnet/minecraft/world/phys/Vec3;)V",
92+
ordinal = 9))
93+
public void setVelocityClamp(OldMinecartBehavior minecart, Vec3 velocity) {
94+
double maxSpeed = getMaxRailSpeed(this.minecart.getInBlockState());
95+
minecart.setDeltaMovement(convergeAbs(velocity.x, maxSpeed), velocity.y, convergeAbs(velocity.z, maxSpeed));
96+
}
10897

10998
@Redirect(
11099
method = "moveAlongTrack",

src/main/resources/assets/copperrails/lang/fr_ca.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@
1313

1414
"block.copperrails.rail_crossing": "Rails de croisement",
1515

16-
1716
"item.copperrails.copper_rail": "Rails propulseurs en cuivre",
1817
"item.copperrails.waxed_copper_rail": "Rails propulseurs en cuivre ciré",
1918

src/main/resources/assets/copperrails/lang/fr_fr.json

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,7 @@
1212
"block.copperrails.waxed_oxidized_copper_rail": "Rails de propulsion en cuivre oxydé ciré",
1313

1414
"block.copperrails.rail_crossing": "Rails de croisement",
15-
16-
15+
1716
"item.copperrails.copper_rail": "Rails de propulsion en cuivre",
1817
"item.copperrails.waxed_copper_rail": "Rails de propulsion en cuivre ciré",
1918

src/main/resources/fabric.mod.json

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,8 @@
99
],
1010
"contact": {
1111
"homepage": "https://modrinth.com/project/copperrails",
12-
"sources": "https://github.com/FXCourel/Copper-Rails"
12+
"sources": "https://github.com/FXCourel/Copper-Rails",
13+
"issues": "https://github.com/FXCourel/Copper-Rails/issues"
1314
},
1415
"license": "CC0-1.0",
1516
"icon": "assets/copperrails/icon.png",
@@ -26,8 +27,8 @@
2627
"copperrails.mixins.json"
2728
],
2829
"depends": {
29-
"fabricloader": ">=0.15.11",
30-
"minecraft": "~1.21",
30+
"fabricloader": ">=0.16.14",
31+
"minecraft": ">=1.21.4",
3132
"java": ">=21",
3233
"fabric-api": "*"
3334
},

0 commit comments

Comments
 (0)