diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 7291d65..f6b1095 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -6,61 +6,9 @@ on: - version/* workflow_dispatch: -env: - SLNE_SNAPSHOTS_REPO_USERNAME: ${{ secrets.SLNE_SNAPSHOTS_REPO_USERNAME }} - SLNE_SNAPSHOTS_REPO_PASSWORD: ${{ secrets.SLNE_SNAPSHOTS_REPO_PASSWORD }} - SLNE_RELEASES_REPO_USERNAME: ${{ secrets.SLNE_RELEASES_REPO_USERNAME }} - SLNE_RELEASES_REPO_PASSWORD: ${{ secrets.SLNE_RELEASES_REPO_PASSWORD }} - MODULE_REGEX: "spawn-trader.*-all\\.jar$" - jobs: build: - runs-on: ubuntu-latest - steps: - - name: Collect Workflow Telemetry - uses: catchpoint/workflow-telemetry-action@v2 - - - name: Checkout Repository - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - - name: Cache Gradle packages - uses: actions/cache@v3 - with: - path: | - ~/.gradle/caches - ~/.gradle/wrapper - key: gradle-${{ runner.os }}-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} - restore-keys: gradle-${{ runner.os }}- - - - name: Setup JDK - uses: actions/setup-java@v4 - with: - distribution: 'graalvm' - java-version: '25' - - - name: Build all modules with Gradle - run: ./gradlew build shadowJar --parallel --no-scan - - - name: Extract Project Version - id: get_version - run: echo "VERSION=$(./gradlew properties | grep "^version:" | awk '{print $2}')" >> $GITHUB_ENV - - - name: Find and filter JAR files - id: find_jars - run: | - echo "JAR_FILES<> $GITHUB_ENV - find . -path "**/build/libs/*.jar" | grep -E "${{ env.MODULE_REGEX }}" >> $GITHUB_ENV - echo "EOF" >> $GITHUB_ENV - - - name: Create GitHub Release - uses: softprops/action-gh-release@v2 - with: - tag_name: v${{ env.VERSION }} - name: Release ${{ env.VERSION }} - draft: false - prerelease: false - files: ${{ env.JAR_FILES }} - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + uses: SLNE-Development/surf-workflows/.github/workflows/build-publish-release-gradle.yml@master + with: + modules: "spawn-trader-*-all.jar" + secrets: inherit \ No newline at end of file diff --git a/build.gradle.kts b/build.gradle.kts index 3a96396..d3b1cc3 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,15 +1,15 @@ -import dev.slne.surf.surfapi.gradle.util.registerRequired +import dev.slne.surf.api.gradle.util.registerRequired plugins { - id("dev.slne.surf.surfapi.gradle.paper-plugin") version "1.21.11+" + id("dev.slne.surf.api.gradle.paper-plugin") version "+" } group = "dev.slne.spawn.trader" -version = findProperty("version")!! +version = findProperty("version") as String dependencies { - compileOnly("dev.slne.surf.npc:surf-npc-api:1.21.11-1.6.1-SNAPSHOT") - compileOnly("dev.slne.surf.transaction:surf-transaction-api:1.21.11-3.0.1") + compileOnly("dev.slne.surf.npc:surf-npc-api:+") + compileOnly("dev.slne.surf.transaction:surf-transaction-api:+") } surfPaperPluginApi { diff --git a/gradle.properties b/gradle.properties index a9ec12f..87b0351 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,4 +1,4 @@ kotlin.code.style=official kotlin.stdlib.default.dependency=false org.gradle.parallel=true -version=1.21.11-1.4.2-SNAPSHOT \ No newline at end of file +version=1.4.4 \ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index f670658..1a70468 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-snapshots/gradle-9.4.0-20260117005955+0000-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-9.5.0-bin.zip networkTimeout=10000 validateDistributionUrl=true zipStoreBase=GRADLE_USER_HOME diff --git a/settings.gradle.kts b/settings.gradle.kts index c3a473a..1e1faae 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -3,6 +3,6 @@ rootProject.name = "spawn-trader" pluginManagement { repositories { gradlePluginPortal() - maven("https://repo.slne.dev/repository/maven-public/") { name = "maven-public" } + maven("https://reposilite.slne.dev/releases") } } diff --git a/src/main/java/dev/slne/spawn/trader/PaperMain.kt b/src/main/java/dev/slne/spawn/trader/PaperMain.kt index e5abeb4..963aaf1 100644 --- a/src/main/java/dev/slne/spawn/trader/PaperMain.kt +++ b/src/main/java/dev/slne/spawn/trader/PaperMain.kt @@ -8,12 +8,12 @@ import dev.slne.spawn.trader.listener.TraderClockInteractListener import dev.slne.spawn.trader.papi.PapiExpansion import dev.slne.spawn.trader.service.traderVisibilityService import dev.slne.spawn.trader.task.TimeTask -import dev.slne.surf.surfapi.bukkit.api.builder.buildItem -import dev.slne.surf.surfapi.bukkit.api.builder.buildLore -import dev.slne.surf.surfapi.bukkit.api.builder.displayName -import dev.slne.surf.surfapi.bukkit.api.event.register -import dev.slne.surf.surfapi.bukkit.api.hook.papi.papiHook -import dev.slne.surf.surfapi.bukkit.api.inventory.framework.viewFrame +import dev.slne.surf.api.paper.builder.buildItem +import dev.slne.surf.api.paper.builder.buildLore +import dev.slne.surf.api.paper.builder.displayName +import dev.slne.surf.api.paper.event.register +import dev.slne.surf.api.paper.hook.papi.SurfPaperPAPIHook +import dev.slne.surf.api.paper.inventory.framework.viewFrame import org.bukkit.Material import org.bukkit.plugin.java.JavaPlugin @@ -26,7 +26,7 @@ class PaperMain : SuspendingJavaPlugin() { override suspend fun onEnableAsync() { traderVisibilityService.create() - papiHook.register(PapiExpansion) + SurfPaperPAPIHook.register(PapiExpansion) spawnTraderCommand() diff --git a/src/main/java/dev/slne/spawn/trader/command/SpawnTraderCommand.kt b/src/main/java/dev/slne/spawn/trader/command/SpawnTraderCommand.kt index 98154bd..9bdf59c 100644 --- a/src/main/java/dev/slne/spawn/trader/command/SpawnTraderCommand.kt +++ b/src/main/java/dev/slne/spawn/trader/command/SpawnTraderCommand.kt @@ -9,7 +9,7 @@ import dev.slne.spawn.trader.plugin import dev.slne.spawn.trader.service.traderVisibilityService import dev.slne.spawn.trader.task.TimeTask import dev.slne.spawn.trader.util.PermissionRegistry -import dev.slne.surf.surfapi.core.api.messages.adventure.sendText +import dev.slne.surf.api.core.messages.adventure.sendText fun spawnTraderCommand() = commandTree("spawnTrader") { withPermission(PermissionRegistry.COMMAND) diff --git a/src/main/java/dev/slne/spawn/trader/gui/MenuHeads.kt b/src/main/java/dev/slne/spawn/trader/gui/MenuHeads.kt index adc523c..2b39b18 100644 --- a/src/main/java/dev/slne/spawn/trader/gui/MenuHeads.kt +++ b/src/main/java/dev/slne/spawn/trader/gui/MenuHeads.kt @@ -1,7 +1,7 @@ package dev.slne.spawn.trader.gui import com.destroystokyo.paper.profile.ProfileProperty -import dev.slne.surf.surfapi.bukkit.api.builder.buildItem +import dev.slne.surf.api.paper.builder.buildItem import io.papermc.paper.datacomponent.DataComponentTypes import io.papermc.paper.datacomponent.item.ResolvableProfile import io.papermc.paper.datacomponent.item.TooltipDisplay diff --git a/src/main/java/dev/slne/spawn/trader/gui/SpawnTraderView.kt b/src/main/java/dev/slne/spawn/trader/gui/SpawnTraderView.kt index 3e03a05..b8158e4 100644 --- a/src/main/java/dev/slne/spawn/trader/gui/SpawnTraderView.kt +++ b/src/main/java/dev/slne/spawn/trader/gui/SpawnTraderView.kt @@ -5,10 +5,10 @@ import dev.slne.spawn.trader.plugin import dev.slne.spawn.trader.service.traderTradeService import dev.slne.spawn.trader.trades.Trades import dev.slne.spawn.trader.util.formatPrice -import dev.slne.surf.surfapi.bukkit.api.builder.buildLore -import dev.slne.surf.surfapi.bukkit.api.builder.displayName -import dev.slne.surf.surfapi.bukkit.api.inventory.framework.titleBuilder -import dev.slne.surf.surfapi.core.api.font.toSmallCaps +import dev.slne.surf.api.core.font.toSmallCaps +import dev.slne.surf.api.paper.builder.buildLore +import dev.slne.surf.api.paper.builder.displayName +import dev.slne.surf.api.paper.inventory.framework.titleBuilder import me.devnatan.inventoryframework.View import me.devnatan.inventoryframework.ViewConfigBuilder import me.devnatan.inventoryframework.context.RenderContext diff --git a/src/main/java/dev/slne/spawn/trader/gui/view-util.kt b/src/main/java/dev/slne/spawn/trader/gui/view-util.kt index dbb4b26..6be03a8 100644 --- a/src/main/java/dev/slne/spawn/trader/gui/view-util.kt +++ b/src/main/java/dev/slne/spawn/trader/gui/view-util.kt @@ -1,9 +1,9 @@ package dev.slne.spawn.trader.gui -import dev.slne.surf.surfapi.bukkit.api.builder.buildItem -import dev.slne.surf.surfapi.bukkit.api.builder.displayName -import dev.slne.surf.surfapi.core.api.font.toSmallCaps -import dev.slne.surf.surfapi.core.api.messages.adventure.playSound +import dev.slne.surf.api.core.font.toSmallCaps +import dev.slne.surf.api.core.messages.adventure.playSound +import dev.slne.surf.api.paper.builder.buildItem +import dev.slne.surf.api.paper.builder.displayName import me.devnatan.inventoryframework.View import me.devnatan.inventoryframework.context.Context import net.kyori.adventure.text.format.TextDecoration diff --git a/src/main/java/dev/slne/spawn/trader/listener/NpcInteractListener.kt b/src/main/java/dev/slne/spawn/trader/listener/NpcInteractListener.kt index c96db17..3e13636 100644 --- a/src/main/java/dev/slne/spawn/trader/listener/NpcInteractListener.kt +++ b/src/main/java/dev/slne/spawn/trader/listener/NpcInteractListener.kt @@ -2,8 +2,8 @@ package dev.slne.spawn.trader.listener import dev.slne.spawn.trader.gui.SpawnTraderView import dev.slne.spawn.trader.service.traderVisibilityService +import dev.slne.surf.api.paper.inventory.framework.viewFrame import dev.slne.surf.npc.api.event.NpcInteractEvent -import dev.slne.surf.surfapi.bukkit.api.inventory.framework.viewFrame import org.bukkit.event.EventHandler import org.bukkit.event.Listener diff --git a/src/main/java/dev/slne/spawn/trader/listener/TraderClockInteractListener.kt b/src/main/java/dev/slne/spawn/trader/listener/TraderClockInteractListener.kt index 1b8e89b..2f49e97 100644 --- a/src/main/java/dev/slne/spawn/trader/listener/TraderClockInteractListener.kt +++ b/src/main/java/dev/slne/spawn/trader/listener/TraderClockInteractListener.kt @@ -3,7 +3,7 @@ package dev.slne.spawn.trader.listener import dev.slne.spawn.trader.plugin import dev.slne.spawn.trader.service.traderVisibilityService import dev.slne.spawn.trader.task.TimeTask -import dev.slne.surf.surfapi.core.api.messages.adventure.sendText +import dev.slne.surf.api.core.messages.adventure.sendText import org.bukkit.event.EventHandler import org.bukkit.event.Listener import org.bukkit.event.player.PlayerInteractEvent diff --git a/src/main/java/dev/slne/spawn/trader/papi/PapiExpansion.kt b/src/main/java/dev/slne/spawn/trader/papi/PapiExpansion.kt index e45abb1..5fe7819 100644 --- a/src/main/java/dev/slne/spawn/trader/papi/PapiExpansion.kt +++ b/src/main/java/dev/slne/spawn/trader/papi/PapiExpansion.kt @@ -1,7 +1,7 @@ package dev.slne.spawn.trader.papi import dev.slne.spawn.trader.papi.placeholder.SpawnTraderVisiblePlaceholder -import dev.slne.surf.surfapi.bukkit.api.hook.papi.expansion.PapiExpansion +import dev.slne.surf.api.paper.hook.papi.expansion.PapiExpansion object PapiExpansion : PapiExpansion( identifier = "spawntrader", diff --git a/src/main/java/dev/slne/spawn/trader/papi/placeholder/SpawnTraderVisiblePlaceholder.kt b/src/main/java/dev/slne/spawn/trader/papi/placeholder/SpawnTraderVisiblePlaceholder.kt index 9046e3e..15a2256 100644 --- a/src/main/java/dev/slne/spawn/trader/papi/placeholder/SpawnTraderVisiblePlaceholder.kt +++ b/src/main/java/dev/slne/spawn/trader/papi/placeholder/SpawnTraderVisiblePlaceholder.kt @@ -1,7 +1,7 @@ package dev.slne.spawn.trader.papi.placeholder import dev.slne.spawn.trader.service.traderVisibilityService -import dev.slne.surf.surfapi.bukkit.api.hook.papi.expansion.PapiPlaceholder +import dev.slne.surf.api.paper.hook.papi.expansion.PapiPlaceholder import org.bukkit.OfflinePlayer object SpawnTraderVisiblePlaceholder : PapiPlaceholder( diff --git a/src/main/java/dev/slne/spawn/trader/service/TraderTradeService.kt b/src/main/java/dev/slne/spawn/trader/service/TraderTradeService.kt index 5c4744b..f940f32 100644 --- a/src/main/java/dev/slne/spawn/trader/service/TraderTradeService.kt +++ b/src/main/java/dev/slne/spawn/trader/service/TraderTradeService.kt @@ -2,7 +2,7 @@ package dev.slne.spawn.trader.service import dev.slne.spawn.trader.trades.Trades import dev.slne.spawn.trader.util.formatPrice -import dev.slne.surf.surfapi.core.api.messages.adventure.sendText +import dev.slne.surf.api.core.messages.adventure.sendText import dev.slne.surf.transaction.api.currency.Currency import dev.slne.surf.transaction.api.transaction.TransactionResult import dev.slne.surf.transaction.api.user.TransactionUser diff --git a/src/main/java/dev/slne/spawn/trader/service/TraderVisibilityService.kt b/src/main/java/dev/slne/spawn/trader/service/TraderVisibilityService.kt index 23f433b..6d5b314 100644 --- a/src/main/java/dev/slne/spawn/trader/service/TraderVisibilityService.kt +++ b/src/main/java/dev/slne/spawn/trader/service/TraderVisibilityService.kt @@ -6,14 +6,14 @@ import com.github.shynixn.mccoroutine.folia.launch import dev.slne.spawn.trader.gui.SpawnTraderView import dev.slne.spawn.trader.plugin import dev.slne.spawn.trader.task.TimeTask +import dev.slne.surf.api.core.font.toSmallCaps +import dev.slne.surf.api.core.messages.adventure.buildText +import dev.slne.surf.api.core.util.mutableObject2ObjectMapOf +import dev.slne.surf.api.core.util.toObjectSet import dev.slne.surf.npc.api.dsl.npc import dev.slne.surf.npc.api.npc.Npc import dev.slne.surf.npc.api.npc.skin.NpcSkin import dev.slne.surf.npc.api.npc.skin.NpcSkinPart -import dev.slne.surf.surfapi.core.api.font.toSmallCaps -import dev.slne.surf.surfapi.core.api.messages.adventure.buildText -import dev.slne.surf.surfapi.core.api.util.mutableObject2ObjectMapOf -import dev.slne.surf.surfapi.core.api.util.toObjectSet import kotlinx.coroutines.withContext import me.devnatan.inventoryframework.context.RenderContext import net.kyori.adventure.text.format.TextDecoration @@ -26,7 +26,6 @@ val traderVisibilityService = TraderVisibilityService() private val leaveMessages = listOf( "Der geheimnisvolle Händler zieht sich in die Schatten zurück...", "Ein leiser Wind weht über den Spawn, der Händler ist verschwunden...", - "Der Wanderhändler verlässt den Spawn und verschwindet in der Ferne...", "Die Präsenz des Händlers verblasst – er hat den Spawn verlassen...", "Mit einem letzten Rascheln verschwindet der Händler aus dem Spawn..." ) @@ -36,7 +35,6 @@ private val appearMessages = listOf( "Aus den Schatten tritt ein wandernder Händler am Spawn hervor...", "Ein fremder Händler hat den Spawn betreten...", "Ein leises Rascheln kündigt die Ankunft eines Händlers am Spawn an...", - "Der Wanderhändler ist am Spawn eingetroffen!" ) class TraderVisibilityService { diff --git a/src/main/java/dev/slne/spawn/trader/trades/Trades.kt b/src/main/java/dev/slne/spawn/trader/trades/Trades.kt index 5c2f5fc..30c9318 100644 --- a/src/main/java/dev/slne/spawn/trader/trades/Trades.kt +++ b/src/main/java/dev/slne/spawn/trader/trades/Trades.kt @@ -2,9 +2,9 @@ package dev.slne.spawn.trader.trades import dev.slne.spawn.trader.plugin import dev.slne.spawn.trader.util.traderColored -import dev.slne.surf.surfapi.bukkit.api.builder.buildLore -import dev.slne.surf.surfapi.core.api.font.toSmallCaps -import dev.slne.surf.surfapi.core.api.messages.adventure.buildText +import dev.slne.surf.api.core.font.toSmallCaps +import dev.slne.surf.api.core.messages.adventure.buildText +import dev.slne.surf.api.paper.builder.buildLore import net.kyori.adventure.text.TextComponent import net.kyori.adventure.text.format.TextDecoration import org.bukkit.Bukkit @@ -24,12 +24,12 @@ enum class Trades(val displayName: TextComponent, val singleItem: ItemStack, val } } }, - 500 + 100 ), LIGHT_BLOCK( buildText { traderColored("Lichtblock".toSmallCaps(), TextDecoration.BOLD) }, ItemType.LIGHT.createItemStack(), - 250 + 50 ), GLOBE_BANNER_PATTERN( buildText { traderColored("Globus Banner-Muster".toSmallCaps(), TextDecoration.BOLD) }, @@ -39,6 +39,6 @@ enum class Trades(val displayName: TextComponent, val singleItem: ItemStack, val TRADER_CLOCK( buildText { traderColored("Händlers Uhr".toSmallCaps(), TextDecoration.BOLD) }, plugin.spawnTradersClockItem, - 50000 + 10000 ) } \ No newline at end of file diff --git a/src/main/java/dev/slne/spawn/trader/util/PermissionRegistry.kt b/src/main/java/dev/slne/spawn/trader/util/PermissionRegistry.kt index a007049..e3553f9 100644 --- a/src/main/java/dev/slne/spawn/trader/util/PermissionRegistry.kt +++ b/src/main/java/dev/slne/spawn/trader/util/PermissionRegistry.kt @@ -1,6 +1,6 @@ package dev.slne.spawn.trader.util -import dev.slne.surf.surfapi.bukkit.api.permission.PermissionRegistry +import dev.slne.surf.api.paper.permission.PermissionRegistry object PermissionRegistry : PermissionRegistry() { const val PERMISSION_PREFIX = "spawn.trader" diff --git a/src/main/java/dev/slne/spawn/trader/util/trader-util.kt b/src/main/java/dev/slne/spawn/trader/util/trader-util.kt index c2eadb5..c434a3a 100644 --- a/src/main/java/dev/slne/spawn/trader/util/trader-util.kt +++ b/src/main/java/dev/slne/spawn/trader/util/trader-util.kt @@ -1,6 +1,6 @@ package dev.slne.spawn.trader.util -import dev.slne.surf.surfapi.core.api.messages.builder.SurfComponentBuilder +import dev.slne.surf.api.core.messages.builder.SurfComponentBuilder import net.kyori.adventure.text.format.TextColor import net.kyori.adventure.text.format.TextDecoration