← ClaudeAtlas

purpur-api-callerlisted

為 Purpur 伺服器插件產生正確的 Purpur-specific Java API 調用代碼,包含 Purpur 專屬事件(PlayerAFKEvent)、purpur.yml 配置讀取、Purpur/Paper 雙平台相容守衛。當使用者說「Purpur API」、「PlayerAFKEvent」、「purpur.yml」、「Purpur 特有功能」時自動應用。
MrPippi/MJP-Claude-Skills · ★ 1 · API & Backend · score 70
Install: claude install-skill MrPippi/MJP-Claude-Skills
# Purpur API Caller / Purpur API 代碼產生器 ## 技能名稱 / Skill Name purpur-api-caller ## 目的 / Purpose 為需要使用 Purpur 專屬 API 的插件產生正確的 Java 代碼,包含執行環境偵測守衛(確保同一 JAR 可在 Paper 和 Purpur 上執行)。 ## 觸發條件 / Triggers - 「Purpur API」 - 「PlayerAFKEvent」 - 「purpur.yml 配置」 - 「Purpur 特有功能」 - 「purpur event」 - 「EntityAirChangeEvent」 ## 輸入參數 / Inputs | 參數 | 範例 | 說明 | |------|------|------| | `api_type` | `afk_event` | 要使用的 Purpur API 類型(見下方速查表) | | `plugin_package` | `com.mynetwork.myplugin` | 插件套件名稱 | | `purpur_only` | `false` | 是否要求僅在 Purpur 上執行(true = 加入執行環境守衛) | ## 輸出產物 / Outputs - 對應 API 的 Java 代碼片段或完整類別 ## Purpur API 速查表 / API Quick Reference | API 類型 | 套件 | 說明 | |---------|------|------| | `PlayerAFKEvent` | `org.purpurmc.purpur.event.player` | 玩家進入 AFK 狀態 | | `PlayerNotAFKEvent` | same | 玩家離開 AFK 狀態 | | `EntityAirChangeEvent` | `org.purpurmc.purpur.event.entity` | 實體空氣值變化 | ## 代碼範本 / Code Templates ### 1. AFK 事件監聽器(`PlayerAFKEvent`) ```java package {plugin_package}.listeners; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; import org.bukkit.plugin.java.JavaPlugin; import org.purpurmc.purpur.event.player.PlayerAFKEvent; import org.purpurmc.purpur.event.player.PlayerNotAFKEvent; import net.kyori.adventure.text.Component; import net.kyori.adventure.text.format.NamedTextColor; /** * Handles Purpur-specific AFK events. * Only register this listener if Purpur is available at runtime. * See: MyPlugin.isPurpurAvailable() */ public class PurpurAfkListener implements