User: mysterious_dev Date: 09 Dec 22 17:24 Revision: c7ddf3c7aae0302bedc42d5d516314ca71232a7b Summary: Update things to 1.19.3 (#1909) TeamCity URL: https://ci.mcdev.io/viewModification.html?tab=vcsModificationFiles&modId=8179&personal=false Index: src/main/kotlin/platform/forge/creator/Fg3Template.kt =================================================================== --- src/main/kotlin/platform/forge/creator/Fg3Template.kt (revision 636f924bcc9c00a3b7137b9912248c0dd03588a9) +++ src/main/kotlin/platform/forge/creator/Fg3Template.kt (revision c7ddf3c7aae0302bedc42d5d516314ca71232a7b) @@ -17,6 +17,7 @@ import com.demonwav.mcdev.platform.forge.util.ForgePackDescriptor import com.demonwav.mcdev.util.MinecraftTemplates.Companion.FG3_1_17_MAIN_CLASS_TEMPLATE import com.demonwav.mcdev.util.MinecraftTemplates.Companion.FG3_1_18_MAIN_CLASS_TEMPLATE +import com.demonwav.mcdev.util.MinecraftTemplates.Companion.FG3_1_19_3_MAIN_CLASS_TEMPLATE import com.demonwav.mcdev.util.MinecraftTemplates.Companion.FG3_1_19_MAIN_CLASS_TEMPLATE import com.demonwav.mcdev.util.MinecraftTemplates.Companion.FG3_BUILD_GRADLE_TEMPLATE import com.demonwav.mcdev.util.MinecraftTemplates.Companion.FG3_GRADLE_PROPERTIES_TEMPLATE @@ -105,6 +106,24 @@ return project.applyTemplate(FG3_1_19_MAIN_CLASS_TEMPLATE, props) } + fun apply1_19_3MainClass( + project: Project, + buildSystem: BuildSystem, + config: ForgeProjectConfig, + packageName: String, + className: String + ): String { + val props = mapOf( + "PACKAGE_NAME" to packageName, + "CLASS_NAME" to className, + "ARTIFACT_ID" to buildSystem.artifactId, + "MOD_NAME" to config.pluginName, + "MOD_VERSION" to buildSystem.version + ) + + return project.applyTemplate(FG3_1_19_3_MAIN_CLASS_TEMPLATE, props) + } + fun applyBuildGradle( project: Project, buildSystem: BuildSystem, Index: src/main/kotlin/platform/forge/creator/ForgeProjectCreator.kt =================================================================== --- src/main/kotlin/platform/forge/creator/ForgeProjectCreator.kt (revision 636f924bcc9c00a3b7137b9912248c0dd03588a9) +++ src/main/kotlin/platform/forge/creator/ForgeProjectCreator.kt (revision c7ddf3c7aae0302bedc42d5d516314ca71232a7b) @@ -89,7 +89,9 @@ private fun setupMainClassStep(): BasicJavaClassStep { return createJavaClassStep(config.mainClass) { packageName, className -> - if (config.mcVersion >= MinecraftVersions.MC1_19) { + if (config.mcVersion >= MinecraftVersions.MC1_19_3) { + Fg3Template.apply1_19_3MainClass(project, buildSystem, config, packageName, className) + } else if (config.mcVersion >= MinecraftVersions.MC1_19) { Fg3Template.apply1_19MainClass(project, buildSystem, config, packageName, className) } else if (config.mcVersion >= MinecraftVersions.MC1_18) { Fg3Template.apply1_18MainClass(project, buildSystem, config, packageName, className) Index: src/main/kotlin/platform/forge/util/ForgePackAdditionalData.kt =================================================================== --- src/main/kotlin/platform/forge/util/ForgePackAdditionalData.kt (revision 636f924bcc9c00a3b7137b9912248c0dd03588a9) +++ src/main/kotlin/platform/forge/util/ForgePackAdditionalData.kt (revision c7ddf3c7aae0302bedc42d5d516314ca71232a7b) @@ -17,11 +17,13 @@ companion object { val FORMAT_1_18 = ForgePackAdditionalData(8, 9) val FORMAT_1_19 = ForgePackAdditionalData(9, 10) + val FORMAT_1_19_3 = ForgePackAdditionalData(12, 10) fun forMcVersion(version: SemanticVersion): ForgePackAdditionalData? = when { version < MinecraftVersions.MC1_18 -> null version < MinecraftVersions.MC1_19 -> FORMAT_1_18 - else -> FORMAT_1_19 + version < MinecraftVersions.MC1_19_3 -> FORMAT_1_19 + else -> FORMAT_1_19_3 } } } Index: src/main/kotlin/platform/forge/util/ForgePackDescriptor.kt =================================================================== --- src/main/kotlin/platform/forge/util/ForgePackDescriptor.kt (revision 636f924bcc9c00a3b7137b9912248c0dd03588a9) +++ src/main/kotlin/platform/forge/util/ForgePackDescriptor.kt (revision c7ddf3c7aae0302bedc42d5d516314ca71232a7b) @@ -40,6 +40,7 @@ val FORMAT_7 = ForgePackDescriptor(7, "") val FORMAT_8 = ForgePackDescriptor(8, "") val FORMAT_9 = ForgePackDescriptor(9, "") + val FORMAT_12 = ForgePackDescriptor(12, "") // See https://minecraft.gamepedia.com/Tutorials/Creating_a_resource_pack#.22pack_format.22 fun forMcVersion(version: SemanticVersion): ForgePackDescriptor? = when { @@ -49,7 +50,8 @@ version < MinecraftVersions.MC1_17 -> FORMAT_6 version < MinecraftVersions.MC1_18 -> FORMAT_7 version < MinecraftVersions.MC1_19 -> FORMAT_8 - version >= MinecraftVersions.MC1_19 -> FORMAT_9 + version < MinecraftVersions.MC1_19_3 -> FORMAT_9 + version >= MinecraftVersions.MC1_19_3 -> FORMAT_12 else -> null } } Index: src/main/kotlin/util/MinecraftTemplates.kt =================================================================== --- src/main/kotlin/util/MinecraftTemplates.kt (revision 636f924bcc9c00a3b7137b9912248c0dd03588a9) +++ src/main/kotlin/util/MinecraftTemplates.kt (revision c7ddf3c7aae0302bedc42d5d516314ca71232a7b) @@ -91,6 +91,7 @@ forgeGroup.addTemplate(FileTemplateDescriptor(FG3_1_17_MAIN_CLASS_TEMPLATE)) forgeGroup.addTemplate(FileTemplateDescriptor(FG3_1_18_MAIN_CLASS_TEMPLATE)) forgeGroup.addTemplate(FileTemplateDescriptor(FG3_1_19_MAIN_CLASS_TEMPLATE)) + forgeGroup.addTemplate(FileTemplateDescriptor(FG3_1_19_3_MAIN_CLASS_TEMPLATE)) forgeGroup.addTemplate(FileTemplateDescriptor(FG3_BUILD_GRADLE_TEMPLATE)) forgeGroup.addTemplate(FileTemplateDescriptor(FG3_SUBMODULE_BUILD_GRADLE_TEMPLATE)) forgeGroup.addTemplate(FileTemplateDescriptor(FG3_GRADLE_PROPERTIES_TEMPLATE)) @@ -238,6 +239,7 @@ const val FG3_1_17_MAIN_CLASS_TEMPLATE = "Forge (1.17+) Main Class.java" const val FG3_1_18_MAIN_CLASS_TEMPLATE = "Forge (1.18+) Main Class.java" const val FG3_1_19_MAIN_CLASS_TEMPLATE = "Forge (1.19+) Main Class.java" + const val FG3_1_19_3_MAIN_CLASS_TEMPLATE = "Forge (1.19.3+) Main Class.java" const val FG3_BUILD_GRADLE_TEMPLATE = "Forge (1.13+) build.gradle" const val FG3_SUBMODULE_BUILD_GRADLE_TEMPLATE = "Forge (1.13+) Submodule build.gradle" const val FG3_GRADLE_PROPERTIES_TEMPLATE = "Forge (1.13+) gradle.properties" Index: src/main/kotlin/util/MinecraftVersions.kt =================================================================== --- src/main/kotlin/util/MinecraftVersions.kt (revision 636f924bcc9c00a3b7137b9912248c0dd03588a9) +++ src/main/kotlin/util/MinecraftVersions.kt (revision c7ddf3c7aae0302bedc42d5d516314ca71232a7b) @@ -19,6 +19,7 @@ val MC1_17 = SemanticVersion.release(1, 17) val MC1_18 = SemanticVersion.release(1, 18) val MC1_19 = SemanticVersion.release(1, 19) + val MC1_19_3 = SemanticVersion.release(1, 19, 3) fun requiredJavaVersion(minecraftVersion: SemanticVersion) = when { minecraftVersion >= MC1_18 -> JavaVersion.compose(17) Index: src/main/resources/fileTemplates/j2ee/forge/Forge (1.19.3) Main Class.java.html =================================================================== --- src/main/resources/fileTemplates/j2ee/forge/Forge (1.19.3) Main Class.java.html (revision c7ddf3c7aae0302bedc42d5d516314ca71232a7b) +++ src/main/resources/fileTemplates/j2ee/forge/Forge (1.19.3) Main Class.java.html (revision c7ddf3c7aae0302bedc42d5d516314ca71232a7b) @@ -0,0 +1,15 @@ + + + +
+This is a built-in file template used to create a new main class for Forge projects 1.19.3 and above
+ + Index: src/main/resources/fileTemplates/j2ee/forge/Forge (1.19.3+) Main Class.java.ft =================================================================== --- src/main/resources/fileTemplates/j2ee/forge/Forge (1.19.3+) Main Class.java.ft (revision c7ddf3c7aae0302bedc42d5d516314ca71232a7b) +++ src/main/resources/fileTemplates/j2ee/forge/Forge (1.19.3+) Main Class.java.ft (revision c7ddf3c7aae0302bedc42d5d516314ca71232a7b) @@ -0,0 +1,89 @@ +package ${PACKAGE_NAME}; + +import com.mojang.logging.LogUtils; +import net.minecraft.client.Minecraft; +import net.minecraft.world.item.BlockItem; +import net.minecraft.world.item.CreativeModeTabs; +import net.minecraft.world.item.Item; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.state.BlockBehaviour; +import net.minecraft.world.level.material.Material; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.common.MinecraftForge; +import net.minecraftforge.event.CreativeModeTabEvent; +import net.minecraftforge.eventbus.api.IEventBus; +import net.minecraftforge.eventbus.api.SubscribeEvent; +import net.minecraftforge.fml.common.Mod; +import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent; +import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent; +import net.minecraftforge.event.server.ServerStartingEvent; +import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext; +import net.minecraftforge.registries.DeferredRegister; +import net.minecraftforge.registries.ForgeRegistries; +import net.minecraftforge.registries.RegistryObject; +import org.slf4j.Logger; + +// The value here should match an entry in the META-INF/mods.toml file +@Mod(${CLASS_NAME}.MODID) +public class ${CLASS_NAME} { + + // Define mod id in a common place for everything to reference + public static final String MODID = "${ARTIFACT_ID}"; + // Directly reference a slf4j logger + private static final Logger LOGGER = LogUtils.getLogger(); + // Create a Deferred Register to hold Blocks which will all be registered under the "${ARTIFACT_ID}" namespace + public static final DeferredRegister