Skip to content

Commit

Permalink
cleanup and some work on menus
Browse files Browse the repository at this point in the history
  • Loading branch information
broccolai committed Oct 16, 2023
1 parent c447477 commit b912828
Show file tree
Hide file tree
Showing 16 changed files with 285 additions and 133 deletions.
11 changes: 4 additions & 7 deletions api/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,8 +1,5 @@
dependencies {
api("com.google.inject", "guice", Versions.GUICE)

compileOnlyApi("net.kyori", "adventure-api", Versions.ADVENTURE)
compileOnlyApi("net.kyori", "adventure-text-minimessage", Versions.ADVENTURE)

api("net.kyori", "event-api", Versions.EVENT)
}
api(libs.guice.core)
api(libs.minimessage)
api(libs.event.api)
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import broccolai.tags.api.model.Permissible;
import net.kyori.adventure.text.Component;
import org.checkerframework.checker.nullness.qual.NonNull;
import org.checkerframework.checker.nullness.qual.Nullable;

public final class ConstructedTag implements Permissible {

Expand All @@ -11,19 +12,22 @@ public final class ConstructedTag implements Permissible {
private final boolean secret;
private final @NonNull Component component;
private final @NonNull String reason;
private final @Nullable TagDisplayInformation displayInformation;

public ConstructedTag(
final int id,
final @NonNull String name,
final boolean secret,
final @NonNull Component component,
final @NonNull String reason
final @NonNull String reason,
final @Nullable TagDisplayInformation displayInformation
) {
this.id = id;
this.name = name;
this.secret = secret;
this.component = component;
this.reason = reason;
this.displayInformation = displayInformation;
}

public int id() {
Expand Down Expand Up @@ -51,4 +55,8 @@ public boolean secret() {
return "tags.tag." + this.id();
}

public @Nullable TagDisplayInformation displayInformation() {
return this.displayInformation;
}

}
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
package broccolai.tags.api.model.tag;

import org.checkerframework.checker.nullness.qual.NonNull;

public final class TagDisplayInformation {
private final @NonNull String material;
private final int customModelData;

public TagDisplayInformation(
@NonNull String material,
int customModelData
) {
this.material = material;
this.customModelData = customModelData;
}

public @NonNull String material() {
return this.material;
}

public int customModelData() {
return this.customModelData;
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import broccolai.tags.api.model.Service;
import broccolai.tags.api.model.tag.ConstructedTag;
import broccolai.tags.api.model.tag.TagDisplayInformation;
import broccolai.tags.api.model.user.TagsUser;
import org.checkerframework.checker.nullness.qual.NonNull;
import org.checkerframework.checker.nullness.qual.Nullable;
Expand All @@ -18,7 +19,8 @@ void create(
@NonNull String name,
boolean secret,
@NonNull String componentString,
@NonNull String reason
@NonNull String reason,
@Nullable TagDisplayInformation information
);

@Nullable ConstructedTag load(int id);
Expand Down
14 changes: 8 additions & 6 deletions build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,15 @@ import net.kyori.indra.IndraCheckstylePlugin
import net.kyori.indra.IndraPlugin

plugins {
id("net.kyori.indra") version Versions.INDRA
id("net.kyori.indra.publishing") version Versions.INDRA
id("net.kyori.indra.checkstyle") version Versions.INDRA
id("com.github.ben-manes.versions") version "0.44.0"
id("net.kyori.indra")
id("net.kyori.indra.publishing")
id("net.kyori.indra.checkstyle")
id("com.github.johnrengelman.shadow")
id("com.github.ben-manes.versions")
id("net.ltgt.errorprone")
}

group = "love.broccolai.tags"
group = "broccolai.tags"
version = "2.0.0-SNAPSHOT"

subprojects {
Expand All @@ -23,7 +25,7 @@ subprojects {
maven("https://papermc.io/repo/repository/maven-public/")
maven("https://repo.extendedclip.com/content/repositories/placeholderapi/")
maven("https://jitpack.io")
maven("https://repo.broccol.ai")
maven("https://repo.broccol.ai/releases")
}

tasks {
Expand Down
3 changes: 3 additions & 0 deletions buildSrc/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,6 @@ repositories {
gradlePluginPortal()
}

dependencies {
implementation("gradle.plugin.com.github.jengelman.gradle.plugins", "shadow", "7.0.0")
}
55 changes: 55 additions & 0 deletions buildSrc/src/main/kotlin/Configurations.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
import com.github.jengelman.gradle.plugins.shadow.ShadowPlugin
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
import org.gradle.api.Project
import org.gradle.kotlin.dsl.apply
import org.gradle.kotlin.dsl.invoke
import org.gradle.kotlin.dsl.withType

fun Project.setupShadowJar() {
apply<ShadowPlugin>()

tasks {
withType<ShadowJar> {

dependencies {
exclude(dependency("com.google.guava:"))
exclude(dependency("com.google.errorprone:"))
exclude(dependency("org.checkerframework:"))
}

relocate(
rootProject.group,
"com.github.benmanes.caffeine",
"com.typesafe.config",
"com.zaxxer.hikari",
"com.google.inject",
"org.antlr",
"org.jdbi",
"org.aopalliance",
"org.spongepowered.configurate",
"io.leangen.geantyref",
"cloud.commandframework",
"net.kyori.event",
"net.kyori.coffee",
"org.objectweb.asm",
"org.flyway",
"broccolai.corn"
)

archiveFileName.set(project.name + ".jar")
minimize()
}

getByName("build") {
dependsOn(withType<ShadowJar>())
}
}
}

private fun ShadowJar.relocate(group: Any, vararg dependencies: String) {
dependencies.forEach {
val split = it.split('.')
val name = split.last()
relocate(it, "$group.dependencies.$name")
}
}
21 changes: 0 additions & 21 deletions buildSrc/src/main/kotlin/Dependencies.kt

This file was deleted.

75 changes: 13 additions & 62 deletions bukkit/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,71 +1,22 @@
import com.github.jengelman.gradle.plugins.shadow.ShadowPlugin
import com.github.jengelman.gradle.plugins.shadow.tasks.ShadowJar
import org.gradle.kotlin.dsl.apply
import org.gradle.kotlin.dsl.invoke
import org.gradle.kotlin.dsl.withType

plugins {
id("com.github.johnrengelman.shadow") version "7.1.2"
id("xyz.jpenilla.run-paper") version "2.0.0"
}

apply<ShadowPlugin>()

tasks {
withType<ShadowJar> {

dependencies {
exclude(dependency("com.google.guava:"))
exclude(dependency("com.google.errorprone:"))
exclude(dependency("org.checkerframework:"))
}

relocate(
rootProject.group,
"com.github.benmanes.caffeine",
"com.typesafe.config",
"com.zaxxer.hikari",
"com.google.inject",
"org.antlr",
"org.slf4j",
"org.jdbi",
"org.aopalliance",
"org.spongepowered.configurate",
"io.leangen.geantyref",
"cloud.commandframework",
"net.kyori.event",
"net.kyori.coffee",
"org.objectweb.asm",
"broccolai.corn"
)

archiveFileName.set(project.name + ".jar")
}

getByName("build") {
dependsOn(withType<ShadowJar>())
}

runServer {
minecraftVersion("1.19.2")
}
id("xyz.jpenilla.run-paper") version "2.2.0"
}

fun ShadowJar.relocate(group: Any, vararg dependencies: String) {
dependencies.forEach {
val split = it.split('.')
val name = split.last()
relocate(it, "$group.dependencies.$name")
}
}
setupShadowJar()

dependencies {
api(project(":tags-core"))

compileOnly("io.papermc.paper", "paper-api", Versions.SPIGOT)
compileOnly("me.clip", "placeholderapi", Versions.PAPI)
compileOnly("com.github.MilkBowl", "VaultAPI", Versions.VAULT)
compileOnly(libs.paper.api)
compileOnly(libs.papi)
compileOnly(libs.vault)

api("cloud.commandframework", "cloud-paper", Versions.CLOUD)
api("cloud.commandframework", "cloud-minecraft-extras", Versions.CLOUD)
api(libs.cloud.paper)
api(libs.cloud.extras)
}

tasks {
runServer {
minecraftVersion("1.20")
}
}
16 changes: 6 additions & 10 deletions bukkit/src/main/java/broccolai/tags/bukkit/BukkitTagsPlatform.java
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@
import cloud.commandframework.paper.PaperCommandManager;
import com.google.inject.Guice;
import com.google.inject.Injector;
import net.kyori.adventure.audience.ForwardingAudience;
import org.bukkit.Bukkit;
import org.bukkit.command.CommandSender;
import org.bukkit.command.ConsoleCommandSender;
Expand Down Expand Up @@ -84,22 +83,22 @@ private CommandManager<CommandUser> getCommandManager(
try {
PaperCommandManager<CommandUser> commandManager = new PaperCommandManager<>(
this,
AsynchronousCommandExecutionCoordinator.<CommandUser>newBuilder().build(),
AsynchronousCommandExecutionCoordinator.<CommandUser>builder().build(),
BukkitTagsPlatform::from,
user -> user.<BukkitCommandUser>cast().sender()
);

if (commandManager.queryCapability(CloudBukkitCapabilities.ASYNCHRONOUS_COMPLETION)) {
if (commandManager.hasCapability(CloudBukkitCapabilities.ASYNCHRONOUS_COMPLETION)) {
commandManager.registerAsynchronousCompletions();
}

if (commandManager.queryCapability(CloudBukkitCapabilities.NATIVE_BRIGADIER)) {
if (commandManager.hasCapability(CloudBukkitCapabilities.NATIVE_BRIGADIER)) {
commandManager.registerBrigadier();
}

new MinecraftExceptionHandler<CommandUser>()
.withDefaultHandlers()
.apply(commandManager, ForwardingAudience.Single::audience);
.apply(commandManager, (e) -> e);

commandManager.registerExceptionHandler(UserArgument.UserArgumentException.class, (user, ex) -> {
user.sendMessage(messageService.commandErrorUserNotFound(ex.input()));
Expand All @@ -116,12 +115,9 @@ private CommandManager<CommandUser> getCommandManager(
}

private static CommandUser from(final @NonNull CommandSender sender) {
if (sender instanceof ConsoleCommandSender) {
ConsoleCommandSender console = (ConsoleCommandSender) sender;

if (sender instanceof ConsoleCommandSender console) {
return new BukkitConsoleCommandUser(console);
} else if (sender instanceof Player) {
Player player = (Player) sender;
} else if (sender instanceof Player player) {
return new BukkitPlayerCommandUser(player);
}

Expand Down
27 changes: 12 additions & 15 deletions core/build.gradle.kts
Original file line number Diff line number Diff line change
@@ -1,24 +1,21 @@
dependencies {
api(project(":tags-api"))
compileOnlyApi("com.google.guava", "guava", Versions.GUAVA)
compileOnly("net.luckperms", "api", Versions.LUCKPERMS)
compileOnlyApi(libs.guava)
compileOnly(libs.luckperms)

implementation("com.google.inject.extensions", "guice-assistedinject", Versions.GUICE) {
implementation(libs.guice.assisted) {
isTransitive = false
}

api("org.jdbi", "jdbi3-core", Versions.JDBI)
implementation("com.zaxxer", "HikariCP", Versions.HIKARI)
implementation("org.flywaydb", "flyway-core", Versions.FLYWAY)
api(libs.jdbi.core)
implementation(libs.hikari)
implementation(libs.flyway)

implementation("org.spongepowered", "configurate-hocon", Versions.CONFIGURATE)
implementation(libs.configurate)

api("broccolai.corn", "corn-core", Versions.CORN)
api(libs.corn.misc)

api("cloud.commandframework", "cloud-core", Versions.CLOUD)
api("net.kyori", "coffee-functional", Versions.COFFEE)

api("net.kyori", "event-method-asm", Versions.EVENT)

implementation( "com.h2database", "h2", "2.1.214")
}
api(libs.cloud.core)
api(libs.event.asm)
api(libs.coffee)
}
Loading

0 comments on commit b912828

Please sign in to comment.