Skip to content

Conversation

@HaHaWTH
Copy link

@HaHaWTH HaHaWTH commented Nov 15, 2025

Closes #141.

Carpet's noBlockDamage mixin is searching for ExplosionDamageCalculator#getBlockExplosionResistance as injection point, moonrise completely overwrites the calculateExplodedPositions method, causing conflict. Using inject and cancel at head will silently disable this injector, but there's another injection point for the noBlockDamage feature Carpet/Explosion_optimizedTntMixin#L55, this will clear the affectedBlocks list. So Carpet's feature still works fine.

How this works: Carpet's noBlockDamage mixin is searching for ExplosionDamageCalculator#getBlockExplosionResistance as injection point, moonrise completely overwrites the `calculateExplodedPositions` method, causing conflict. Using inject and cancel at head will silently disable this injector, but there's another injection point for the noBlockDamage feature (https://github.com/gnembon/fabric-carpet/blob/master/src/main/java/carpet/mixins/Explosion_optimizedTntMixin.java#L55), this will clear the affectedBlocks list. So Carpet's feature still works fine.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Incompatibility: <NeoForge/Fabric/NeoForge & Fabric>]: Carpet

1 participant