mirror of
https://github.com/Shiewk/SModeration.git
synced 2026-04-29 06:34:17 +02:00
Fix hardcoded page switching strings; add German translations
This commit is contained in:
@@ -55,7 +55,8 @@ public final class SModerationPaper extends JavaPlugin {
|
||||
createMiniMessage(),
|
||||
"smoderation/translations/",
|
||||
new Locale[] {
|
||||
Locale.forLanguageTag("en-US")
|
||||
Locale.forLanguageTag("en-US"),
|
||||
Locale.forLanguageTag("de-DE")
|
||||
}
|
||||
);
|
||||
|
||||
|
||||
@@ -1,12 +1,17 @@
|
||||
package de.shiewk.smoderation.paper.inventory;
|
||||
|
||||
import net.kyori.adventure.text.Component;
|
||||
import io.papermc.paper.datacomponent.DataComponentTypes;
|
||||
import net.kyori.adventure.text.format.NamedTextColor;
|
||||
import net.kyori.adventure.text.format.TextColor;
|
||||
import org.bukkit.Material;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.event.inventory.InventoryClickEvent;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
import static net.kyori.adventure.text.Component.text;
|
||||
import static net.kyori.adventure.text.Component.translatable;
|
||||
|
||||
@SuppressWarnings("UnstableApiUsage") // Paper Data Component API
|
||||
public abstract class PageableCustomInventory implements CustomInventory {
|
||||
|
||||
protected final int prevSlot, nextSlot;
|
||||
@@ -49,21 +54,21 @@ public abstract class PageableCustomInventory implements CustomInventory {
|
||||
}
|
||||
}
|
||||
|
||||
public ItemStack createPreviousPageStack(){
|
||||
public ItemStack createPreviousPageStack(Player viewer){
|
||||
boolean allowed = page > 0;
|
||||
TextColor color = allowed ? NamedTextColor.GREEN : NamedTextColor.RED;
|
||||
int skip = allowed ? page : page+1;
|
||||
ItemStack stack = new ItemStack(allowed ? Material.GREEN_STAINED_GLASS_PANE : Material.RED_STAINED_GLASS_PANE);
|
||||
stack.editMeta(meta -> meta.displayName(applyFormatting(Component.text("Previous page (%s/%s)".formatted(skip, lastPage()+1)).color(color))));
|
||||
stack.setData(DataComponentTypes.ITEM_NAME, CustomInventory.renderComponent(viewer, applyFormatting(translatable("smod.inventory.previous", text(skip), text(lastPage()+1)).color(color))));
|
||||
return stack;
|
||||
}
|
||||
|
||||
public ItemStack createNextPageStack(){
|
||||
public ItemStack createNextPageStack(Player viewer){
|
||||
boolean allowed = page < lastPage();
|
||||
TextColor color = allowed ? NamedTextColor.GREEN : NamedTextColor.RED;
|
||||
int skip = allowed ? page+2 : page+1;
|
||||
ItemStack stack = new ItemStack(allowed ? Material.GREEN_STAINED_GLASS_PANE : Material.RED_STAINED_GLASS_PANE);
|
||||
stack.editMeta(meta -> meta.displayName(applyFormatting(Component.text("Next page (%s/%s)".formatted(skip, lastPage()+1)).color(color))));
|
||||
stack.setData(DataComponentTypes.ITEM_NAME, CustomInventory.renderComponent(viewer, applyFormatting(translatable("smod.inventory.next", text(skip), text(lastPage()+1)).color(color))));
|
||||
return stack;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -356,8 +356,8 @@ public class SModMenu extends PageableCustomInventory {
|
||||
for (int i = 45; i < 54; i++) {
|
||||
inventory.setItem(i, createEmptyStack());
|
||||
}
|
||||
inventory.setItem(prevSlot, createPreviousPageStack());
|
||||
inventory.setItem(nextSlot, createNextPageStack());
|
||||
inventory.setItem(prevSlot, createPreviousPageStack(player));
|
||||
inventory.setItem(nextSlot, createNextPageStack(player));
|
||||
inventory.setItem(47, createSearchItem());
|
||||
inventory.setItem(48, createTypeItem());
|
||||
inventory.setItem(50, createFilterItem());
|
||||
|
||||
Reference in New Issue
Block a user