@file:Suppress("UnstableApiUsage") enableFeaturePreview("TYPESAFE_PROJECT_ACCESSORS") dependencyResolutionManagement { repositoriesMode = RepositoriesMode.FAIL_ON_PROJECT_REPOS repositories { mavenLocal() // Geyser, Cumulus etc. maven("https://repo.opencollab.dev/maven-releases") { mavenContent { releasesOnly() } } maven("https://repo.opencollab.dev/maven-snapshots") { mavenContent { snapshotsOnly() } } // Paper, Velocity // maven("https://repo.papermc.io/repository/maven-releases") { // mavenContent { releasesOnly() } // } // maven("https://repo.papermc.io/repository/maven-snapshots") { // mavenContent { snapshotsOnly() } // } maven("https://repo.papermc.io/repository/maven-public") // Spigot maven("https://hub.spigotmc.org/nexus/content/repositories/snapshots") { mavenContent { snapshotsOnly() } } // BungeeCord maven("https://oss.sonatype.org/content/repositories/snapshots") { mavenContent { snapshotsOnly() } } maven("https://libraries.minecraft.net") { name = "minecraft" mavenContent { releasesOnly() } } mavenCentral() } } pluginManagement { repositories { gradlePluginPortal() } plugins { id("net.kyori.indra") id("net.kyori.indra.git") } } rootProject.name = "floodgate-parent" include(":api") include(":universal") include(":isolation") arrayOf("common", "netty4").forEach { val id = ":core-$it" include(id) project(id).projectDir = file("core/$it") } arrayOf("bungee", "spigot", "velocity").forEach { platform -> arrayOf("base", "isolated").forEach { var id = ":$platform-$it" // isolated is the new default if (id.endsWith("-isolated")) id = ":$platform" include(id) project(id).projectDir = file("$platform/$it") } }