- Hỗ trợ phiên bản
- 1.10
- Người đóng góp
- nahkd123
Lưu ý! Plugin này là API, và nó được sử dụng cho một số plugin khác. Tuy nhiên plugin này không ảnh hưởng đến các plugin khác không sử dụng chúng.
Update v1.0.1:
- Đã hook với PlaceholderAPI + MVdWPlaceholderAPI (PAPI dùng %% còn MVdWPlaceholderAPI dùng {})
Hầu hết các ae đều dùng lore để chứa thông tin của 1 item. Nhưng có thề nhiều người lại muốn ẩn đi hay làm cho cái lore của item ấy có khả năng chuyển động + placeholders. Vậy thì nahkdItemAPI có thể là 1 sự lựa chọn khá hợp lý.
Tại sao chỉ có 1.10?
1. Lightweight
2. Không có đủ thời gian : (
Các class sẽ được dùng dưới dạng API:
ItemNameUtils: Chuyên về tên item:
- static friendlyMaterialName(Material mat): Chuyển tên 1 material (item type) sang chữ có thể đọc được
ItemPlaceholder (Object): Chuyên về placeholder cho item:
- new ItemPlaceholder(String placeholder, PlaceholderReplacer replacer): Tạo 1 object về placeholder.
- this.getValue(Player player, ItemStack item): Lấy giá trị xuất ra. Thường được sử dụng trong MainClass của plugin này.
- this.getPlaceholder(): Lấy tên của placeholder này.
- this.register(): Add thêm placeholder này vào.
PlaceholderReplacer (Abstract class): 1 phần của ItemPlaceholder
ItemPreset: Các item được tạo sẵn hoặc tạo riêng 1 item:
- static customItem(...): Tạo 1 ItemStack (return ItemStack)
- static EmptyTemplate(): Lấy 1 template để ép vào 1 item nào đó
LoreMananger: Quản lý lore trên item:
- static setSpecialLore(ItemStack item, int line, String lore): Đặt 1 lore đặc biệt. Loại lore này có khả năng sử dụng được placeholders. (Bắt buộc phải có lore) (return ItemStack)
- static addLore(ItemStack item, String lore): Thêm lore vào item. (return ItemStack)
- static setLore(ItemStack item, int index, String lore) throws InvaildTagException: Đặt lại giá trị của 1 dòng lore nào đó (return ItemStack)
PlaceableItem: Quản lý hệ thống block (loại item có thể đặt xuống phải = block):
- static applyPlaceable(ItemStack item): Áp dụng khả năng đặt được item xuống (return ItemStack)
TagManager: Hệ thống quản lý NBT tag của item:
- static getNMSTags(org.bukkit.inventory.ItemStack item): Lấy NBTTagCompound
- static assignTag(org.bukkit.inventory.ItemStack item, NBTTagCompound tag): Áp dụng tag vào item (return ItemStack)
Sắp tới sẽ có JavaDoc, nên ae cứ chờ đợi...
Lệnh in-game: (chuyên dùng để test plugin):
/nahkd-item reload: Reload API, lưu ý là nó không được hỗ trợ với một số plugin đang hook với nahkdItemAPI
/nahkd-item loreadd [Line]: Thêm lore để test (khộng hỗ trợ placeholder, nhưng phải dùng để có thể sử dụng lệnh spl)
/nahkd-item loreset <#> [Line]: Đặt lại lore để test(khộng hỗ trợ placeholder, nhưng phải dùng để có thể sử dụng lệnh spl)
/nahkd-item spl <#> [Line]: Đặt dòng lore đặc biệt. Lưu ý là dòng lore đấy phải có mới có tác dụng. (hỗ trợ placeholder)
/nahkd-item name [Name]: Đặt tên... (ko placeholder)
/nahkd-item template: Lấy item mẫu, được sử dụng để ép vào item khác. Kiểu như mẫu đó có lore đẹp thì có thể ép vào item khác.
/nahkd-item placeable: Đặt item đó dưới dạng 1 item có thể đặt xuống, và nó chỉ có thể áp dụng đối với các block trong túi đồ. Item đó sau khi đặt xuống sẽ ghi nhớ thông tin của cả item đó và khi đập ra sẽ có nó lại.
Cách sử dụng item mẫu:
- Lấy item mẫu (như ở phần trên)
- Đặt lore, name, special lore, myitems các thứ các thứ...
- Dự trữ mẫu đấy ở một chỗ bất kỳ (vì lý do bug đối với creative inventory)
- Lấy bản sao của mẫu đó và ép vào 1 item bất kỳ
Góp ý:
(vui lòng để góp ý ở mục thảo luận)
Hình ảnh:
nahkdItemAPI hỗ trợ PAPI trong việc hiển thị thông tin server
Update v1.0.1:
- Đã hook với PlaceholderAPI + MVdWPlaceholderAPI (PAPI dùng %% còn MVdWPlaceholderAPI dùng {})
Hầu hết các ae đều dùng lore để chứa thông tin của 1 item. Nhưng có thề nhiều người lại muốn ẩn đi hay làm cho cái lore của item ấy có khả năng chuyển động + placeholders. Vậy thì nahkdItemAPI có thể là 1 sự lựa chọn khá hợp lý.
Tại sao chỉ có 1.10?
1. Lightweight
2. Không có đủ thời gian : (
Các class sẽ được dùng dưới dạng API:
ItemNameUtils: Chuyên về tên item:
- static friendlyMaterialName(Material mat): Chuyển tên 1 material (item type) sang chữ có thể đọc được
ItemPlaceholder (Object): Chuyên về placeholder cho item:
- new ItemPlaceholder(String placeholder, PlaceholderReplacer replacer): Tạo 1 object về placeholder.
- this.getValue(Player player, ItemStack item): Lấy giá trị xuất ra. Thường được sử dụng trong MainClass của plugin này.
- this.getPlaceholder(): Lấy tên của placeholder này.
- this.register(): Add thêm placeholder này vào.
PlaceholderReplacer (Abstract class): 1 phần của ItemPlaceholder
ItemPreset: Các item được tạo sẵn hoặc tạo riêng 1 item:
- static customItem(...): Tạo 1 ItemStack (return ItemStack)
- static EmptyTemplate(): Lấy 1 template để ép vào 1 item nào đó
LoreMananger: Quản lý lore trên item:
- static setSpecialLore(ItemStack item, int line, String lore): Đặt 1 lore đặc biệt. Loại lore này có khả năng sử dụng được placeholders. (Bắt buộc phải có lore) (return ItemStack)
- static addLore(ItemStack item, String lore): Thêm lore vào item. (return ItemStack)
- static setLore(ItemStack item, int index, String lore) throws InvaildTagException: Đặt lại giá trị của 1 dòng lore nào đó (return ItemStack)
PlaceableItem: Quản lý hệ thống block (loại item có thể đặt xuống phải = block):
- static applyPlaceable(ItemStack item): Áp dụng khả năng đặt được item xuống (return ItemStack)
TagManager: Hệ thống quản lý NBT tag của item:
- static getNMSTags(org.bukkit.inventory.ItemStack item): Lấy NBTTagCompound
- static assignTag(org.bukkit.inventory.ItemStack item, NBTTagCompound tag): Áp dụng tag vào item (return ItemStack)
Sắp tới sẽ có JavaDoc, nên ae cứ chờ đợi...
Lệnh in-game: (chuyên dùng để test plugin):
/nahkd-item reload: Reload API, lưu ý là nó không được hỗ trợ với một số plugin đang hook với nahkdItemAPI
/nahkd-item loreadd [Line]: Thêm lore để test (khộng hỗ trợ placeholder, nhưng phải dùng để có thể sử dụng lệnh spl)
/nahkd-item loreset <#> [Line]: Đặt lại lore để test(khộng hỗ trợ placeholder, nhưng phải dùng để có thể sử dụng lệnh spl)
/nahkd-item spl <#> [Line]: Đặt dòng lore đặc biệt. Lưu ý là dòng lore đấy phải có mới có tác dụng. (hỗ trợ placeholder)
/nahkd-item name [Name]: Đặt tên... (ko placeholder)
/nahkd-item template: Lấy item mẫu, được sử dụng để ép vào item khác. Kiểu như mẫu đó có lore đẹp thì có thể ép vào item khác.
/nahkd-item placeable: Đặt item đó dưới dạng 1 item có thể đặt xuống, và nó chỉ có thể áp dụng đối với các block trong túi đồ. Item đó sau khi đặt xuống sẽ ghi nhớ thông tin của cả item đó và khi đập ra sẽ có nó lại.
Cách sử dụng item mẫu:
- Lấy item mẫu (như ở phần trên)
- Đặt lore, name, special lore, myitems các thứ các thứ...
- Dự trữ mẫu đấy ở một chỗ bất kỳ (vì lý do bug đối với creative inventory)
- Lấy bản sao của mẫu đó và ép vào 1 item bất kỳ
Góp ý:
(vui lòng để góp ý ở mục thảo luận)
Hình ảnh:
nahkdItemAPI hỗ trợ PAPI trong việc hiển thị thông tin server
