How zhuimeng1233/block-durability works
Block Durability is a NeoForge mod that lets eligible blocks absorb durability damage from explosions and TaCZ bullets until they break. The main flow is a Minecraft explosion or TaCZ hit event entering its handler, which checks eligibility and damage, then delegates HP updates to the manager; the manager tracks damage and synchronizes crack progress. Configuration controls the whitelist, HP formula, damage, healing, and effects. The README documents vanilla/modded explosion compatibility and shielding; the sampled event handler implements those behaviors. Source excerpts do not show every registration detail for integrations.
Main entry points: BlockHPEventHandler.java Explosion handler · BlockHPManager.java HP manager · BlockDurability.java Mod entry · TaczHitHandler.java Bullet handler
Components 7
Mod bootstrap
- Mod entry
src/main/java/top/dreamfall/blockdurability/BlockDurability.java - Durability config
src/main/java/top/dreamfall/blockdurability/BlockHPConfig.java
Damage handling
- Explosion handler
src/main/java/top/dreamfall/blockdurability/BlockHPEventHandler.java - Bullet handler
src/main/java/top/dreamfall/blockdurability/TaczHitHandler.java
Durability state
- HP manager
src/main/java/top/dreamfall/blockdurability/BlockHPManager.java
Other components
- Minecraft explosions
- TaCZ bullet hits
Connections 12
- Mod entry → Durability config: registers
src/main/java/top/dreamfall/blockdurability/BlockDurability.java - Mod entry → Explosion handler: registers
src/main/java/top/dreamfall/blockdurability/BlockDurability.java - Mod entry → Bullet handler: conditionally registers
src/main/java/top/dreamfall/blockdurability/BlockDurability.java - Mod entry → HP manager: invalidates cache
src/main/java/top/dreamfall/blockdurability/BlockDurability.java - Minecraft explosions → Explosion handler: dispatches events
src/main/java/top/dreamfall/blockdurability/BlockHPEventHandler.java - TaCZ bullet hits → Bullet handler: dispatches hits
src/main/java/top/dreamfall/blockdurability/TaczHitHandler.java - Explosion handler → Durability config: reads settings
src/main/java/top/dreamfall/blockdurability/BlockHPEventHandler.java - Explosion handler → HP manager: checks and damages
src/main/java/top/dreamfall/blockdurability/BlockHPEventHandler.java - Bullet handler → Durability config: reads settings
src/main/java/top/dreamfall/blockdurability/TaczHitHandler.java - Bullet handler → HP manager: checks and damages
src/main/java/top/dreamfall/blockdurability/TaczHitHandler.java - HP manager → Durability config: reads HP rules
src/main/java/top/dreamfall/blockdurability/BlockHPManager.java - Explosion handler → HP manager: ticks and cleans state
src/main/java/top/dreamfall/blockdurability/BlockHPEventHandler.java