diff --git a/platforms/allay/build.gradle.kts b/platforms/allay/build.gradle.kts new file mode 100644 index 000000000..0749708bc --- /dev/null +++ b/platforms/allay/build.gradle.kts @@ -0,0 +1,12 @@ +repositories { + mavenLocal() +} + +dependencies { + shadedApi(project(":common:implementation:base")) + + compileOnly("org.projectlombok:lombok:1.18.32") + compileOnly("org.allaymc", "Allay-API", "1.0.0") + + annotationProcessor("org.projectlombok:lombok:1.18.32") +} \ No newline at end of file diff --git a/platforms/allay/src/main/java/org/allaymc/terra/allay/AllayPlatform.java b/platforms/allay/src/main/java/org/allaymc/terra/allay/AllayPlatform.java new file mode 100644 index 000000000..ee1f39c76 --- /dev/null +++ b/platforms/allay/src/main/java/org/allaymc/terra/allay/AllayPlatform.java @@ -0,0 +1,43 @@ +package org.allaymc.terra.allay; + +import com.dfsek.terra.AbstractPlatform; +import com.dfsek.terra.api.handle.ItemHandle; +import com.dfsek.terra.api.handle.WorldHandle; + +import org.jetbrains.annotations.NotNull; + +import java.io.File; + + +/** + * Terra Project 2024/6/15 + * + * @author daoge_cmd + */ +public class AllayPlatform extends AbstractPlatform { + + @Override + public boolean reload() { + return false; + } + + @Override + public @NotNull String platformName() { + return "Allay"; + } + + @Override + public @NotNull WorldHandle getWorldHandle() { + // TODO + } + + @Override + public @NotNull File getDataFolder() { + return TerraAllayPlugin.INSTANCE.getPluginContainer().dataFolder().toFile(); + } + + @Override + public @NotNull ItemHandle getItemHandle() { + // TODO + } +} diff --git a/platforms/allay/src/main/java/org/allaymc/terra/allay/TerraAllayPlugin.java b/platforms/allay/src/main/java/org/allaymc/terra/allay/TerraAllayPlugin.java new file mode 100644 index 000000000..c8378a455 --- /dev/null +++ b/platforms/allay/src/main/java/org/allaymc/terra/allay/TerraAllayPlugin.java @@ -0,0 +1,34 @@ +package org.allaymc.terra.allay; + +import com.dfsek.terra.api.event.events.platform.PlatformInitializationEvent; + +import lombok.extern.slf4j.Slf4j; +import org.allaymc.api.plugin.Plugin; + + +/** + * Terra Project 2024/6/15 + * + * @author daoge_cmd + */ +@Slf4j +public class TerraAllayPlugin extends Plugin { + + public static TerraAllayPlugin INSTANCE; + + { + INSTANCE = this; + } + + @Override + public void onEnable() { + log.info("Starting Terra..."); + + var platform = new AllayPlatform(); + platform.getEventManager().callEvent(new PlatformInitializationEvent()); + + // TODO: Adapt command manager + + + } +} diff --git a/platforms/allay/src/main/resources/plugin.json b/platforms/allay/src/main/resources/plugin.json new file mode 100644 index 000000000..56cbf7dd8 --- /dev/null +++ b/platforms/allay/src/main/resources/plugin.json @@ -0,0 +1,9 @@ +{ + "entrance": "org.allaymc.terra.allay.TerraAllayPlugin", + "name": "Terra", + "authors": [ + "daoge_cmd" + ], + "version": "1.0.0", + "order": "START_UP" +} \ No newline at end of file