@file:Suppress("UnstableApiUsage") enableFeaturePreview("TYPESAFE_PROJECT_ACCESSORS") dependencyResolutionManagement { // repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { mavenLocal() // Floodgate, Cumulus etc. maven("https://repo.opencollab.dev/main") // Paper, Velocity 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() } } // NeoForge maven("https://maven.neoforged.net/releases") { mavenContent { releasesOnly() } } // Minecraft maven("https://libraries.minecraft.net") { name = "minecraft" mavenContent { releasesOnly() } } mavenCentral() // ViaVersion maven("https://repo.viaversion.com") { name = "viaversion" } maven("https://jitpack.io") { content { includeGroupByRegex("com\\.github\\..*") } } // For Adventure snapshots maven("https://s01.oss.sonatype.org/content/repositories/snapshots/") } } pluginManagement { repositories { gradlePluginPortal() maven("https://repo.opencollab.dev/maven-snapshots") maven("https://maven.fabricmc.net") maven("https://maven.architectury.dev") maven("https://maven.neoforged.net/releases") } includeBuild("build-logic") } rootProject.name = "geyser-parent" include(":ap") include(":api") include(":isolation") include(":core") //todo probably needs to be added to the isolated platforms include(":viaproxy") project(":viaproxy").projectDir = file("bootstrap/viaproxy") include(":standalone") project(":standalone").projectDir = file("bootstrap/standalone") project(":mod").projectDir = file("bootstrap/mod") //todo see what's possible with fabric include(":fabric") project(":fabric").projectDir = file("bootstrap/mod/fabric") include(":neoforge") project(":neoforge").projectDir = file("bootstrap/mod/neoforge") arrayOf("bungeecord", "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("bootstrap/$platform/$it") } }