diff --git a/.github/README.md b/.github/README.md new file mode 100644 index 00000000..86531795 --- /dev/null +++ b/.github/README.md @@ -0,0 +1,87 @@ +![](https://i.imgur.com/VdgyD5m.png) +# Apollo +[![Discord](https://img.shields.io/discord/1080556677004271666?logo=discord&label=discord)](https://lunarclient.dev/discord) +[![Latest Release](https://img.shields.io/github/v/release/LunarClient/Apollo.svg)](https://github.com/LunarClient/Apollo/releases) +[![License](https://img.shields.io/github/license/LunarClient/Apollo.svg)](https://github.com/LunarClient/Apollo/blob/master/license.txt) + +Apollo is a powerful tool that allows developers to create custom integrations with Lunar Client. + +**Resources** +- [Documentation & Wiki](https://lunarclient.dev/apollo/introduction) +- [Downloads](https://lunarclient.dev/apollo/downloads) +- [Maven Repository](https://lunarclient.dev/maven-repository) + +## Integration + +### API Integration +Use the **Apollo API** directly by depending on it from our [Maven repository](https://lunarclient.dev/maven-repository). +This is the most straightforward way to create plugins and modules that communicate with Lunar Client. + +See the [Waypoint module integration guide](https://lunarclient.dev/apollo/developers/modules/waypoint#integration) for a complete example. + +### Lightweight Integration +Our **Lightweight integration** allows you to use Apollo features **without running the Apollo plugin**. +This is useful for developers who want Apollo functionality but prefer a more minimal approach. + +There are two supported methods: +- [Lightweight JSON](https://lunarclient.dev/apollo/developers/lightweight/json/getting-started) +- [Lightweight Protobuf](https://lunarclient.dev/apollo/developers/lightweight/protobuf/getting-started) + +Both approaches achieve the same goal, but with different trade-offs in terms of **complexity and flexibility**. + +Read the [Lightweight introduction](https://lunarclient.dev/apollo/developers/lightweight/introduction) documentation to get started. + +## Examples + +Apollo includes example plugins to help you get started quickly. +These are the **same projects used for the code examples in the official documentation** on [lunarclient.dev](https://lunarclient.dev/apollo/introduction/). + +Each module page on the documentation site shows how to use **API**, **Lightweight JSON**, and **Lightweight Protobuf** integrations, with code pulled directly from these projects. + +### Bukkit +- API example → `example/bukkit/api/build/libs` +- Lightweight JSON example → `example/bukkit/json/build/libs` +- Lightweight Protobuf example → `example/bukkit/protos/build/libs` + +### Minestom +- API example server → `example/minestom/api/build/libs` + +## Building + +Apollo uses [Gradle](https://gradle.org/) to handle dependencies and compile the project. + +**Prerequisites** + +- Java 8 JDK +- Build Tools for Spigot 1.8.8 + +**Compiling** + +Running the following will compile the Apollo source for Java 8. + +```shell +./gradlew build +``` + +The compiled jars will be available in build/libs for each platform: + +- Bukkit: `platform/bukkit/plugin/build/libs` +- Folia: `platform/folia/build/libs` +- Minestom: `platform/minestom/build/libs` +- BungeeCord: `platform/bungee/build/libs` +- Velocity: `platform/velocity/build/libs` + +## Contributing + +The Apollo project is split into several modules. + +- **API** - The publicly available interface for developers wishing to create custom integrations with Lunar Client. +- **Common** - The abstraction used by platform modules to reduce duplicate code and implement the protocol for Lunar Client. +- **Bukkit, Folia, Minestom, BungeeCord, Velocity** - Are modules that implement the common module for each respective platform. + +Contributions can be made to Apollo by creating a pull request for improvements or fixes. For new feature ideas please consider making a +suggestion by creating an [issue](https://github.com/LunarClient/Apollo/issues) or joining our [discord](https://lunarclient.dev/discord). + +## License + +Apollo is licensed under the [MIT license](https://github.com/LunarClient/Apollo/blob/master/license.txt). diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index d3e7fcab..344b9d67 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -26,13 +26,6 @@ jobs: distribution: "zulu" java-version: 8 - - name: Setup BuildTools - run: | - mkdir ~/buildtools - cd ~/buildtools - wget https://hub.spigotmc.org/jenkins/job/BuildTools/lastSuccessfulBuild/artifact/target/BuildTools.jar -O BuildTools.jar - java -jar BuildTools.jar --rev 1.8.8 - - name: Gradle Build run: ./gradlew build @@ -62,8 +55,8 @@ jobs: target_commitish: "${{ github.sha }}" generate_release_notes: true files: | - bukkit/build/libs/apollo-bukkit-${{ env.VERSION }}.jar - bungee/build/libs/apollo-bungee-${{ env.VERSION }}.jar - velocity/build/libs/apollo-velocity-${{ env.VERSION }}.jar - folia/build/libs/apollo-folia-${{ env.VERSION }}.jar - minestom/build/libs/apollo-minestom-${{ env.VERSION }}.jar + platform/bukkit/build/libs/apollo-bukkit-${{ env.VERSION }}.jar + platform/bungee/build/libs/apollo-bungee-${{ env.VERSION }}.jar + platform/velocity/build/libs/apollo-velocity-${{ env.VERSION }}.jar + platform/folia/build/libs/apollo-folia-${{ env.VERSION }}.jar + platform/minestom/build/libs/apollo-minestom-${{ env.VERSION }}.jar diff --git a/README.md b/README.md deleted file mode 100644 index bbcce3e3..00000000 --- a/README.md +++ /dev/null @@ -1,53 +0,0 @@ -# Apollo -[![Discord](https://img.shields.io/discord/1080556677004271666?logo=discord&label=discord)](https://lunarclient.dev/discord) - -Apollo is a powerful tool that allows developers to create custom integrations with Lunar Client. - -You can find the latest downloads, wiki, and more at [lunarclient.dev](https://lunarclient.dev/apollo/introduction). - -Creating custom integrations for Apollo requires adding the Apollo API as a dependency from our [maven repository](https://lunarclient.dev/maven-repository) -to your project. - -## Building - -Apollo uses [Gradle](https://gradle.org/) to handle dependencies and compile the project. - -**Prerequisites** - -- Java 8 JDK -- Build Tools for Spigot 1.8.8 - -**Compiling** - -Running the following will compile the Apollo source for Java 8. - -```shell -./gradlew build -``` -The output jars can be found in the `build/libs` directory relative to each platform. - -- Bukkit: `bukkit/plugin/build/libs` -- Folia: `folia/build/libs` -- Minestom: `minestom/build/libs` -- BungeeCord: `bungee/build/libs` -- Velocity: `velocity/build/libs` - -## Examples - -An example plugin can be compiled to provide a variety of commands that allow you to try different features Apollo provides. -When compiled the output jar can be found in the directory `bukkit/example/build/libs`. - -## Contributing - -The Apollo project is split into several modules. - -- **API** - The publicly available interface for developers wishing to create custom integrations with Lunar Client. -- **Common** - The abstraction used by platform modules to reduce duplicate code and implement the protocol for Lunar Client. -- **Bukkit, Folia, Minestom, BungeeCord, Velocity** - Are modules that implement the common module for each respective platform. - -Contributions can be made to Apollo by creating a pull request for improvements or fixes. For new feature ideas please consider making a -suggestion by creating an [issue](https://github.com/LunarClient/Apollo/issues) or joining our [discord](https://lunarclient.dev/discord). - -## License - -Apollo is licensed under the [MIT license](https://github.com/LunarClient/Apollo/blob/master/license.txt). diff --git a/api/build.gradle.kts b/api/build.gradle.kts index 26b1ad76..1ba14cb8 100644 --- a/api/build.gradle.kts +++ b/api/build.gradle.kts @@ -20,7 +20,6 @@ dependencies { "bukkit"(main.output) "bukkit"(libs.bukkit.api) - "bukkit"(libs.bukkit) "bungee"(main.output) "bungee"(libs.bungee) diff --git a/docs/developers/lightweight/introduction.mdx b/docs/developers/lightweight/introduction.mdx index dc7b49ef..b581efbe 100644 --- a/docs/developers/lightweight/introduction.mdx +++ b/docs/developers/lightweight/introduction.mdx @@ -1,6 +1,6 @@ # Lightweight -Our lightweight integration allows for Apollo features to be used, without the need for running the entire Apollo plugin. We will introduce you to two different methods that achieve the same goal, while utilizing separate approaches. Each method offers different trade-offs between complexity, flexibility, and performance. Choose the method that best fits your use case and environment. +Our lightweight integration allows for Apollo features to be used, without the need for running the entire Apollo plugin. We will introduce you to two different methods that achieve the same goal, while utilizing separate approaches. Each method offers different trade-offs between complexity and flexibility. Choose the method that best fits your use case and environment. ## Message format diff --git a/example/bukkit/common/build.gradle.kts b/example/bukkit/common/build.gradle.kts index 97bed6a3..5c643f06 100644 --- a/example/bukkit/common/build.gradle.kts +++ b/example/bukkit/common/build.gradle.kts @@ -8,6 +8,5 @@ java { } dependencies { - compileOnly(libs.bukkit) compileOnly(libs.bukkit.api) } diff --git a/example/bukkit/common/src/main/java/com/lunarclient/apollo/example/util/ItemUtil.java b/example/bukkit/common/src/main/java/com/lunarclient/apollo/example/util/ItemUtil.java index 9bfc1eaa..485ff85a 100644 --- a/example/bukkit/common/src/main/java/com/lunarclient/apollo/example/util/ItemUtil.java +++ b/example/bukkit/common/src/main/java/com/lunarclient/apollo/example/util/ItemUtil.java @@ -23,9 +23,7 @@ */ package com.lunarclient.apollo.example.util; -import net.minecraft.server.v1_8_R3.NBTTagCompound; import org.bukkit.Material; -import org.bukkit.craftbukkit.v1_8_R3.inventory.CraftItemStack; import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.meta.ItemMeta; @@ -42,30 +40,31 @@ public static ItemStack itemWithName(Material material, String name) { } public static ItemStack addTag(ItemStack item, String key, Object value) { - net.minecraft.server.v1_8_R3.ItemStack nmsItem = CraftItemStack.asNMSCopy(item); - NBTTagCompound tag = nmsItem.hasTag() ? nmsItem.getTag() : new NBTTagCompound(); - - NBTTagCompound lunarTag = tag.getCompound("lunar"); - if (lunarTag == null) { - lunarTag = new NBTTagCompound(); - } - - if (value instanceof Integer) { - lunarTag.setInt(key, (Integer) value); - } else if (value instanceof Double) { - lunarTag.setDouble(key, (Double) value); - } else if (value instanceof Float) { - lunarTag.setFloat(key, (Float) value); - } else if (value instanceof Boolean) { - lunarTag.setBoolean(key, (Boolean) value); - } else if (value instanceof String) { - lunarTag.setString(key, (String) value); - } - - tag.set("lunar", lunarTag); - nmsItem.setTag(tag); - - return CraftItemStack.asBukkitCopy(nmsItem); + // net.minecraft.server.v1_8_R3.ItemStack nmsItem = CraftItemStack.asNMSCopy(item); + // NBTTagCompound tag = nmsItem.hasTag() ? nmsItem.getTag() : new NBTTagCompound(); + // + // NBTTagCompound lunarTag = tag.getCompound("lunar"); + // if (lunarTag == null) { + // lunarTag = new NBTTagCompound(); + // } + // + // if (value instanceof Integer) { + // lunarTag.setInt(key, (Integer) value); + // } else if (value instanceof Double) { + // lunarTag.setDouble(key, (Double) value); + // } else if (value instanceof Float) { + // lunarTag.setFloat(key, (Float) value); + // } else if (value instanceof Boolean) { + // lunarTag.setBoolean(key, (Boolean) value); + // } else if (value instanceof String) { + // lunarTag.setString(key, (String) value); + // } + // + // tag.set("lunar", lunarTag); + // nmsItem.setTag(tag); + // + // return CraftItemStack.asBukkitCopy(nmsItem); + return item; } private ItemUtil() { diff --git a/example/bukkit/json/build.gradle.kts b/example/bukkit/json/build.gradle.kts index 74491a7d..c37f0cbf 100644 --- a/example/bukkit/json/build.gradle.kts +++ b/example/bukkit/json/build.gradle.kts @@ -14,7 +14,7 @@ dependencies { exclude("net.kyori", "adventure-bom") } - compileOnly(libs.bukkit) + compileOnly(libs.bukkit.api) compileOnly(libs.folia) implementation(project(":example:bukkit:apollo-example-bukkit-common")) } diff --git a/example/bukkit/proto/build.gradle.kts b/example/bukkit/proto/build.gradle.kts index acdfefe8..ea3f1a41 100644 --- a/example/bukkit/proto/build.gradle.kts +++ b/example/bukkit/proto/build.gradle.kts @@ -16,7 +16,7 @@ dependencies { exclude("net.kyori", "adventure-bom") } - compileOnly(libs.bukkit) + compileOnly(libs.bukkit.api) compileOnly(libs.folia) implementation(project(":example:bukkit:apollo-example-bukkit-common")) } diff --git a/example/minestom/api/build.gradle.kts b/example/minestom/api/build.gradle.kts index cec9d51e..47474fed 100644 --- a/example/minestom/api/build.gradle.kts +++ b/example/minestom/api/build.gradle.kts @@ -9,7 +9,7 @@ java { dependencies { compileOnly(project(path = ":apollo-api", configuration = "minestom")) - implementation(project(path = ":apollo-minestom", configuration = "shadow")) + implementation(project(path = ":platform:apollo-minestom", configuration = "shadow")) implementation(libs.minestom) } diff --git a/bukkit/build.gradle.kts b/platform/bukkit/build.gradle.kts similarity index 96% rename from bukkit/build.gradle.kts rename to platform/bukkit/build.gradle.kts index 5852bfbc..44a86171 100644 --- a/bukkit/build.gradle.kts +++ b/platform/bukkit/build.gradle.kts @@ -8,7 +8,7 @@ setupDynamicDependency("baseAdventure4", "baseJarAdventure4", "adventure/4/", "l setupDynamicDependency("adventure4", "shadowJarAdventure4", "adventure/4/", "dependencies", "adventure4", "all") dependencies { - compileOnly(libs.bukkit) + compileOnly(libs.bukkit.api) compileOnly(libs.protobuf) api(project(path = ":apollo-api", configuration = "shadow")) diff --git a/bukkit/src/main/java/com/lunarclient/apollo/ApolloBukkitPlatform.java b/platform/bukkit/src/main/java/com/lunarclient/apollo/ApolloBukkitPlatform.java similarity index 100% rename from bukkit/src/main/java/com/lunarclient/apollo/ApolloBukkitPlatform.java rename to platform/bukkit/src/main/java/com/lunarclient/apollo/ApolloBukkitPlatform.java diff --git a/bukkit/src/main/java/com/lunarclient/apollo/command/BukkitApolloCommand.java b/platform/bukkit/src/main/java/com/lunarclient/apollo/command/BukkitApolloCommand.java similarity index 100% rename from bukkit/src/main/java/com/lunarclient/apollo/command/BukkitApolloCommand.java rename to platform/bukkit/src/main/java/com/lunarclient/apollo/command/BukkitApolloCommand.java diff --git a/bukkit/src/main/java/com/lunarclient/apollo/command/BukkitLunarClientCommand.java b/platform/bukkit/src/main/java/com/lunarclient/apollo/command/BukkitLunarClientCommand.java similarity index 100% rename from bukkit/src/main/java/com/lunarclient/apollo/command/BukkitLunarClientCommand.java rename to platform/bukkit/src/main/java/com/lunarclient/apollo/command/BukkitLunarClientCommand.java diff --git a/bukkit/src/main/java/com/lunarclient/apollo/listener/ApolloMetadataListener.java b/platform/bukkit/src/main/java/com/lunarclient/apollo/listener/ApolloMetadataListener.java similarity index 100% rename from bukkit/src/main/java/com/lunarclient/apollo/listener/ApolloMetadataListener.java rename to platform/bukkit/src/main/java/com/lunarclient/apollo/listener/ApolloMetadataListener.java diff --git a/bukkit/src/main/java/com/lunarclient/apollo/listener/ApolloPlayerListener.java b/platform/bukkit/src/main/java/com/lunarclient/apollo/listener/ApolloPlayerListener.java similarity index 100% rename from bukkit/src/main/java/com/lunarclient/apollo/listener/ApolloPlayerListener.java rename to platform/bukkit/src/main/java/com/lunarclient/apollo/listener/ApolloPlayerListener.java diff --git a/bukkit/src/main/java/com/lunarclient/apollo/listener/ApolloWorldListener.java b/platform/bukkit/src/main/java/com/lunarclient/apollo/listener/ApolloWorldListener.java similarity index 100% rename from bukkit/src/main/java/com/lunarclient/apollo/listener/ApolloWorldListener.java rename to platform/bukkit/src/main/java/com/lunarclient/apollo/listener/ApolloWorldListener.java diff --git a/bukkit/src/main/java/com/lunarclient/apollo/metadata/BukkitMetadata.java b/platform/bukkit/src/main/java/com/lunarclient/apollo/metadata/BukkitMetadata.java similarity index 100% rename from bukkit/src/main/java/com/lunarclient/apollo/metadata/BukkitMetadata.java rename to platform/bukkit/src/main/java/com/lunarclient/apollo/metadata/BukkitMetadata.java diff --git a/bukkit/src/main/java/com/lunarclient/apollo/metadata/BukkitMetadataManager.java b/platform/bukkit/src/main/java/com/lunarclient/apollo/metadata/BukkitMetadataManager.java similarity index 100% rename from bukkit/src/main/java/com/lunarclient/apollo/metadata/BukkitMetadataManager.java rename to platform/bukkit/src/main/java/com/lunarclient/apollo/metadata/BukkitMetadataManager.java diff --git a/bukkit/src/main/java/com/lunarclient/apollo/util/ByteBufUtil.java b/platform/bukkit/src/main/java/com/lunarclient/apollo/util/ByteBufUtil.java similarity index 100% rename from bukkit/src/main/java/com/lunarclient/apollo/util/ByteBufUtil.java rename to platform/bukkit/src/main/java/com/lunarclient/apollo/util/ByteBufUtil.java diff --git a/bukkit/src/main/java/com/lunarclient/apollo/wrapper/BukkitApolloPlayer.java b/platform/bukkit/src/main/java/com/lunarclient/apollo/wrapper/BukkitApolloPlayer.java similarity index 100% rename from bukkit/src/main/java/com/lunarclient/apollo/wrapper/BukkitApolloPlayer.java rename to platform/bukkit/src/main/java/com/lunarclient/apollo/wrapper/BukkitApolloPlayer.java diff --git a/bukkit/src/main/java/com/lunarclient/apollo/wrapper/BukkitApolloStats.java b/platform/bukkit/src/main/java/com/lunarclient/apollo/wrapper/BukkitApolloStats.java similarity index 100% rename from bukkit/src/main/java/com/lunarclient/apollo/wrapper/BukkitApolloStats.java rename to platform/bukkit/src/main/java/com/lunarclient/apollo/wrapper/BukkitApolloStats.java diff --git a/bukkit/src/main/java/com/lunarclient/apollo/wrapper/BukkitApolloWorld.java b/platform/bukkit/src/main/java/com/lunarclient/apollo/wrapper/BukkitApolloWorld.java similarity index 100% rename from bukkit/src/main/java/com/lunarclient/apollo/wrapper/BukkitApolloWorld.java rename to platform/bukkit/src/main/java/com/lunarclient/apollo/wrapper/BukkitApolloWorld.java diff --git a/bukkit/src/platform-loader/java/com/lunarclient/apollo/loader/BukkitPlatformLoader.java b/platform/bukkit/src/platform-loader/java/com/lunarclient/apollo/loader/BukkitPlatformLoader.java similarity index 100% rename from bukkit/src/platform-loader/java/com/lunarclient/apollo/loader/BukkitPlatformLoader.java rename to platform/bukkit/src/platform-loader/java/com/lunarclient/apollo/loader/BukkitPlatformLoader.java diff --git a/bukkit/src/platform-loader/resources/plugin.yml b/platform/bukkit/src/platform-loader/resources/plugin.yml similarity index 100% rename from bukkit/src/platform-loader/resources/plugin.yml rename to platform/bukkit/src/platform-loader/resources/plugin.yml diff --git a/bungee/build.gradle.kts b/platform/bungee/build.gradle.kts similarity index 100% rename from bungee/build.gradle.kts rename to platform/bungee/build.gradle.kts diff --git a/bungee/src/main/java/com/lunarclient/apollo/ApolloBungeePlatform.java b/platform/bungee/src/main/java/com/lunarclient/apollo/ApolloBungeePlatform.java similarity index 100% rename from bungee/src/main/java/com/lunarclient/apollo/ApolloBungeePlatform.java rename to platform/bungee/src/main/java/com/lunarclient/apollo/ApolloBungeePlatform.java diff --git a/bungee/src/main/java/com/lunarclient/apollo/command/BungeeApolloCommand.java b/platform/bungee/src/main/java/com/lunarclient/apollo/command/BungeeApolloCommand.java similarity index 100% rename from bungee/src/main/java/com/lunarclient/apollo/command/BungeeApolloCommand.java rename to platform/bungee/src/main/java/com/lunarclient/apollo/command/BungeeApolloCommand.java diff --git a/bungee/src/main/java/com/lunarclient/apollo/command/BungeeLunarClientCommand.java b/platform/bungee/src/main/java/com/lunarclient/apollo/command/BungeeLunarClientCommand.java similarity index 100% rename from bungee/src/main/java/com/lunarclient/apollo/command/BungeeLunarClientCommand.java rename to platform/bungee/src/main/java/com/lunarclient/apollo/command/BungeeLunarClientCommand.java diff --git a/bungee/src/main/java/com/lunarclient/apollo/listener/ApolloMetadataListener.java b/platform/bungee/src/main/java/com/lunarclient/apollo/listener/ApolloMetadataListener.java similarity index 100% rename from bungee/src/main/java/com/lunarclient/apollo/listener/ApolloMetadataListener.java rename to platform/bungee/src/main/java/com/lunarclient/apollo/listener/ApolloMetadataListener.java diff --git a/bungee/src/main/java/com/lunarclient/apollo/listener/ApolloPlayerListener.java b/platform/bungee/src/main/java/com/lunarclient/apollo/listener/ApolloPlayerListener.java similarity index 100% rename from bungee/src/main/java/com/lunarclient/apollo/listener/ApolloPlayerListener.java rename to platform/bungee/src/main/java/com/lunarclient/apollo/listener/ApolloPlayerListener.java diff --git a/bungee/src/main/java/com/lunarclient/apollo/metadata/BungeeMetadata.java b/platform/bungee/src/main/java/com/lunarclient/apollo/metadata/BungeeMetadata.java similarity index 100% rename from bungee/src/main/java/com/lunarclient/apollo/metadata/BungeeMetadata.java rename to platform/bungee/src/main/java/com/lunarclient/apollo/metadata/BungeeMetadata.java diff --git a/bungee/src/main/java/com/lunarclient/apollo/metadata/BungeeMetadataManager.java b/platform/bungee/src/main/java/com/lunarclient/apollo/metadata/BungeeMetadataManager.java similarity index 100% rename from bungee/src/main/java/com/lunarclient/apollo/metadata/BungeeMetadataManager.java rename to platform/bungee/src/main/java/com/lunarclient/apollo/metadata/BungeeMetadataManager.java diff --git a/bungee/src/main/java/com/lunarclient/apollo/util/ByteBufUtil.java b/platform/bungee/src/main/java/com/lunarclient/apollo/util/ByteBufUtil.java similarity index 100% rename from bungee/src/main/java/com/lunarclient/apollo/util/ByteBufUtil.java rename to platform/bungee/src/main/java/com/lunarclient/apollo/util/ByteBufUtil.java diff --git a/bungee/src/main/java/com/lunarclient/apollo/wrapper/BungeeApolloPlayer.java b/platform/bungee/src/main/java/com/lunarclient/apollo/wrapper/BungeeApolloPlayer.java similarity index 100% rename from bungee/src/main/java/com/lunarclient/apollo/wrapper/BungeeApolloPlayer.java rename to platform/bungee/src/main/java/com/lunarclient/apollo/wrapper/BungeeApolloPlayer.java diff --git a/bungee/src/main/java/com/lunarclient/apollo/wrapper/BungeeApolloStats.java b/platform/bungee/src/main/java/com/lunarclient/apollo/wrapper/BungeeApolloStats.java similarity index 100% rename from bungee/src/main/java/com/lunarclient/apollo/wrapper/BungeeApolloStats.java rename to platform/bungee/src/main/java/com/lunarclient/apollo/wrapper/BungeeApolloStats.java diff --git a/bungee/src/platform-loader/java/com/lunarclient/apollo/loader/BungeePlatformLoader.java b/platform/bungee/src/platform-loader/java/com/lunarclient/apollo/loader/BungeePlatformLoader.java similarity index 100% rename from bungee/src/platform-loader/java/com/lunarclient/apollo/loader/BungeePlatformLoader.java rename to platform/bungee/src/platform-loader/java/com/lunarclient/apollo/loader/BungeePlatformLoader.java diff --git a/bungee/src/platform-loader/resources/plugin.yml b/platform/bungee/src/platform-loader/resources/plugin.yml similarity index 100% rename from bungee/src/platform-loader/resources/plugin.yml rename to platform/bungee/src/platform-loader/resources/plugin.yml diff --git a/folia/build.gradle.kts b/platform/folia/build.gradle.kts similarity index 100% rename from folia/build.gradle.kts rename to platform/folia/build.gradle.kts diff --git a/folia/src/main/java/com/lunarclient/apollo/ApolloFoliaPlatform.java b/platform/folia/src/main/java/com/lunarclient/apollo/ApolloFoliaPlatform.java similarity index 100% rename from folia/src/main/java/com/lunarclient/apollo/ApolloFoliaPlatform.java rename to platform/folia/src/main/java/com/lunarclient/apollo/ApolloFoliaPlatform.java diff --git a/folia/src/main/java/com/lunarclient/apollo/command/FoliaApolloCommand.java b/platform/folia/src/main/java/com/lunarclient/apollo/command/FoliaApolloCommand.java similarity index 100% rename from folia/src/main/java/com/lunarclient/apollo/command/FoliaApolloCommand.java rename to platform/folia/src/main/java/com/lunarclient/apollo/command/FoliaApolloCommand.java diff --git a/folia/src/main/java/com/lunarclient/apollo/command/FoliaLunarClientCommand.java b/platform/folia/src/main/java/com/lunarclient/apollo/command/FoliaLunarClientCommand.java similarity index 100% rename from folia/src/main/java/com/lunarclient/apollo/command/FoliaLunarClientCommand.java rename to platform/folia/src/main/java/com/lunarclient/apollo/command/FoliaLunarClientCommand.java diff --git a/folia/src/main/java/com/lunarclient/apollo/listener/ApolloMetadataListener.java b/platform/folia/src/main/java/com/lunarclient/apollo/listener/ApolloMetadataListener.java similarity index 100% rename from folia/src/main/java/com/lunarclient/apollo/listener/ApolloMetadataListener.java rename to platform/folia/src/main/java/com/lunarclient/apollo/listener/ApolloMetadataListener.java diff --git a/folia/src/main/java/com/lunarclient/apollo/listener/ApolloPlayerListener.java b/platform/folia/src/main/java/com/lunarclient/apollo/listener/ApolloPlayerListener.java similarity index 100% rename from folia/src/main/java/com/lunarclient/apollo/listener/ApolloPlayerListener.java rename to platform/folia/src/main/java/com/lunarclient/apollo/listener/ApolloPlayerListener.java diff --git a/folia/src/main/java/com/lunarclient/apollo/listener/ApolloWorldListener.java b/platform/folia/src/main/java/com/lunarclient/apollo/listener/ApolloWorldListener.java similarity index 100% rename from folia/src/main/java/com/lunarclient/apollo/listener/ApolloWorldListener.java rename to platform/folia/src/main/java/com/lunarclient/apollo/listener/ApolloWorldListener.java diff --git a/folia/src/main/java/com/lunarclient/apollo/metadata/FoliaMetadata.java b/platform/folia/src/main/java/com/lunarclient/apollo/metadata/FoliaMetadata.java similarity index 100% rename from folia/src/main/java/com/lunarclient/apollo/metadata/FoliaMetadata.java rename to platform/folia/src/main/java/com/lunarclient/apollo/metadata/FoliaMetadata.java diff --git a/folia/src/main/java/com/lunarclient/apollo/metadata/FoliaMetadataManager.java b/platform/folia/src/main/java/com/lunarclient/apollo/metadata/FoliaMetadataManager.java similarity index 100% rename from folia/src/main/java/com/lunarclient/apollo/metadata/FoliaMetadataManager.java rename to platform/folia/src/main/java/com/lunarclient/apollo/metadata/FoliaMetadataManager.java diff --git a/folia/src/main/java/com/lunarclient/apollo/wrapper/FoliaApolloPlayer.java b/platform/folia/src/main/java/com/lunarclient/apollo/wrapper/FoliaApolloPlayer.java similarity index 100% rename from folia/src/main/java/com/lunarclient/apollo/wrapper/FoliaApolloPlayer.java rename to platform/folia/src/main/java/com/lunarclient/apollo/wrapper/FoliaApolloPlayer.java diff --git a/folia/src/main/java/com/lunarclient/apollo/wrapper/FoliaApolloStats.java b/platform/folia/src/main/java/com/lunarclient/apollo/wrapper/FoliaApolloStats.java similarity index 100% rename from folia/src/main/java/com/lunarclient/apollo/wrapper/FoliaApolloStats.java rename to platform/folia/src/main/java/com/lunarclient/apollo/wrapper/FoliaApolloStats.java diff --git a/folia/src/main/java/com/lunarclient/apollo/wrapper/FoliaApolloWorld.java b/platform/folia/src/main/java/com/lunarclient/apollo/wrapper/FoliaApolloWorld.java similarity index 100% rename from folia/src/main/java/com/lunarclient/apollo/wrapper/FoliaApolloWorld.java rename to platform/folia/src/main/java/com/lunarclient/apollo/wrapper/FoliaApolloWorld.java diff --git a/folia/src/main/resources/plugin.yml b/platform/folia/src/main/resources/plugin.yml similarity index 100% rename from folia/src/main/resources/plugin.yml rename to platform/folia/src/main/resources/plugin.yml diff --git a/minestom/build.gradle.kts b/platform/minestom/build.gradle.kts similarity index 100% rename from minestom/build.gradle.kts rename to platform/minestom/build.gradle.kts diff --git a/minestom/src/main/java/com/lunarclient/apollo/ApolloMinestomPlatform.java b/platform/minestom/src/main/java/com/lunarclient/apollo/ApolloMinestomPlatform.java similarity index 100% rename from minestom/src/main/java/com/lunarclient/apollo/ApolloMinestomPlatform.java rename to platform/minestom/src/main/java/com/lunarclient/apollo/ApolloMinestomPlatform.java diff --git a/minestom/src/main/java/com/lunarclient/apollo/ApolloMinestomProperties.java b/platform/minestom/src/main/java/com/lunarclient/apollo/ApolloMinestomProperties.java similarity index 100% rename from minestom/src/main/java/com/lunarclient/apollo/ApolloMinestomProperties.java rename to platform/minestom/src/main/java/com/lunarclient/apollo/ApolloMinestomProperties.java diff --git a/minestom/src/main/java/com/lunarclient/apollo/command/MinestomApolloCommand.java b/platform/minestom/src/main/java/com/lunarclient/apollo/command/MinestomApolloCommand.java similarity index 100% rename from minestom/src/main/java/com/lunarclient/apollo/command/MinestomApolloCommand.java rename to platform/minestom/src/main/java/com/lunarclient/apollo/command/MinestomApolloCommand.java diff --git a/minestom/src/main/java/com/lunarclient/apollo/command/MinestomLunarClientCommand.java b/platform/minestom/src/main/java/com/lunarclient/apollo/command/MinestomLunarClientCommand.java similarity index 100% rename from minestom/src/main/java/com/lunarclient/apollo/command/MinestomLunarClientCommand.java rename to platform/minestom/src/main/java/com/lunarclient/apollo/command/MinestomLunarClientCommand.java diff --git a/minestom/src/main/java/com/lunarclient/apollo/listener/ApolloMetadataListener.java b/platform/minestom/src/main/java/com/lunarclient/apollo/listener/ApolloMetadataListener.java similarity index 100% rename from minestom/src/main/java/com/lunarclient/apollo/listener/ApolloMetadataListener.java rename to platform/minestom/src/main/java/com/lunarclient/apollo/listener/ApolloMetadataListener.java diff --git a/minestom/src/main/java/com/lunarclient/apollo/listener/ApolloPlayerListener.java b/platform/minestom/src/main/java/com/lunarclient/apollo/listener/ApolloPlayerListener.java similarity index 100% rename from minestom/src/main/java/com/lunarclient/apollo/listener/ApolloPlayerListener.java rename to platform/minestom/src/main/java/com/lunarclient/apollo/listener/ApolloPlayerListener.java diff --git a/minestom/src/main/java/com/lunarclient/apollo/listener/ApolloWorldListener.java b/platform/minestom/src/main/java/com/lunarclient/apollo/listener/ApolloWorldListener.java similarity index 100% rename from minestom/src/main/java/com/lunarclient/apollo/listener/ApolloWorldListener.java rename to platform/minestom/src/main/java/com/lunarclient/apollo/listener/ApolloWorldListener.java diff --git a/minestom/src/main/java/com/lunarclient/apollo/metadata/MinestomMetadata.java b/platform/minestom/src/main/java/com/lunarclient/apollo/metadata/MinestomMetadata.java similarity index 100% rename from minestom/src/main/java/com/lunarclient/apollo/metadata/MinestomMetadata.java rename to platform/minestom/src/main/java/com/lunarclient/apollo/metadata/MinestomMetadata.java diff --git a/minestom/src/main/java/com/lunarclient/apollo/metadata/MinestomMetadataManager.java b/platform/minestom/src/main/java/com/lunarclient/apollo/metadata/MinestomMetadataManager.java similarity index 100% rename from minestom/src/main/java/com/lunarclient/apollo/metadata/MinestomMetadataManager.java rename to platform/minestom/src/main/java/com/lunarclient/apollo/metadata/MinestomMetadataManager.java diff --git a/minestom/src/main/java/com/lunarclient/apollo/util/ByteBufUtil.java b/platform/minestom/src/main/java/com/lunarclient/apollo/util/ByteBufUtil.java similarity index 100% rename from minestom/src/main/java/com/lunarclient/apollo/util/ByteBufUtil.java rename to platform/minestom/src/main/java/com/lunarclient/apollo/util/ByteBufUtil.java diff --git a/minestom/src/main/java/com/lunarclient/apollo/wrapper/MinestomApolloPlayer.java b/platform/minestom/src/main/java/com/lunarclient/apollo/wrapper/MinestomApolloPlayer.java similarity index 100% rename from minestom/src/main/java/com/lunarclient/apollo/wrapper/MinestomApolloPlayer.java rename to platform/minestom/src/main/java/com/lunarclient/apollo/wrapper/MinestomApolloPlayer.java diff --git a/minestom/src/main/java/com/lunarclient/apollo/wrapper/MinestomApolloStats.java b/platform/minestom/src/main/java/com/lunarclient/apollo/wrapper/MinestomApolloStats.java similarity index 100% rename from minestom/src/main/java/com/lunarclient/apollo/wrapper/MinestomApolloStats.java rename to platform/minestom/src/main/java/com/lunarclient/apollo/wrapper/MinestomApolloStats.java diff --git a/minestom/src/main/java/com/lunarclient/apollo/wrapper/MinestomApolloWorld.java b/platform/minestom/src/main/java/com/lunarclient/apollo/wrapper/MinestomApolloWorld.java similarity index 100% rename from minestom/src/main/java/com/lunarclient/apollo/wrapper/MinestomApolloWorld.java rename to platform/minestom/src/main/java/com/lunarclient/apollo/wrapper/MinestomApolloWorld.java diff --git a/velocity/build.gradle.kts b/platform/velocity/build.gradle.kts similarity index 100% rename from velocity/build.gradle.kts rename to platform/velocity/build.gradle.kts diff --git a/velocity/src/main/java/com/lunarclient/apollo/ApolloVelocityPlatform.java b/platform/velocity/src/main/java/com/lunarclient/apollo/ApolloVelocityPlatform.java similarity index 100% rename from velocity/src/main/java/com/lunarclient/apollo/ApolloVelocityPlatform.java rename to platform/velocity/src/main/java/com/lunarclient/apollo/ApolloVelocityPlatform.java diff --git a/velocity/src/main/java/com/lunarclient/apollo/command/VelocityApolloCommand.java b/platform/velocity/src/main/java/com/lunarclient/apollo/command/VelocityApolloCommand.java similarity index 100% rename from velocity/src/main/java/com/lunarclient/apollo/command/VelocityApolloCommand.java rename to platform/velocity/src/main/java/com/lunarclient/apollo/command/VelocityApolloCommand.java diff --git a/velocity/src/main/java/com/lunarclient/apollo/command/VelocityLunarClientCommand.java b/platform/velocity/src/main/java/com/lunarclient/apollo/command/VelocityLunarClientCommand.java similarity index 100% rename from velocity/src/main/java/com/lunarclient/apollo/command/VelocityLunarClientCommand.java rename to platform/velocity/src/main/java/com/lunarclient/apollo/command/VelocityLunarClientCommand.java diff --git a/velocity/src/main/java/com/lunarclient/apollo/listener/ApolloMetadataListener.java b/platform/velocity/src/main/java/com/lunarclient/apollo/listener/ApolloMetadataListener.java similarity index 100% rename from velocity/src/main/java/com/lunarclient/apollo/listener/ApolloMetadataListener.java rename to platform/velocity/src/main/java/com/lunarclient/apollo/listener/ApolloMetadataListener.java diff --git a/velocity/src/main/java/com/lunarclient/apollo/listener/ApolloPlayerListener.java b/platform/velocity/src/main/java/com/lunarclient/apollo/listener/ApolloPlayerListener.java similarity index 100% rename from velocity/src/main/java/com/lunarclient/apollo/listener/ApolloPlayerListener.java rename to platform/velocity/src/main/java/com/lunarclient/apollo/listener/ApolloPlayerListener.java diff --git a/velocity/src/main/java/com/lunarclient/apollo/metadata/VelocityMetadata.java b/platform/velocity/src/main/java/com/lunarclient/apollo/metadata/VelocityMetadata.java similarity index 100% rename from velocity/src/main/java/com/lunarclient/apollo/metadata/VelocityMetadata.java rename to platform/velocity/src/main/java/com/lunarclient/apollo/metadata/VelocityMetadata.java diff --git a/velocity/src/main/java/com/lunarclient/apollo/metadata/VelocityMetadataManager.java b/platform/velocity/src/main/java/com/lunarclient/apollo/metadata/VelocityMetadataManager.java similarity index 100% rename from velocity/src/main/java/com/lunarclient/apollo/metadata/VelocityMetadataManager.java rename to platform/velocity/src/main/java/com/lunarclient/apollo/metadata/VelocityMetadataManager.java diff --git a/velocity/src/main/java/com/lunarclient/apollo/util/ByteBufUtil.java b/platform/velocity/src/main/java/com/lunarclient/apollo/util/ByteBufUtil.java similarity index 100% rename from velocity/src/main/java/com/lunarclient/apollo/util/ByteBufUtil.java rename to platform/velocity/src/main/java/com/lunarclient/apollo/util/ByteBufUtil.java diff --git a/velocity/src/main/java/com/lunarclient/apollo/wrapper/VelocityApolloPlayer.java b/platform/velocity/src/main/java/com/lunarclient/apollo/wrapper/VelocityApolloPlayer.java similarity index 100% rename from velocity/src/main/java/com/lunarclient/apollo/wrapper/VelocityApolloPlayer.java rename to platform/velocity/src/main/java/com/lunarclient/apollo/wrapper/VelocityApolloPlayer.java diff --git a/velocity/src/main/java/com/lunarclient/apollo/wrapper/VelocityApolloStats.java b/platform/velocity/src/main/java/com/lunarclient/apollo/wrapper/VelocityApolloStats.java similarity index 100% rename from velocity/src/main/java/com/lunarclient/apollo/wrapper/VelocityApolloStats.java rename to platform/velocity/src/main/java/com/lunarclient/apollo/wrapper/VelocityApolloStats.java diff --git a/settings.gradle.kts b/settings.gradle.kts index 359d9aa4..429e89a8 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -17,8 +17,8 @@ pluginManagement { dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.PREFER_SETTINGS) repositories { + maven("https://hub.spigotmc.org/nexus/content/repositories/snapshots/") maven("https://repo.papermc.io/repository/maven-public/") - maven("https://oss.sonatype.org/content/repositories/snapshots") maven("https://us-maven.pkg.dev/mw-lunarclient-maven-repo/public") mavenCentral() mavenLocal() @@ -35,17 +35,24 @@ listOfNotNull( "extra:adventure4", "api", "common", - "bukkit", "example:bukkit:common", "example:bukkit:api", "example:bukkit:json", "example:bukkit:proto", - "example:minestom:api", - if (loadAllVersions) "bungee" else null, - if (loadAllVersions) "velocity" else null, - if (loadAllVersions) "folia" else null, - if (loadAllVersions) "minestom" else null + "example:minestom:api" ).forEach { include(it) findProject(":$it")?.name = "apollo-${it.replace(':', '-')}" } + + +listOfNotNull( + "platform:bukkit", + if (loadAllVersions) "platform:bungee" else null, + if (loadAllVersions) "platform:velocity" else null, + if (loadAllVersions) "platform:folia" else null, + if (loadAllVersions) "platform:minestom" else null +).forEach { + include(it) + findProject(":$it")?.name = "apollo-${it.split(':').last()}" +}