[ci skip] add test plugin module

This commit is contained in:
granny
2024-05-02 14:50:02 -07:00
parent 40392f28e4
commit 087d43d00b
7 changed files with 68 additions and 0 deletions

1
.gitignore vendored
View File

@@ -58,3 +58,4 @@ Purpur-MojangAPI
Purpur-Server
paper-api-generator
*.jar
test-plugin.settings.gradle.kts

View File

@@ -37,3 +37,21 @@ for (name in listOf("Purpur-API", "Purpur-Server", "paper-api-generator")) {
include(projName)
findProject(":$projName")!!.projectDir = file(name)
}
optionalInclude("test-plugin")
fun optionalInclude(name: String, op: (ProjectDescriptor.() -> Unit)? = null) {
val settingsFile = file("$name.settings.gradle.kts")
if (settingsFile.exists()) {
apply(from = settingsFile)
findProject(":$name")?.let { op?.invoke(it) }
} else {
settingsFile.writeText(
"""
// Uncomment to enable the '$name' project
// include(":$name")
""".trimIndent()
)
}
}

View File

@@ -0,0 +1,17 @@
version = "1.0.0-SNAPSHOT"
dependencies {
compileOnly(project(":purpur-api"))
}
tasks.processResources {
val apiVersion = rootProject.providers.gradleProperty("mcVersion").get()
val props = mapOf(
"version" to project.version,
"apiversion" to "\"$apiVersion\"",
)
inputs.properties(props)
filesMatching("paper-plugin.yml") {
expand(props)
}
}

View File

@@ -0,0 +1,12 @@
package org.purpurmc.testplugin;
import org.bukkit.event.Listener;
import org.bukkit.plugin.java.JavaPlugin;
public class TestPlugin extends JavaPlugin implements Listener {
@Override
public void onEnable() {
this.getServer().getPluginManager().registerEvents(this, this);
}
}

View File

@@ -0,0 +1,4 @@
package org.purpurmc.testplugin;
public class TestPluginBootstrap {
}

View File

@@ -0,0 +1,4 @@
package org.purpurmc.testplugin;
public class TestPluginLoader {
}

View File

@@ -0,0 +1,12 @@
name: Purpur-Test-Plugin
version: ${version}
main: org.purpurmc.testplugin.TestPlugin
description: Purpur Test Plugin
author: PurpurMC
api-version: ${apiversion}
load: STARTUP
bootstrapper: org.purpurmc.testplugin.TestPluginBootstrap
loader: org.purpurmc.testplugin.TestPluginLoader
defaultPerm: FALSE
permissions:
dependencies: