小屋創作

日誌2019-06-26 15:47

Spigot 插件教學 #7-8

作者:檸檬

第 7 章 - 開發小技巧
在開發插件時很多時候都會出現「我想要做到某個功能,但我不知到該如何做」的情況
Spigot 提供了一個在線的 Javadoc,裏面記錄了所有 Spigot API 提供的類別、函式
如果遇到以上的情況就可以到 Javadoc 查看: https://hub.spigotmc.org/javadocs/spigot/

例如我想要設定玩家的蹲下狀態,就在 Javadoc 右上角的 SEARCH 輸入蹲下的英文 (Sneak)

接下來我們要分辨哪個是我們需要的函式
搜尋結果中最常見有這幾種關鍵字:
    - XXXXEvent  (事件監聽器的種類)
    - setXXXX       (設定某物件的屬性)
    - getXXXX       (取得某物件的屬性)
    - is|canXXXX   (取得某物件能否做到某樣事情,傳回 Boolean 布林值)

這次我們要的功能屬於 設定某物件的屬性,而含有 set 的函式就只有 setSneaking(boolean)
這時候只要按下去然後確認那是你要的功能就好了~

那如果無論輸入什麼關鍵字都找不到的話......
請善用 GOOGLE,輸入 "Spigot 你要的功能"
儘量用英文,真的看不懂才找中文,因為Spigot 中文資源真的不是很多(?

如果還是找不到的話... 就可以留言問我/到巴哈上問其他人啦~


第 8 章 - GUI 選單
在這個時代,許多優質、高質素的插件都會提供 GUI 讓用家更容易地調整設定

要做到 GUI 其實很簡單,我們只需要向玩家打開一個設定好內容的背包 (Inventory)
然後再透過事件監聽器檢測玩家點擊 GUI 時作出相應指令

首先我們要註冊相應的 CommandExecutor 跟 EventListener
getCommand("menu").setExecutor(new MenuCommand());
getServer().getPluginManager().registerEvents(new MenuListener(), this);


然後讓玩家在輸入指令 /menu 時打開 GUI
(註: 以後介紹程式碼都會直接在程式碼中插入註解 "//",非特別函式、用法都不會另外介紹)

再註冊事件監聽器監聽玩家點擊背包,
檢查背包的名字、點擊的物品,再執行效果

最後在 plugin.yml 註冊指令

匯出插件後就可以測試看看~



這樣就可以做到 GUI 啦~~

4

1

LINE 分享

相關創作

【中文翻譯 | 國外CTM】Patchwreck 2 島嶼奇蹟 II

【Minecraft 模型創作】坐上那個櫻花椅子

Github Action 學習紀錄

留言

開啟 APP

face基於日前微軟官方表示 Internet Explorer 不再支援新的網路標準,可能無法使用新的應用程式來呈現網站內容,在瀏覽器支援度及網站安全性的雙重考量下,為了讓巴友們有更好的使用體驗,巴哈姆特即將於 2019年9月2日 停止支援 Internet Explorer 瀏覽器的頁面呈現和功能。
屆時建議您使用下述瀏覽器來瀏覽巴哈姆特:
。Google Chrome(推薦)
。Mozilla Firefox
。Microsoft Edge(Windows10以上的作業系統版本才可使用)

face我們了解您不想看到廣告的心情⋯ 若您願意支持巴哈姆特永續經營,請將 gamer.com.tw 加入廣告阻擋工具的白名單中,謝謝 !【教學】