@@ -106,15 +106,15 @@ public ClassNode transform(ClassNode classNode) {
106106 switch (classNode .name ) {
107107 case ChunkBlockMap : {
108108 patchChunkBlockMap (classNode );
109- return classNode ;
109+ break ;
110110 }
111111 case GuiConnecting : {
112112 patchGuiConnecting (classNode );
113- return classNode ;
113+ break ;
114114 }
115115 case Minecraft : {
116116 patchMinecraft (classNode );
117- return classNode ;
117+ break ;
118118 }
119119 case ItemStack : {
120120 patchItemStackNet (classNode );
@@ -239,8 +239,9 @@ public ClassNode transform(ClassNode classNode) {
239239 "java/lang/Object" .equals (classNode .superName )) {
240240 skipGeneric = true ;
241241 }
242- if ((!skipGeneric ) && classNode .name .startsWith ("net/minecraft/common/item/children/Item" ) &&
243- classNode .name .indexOf ('/' , "net/minecraft/common/item/children/Item" .length ()) == -1 ) {
242+ if ((!skipGeneric ) && ((classNode .name .startsWith ("net/minecraft/common/item/children/Item" ) &&
243+ classNode .name .indexOf ('/' , "net/minecraft/common/item/children/Item" .length ()) == -1 ) ||
244+ classNode .name .startsWith ("net/minecraft/common/item/block/ItemBlock" ))) {
244245 patchItemGeneric (classNode );
245246 }
246247 if ((!skipGeneric ) && classNode .name .startsWith ("net/minecraft/common/block/children/Block" ) &&
@@ -947,6 +948,7 @@ private static void patchItemGeneric(ClassNode classNode) {
947948 boolean isItemBlock = (!classNode .superName .equals (Item )) &&
948949 (classNode .name .contains ("ItemBlock" ) || classNode .superName .equals (ItemBlock ));
949950 ArrayList <MethodNode > initializers = new ArrayList <>(4 );
951+ boolean gotOneValidConstructor = false ;
950952 for (MethodNode methodNode : classNode .methods ) {
951953 if (methodNode .name .equals ("<init>" )) {
952954 if (!methodNode .desc .startsWith ("(I" )) {
@@ -963,7 +965,10 @@ private static void patchItemGeneric(ClassNode classNode) {
963965 for (LocalVariableNode localVariableNode : methodNode .localVariables ) {
964966 if (localVariableNode .index == 2 ) {
965967 String lowercaseName = localVariableNode .name .toLowerCase (Locale .ROOT );
966- hasBlockIdArg = "blid" .equals (lowercaseName ) || "blockid" .equals (lowercaseName );
968+ hasBlockIdArg = "blid" .equals (lowercaseName ) ||
969+ "block_id" .equals (lowercaseName ) ||
970+ "blockId" .equals (lowercaseName ) ||
971+ "blockid" .equals (lowercaseName );
967972 break ;
968973 }
969974 }
0 commit comments