Essentia plugin

Basic plugin with some essential utilities and commands.
This commit is contained in:
Len
2024-02-03 21:58:02 +01:00
commit 1669a114bc
44 changed files with 2359 additions and 0 deletions
+29
View File
@@ -0,0 +1,29 @@
plugins {
`maven-publish`
}
dependencies {
compileOnly("com.alttd:Comet-API:1.20.4-R0.1-SNAPSHOT")
}
tasks {
jar {
archiveFileName.set("${rootProject.name}-${project.name}.jar")
}
}
publishing {
publications {
create<MavenPublication>("mavenJava") {
from(components["java"])
}
}
repositories{
maven {
name = "maven"
url = uri("https://repo.destro.xyz/snapshots")
credentials(PasswordCredentials::class)
}
}
}
@@ -0,0 +1,22 @@
package com.alttd.essentia;
import org.jetbrains.annotations.ApiStatus;
public interface EssentiaAPI {
static EssentiaAPI get() {
return Provider.instance;
}
final class Provider {
private static EssentiaAPI instance = null;
@ApiStatus.Internal
static void register(EssentiaAPI instance) {
if (Provider.instance != null)
throw new UnsupportedOperationException("Cannot redefine singleton");
Provider.instance = instance;
}
}
}