diff --git a/src/main/kotlin/insight/generation/MinecraftClassCreateAction.kt b/src/main/kotlin/insight/generation/MinecraftClassCreateAction.kt index f5efd0b54..80700bebd 100644 --- a/src/main/kotlin/insight/generation/MinecraftClassCreateAction.kt +++ b/src/main/kotlin/insight/generation/MinecraftClassCreateAction.kt @@ -69,18 +69,20 @@ class MinecraftClassCreateAction : val isForge = MinecraftFacet.getInstance(module, ForgeModuleType) != null val isNeoForge = MinecraftFacet.getInstance(module, NeoForgeModuleType) != null val isFabric = MinecraftFacet.getInstance(module, FabricModuleType) != null - val mcVersion = MinecraftFacet.getInstance(module, McpModuleType)?.getSettings() + val forgeMcVersion = MinecraftFacet.getInstance(module, McpModuleType)?.getSettings() ?.minecraftVersion?.let(SemanticVersion::parse) + val fabricMcVersion = + MinecraftFacet.getInstance(module, FabricModuleType)?.computeVersion()//Qui mica รจ un FabricModule - if (isForge && mcVersion != null) { + if (isForge && forgeMcVersion != null) { val icon = PlatformAssets.FORGE_ICON - if (mcVersion < MinecraftVersions.MC1_17) { + if (forgeMcVersion < MinecraftVersions.MC1_17) { builder.addKind("Block", icon, MinecraftTemplates.FORGE_BLOCK_TEMPLATE) builder.addKind("Enchantment", icon, MinecraftTemplates.FORGE_ENCHANTMENT_TEMPLATE) builder.addKind("Item", icon, MinecraftTemplates.FORGE_ITEM_TEMPLATE) builder.addKind("Packet", icon, MinecraftTemplates.FORGE_PACKET_TEMPLATE) - } else if (mcVersion < MinecraftVersions.MC1_18) { + } else if (forgeMcVersion < MinecraftVersions.MC1_18) { builder.addKind("Block", icon, MinecraftTemplates.FORGE_1_17_BLOCK_TEMPLATE) builder.addKind("Enchantment", icon, MinecraftTemplates.FORGE_1_17_ENCHANTMENT_TEMPLATE) builder.addKind("Item", icon, MinecraftTemplates.FORGE_1_17_ITEM_TEMPLATE) @@ -106,11 +108,19 @@ class MinecraftClassCreateAction : if (isFabric) { val icon = PlatformAssets.FABRIC_ICON + if (fabricMcVersion != null && fabricMcVersion >= MinecraftVersions.MC26_1) { + builder.addKind("Block", icon, MinecraftTemplates.FABRIC_26_1_BLOCK_TEMPLATE) + builder.addKind("Enchantment", icon, MinecraftTemplates.FABRIC_26_1_ENCHANTMENT_TEMPLATE) + builder.addKind("Item", icon, MinecraftTemplates.FABRIC_26_1_ITEM_TEMPLATE) + builder.addKind("Mob effect", icon, MinecraftTemplates.FABRIC_26_1_MOB_EFFECT_TEMPLATE) - builder.addKind("Block", icon, MinecraftTemplates.FABRIC_BLOCK_TEMPLATE) - builder.addKind("Enchantment", icon, MinecraftTemplates.FABRIC_ENCHANTMENT_TEMPLATE) - builder.addKind("Item", icon, MinecraftTemplates.FABRIC_ITEM_TEMPLATE) - builder.addKind("Status effect", icon, MinecraftTemplates.FABRIC_STATUS_EFFECT_TEMPLATE) + } else { + builder.addKind("Block", icon, MinecraftTemplates.FABRIC_1_21_11_BLOCK_TEMPLATE) + builder.addKind("Enchantment", icon, MinecraftTemplates.FABRIC_1_21_11_ENCHANTMENT_TEMPLATE) + builder.addKind("Item", icon, MinecraftTemplates.FABRIC_1_21_11_ITEM_TEMPLATE) + builder.addKind("Status effect", icon, MinecraftTemplates.FABRIC_1_21_11_STATUS_EFFECT_TEMPLATE) + + } } } diff --git a/src/main/kotlin/platform/fabric/FabricModule.kt b/src/main/kotlin/platform/fabric/FabricModule.kt index 8481cc395..a718e6555 100644 --- a/src/main/kotlin/platform/fabric/FabricModule.kt +++ b/src/main/kotlin/platform/fabric/FabricModule.kt @@ -30,11 +30,14 @@ import com.demonwav.mcdev.platform.mcp.fabricloom.FabricLoomData import com.demonwav.mcdev.platform.mcp.mappings.HardcodedYarnToMojmap import com.demonwav.mcdev.platform.mcp.mappings.HasCustomNamedMappings import com.demonwav.mcdev.platform.mcp.mappings.MappingsManager +import com.demonwav.mcdev.util.SemanticVersion import com.demonwav.mcdev.util.SourceType import com.demonwav.mcdev.util.nullable import com.demonwav.mcdev.util.runCatchingKtIdeaExceptions import com.intellij.json.JsonUtil +import com.intellij.json.psi.JsonArray import com.intellij.json.psi.JsonFile +import com.intellij.json.psi.JsonObject import com.intellij.json.psi.JsonStringLiteral import com.intellij.psi.PsiClass import com.intellij.psi.PsiElement @@ -67,6 +70,7 @@ class FabricModule internal constructor(facet: MinecraftFacet) : AbstractModule( override val moduleType = FabricModuleType override val type = PlatformType.FABRIC override val icon = PlatformAssets.FABRIC_ICON + var fabricMinecraftVersion: SemanticVersion? = null; override fun computeModIds(): List { val jsonFile = PsiManager.getInstance(project).findFile(fabricJson ?: return emptyList()) as? JsonFile @@ -75,6 +79,30 @@ class FabricModule internal constructor(facet: MinecraftFacet) : AbstractModule( return listOfNotNull((jsonObj.findProperty("id")?.value as? JsonStringLiteral)?.value) } + fun computeVersion(): SemanticVersion? { + val jsonFile = PsiManager.getInstance(project).findFile(fabricJson ?: return null) as? JsonFile + ?: return null + val jsonObj = JsonUtil.getTopLevelObject(jsonFile) ?: return null; + val depends = jsonObj.findProperty("depends")?.value as? JsonObject + val range = depends?.findProperty("minecraft") + val value = (range?.value as? JsonStringLiteral)?.value; + val arrayValue = (range?.value as? JsonArray) + if (value != null) { + val end = value.trimStart { !it.isDigit() } + return SemanticVersion.parse(end) + } else if (arrayValue != null) { + var majorVersion: SemanticVersion? = null; + for (child in arrayValue.valueList) { + val string = (child as? JsonStringLiteral)?.value ?: "0.0" + val end = string.trimStart { !it.isDigit() } + val value = SemanticVersion.parse(end) + if (majorVersion == null || value > majorVersion) majorVersion = value; + } + return majorVersion + } + return null + } + override fun isEventClassValid(eventClass: PsiClass, method: PsiMethod?) = true override fun writeErrorMessageForEventParameter(eventClass: PsiClass, method: PsiMethod) = "" @@ -107,6 +135,7 @@ class FabricModule internal constructor(facet: MinecraftFacet) : AbstractModule( private fun detectMappings(): MappingDetectionResult { val gradleData = GradleUtil.findGradleModuleData(facet.module) ?: return MappingDetectionResult.DEFAULT + val loomData = gradleData.children.find { it.key == FabricLoomData.KEY }?.data as? FabricLoomData ?: return MappingDetectionResult.DEFAULT val mappingsFile = loomData.tinyMappings ?: return MappingDetectionResult.DEFAULT @@ -147,7 +176,8 @@ class FabricModule internal constructor(facet: MinecraftFacet) : AbstractModule( override fun visitMethodArg(argPosition: Int, lvIndex: Int, srcName: String?) = false - override fun visitMethodVar(lvtRowIndex: Int, lvIndex: Int, startOpIdx: Int, endOpIdx: Int, srcName: String?) = false + override fun visitMethodVar(lvtRowIndex: Int, lvIndex: Int, startOpIdx: Int, endOpIdx: Int, srcName: String?) = + false override fun visitDstName(targetKind: MappedElementKind?, namespace: Int, name: String) { if (namespace == namedIndex && name == "net/minecraft/client/MinecraftClient") { diff --git a/src/main/kotlin/util/MinecraftTemplates.kt b/src/main/kotlin/util/MinecraftTemplates.kt index f071706ea..e5b3c0da6 100644 --- a/src/main/kotlin/util/MinecraftTemplates.kt +++ b/src/main/kotlin/util/MinecraftTemplates.kt @@ -161,10 +161,16 @@ class MinecraftTemplates : FileTemplateGroupDescriptorFactory { } FileTemplateGroupDescriptor("Fabric", PlatformAssets.FABRIC_ICON).let { fabricSkeletonGroup -> skeletonGroup.addTemplate(fabricSkeletonGroup) - fabricSkeletonGroup.addTemplate(FileTemplateDescriptor(FABRIC_BLOCK_TEMPLATE)) - fabricSkeletonGroup.addTemplate(FileTemplateDescriptor(FABRIC_ITEM_TEMPLATE)) - fabricSkeletonGroup.addTemplate(FileTemplateDescriptor(FABRIC_ENCHANTMENT_TEMPLATE)) - fabricSkeletonGroup.addTemplate(FileTemplateDescriptor(FABRIC_STATUS_EFFECT_TEMPLATE)) + fabricSkeletonGroup.addTemplate(FileTemplateDescriptor(FABRIC_1_21_11_BLOCK_TEMPLATE)) + fabricSkeletonGroup.addTemplate(FileTemplateDescriptor(FABRIC_1_21_11_ITEM_TEMPLATE)) + fabricSkeletonGroup.addTemplate(FileTemplateDescriptor(FABRIC_1_21_11_ENCHANTMENT_TEMPLATE)) + fabricSkeletonGroup.addTemplate(FileTemplateDescriptor(FABRIC_1_21_11_STATUS_EFFECT_TEMPLATE)) + + fabricSkeletonGroup.addTemplate(FileTemplateDescriptor(FABRIC_26_1_BLOCK_TEMPLATE)) + fabricSkeletonGroup.addTemplate(FileTemplateDescriptor(FABRIC_26_1_ITEM_TEMPLATE)) + fabricSkeletonGroup.addTemplate(FileTemplateDescriptor(FABRIC_26_1_ENCHANTMENT_TEMPLATE)) + fabricSkeletonGroup.addTemplate(FileTemplateDescriptor(FABRIC_26_1_MOB_EFFECT_TEMPLATE)) + } } @@ -268,10 +274,15 @@ class MinecraftTemplates : FileTemplateGroupDescriptorFactory { const val FORGE_1_18_PACKET_TEMPLATE = "ForgePacket (1.18+).java" - const val FABRIC_BLOCK_TEMPLATE = "FabricBlock.java" - const val FABRIC_ITEM_TEMPLATE = "FabricItem.java" - const val FABRIC_ENCHANTMENT_TEMPLATE = "FabricEnchantment.java" - const val FABRIC_STATUS_EFFECT_TEMPLATE = "FabricStatusEffect.java" + const val FABRIC_1_21_11_BLOCK_TEMPLATE = "FabricBlock (1.21.11-).java" + const val FABRIC_1_21_11_ITEM_TEMPLATE = "FabricItem (1.21.11-).java" + const val FABRIC_1_21_11_ENCHANTMENT_TEMPLATE = "FabricEnchantment (1.21.11-).java" + const val FABRIC_1_21_11_STATUS_EFFECT_TEMPLATE = "FabricStatusEffect (1.21.11-).java" + + const val FABRIC_26_1_BLOCK_TEMPLATE = "FabricBlock (26.1+).java" + const val FABRIC_26_1_ITEM_TEMPLATE = "FabricItem (26.1+).java" + const val FABRIC_26_1_ENCHANTMENT_TEMPLATE = "FabricEnchantment (26.1+).java" + const val FABRIC_26_1_MOB_EFFECT_TEMPLATE = "FabricMobEffect (26.1+).java" const val NEOFORGE_MIXINS_JSON_TEMPLATE = "NeoForge Mixins Config.json" const val NEOFORGE_MAIN_CLASS_TEMPLATE = "NeoForge Main Class.java" diff --git a/src/main/kotlin/util/MinecraftVersions.kt b/src/main/kotlin/util/MinecraftVersions.kt index a5f77e609..193dbeb07 100644 --- a/src/main/kotlin/util/MinecraftVersions.kt +++ b/src/main/kotlin/util/MinecraftVersions.kt @@ -48,6 +48,7 @@ object MinecraftVersions { val MC1_21_1 = SemanticVersion.release(1, 21, 1) val MC1_21_11 = SemanticVersion.release(1, 21, 11) val MC26_1 = SemanticVersion.release(26, 1) + val MC26_2 = SemanticVersion.release(26, 2) fun requiredJavaVersion(minecraftVersion: SemanticVersion) = when { minecraftVersion <= MC1_16_5 -> JavaSdkVersion.JDK_1_8 diff --git a/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricBlock.java.ft b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricBlock (1.21.11-).java.ft similarity index 100% rename from src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricBlock.java.ft rename to src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricBlock (1.21.11-).java.ft diff --git a/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricEnchantment.java.html b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricBlock (1.21.11-).java.html similarity index 93% rename from src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricEnchantment.java.html rename to src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricBlock (1.21.11-).java.html index 3d9b2f8b9..f5667c727 100644 --- a/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricEnchantment.java.html +++ b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricBlock (1.21.11-).java.html @@ -20,6 +20,6 @@ - A basic enchantment class for fabric. + A basic block class for fabric 1.21.11-. diff --git a/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricBlock (26.1+).java.ft b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricBlock (26.1+).java.ft new file mode 100644 index 000000000..671f8f4d1 --- /dev/null +++ b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricBlock (26.1+).java.ft @@ -0,0 +1,10 @@ +#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end +#parse("File Header.java") + +import net.minecraft.world.level.block.Block; + +public class ${NAME} extends Block { + public ${NAME}(Properties properties) { + super(properties); + } +} diff --git a/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricBlock.java.html b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricBlock (26.1+).java.html similarity index 94% rename from src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricBlock.java.html rename to src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricBlock (26.1+).java.html index 85250ce6e..c4a8f96b0 100644 --- a/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricBlock.java.html +++ b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricBlock (26.1+).java.html @@ -20,6 +20,6 @@ - A basic block class for fabric. + A basic block class for fabric 26.1+. diff --git a/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricEnchantment.java.ft b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricEnchantment (1.21.11-).java.ft similarity index 100% rename from src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricEnchantment.java.ft rename to src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricEnchantment (1.21.11-).java.ft diff --git a/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricEnchantment (1.21.11-).java.html b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricEnchantment (1.21.11-).java.html new file mode 100644 index 000000000..f20134053 --- /dev/null +++ b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricEnchantment (1.21.11-).java.html @@ -0,0 +1,25 @@ + + + + + A basic enchantment class for fabric 1.21.11-. + + diff --git a/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricEnchantment (26.1+).java.ft b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricEnchantment (26.1+).java.ft new file mode 100644 index 000000000..8034f2372 --- /dev/null +++ b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricEnchantment (26.1+).java.ft @@ -0,0 +1,13 @@ +#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end +#parse("File Header.java") + +//Not functional for MC 1.20.3+ +import net.minecraft.world.entity.EquipmentSlot; +import net.minecraft.world.item.enchantment.Enchantment; +import net.minecraft.world.item.enchantment.EnchantmentCategory; + +public class ${NAME} extends Enchantment { + public ${NAME}(Rarity rarity, EnchantmentCategory category, EquipmentSlot[] slots) { + super(rarity, category, slots); + } +} \ No newline at end of file diff --git a/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricEnchantment (26.1+).java.html b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricEnchantment (26.1+).java.html new file mode 100644 index 000000000..dac0b56fc --- /dev/null +++ b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricEnchantment (26.1+).java.html @@ -0,0 +1,25 @@ + + + + +A basic enchantment class for fabric 26.1+. + + diff --git a/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricItem.java.ft b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricItem (1.21.11-).java.ft similarity index 100% rename from src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricItem.java.ft rename to src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricItem (1.21.11-).java.ft diff --git a/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricItem.java.html b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricItem (1.21.11-).java.html similarity index 93% rename from src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricItem.java.html rename to src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricItem (1.21.11-).java.html index dcbeee1a6..11bef898f 100644 --- a/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricItem.java.html +++ b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricItem (1.21.11-).java.html @@ -20,6 +20,6 @@ - An empty Fabric item class. + An empty Fabric item class for 1.21.11-. diff --git a/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricItem (26.1+).java.ft b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricItem (26.1+).java.ft new file mode 100644 index 000000000..df9bace43 --- /dev/null +++ b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricItem (26.1+).java.ft @@ -0,0 +1,10 @@ +#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end +#parse("File Header.java") + +import net.minecraft.world.item.Item; + +public class ${NAME} extends Item { + public ${NAME}(Properties props) { + super(props); + } +} diff --git a/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricStatusEffect.java.html b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricItem (26.1+).java.html similarity index 93% rename from src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricStatusEffect.java.html rename to src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricItem (26.1+).java.html index 12f4b6bb2..11bef898f 100644 --- a/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricStatusEffect.java.html +++ b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricItem (26.1+).java.html @@ -20,6 +20,6 @@ - An empty Fabric status effect class. + An empty Fabric item class for 1.21.11-. diff --git a/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricMobEffect (26.1+).java.ft b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricMobEffect (26.1+).java.ft new file mode 100644 index 000000000..67d1d3355 --- /dev/null +++ b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricMobEffect (26.1+).java.ft @@ -0,0 +1,10 @@ +#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end +#parse("File Header.java") + +import net.minecraft.world.effect.MobEffect; +import net.minecraft.world.effect.MobEffectCategory; +public class ${NAME} extends MobEffect { + public ${NAME}(MobEffectCategory mobEffectCategory, int color) { + super(mobEffectCategory, color); + } +} \ No newline at end of file diff --git a/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricMobEffect (26.1+).java.html b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricMobEffect (26.1+).java.html new file mode 100644 index 000000000..a75911573 --- /dev/null +++ b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricMobEffect (26.1+).java.html @@ -0,0 +1,25 @@ + + + + +An empty Fabric status effect class for 1.21.11- . + + diff --git a/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricStatusEffect.java.ft b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricStatusEffect (1.21.11-).java.ft similarity index 100% rename from src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricStatusEffect.java.ft rename to src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricStatusEffect (1.21.11-).java.ft diff --git a/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricStatusEffect (1.21.11-).java.html b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricStatusEffect (1.21.11-).java.html new file mode 100644 index 000000000..a7e4a9a18 --- /dev/null +++ b/src/main/resources/fileTemplates/j2ee/skeleton/fabric/FabricStatusEffect (1.21.11-).java.html @@ -0,0 +1,25 @@ + + + + + An empty Fabric status effect class for 1.21.11- . + + diff --git a/src/main/resources/fileTemplates/j2ee/skeleton/forge/ForgeEnchantment (1.17+).java.ft b/src/main/resources/fileTemplates/j2ee/skeleton/forge/ForgeEnchantment (1.17+).java.ft index c4ae0bd57..54053bd76 100644 --- a/src/main/resources/fileTemplates/j2ee/skeleton/forge/ForgeEnchantment (1.17+).java.ft +++ b/src/main/resources/fileTemplates/j2ee/skeleton/forge/ForgeEnchantment (1.17+).java.ft @@ -1,12 +1,12 @@ #if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end #parse("File Header.java") +//Not functional for MC 1.20.3+ import net.minecraft.world.entity.EquipmentSlot; import net.minecraft.world.item.enchantment.Enchantment; import net.minecraft.world.item.enchantment.EnchantmentCategory; - public class ${NAME} extends Enchantment { - public ${NAME}(Rarity rarity, EnchantmentCategory category, EquipmentSlot[] slots) { - super(rarity, category, slots); + public ${NAME}(Rarity rarity, EnchantmentCategory category, EquipmentSlot[] slots){ + super(rarity, category, slots); } } diff --git a/src/main/resources/fileTemplates/j2ee/skeleton/neoforge/NeoForgeEnchantment.java.ft b/src/main/resources/fileTemplates/j2ee/skeleton/neoforge/NeoForgeEnchantment.java.ft index c4ae0bd57..b71059d08 100644 --- a/src/main/resources/fileTemplates/j2ee/skeleton/neoforge/NeoForgeEnchantment.java.ft +++ b/src/main/resources/fileTemplates/j2ee/skeleton/neoforge/NeoForgeEnchantment.java.ft @@ -1,6 +1,6 @@ #if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME};#end #parse("File Header.java") - +//Not functional for MC 1.20.3+ import net.minecraft.world.entity.EquipmentSlot; import net.minecraft.world.item.enchantment.Enchantment; import net.minecraft.world.item.enchantment.EnchantmentCategory;