Skip to content

Commit ffdd28d

Browse files
committed
Close #280
1 parent 77364db commit ffdd28d

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

src/main/java/mods/railcraft/world/entity/vehicle/MinecartHandler.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import mods.railcraft.util.EntitySearcher;
99
import mods.railcraft.util.ModEntitySelector;
1010
import mods.railcraft.world.level.block.RailcraftBlocks;
11+
import net.minecraft.server.level.ServerLevel;
1112
import net.minecraft.world.entity.Entity;
1213
import net.minecraft.world.entity.EntitySelector;
1314
import net.minecraft.world.entity.LivingEntity;
@@ -16,6 +17,7 @@
1617
import net.minecraft.world.entity.item.ItemEntity;
1718
import net.minecraft.world.entity.player.Player;
1819
import net.minecraft.world.entity.vehicle.AbstractMinecart;
20+
import net.minecraft.world.level.GameRules;
1921
import net.minecraft.world.phys.AABB;
2022
import net.minecraft.world.phys.Vec3;
2123
import net.minecraftforge.common.IMinecartCollisionHandler;
@@ -41,6 +43,7 @@ public void onEntityCollision(AbstractMinecart cart, Entity other) {
4143
|| !other.isAlive() || !cart.isAlive()) {
4244
return;
4345
}
46+
var serverLevel = (ServerLevel) level;
4447

4548
var rollingStock = RollingStock.getOrThrow(cart);
4649

@@ -84,7 +87,8 @@ public void onEntityCollision(AbstractMinecart cart, Entity other) {
8487
.around(cart)
8588
.and(EntitySelector.ENTITY_STILL_ALIVE, ModEntitySelector.NON_MECHANICAL)
8689
.list(level);
87-
if (carts.size() >= 12) {
90+
var maxEntityCramming = serverLevel.getGameRules().getInt(GameRules.RULE_MAX_ENTITY_CRAMMING);
91+
if (carts.size() >= maxEntityCramming) {
8892
rollingStock.primeExplosion();
8993
}
9094
}

0 commit comments

Comments
 (0)