setup Annoying API
fun Project.setupAnnoyingAPI(javaSetupConfig: JavaSetupConfig = JavaSetupConfig(), mcSetupConfig: MCSetupConfig = MCSetupConfig(), annoyingAPIConfig: DependencyConfig, annoyingSetupConfig: AnnoyingSetupConfig = AnnoyingSetupConfig(), metadataConfig: MetadataConfig = MetadataConfig(), customRuntimeLibrariesConfig: CustomRuntimeLibrariesConfig = CustomRuntimeLibrariesConfig(), publishingPlatformConfig: PublishingPlatformConfig = PublishingPlatformConfig(mapOf())): AnnoyingMetadata?
Sets up the project using Annoying API. The root project's name must be the same as the one in plugin.yml!
Checks if the Java and Shadow plugins are applied
Adds srnyx's repositories and Repository.ALESSIO_DP for Libby
Gets and processes Annoying API metadata (if MetadataConfig.useMetadata is true)
Sets Java version if specified
Adds repositories
For each runtime library:
Adds repositories
Adds dependency
Adds relocations
Excludes some Annoying API dependencies
Calls setupMC with the specified parameters
Calls annoyingAPI with the specified parameters
Calls addPlatformsResourceFileTask if enabled
Calls setupPublishingPlatforms with the specified parameters
Return
The metadata for Annoying API if MetadataConfig.useMetadata is true, otherwise null