File tree Expand file tree Collapse file tree 1 file changed +17
-0
lines changed
src/main/java/net/earthcomputer/clientcommands Expand file tree Collapse file tree 1 file changed +17
-0
lines changed Original file line number Diff line number Diff line change 22
33import net .minecraft .client .Minecraft ;
44import net .minecraft .client .resources .I18n ;
5+ import net .minecraft .enchantment .EnchantmentHelper ;
56import net .minecraft .entity .player .EntityPlayer ;
7+ import net .minecraft .init .Enchantments ;
8+ import net .minecraft .inventory .ClickType ;
69
710public class TempRulesImpl {
811
@@ -28,6 +31,20 @@ private static void initToolBreakProtection() {
2831 e .setCanceled (true );
2932 Minecraft .getMinecraft ().ingameGUI
3033 .setOverlayMessage (I18n .format ("tempRules.toolBreakProtection.protected" ), false );
34+ } else {
35+ // Fix client-server desync
36+ e .getItemStack ().setItemDamage (e .getItemStack ().getItemDamage () + e .getDamageAmount ());
37+ if (EnchantmentHelper .getEnchantmentLevel (Enchantments .UNBREAKING , e .getItemStack ()) > 0 ) {
38+ if (e .getEntityPlayer ().openContainer == e .getEntityPlayer ().inventoryContainer ) {
39+ // Pickup the item and put it back again to refresh durability
40+ for (int i = 0 ; i < 2 ; i ++) {
41+ Minecraft .getMinecraft ().playerController .windowClick (
42+ e .getEntityPlayer ().openContainer .windowId ,
43+ e .getEntityPlayer ().inventory .currentItem , 0 , ClickType .PICKUP ,
44+ e .getEntityPlayer ());
45+ }
46+ }
47+ }
3148 }
3249 }
3350 });
You can’t perform that action at this time.
0 commit comments