diff --git a/build.gradle b/build.gradle deleted file mode 100644 index 5498eeb..0000000 --- a/build.gradle +++ /dev/null @@ -1,49 +0,0 @@ -plugins { - id 'java' -} - -group = 'xyz.lncvrt' -version = '1.0.0' - -repositories { - mavenCentral() - maven { - name = "papermc-repo" - url = "https://repo.papermc.io/repository/maven-public/" - } - maven { - name = "sonatype" - url = "https://oss.sonatype.org/content/groups/public/" - } -} - -dependencies { - compileOnly("io.papermc.paper:paper-api:1.21.4-R0.1-SNAPSHOT") -} - -def targetJavaVersion = 21 -java { - def javaVersion = JavaVersion.toVersion(targetJavaVersion) - sourceCompatibility = javaVersion - targetCompatibility = javaVersion - if (JavaVersion.current() < javaVersion) { - toolchain.languageVersion = JavaLanguageVersion.of(targetJavaVersion) - } -} - -tasks.withType(JavaCompile).configureEach { - options.encoding = 'UTF-8' - - if (targetJavaVersion >= 10 || JavaVersion.current().isJava10Compatible()) { - options.release.set(targetJavaVersion) - } -} - -processResources { - def props = [version: version] - inputs.properties props - filteringCharset 'UTF-8' - filesMatching('plugin.yml') { - expand props - } -} diff --git a/build.gradle.kts b/build.gradle.kts new file mode 100644 index 0000000..caace23 --- /dev/null +++ b/build.gradle.kts @@ -0,0 +1,45 @@ +plugins { + kotlin("jvm") version "2.1.20" + id("com.github.johnrengelman.shadow") version "8.1.1" + id("xyz.jpenilla.run-paper") version "2.3.1" +} + +group = "xyz.lncvrt" +version = "1.0.0" + +repositories { + mavenCentral() + maven("https://repo.papermc.io/repository/maven-public/") { + name = "papermc-repo" + } + maven("https://oss.sonatype.org/content/groups/public/") { + name = "sonatype" + } +} + +dependencies { + compileOnly("io.papermc.paper:paper-api:1.21.4-R0.1-SNAPSHOT") + implementation("org.jetbrains.kotlin:kotlin-stdlib-jdk8") +} + +val targetJavaVersion = 21 +kotlin { + jvmToolchain(targetJavaVersion) +} + +tasks.build { + dependsOn("shadowJar") +} + +tasks.processResources { + val props = mapOf("version" to version) + inputs.properties(props) + filteringCharset = "UTF-8" + filesMatching("plugin.yml") { + expand(props) + } +} + +tasks.runServer { + minecraftVersion("1.21") +} diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 37f853b..ed4c299 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.13-all.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/settings.gradle b/settings.gradle deleted file mode 100644 index 6b98fc6..0000000 --- a/settings.gradle +++ /dev/null @@ -1 +0,0 @@ -rootProject.name = 'GalaxyCreations' diff --git a/settings.gradle.kts b/settings.gradle.kts new file mode 100644 index 0000000..969b482 --- /dev/null +++ b/settings.gradle.kts @@ -0,0 +1 @@ +rootProject.name = "GalaxyCreations" diff --git a/src/main/java/xyz/lncvrt/galaxycreations/GalaxyCreations.java b/src/main/java/xyz/lncvrt/galaxycreations/GalaxyCreations.java deleted file mode 100644 index 9a8b9bb..0000000 --- a/src/main/java/xyz/lncvrt/galaxycreations/GalaxyCreations.java +++ /dev/null @@ -1,30 +0,0 @@ -package xyz.lncvrt.galaxycreations; - -import net.kyori.adventure.text.minimessage.MiniMessage; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.Listener; -import org.bukkit.event.player.PlayerJoinEvent; -import org.bukkit.plugin.java.JavaPlugin; - -public final class GalaxyCreations extends JavaPlugin implements Listener { - private final MiniMessage miniMessage = MiniMessage.miniMessage(); - - @Override - public void onEnable() { - getServer().getPluginManager().registerEvents(this, this); - } - - @EventHandler - public void onPlayerJoinEvent(PlayerJoinEvent event) { - Player player = event.getPlayer(); - if (!event.getPlayer().hasPlayedBefore()) { - player.performCommand("p auto"); - player.sendMessage(miniMessage.deserialize(setPrefix("Welcome to Galaxy Network: Creative Server!\nYou have been teleported to your own plot!\nHere, you can build almost anything you want\nIf you need help, run the /discord command and we will help you!"))); - } - } - - public String setPrefix(String message) { - return "GalaxyNetwork » %s".formatted(message); - } -} diff --git a/src/main/kotlin/xyz/lncvrt/galaxycreations/GalaxyCreations.kt b/src/main/kotlin/xyz/lncvrt/galaxycreations/GalaxyCreations.kt new file mode 100644 index 0000000..d1356ae --- /dev/null +++ b/src/main/kotlin/xyz/lncvrt/galaxycreations/GalaxyCreations.kt @@ -0,0 +1,19 @@ +package xyz.lncvrt.galaxycreations + +import net.kyori.adventure.text.minimessage.MiniMessage +import org.bukkit.plugin.java.JavaPlugin +import xyz.lncvrt.galaxycreations.events.PlayerJoinListener +import xyz.lncvrt.galaxycreations.events.ProjectileLaunchListener + +class GalaxyCreations : JavaPlugin() { + internal val miniMessage = MiniMessage.miniMessage() + + override fun onEnable() { + server.pluginManager.registerEvents(PlayerJoinListener(this), this) + server.pluginManager.registerEvents(ProjectileLaunchListener(), this) + } + + internal fun setPrefix(message: String): String { + return "GalaxyNetwork » $message" + } +} diff --git a/src/main/kotlin/xyz/lncvrt/galaxycreations/events/PlayerJoinListener.kt b/src/main/kotlin/xyz/lncvrt/galaxycreations/events/PlayerJoinListener.kt new file mode 100644 index 0000000..2edb930 --- /dev/null +++ b/src/main/kotlin/xyz/lncvrt/galaxycreations/events/PlayerJoinListener.kt @@ -0,0 +1,17 @@ +package xyz.lncvrt.galaxycreations.events + +import org.bukkit.event.EventHandler +import org.bukkit.event.Listener +import org.bukkit.event.player.PlayerJoinEvent +import xyz.lncvrt.galaxycreations.GalaxyCreations + +class PlayerJoinListener(private val plugin: GalaxyCreations) : Listener { + @EventHandler + fun onPlayerJoinEvent(event: PlayerJoinEvent) { + val player = event.getPlayer() + if (!event.getPlayer().hasPlayedBefore()) { + player.performCommand("p auto") + player.sendMessage(plugin.miniMessage.deserialize(plugin.setPrefix("Welcome to Galaxy Network: Creative Server!\nYou have been teleported to your own plot!\nHere, you can build almost anything you want\nIf you need help, run the /discord command and we will help you!"))) + } + } +} \ No newline at end of file diff --git a/src/main/kotlin/xyz/lncvrt/galaxycreations/events/ProjectileLaunchListener.kt b/src/main/kotlin/xyz/lncvrt/galaxycreations/events/ProjectileLaunchListener.kt new file mode 100644 index 0000000..6445893 --- /dev/null +++ b/src/main/kotlin/xyz/lncvrt/galaxycreations/events/ProjectileLaunchListener.kt @@ -0,0 +1,14 @@ +package xyz.lncvrt.galaxycreations.events + +import org.bukkit.entity.EntityType +import org.bukkit.event.EventHandler +import org.bukkit.event.Listener +import org.bukkit.event.entity.ProjectileLaunchEvent + +class ProjectileLaunchListener : Listener { + @EventHandler + fun onProjectileLaunchEvent(event: ProjectileLaunchEvent) { + if (event.entityType == EntityType.ARROW) return + event.isCancelled = true + } +} \ No newline at end of file diff --git a/src/main/resources/paper-plugin.yml b/src/main/resources/plugin.yml similarity index 100% rename from src/main/resources/paper-plugin.yml rename to src/main/resources/plugin.yml