Language Update

Added a module to import languages directly from POE.
Requires a POEapi.java class containing the token and project id
This commit is contained in:
James Peters 2020-11-03 18:14:32 +00:00
parent 3ee137ae35
commit c582ee583c
30 changed files with 1272 additions and 90 deletions

1
.gitignore vendored
View File

@ -7,3 +7,4 @@ target/
.DS_Store
ChestsPlusPlus.iml
*.iml
POEditorImport/src/main/java/com/jamesdpeters/poeditor/POEapi.java

View File

@ -131,6 +131,8 @@
<type>jar</type>
<scope>compile</scope>
</dependency>
</dependencies>
<!--Tell maven how to prepare and build our jar file from our source and dependancies-->

View File

@ -8,11 +8,28 @@ import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.Enumeration;
import java.util.List;
import java.util.Properties;
public class LanguageFile extends Properties {
List<String> additionalComments = new ArrayList<>();
public void addComment(String comment) {
this.additionalComments.add(comment);
}
@Override
public synchronized Enumeration<Object> keys() {
ArrayList<Object> result = Collections.list(super.keys());
result.sort(Comparator.comparing(Object::toString));
return Collections.enumeration(result);
}
public void store(File file) throws IOException {
store0(new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file), StandardCharsets.UTF_8)), false);
}
@ -24,13 +41,17 @@ public class LanguageFile extends Properties {
private void store0(BufferedWriter bw, boolean generated)
throws IOException {
if (generated) {
writeComments(bw, " Chests++ Language File (Version " + BuildConstants.VERSION + "))");
writeComments(bw, " Chests++ Language File (Version " + BuildConstants.VERSION + ")");
writeComments(bw,
" NOTE: This file gets replaced when the plugin launches! If you want to make modifications create a copy first!\n" +
" To create a new language file simply create a copy of this file and rename it to your desired choice for example 'en_US.properties'\n" +
" It should be located in the 'lang' folder\n" +
" Then in config.yml 'language-file: default' would be renamed to 'language-file: en_US'\n" +
" To help contribute to the plugin and provide new language files you can create a pull-request at https://github.com/JamesPeters98/ChestsPlusPlus or join our Discord https://discord.gg/YRs3mP5");
for (String additionalComment : additionalComments) {
writeComments(bw, additionalComment);
}
}
synchronized (this) {
@ -42,7 +63,7 @@ public class LanguageFile extends Properties {
* pass false to flag.
*/
val = saveConvert(val, false, false);
bw.write(key + "=" + val);
bw.write(key + " = " + val);
bw.newLine();
}
}

View File

@ -0,0 +1,82 @@
# Chests++ Language File (Version 2.3-Beta-2)
# NOTE: This file gets replaced when the plugin launches! If you want to make modifications create a copy first!
# To create a new language file simply create a copy of this file and rename it to your desired choice for example 'en_US.properties'
# It should be located in the 'lang' folder
# Then in config.yml 'language-file: default' would be renamed to 'language-file: en_US'
# To help contribute to the plugin and provide new language files you can create a pull-request at https://github.com/JamesPeters98/ChestsPlusPlus or join our Discord https://discord.gg/YRs3mP5
# --------
# Language: Czech
# Percentage Complete: 100.0%
# Updated: 2020-10-28T18:39:16+0000
ADDED_MEMBER = Úspěšně přidán hráč {player_name} do {storage_type} skupina {storage_identifier}
ADDED_MEMBER_TO_ALL = Úspěšně přidán hráč {player_name} do všech {storage_type} skupin
ALREADY_EXISTS_ANVIL = Už existuje\!
ALREADY_PART_OF_GROUP = {storage_type} je už součástí skupiny\!
CANNOT_RENAME_GROUP_ALREADY_EXISTS = Chyba přejmenování skupiny\! {storage_identifier} už existuje\!
CANNOT_RENAME_GROUP_DOESNT_EXIST = Chyba přejmenování skupiny\! {storage_identifier} neexistuje\!
CHEST_HAD_OVERFLOW = Itemy v truhle by se nevešly do ChestLinku\!
COMMAND_AUTOCRAFT_ADD = Vytvoří/přidá Crafting Table do AutoCraft skupiny
COMMAND_AUTOCRAFT_LIST = Vypíše všechny AutoCraft skupiny, které vlastníš
COMMAND_AUTOCRAFT_OPEN = Otevře workbench AutoCraft skupiny
COMMAND_AUTOCRAFT_REMOVE = Smaže AutoCraft skupinu a vyhodí všechny Crafting Tably
COMMAND_AUTOCRAFT_RENAME = Přejmenuje AutoCraft skupinu
COMMAND_AUTOCRAFT_SETPUBLIC = Nastaví AutoCraft skupinu tak, že je přístupná pro všechny
COMMAND_CHESTLINK_ADD = Vytvoří/přidá truhlu do ChestLink skupiny
COMMAND_CHESTLINK_LIST = Vypíše všechny ChestLinky, které vlastníš
COMMAND_CHESTLINK_MENU = Otevře ChestLink menu pro zobrazení všech skupin
COMMAND_CHESTLINK_OPEN = Otevře inventář ChestLink skupiny
COMMAND_CHESTLINK_REMOVE = Smaže ChestLink a vyhodí jeho inventář u tvých nohou
COMMAND_CHESTLINK_RENAME = Přejmenuje ChestLink
COMMAND_CHESTLINK_SETPUBLIC = Nastaví ChestLink tak, že je dostupný pro všechny
COMMAND_CHESTLINK_SORT = Nastaví možnost třídění pro daný ChestLink
COMMAND_HELP = Výpis příkazů a jejich použití
COMMAND_MEMBER = Přidá, odebere nebo vypíše členy skupiny
COMMAND_PARTY = Otevře party menu k dání přistupu ke všem ChestLinkům a AutoCrafterům pro ostatní hráče
CURRENT_MEMBERS = Momentální členové\: {player_list}
FOUND_UNLINKED_STORAGE = Tento {storage_type} nebyl připojen k tvému systému\! Byl přidán ke skupině {storage_identifier}\!
GROUP_DOESNT_EXIST = {storage_group} není validní {storage_type} skupina k odstranění\!
INVALID_AUTOCRAFTER = Neplatný AutoCrafter - musíš položit cedulku na jakoukoliv stranu Crafting Tablu a nesmí už být součástí skupiny\!
INVALID_CHESTLINK = Neplatný ChestLink - musíš dát cedulku na přední stranu truhly/bys měl zajistit, že je tam na ní dost místa\!
INVALID_ID = Neplatné {storage_type} ID\! Nesmí obsahovat dvojtečku, pokud nemyslíš skupinu jiného hráče, které jsi součástí
ITEM_FRAME_FILTER_ALL_TYPES = ItemFrame teď filtruje všechny typy tohoto itemu\! Např.\: Enchantované knihy
ITEM_FRAME_FILTER_DEFAULT = Item Frame je v základním režimu. Otáčej ho pro změnu režimu
ITEM_FRAME_FILTER_DENY = ItemFrame teď brání tomuto itemu přijetí do hopperu
ITEM_FRAME_FILTER_DENY_ALL_TYPES = ItemFrame teď brání všem typům tohoto itemu přijetí do hopperu\! Např.\: Enchantované knihy
LIST_MEMBERS_OF_GROUP = Členové {storage_type} skupina {storage_identifier}\: {player_list}
LIST_OF_AUTOCRAFTERS = List tvých AutoCraft stanic\:
LIST_OF_CHESTLINK = Seznam tvých ChestLinků\:
MUST_HOLD_SIGN = Musíš držet cedulku, abys to mohl udělat\!
MUST_LOOK_AT_CHEST = Musíš se dívat na truhlu kterou cheš ChestLinknout\!
MUST_LOOK_AT_CRAFTING_TABLE = Musíš se dívat na Crafting Table se kterým chceš automaticky craftit\!
NO = Ne
NO_ADDITIONAL_MEMBERS = Ve skupině {storage_identifier} nejsou žádní další členové
NO_PERMISSION = Na toto nemáš oprévnění\!
OWNER_HAS_TOO_MANY_CHESTS = Vlastník\: {player_name} dosáhl maximálního povoleného počtu skupin\!
PARTY_ACCEPT_INVITE = Klikni zde k přijmutí pozvánky
PARTY_ALREADY_EXISTS = Party {party_name} už existuje, nejde ji vytvořit\!
PARTY_CREATED = Party {party_name} byla vytvořena\!
PARTY_DELETE = Smazat party "{party_name}"?
PARTY_DELETED = Party {party_name} byla smazána\!
PARTY_DOESNT_EXIST = Party {party_name} neexistuje\!
PARTY_ENTER_NAME = Zadej jméno party
PARTY_INVITE = Hráč {player_name} tě pozval k připojení do {party_name}
PARTY_INVITE_OWNER = Pozval/a jsi hráče {player_name} k připojení do tvé party {party_name}
PARTY_INVITE_PLAYER = Vyber hráče k pozvání
PARTY_JOIN = Připojit se k party "{party_name}" hráče {player_name}
PARTY_JOINED = Připojil ses k party {party_name} hráče {player_name}
PARTY_LEAVE = Opustit party \: {party_name}?
PARTY_MEMBERS = Členové {party_name}
PARTY_NO_INVITE = Nemáš žádné čekající pozvánky do party
PARTY_OWNER = Vlastník
PARTY_REMOVE_PLAYER = Vyber hráče k odstranění
PARTY_REMOVE_PLAYER_DIALOG = Ostranit hráče "{player_name}" ?
REMOVED_GROUP = Úspěšně odstraněna skupina {storage_group} z tvých {storage_type}\!
REMOVED_MEMBER = Úspěšně odstraněn hráč {player_name} ze {storage_type} skupiny {storage_identifier}
REMOVE_MEMBER_FROM_ALL = Úspěšně odstraněn hráč {player_name} ze všech {storage_type} skupin
SET_PUBLICITY = Ve skupině {storage_identifier} nejsou žádní další členové
SORT = Třídící metoda pro {storage_identifier} byla nastavena na {sort_method}
STORAGE_ADDED = Úspěšně přidán {storage_type} do skupiny\: {storage_group} pro hráče {player_name}
STORAGE_REMOVED = Úspešně odstraněno {storage_type} ze skupiny\: {storage_group} pro {player_name}
UNABLE_TO_ADD_MEMBER_TO_ALL = Přidání hráče {player_name} do {storage_type} selhalo\!
UNABLE_TO_REMOVE_MEMBER = Nelze odstranit hráč {player_name} ze {storage_type}\! Nebyl už hráč odstraněn?
YES = Ano

View File

@ -0,0 +1,82 @@
# Chests++ Language File (Version 2.3-Beta-2)
# NOTE: This file gets replaced when the plugin launches! If you want to make modifications create a copy first!
# To create a new language file simply create a copy of this file and rename it to your desired choice for example 'en_US.properties'
# It should be located in the 'lang' folder
# Then in config.yml 'language-file: default' would be renamed to 'language-file: en_US'
# To help contribute to the plugin and provide new language files you can create a pull-request at https://github.com/JamesPeters98/ChestsPlusPlus or join our Discord https://discord.gg/YRs3mP5
# --------
# Language: Danish
# Percentage Complete: 69.0%
# Updated: 2020-10-09T15:31:26+0000
ADDED_MEMBER = Føjede {player_name} til {storage_type} gruppe {storage_identifier}
ADDED_MEMBER_TO_ALL = Føjede {player_name} til alle {storage_type} grupper
ALREADY_EXISTS_ANVIL =
ALREADY_PART_OF_GROUP = Denne {storage_type} er allerede en del af en gruppe\!
CANNOT_RENAME_GROUP_ALREADY_EXISTS = Fejl ved omdøbning af gruppe\! {storage_identifier} findes allerede\!
CANNOT_RENAME_GROUP_DOESNT_EXIST = Fejl ved Omdøbning af Gruppe\! {storage_identifier} Findes ikke\!
CHEST_HAD_OVERFLOW = Kist genstand passer ikke alle ind i ChestLink\!
COMMAND_AUTOCRAFT_ADD = Opret / tilføj en Crafting Table til en AutoCraft-gruppe
COMMAND_AUTOCRAFT_LIST = Viser alle AutoCraft-grupper, som du ejer\!
COMMAND_AUTOCRAFT_OPEN = Åbn arbejdsbænken i en AutoCraft-gruppe
COMMAND_AUTOCRAFT_REMOVE = Slet en AutoCraft-gruppe, og slip alle Crafting Tables\!
COMMAND_AUTOCRAFT_RENAME = Omdøb en AutoCraft-gruppe.
COMMAND_AUTOCRAFT_SETPUBLIC = Indstil en AutoCraft-gruppe, der skal være tilgængelig for alle.
COMMAND_CHESTLINK_ADD = Opret / tilføj en kiste til en ChestLink-gruppe
COMMAND_CHESTLINK_LIST = Viser alle ChestLinks, som du ejer
COMMAND_CHESTLINK_MENU = Åbn ChestLink-menuen for at få vist alle grupper\!
COMMAND_CHESTLINK_OPEN = Åbn beholdningen af en ChestLink-gruppe
COMMAND_CHESTLINK_REMOVE = Slet et ChestLink, og drop dets beholdning ved dine fødder\!
COMMAND_CHESTLINK_RENAME = omdøb en ChestLink
COMMAND_CHESTLINK_SETPUBLIC = Indstil en ChestLink, så den er tilgængelig for alle.
COMMAND_CHESTLINK_SORT = Indstil sorteringsindstillingen for den givne ChestLink.
COMMAND_HELP = Liste over kommandoer og deres anvendelser\!
COMMAND_MEMBER = Tilføj, fjern eller liste medlemmer af en gruppe
COMMAND_PARTY =
CURRENT_MEMBERS = Nuværende medlemmer\: {player_list}
FOUND_UNLINKED_STORAGE = Denne {storage_type} var ikke knyttet til dit system\! Det er blevet tilføjet under gruppen {storage_identifier}\!
GROUP_DOESNT_EXIST = {storage_group} er ikke en godkent {storage_type} gruppe, der skal fjernes
INVALID_AUTOCRAFTER = Ugyldig AutoCrafter - Du skal placere et tegn på en hvilken som helst side af et Crafting Table, og det må ikke allerede være adskilt fra en gruppe\!
INVALID_CHESTLINK = Invalid ChestLink - Du skal placere et skilt på forsiden af et kiste / du skal sikre dig, at der er plads til et tegn foran på brystet\!
INVALID_ID = Ugyldigt {storage_type} ID\! Må ikke indeholde et kolon '\:' medmindre du henviser til en anden spillergruppe, som du er medlem af
ITEM_FRAME_FILTER_ALL_TYPES = ItemFrame filtrerer nu alle typer af denne vare\! fx fortryllede bøger.
ITEM_FRAME_FILTER_DEFAULT = ItemFrame er i standard filtrering tilstand. Drej elementramme for at skifte tilstand\!
ITEM_FRAME_FILTER_DENY = ItemFrame forhindrer nu dette element i at blive accepteret i tragt\!
ITEM_FRAME_FILTER_DENY_ALL_TYPES = ItemFrame forhindrer nu alle typer af denne vare i at blive accepteret i tragt\! fx fortryllede bøger.
LIST_MEMBERS_OF_GROUP = Medlemmer af {storage_type} group {storage_identifier}\: {player_list}\:
LIST_OF_AUTOCRAFTERS = Liste over dine AutoCraft-stationer\:
LIST_OF_CHESTLINK = Liste over dine ChestLinks\:
MUST_HOLD_SIGN = Du skal holde et skilt for at gøre det\!
MUST_LOOK_AT_CHEST = Du skal se på det kiste du vil ChestLink\!
MUST_LOOK_AT_CRAFTING_TABLE = Du skal se på det Crafting Table, du vil AutoCraft med\!
NO =
NO_ADDITIONAL_MEMBERS = Der er ingen yderligere medlemmer i gruppen\: {storage_identifier}
NO_PERMISSION = Du har ikke tilladelse til det\!
OWNER_HAS_TOO_MANY_CHESTS = Ejer\: {player_name} Har Nået grænsen for Tilladte grupper\!
PARTY_ACCEPT_INVITE =
PARTY_ALREADY_EXISTS =
PARTY_CREATED =
PARTY_DELETE =
PARTY_DELETED =
PARTY_DOESNT_EXIST =
PARTY_ENTER_NAME =
PARTY_INVITE =
PARTY_INVITE_OWNER =
PARTY_INVITE_PLAYER =
PARTY_JOIN =
PARTY_JOINED =
PARTY_LEAVE =
PARTY_MEMBERS =
PARTY_NO_INVITE =
PARTY_OWNER =
PARTY_REMOVE_PLAYER =
PARTY_REMOVE_PLAYER_DIALOG =
REMOVED_GROUP = Gruppen {storage_group} er fjernet fra dine {storage_type}'s\!
REMOVED_MEMBER = Fjernet {player_name} fra {storage_type} gruppe {storage_identifier}
REMOVE_MEMBER_FROM_ALL = Fjernet {player_name} fra alle {storage_type} grupper
SET_PUBLICITY = Der er ingen yderligere medlemmer i gruppen\: {storage_identifier}
SORT = Sorteringsmetode for {storage_identifier} er indstillet til {sort_method}
STORAGE_ADDED = Føjede {storage_type} til gruppen\: {storage_group} for {player_name}
STORAGE_REMOVED = Fjernet {storage_type} Fra gruppe\: {storage_group} af {player_name}
UNABLE_TO_ADD_MEMBER_TO_ALL = Kan ikke tilføje Spiller {player_name} til {storage_type}\!
UNABLE_TO_REMOVE_MEMBER = Kunne ikke fjerne spiller {player_name} fra {storage_type}\! er de allerede fjernet?
YES =

View File

@ -1,9 +1,13 @@
# Chests++ Sprachdatei - DE_de
# Achtung: Diese Datei wird ersetzt, wenn das Plug-in startet! Wenn du es anpassen möchtest, erstelle vorher eine Kopie!
# Um eine neue Sprachdatei zu erstellen, mach eine Kopie von dieser Datei und benenne sie nach deiner Wahl, etwa 'en_US.properties'
# Die Sprachdatei sollte sich anschließend im 'lang'-Ordner befinden
# Dann in config.yml würde 'language-file: default' in z.B 'language-file: en_US' umbennannt werden
# Um der Entwicklung des plug-ins beizutragen und neue Sprachdateien bereitzustellen kannst du einen pull-request auf https://github.com/JamesPeters98/ChestsPlusPlus erstellen oder unserem Discord-Server beitreten: https://discord.gg/YRs3mP5
# Chests++ Language File (Version 2.3-Beta-2)
# NOTE: This file gets replaced when the plugin launches! If you want to make modifications create a copy first!
# To create a new language file simply create a copy of this file and rename it to your desired choice for example 'en_US.properties'
# It should be located in the 'lang' folder
# Then in config.yml 'language-file: default' would be renamed to 'language-file: en_US'
# To help contribute to the plugin and provide new language files you can create a pull-request at https://github.com/JamesPeters98/ChestsPlusPlus or join our Discord https://discord.gg/YRs3mP5
# --------
# Language: German
# Percentage Complete: 100.0%
# Updated: 2020-10-27T13:23:52+0000
ADDED_MEMBER = Spieler {player_name} erfolgreich zur {storage_type}-Gruppe {storage_identifier} hinzugefügt
ADDED_MEMBER_TO_ALL = {player_name} erfolgreich zu allen {storage_type}-Gruppen hinzugefügt
ALREADY_EXISTS_ANVIL = Existiert bereits\!
@ -66,13 +70,13 @@ PARTY_NO_INVITE = Du hast keine ausstehenden Partyeinladungen
PARTY_OWNER = Eigentümer
PARTY_REMOVE_PLAYER = Wähle einen zu Entfernenden Spieler aus
PARTY_REMOVE_PLAYER_DIALOG = Spieler "{player_name}" entfernen?
REMOVE_MEMBER_FROM_ALL = Spieler {player_name} erfolgreich von allen {storage_type}-Gruppen entfernt
REMOVED_GROUP = Die Gruppe {storage_group} wurde erfolgeich von deinen {storage_type}s entfernt\!
REMOVED_MEMBER = Spieler {player_name} erfolgreich von {storage_type}-Gruppe {storage_identifier} entfernt
REMOVE_MEMBER_FROM_ALL = Spieler {player_name} erfolgreich von allen {storage_type}-Gruppen entfernt
SET_PUBLICITY = Es gibt keine weiteren Spieler in der Gruppe {storage_identifier}
SORT = Sortiermethode für {storage_identifier} wurde auf {sort_method} gesetzt
STORAGE_ADDED = {storage_type} erfolgreich zu Gruppe\: {storage_group} für {player_name} hinzugefügt
STORAGE_REMOVED = {storage_type} wurde für {player_name} erfolgreich von der Gruppe {storage_group} entfernt
UNABLE_TO_ADD_MEMBER_TO_ALL = Kann Spieler {player_name} nicht zu {storage_type} hinzufügen\!
UNABLE_TO_REMOVE_MEMBER = Kann den Spieler {player_name} nicht von {storage_type} entfernen\! Wurde er bereits entfernt?
YES = Ja
YES = Ja

View File

@ -0,0 +1,82 @@
# Chests++ Language File (Version 2.3-Beta-2)
# NOTE: This file gets replaced when the plugin launches! If you want to make modifications create a copy first!
# To create a new language file simply create a copy of this file and rename it to your desired choice for example 'en_US.properties'
# It should be located in the 'lang' folder
# Then in config.yml 'language-file: default' would be renamed to 'language-file: en_US'
# To help contribute to the plugin and provide new language files you can create a pull-request at https://github.com/JamesPeters98/ChestsPlusPlus or join our Discord https://discord.gg/YRs3mP5
# --------
# Language: English
# Percentage Complete: 100.0%
# Updated: 2020-10-27T13:21:16+0000
ADDED_MEMBER = Successfully added {player_name} to {storage_type} group {storage_identifier}
ADDED_MEMBER_TO_ALL = Successfully added {player_name} to all {storage_type} groups
ALREADY_EXISTS_ANVIL = Already exists\!
ALREADY_PART_OF_GROUP = This {storage_type} is already a part of a group\!
CANNOT_RENAME_GROUP_ALREADY_EXISTS = Error renaming group\! {storage_identifier} already exists\!
CANNOT_RENAME_GROUP_DOESNT_EXIST = Error renaming group\! {storage_identifier} doesn't exist\!
CHEST_HAD_OVERFLOW = Chest item's wouldn't all fit into ChestLink\!
COMMAND_AUTOCRAFT_ADD = Create/add a Crafting Table to an AutoCraft group
COMMAND_AUTOCRAFT_LIST = Lists all AutoCraft groups that you own\!
COMMAND_AUTOCRAFT_OPEN = Open the workbench of an AutoCraft group
COMMAND_AUTOCRAFT_REMOVE = Delete an AutoCraft group and drop all the Crafting Tables\!
COMMAND_AUTOCRAFT_RENAME = Rename an AutoCraft group.
COMMAND_AUTOCRAFT_SETPUBLIC = Set an AutoCraft group to be accessible by anyone.
COMMAND_CHESTLINK_ADD = Create/add a chest to a ChestLink group
COMMAND_CHESTLINK_LIST = Lists all ChestLinks that you own\!
COMMAND_CHESTLINK_MENU = Open the ChestLink menu to display all groups\!
COMMAND_CHESTLINK_OPEN = Open the inventory of a ChestLink group
COMMAND_CHESTLINK_REMOVE = Delete a ChestLink and drop its inventory at your feet\!
COMMAND_CHESTLINK_RENAME = Rename a ChestLink.
COMMAND_CHESTLINK_SETPUBLIC = Set a ChestLink to be accessible by anyone.
COMMAND_CHESTLINK_SORT = Set the sorting option for the given ChestLink.
COMMAND_HELP = List of commands and their uses\!
COMMAND_MEMBER = Add, remove or list members of a group
COMMAND_PARTY = Open the party menu, to allow other players to access all your Chests and AutoCrafters.
CURRENT_MEMBERS = Current Members\: {player_list}
FOUND_UNLINKED_STORAGE = This {storage_type} wasn't linked to your system\! It has been added under the {storage_identifier} group\!
GROUP_DOESNT_EXIST = {storage_group} isn't a valid {storage_type} group to remove\!
INVALID_AUTOCRAFTER = Invalid AutoCrafter - You must place a sign on any side of a Crafting Table, and it must not already by apart of a group\!
INVALID_CHESTLINK = Invalid ChestLink - You must place a sign on the front of a chest / you should ensure there is space for a sign on front of the chest\!
INVALID_ID = Invalid {storage_type} ID\! Must not contain a colon '\:' unless you are referencing another players group that you are a member of
ITEM_FRAME_FILTER_ALL_TYPES = ItemFrame now filters all types of this item\! e.g Enchanted Books.
ITEM_FRAME_FILTER_DEFAULT = ItemFrame is in default filtering mode. Rotate Item Frame to change mode\!
ITEM_FRAME_FILTER_DENY = ItemFrame now prevents this item from being accepted in the hopper\!
ITEM_FRAME_FILTER_DENY_ALL_TYPES = ItemFrame now prevents all types of this item from being accepted in the hopper\! e.g Enchanted Books.
LIST_MEMBERS_OF_GROUP = Members of {storage_type} group {storage_identifier}\: {player_list}
LIST_OF_AUTOCRAFTERS = List of your AutoCraft Stations\:
LIST_OF_CHESTLINK = List of your ChestLinks\:
MUST_HOLD_SIGN = You must be holding a sign to do that\!
MUST_LOOK_AT_CHEST = You must be looking at the chest you want to ChestLink\!
MUST_LOOK_AT_CRAFTING_TABLE = You must be looking at the Crafting Table you want to AutoCraft with\!
NO = No
NO_ADDITIONAL_MEMBERS = There are no additional members in the group\: {storage_identifier}
NO_PERMISSION = You don't have permission to do that\!
OWNER_HAS_TOO_MANY_CHESTS = Owner\: {player_name} has reached the limit of groups allowed\!
PARTY_ACCEPT_INVITE = Click Here to accept the invite\!
PARTY_ALREADY_EXISTS = Party {party_name} already exists, unable to create it\!
PARTY_CREATED = Party {party_name} has been created\!
PARTY_DELETE = Delete party "{party_name}"?
PARTY_DELETED = Party {party_name} has been deleted\!
PARTY_DOESNT_EXIST = The party {party_name} doesn't exist\!
PARTY_ENTER_NAME = Enter a Party Name
PARTY_INVITE = You have been invited to join {player_name}''s party\: {party_name}
PARTY_INVITE_OWNER = You have invited {player_name} to join your party\: {party_name}
PARTY_INVITE_PLAYER = Choose a player to invite\!
PARTY_JOIN = Join {player_name}'s party "{party_name}"
PARTY_JOINED = You have joined {player_name}''s party\: {party_name}
PARTY_LEAVE = Leave party\: {party_name}?
PARTY_MEMBERS = {party_name} members
PARTY_NO_INVITE = You currently have no pending party invites\!
PARTY_OWNER = Owner
PARTY_REMOVE_PLAYER = Choose a player to remove\!
PARTY_REMOVE_PLAYER_DIALOG = Remove player "{player_name}" ?
REMOVED_GROUP = Successfully removed group {storage_group} from your {storage_type}'s\!
REMOVED_MEMBER = Successfully removed {player_name} from {storage_type} group {storage_identifier}
REMOVE_MEMBER_FROM_ALL = Successfully removed {player_name} from all {storage_type} groups
SET_PUBLICITY = There are no additional members in the group\: {storage_identifier}
SORT = Sort method for {storage_identifier} has been set to {sort_method}
STORAGE_ADDED = Successfully added {storage_type} to group\: {storage_group} for {player_name}
STORAGE_REMOVED = Successfully removed {storage_type} from group\: {storage_group} for {player_name}
UNABLE_TO_ADD_MEMBER_TO_ALL = Unable to add player {player_name} to {storage_type}\!
UNABLE_TO_REMOVE_MEMBER = Unable to remove player {player_name} from {storage_type}\! Were they already removed?
YES = Yes

View File

@ -1,56 +1,82 @@
# Chest++ Archivo de Idioma
# NOTA: Este archivo se remplaza cuando se inicia el plugin! Si quieres hacer modificaciones crea una copia primero!
# Para crear un nuevo archivo de idioma simplemente crea una copia de este archivo y renombralo a la opcion que desees, por ejemplo 'en_US.properties'
# Debe ser colocado en la carpeta 'lang'
# Luego en config.yml 'language-file: default' debe ser renombrado a 'language-file: en_US'
# Para ayudar a contribuir al plugin y proveer nuevos archivos de idioma puede crear un "pull-request" en https://github.com/JamesPeters98/ChestsPlusPlus o unete a nuestro servidor de discord https://discord.gg/YRs3mP5
ADDED_MEMBER=Se ha añadido correctamente al jugador {player_name} al grupo {storage_type} {storage_identifier}
ADDED_MEMBER_TO_ALL=Se ha añadido correctamente al jugador {player_name} a todos los grupos de {storage_type}
ALREADY_PART_OF_GROUP=¡Este {storage_type} ya es parte de un grupo\!
CANNOT_RENAME_GROUP_ALREADY_EXISTS=¡Error al renombrar el grupo\! ¡{storage_identifier} ya existe\!
CANNOT_RENAME_GROUP_DOESNT_EXIST=¡Error al renombrar el grupo\! ¡{storage_identifier} no existe\!
CHEST_HAD_OVERFLOW=¡Los objetos del cofre podrían no entrar en el ChestLink\!
COMMAND_AUTOCRAFT_ADD=Crea/agrega una mesa de trabajo a un grupo de AutoCraft
COMMAND_AUTOCRAFT_LIST=¡Lista de todos los grupos AutoCraft que posees\!
COMMAND_AUTOCRAFT_OPEN=Abre la mesa de trabajo de un grupo de AutoCraft.
COMMAND_AUTOCRAFT_REMOVE=Elimina un grupo de AutoCraft y suelta todas las mesas de trabajo\!
COMMAND_AUTOCRAFT_RENAME=Renombra un grupo de AutoCraft
COMMAND_AUTOCRAFT_SETPUBLIC=Establece un grupo de AutoCraft para que sea accesibles para todos.
COMMAND_CHESTLINK_ADD=Crea/agrega un cofre a un grupo de ChestLink
COMMAND_CHESTLINK_LIST=¡Lista de todos los ChestLinks que posees\!
COMMAND_CHESTLINK_MENU=¡Abre el menú de ChestLink para mostrar todos los grupos\!
COMMAND_CHESTLINK_OPEN=Abre el inventario de un grupo de ChestLink.
COMMAND_CHESTLINK_REMOVE=¡Elimina un ChestLink y suelta su inventario\!
COMMAND_CHESTLINK_RENAME=Renombra un ChestLink
COMMAND_CHESTLINK_SETPUBLIC=Configura un ChestLink para que sea accesible para todos.
COMMAND_CHESTLINK_SORT=Establece un modo de ordenación para un ChestLink.
COMMAND_HELP=¡Lista de comandos y sus usos\!
COMMAND_MEMBER=Agrega, elimina o muestra una lista de miembros de un grupo.
CURRENT_MEMBERS=Miembros actuales\: {player_list}
FOUND_UNLINKED_STORAGE=Este {storage_type} no estaba enlazado a tu sistema\! Ha sido agregado al grupo {storage_identifier}
GROUP_DOESNT_EXIST=¡{storage_group} no es un grupo válido {storage_type} para eliminar\!
INVALID_AUTOCRAFTER=AutoCrafter inválido - ¡Debes colocar un cartel en cualquier lado de la mesa de trabajo, no debe estar separado de un grupo\!
INVALID_CHESTLINK=ChestLink inválido - ¡Debes colocar un cartel al frente del cofre o asegúrate de que hay un espacio frente al cofre\!
INVALID_ID=¡ID de {storage_type} no válido\! No puede contener dos puntos '\:' a menos que te refieras a otro grupo de jugadores donde eres miembro
ITEM_FRAME_FILTER_ALL_TYPES=¡El marco ahora filtra todos los tipos de este objeto\! Ej. Libros Encantados.
ITEM_FRAME_FILTER_DEFAULT=El filtro del marco esta por defecto. ¡Rota el objeto del marco para cambiarlo\!
ITEM_FRAME_FILTER_DENY=¡El marco ahora evita que este objeto sea aceptado en al tolva\!
ITEM_FRAME_FILTER_DENY_ALL_TYPES=¡El marco ahora evita que todos los objetos de este tipo sean aceptados en la tolva\! Ej. Libros Encantados
LIST_MEMBERS_OF_GROUP=Los miembros de {storage_type} del grupo {storage_identifier}\: {player_list}
LIST_OF_AUTOCRAFTERS=Lista de tus estaciones de AutoCraft
LIST_OF_CHESTLINK=Lista de tus ChestLinks\:
MUST_HOLD_SIGN=¡Debes tener un cartel en la mano para hacer esto\!
MUST_LOOK_AT_CHEST=¡Debes mirar al cofre que deseas para crear un ChestLink\!
MUST_LOOK_AT_CRAFTING_TABLE=¡Debes estar mirando a una mesa de trabajo para crear un AutoCraft\!
NO_ADDITIONAL_MEMBERS=No hay miembros adicionales en el grupo\: {storage_identifier}
NO_PERMISSION=¡No tienes permisos para hacer esto\!
OWNER_HAS_TOO_MANY_CHESTS=¡El dueño {player_name} ha alcanzado el límite de grupos permitidos\!
REMOVE_MEMBER_FROM_ALL=Se ha eliminado correctamente a {player_name} de todos los grupos de {storage_type}
REMOVED_GROUP=Se ha eliminado correctamente el grupo {storage_group} de tus {storage_type}\!
REMOVED_MEMBER=Se ha eliminado correctamente a {player_name} del grupo {storage_type}\: {storage_identifier}
SET_PUBLICITY=No hay miembros adicionales en el grupo\: {storage_identifier}
SORT=El modo de ordenación para {storage_identifier} se ha cambiado a {sort_method}
STORAGE_ADDED=Se ha añadido correctamente {storage_type} al grupo\: {storage_group} por {player_name}
STORAGE_REMOVED=Eliminado correctamente {storage_type} del grupo\: {storage_group} por {player_name}
UNABLE_TO_ADD_MEMBER_TO_ALL=¡No se puede añadir al jugador {player_name} a {storage_type}\!
UNABLE_TO_REMOVE_MEMBER=¡No se puede eliminar al jugador {player_name} de {storage_type}\! ¿Puede que ya lo hayas eliminado?
# Chests++ Language File (Version 2.3-Beta-2)
# NOTE: This file gets replaced when the plugin launches! If you want to make modifications create a copy first!
# To create a new language file simply create a copy of this file and rename it to your desired choice for example 'en_US.properties'
# It should be located in the 'lang' folder
# Then in config.yml 'language-file: default' would be renamed to 'language-file: en_US'
# To help contribute to the plugin and provide new language files you can create a pull-request at https://github.com/JamesPeters98/ChestsPlusPlus or join our Discord https://discord.gg/YRs3mP5
# --------
# Language: Spanish
# Percentage Complete: 69.0%
# Updated: 2020-08-20T16:22:31+0000
ADDED_MEMBER = Se ha añadido correctamente al jugador {player_name} al grupo {storage_type} {storage_identifier}
ADDED_MEMBER_TO_ALL = Se ha añadido correctamente al jugador {player_name} a todos los grupos de {storage_type}
ALREADY_EXISTS_ANVIL =
ALREADY_PART_OF_GROUP = ¡Este {storage_type} ya es parte de un grupo\!
CANNOT_RENAME_GROUP_ALREADY_EXISTS = ¡Error al renombrar el grupo\! ¡{storage_identifier} ya existe\!
CANNOT_RENAME_GROUP_DOESNT_EXIST = ¡Error al renombrar el grupo\! ¡{storage_identifier} no existe\!
CHEST_HAD_OVERFLOW = ¡Los objetos del cofre podrían no entrar en el ChestLink\!
COMMAND_AUTOCRAFT_ADD = Crea/agrega una mesa de trabajo a un grupo de AutoCraft
COMMAND_AUTOCRAFT_LIST = ¡Lista de todos los grupos AutoCraft que posees\!
COMMAND_AUTOCRAFT_OPEN = Abre la mesa de trabajo de un grupo de AutoCraft.
COMMAND_AUTOCRAFT_REMOVE = Elimina un grupo de AutoCraft y suelta todas las mesas de trabajo\!
COMMAND_AUTOCRAFT_RENAME = Renombra un grupo de AutoCraft
COMMAND_AUTOCRAFT_SETPUBLIC = Establece un grupo de AutoCraft para que sea accesibles para todos.
COMMAND_CHESTLINK_ADD = Crea/agrega un cofre a un grupo de ChestLink
COMMAND_CHESTLINK_LIST = ¡Lista de todos los ChestLinks que posees\!
COMMAND_CHESTLINK_MENU = ¡Abre el menú de ChestLink para mostrar todos los grupos\!
COMMAND_CHESTLINK_OPEN = Abre el inventario de un grupo de ChestLink.
COMMAND_CHESTLINK_REMOVE = ¡Elimina un ChestLink y suelta su inventario\!
COMMAND_CHESTLINK_RENAME = Renombra un ChestLink
COMMAND_CHESTLINK_SETPUBLIC = Configura un ChestLink para que sea accesible para todos.
COMMAND_CHESTLINK_SORT = Establece un modo de ordenación para un ChestLink.
COMMAND_HELP = ¡Lista de comandos y sus usos\!
COMMAND_MEMBER = Agrega, elimina o muestra una lista de miembros de un grupo.
COMMAND_PARTY =
CURRENT_MEMBERS = Miembros actuales\: {player_list}
FOUND_UNLINKED_STORAGE = Este {storage_type} no estaba enlazado a tu sistema\! Ha sido agregado al grupo {storage_identifier}
GROUP_DOESNT_EXIST = ¡{storage_group} no es un grupo válido {storage_type} para eliminar\!
INVALID_AUTOCRAFTER = AutoCrafter inválido - ¡Debes colocar un cartel en cualquier lado de la mesa de trabajo, no debe estar separado de un grupo\!
INVALID_CHESTLINK = ChestLink inválido - ¡Debes colocar un cartel al frente del cofre o asegúrate de que hay un espacio frente al cofre\!
INVALID_ID = ¡ID de {storage_type} no válido\! No puede contener dos puntos '\:' a menos que te refieras a otro grupo de jugadores donde eres miembro
ITEM_FRAME_FILTER_ALL_TYPES = ¡El marco ahora filtra todos los tipos de este objeto\! Ej. Libros Encantados.
ITEM_FRAME_FILTER_DEFAULT = El filtro del marco esta por defecto. ¡Rota el objeto del marco para cambiarlo\!
ITEM_FRAME_FILTER_DENY = ¡El marco ahora evita que este objeto sea aceptado en al tolva\!
ITEM_FRAME_FILTER_DENY_ALL_TYPES = ¡El marco ahora evita que todos los objetos de este tipo sean aceptados en la tolva\! Ej. Libros Encantados
LIST_MEMBERS_OF_GROUP = Los miembros de {storage_type} del grupo {storage_identifier}\: {player_list}
LIST_OF_AUTOCRAFTERS = Lista de tus estaciones de AutoCraft
LIST_OF_CHESTLINK = Lista de tus ChestLinks\:
MUST_HOLD_SIGN = ¡Debes tener un cartel en la mano para hacer esto\!
MUST_LOOK_AT_CHEST = ¡Debes mirar al cofre que deseas para crear un ChestLink\!
MUST_LOOK_AT_CRAFTING_TABLE = ¡Debes estar mirando a una mesa de trabajo para crear un AutoCraft\!
NO =
NO_ADDITIONAL_MEMBERS = No hay miembros adicionales en el grupo\: {storage_identifier}
NO_PERMISSION = ¡No tienes permisos para hacer esto\!
OWNER_HAS_TOO_MANY_CHESTS = ¡El dueño {player_name} ha alcanzado el límite de grupos permitidos\!
PARTY_ACCEPT_INVITE =
PARTY_ALREADY_EXISTS =
PARTY_CREATED =
PARTY_DELETE =
PARTY_DELETED =
PARTY_DOESNT_EXIST =
PARTY_ENTER_NAME =
PARTY_INVITE =
PARTY_INVITE_OWNER =
PARTY_INVITE_PLAYER =
PARTY_JOIN =
PARTY_JOINED =
PARTY_LEAVE =
PARTY_MEMBERS =
PARTY_NO_INVITE =
PARTY_OWNER =
PARTY_REMOVE_PLAYER =
PARTY_REMOVE_PLAYER_DIALOG =
REMOVED_GROUP = Se ha eliminado correctamente el grupo {storage_group} de tus {storage_type}\!
REMOVED_MEMBER = Se ha eliminado correctamente a {player_name} del grupo {storage_type}\: {storage_identifier}
REMOVE_MEMBER_FROM_ALL = Se ha eliminado correctamente a {player_name} de todos los grupos de {storage_type}
SET_PUBLICITY = No hay miembros adicionales en el grupo\: {storage_identifier}
SORT = El modo de ordenación para {storage_identifier} se ha cambiado a {sort_method}
STORAGE_ADDED = Se ha añadido correctamente {storage_type} al grupo\: {storage_group} por {player_name}
STORAGE_REMOVED = Eliminado correctamente {storage_type} del grupo\: {storage_group} por {player_name}
UNABLE_TO_ADD_MEMBER_TO_ALL = ¡No se puede añadir al jugador {player_name} a {storage_type}\!
UNABLE_TO_REMOVE_MEMBER = ¡No se puede eliminar al jugador {player_name} de {storage_type}\! ¿Puede que ya lo hayas eliminado?
YES =

View File

@ -1,9 +1,13 @@
# Chests++ Language File (Version 2.3-Beta-2))
# Chests++ Language File (Version 2.3-Beta-2)
# NOTE: This file gets replaced when the plugin launches! If you want to make modifications create a copy first!
# To create a new language file simply create a copy of this file and rename it to your desired choice for example 'en_US.properties'
# It should be located in the 'lang' folder
# Then in config.yml 'language-file: default' would be renamed to 'language-file: en_US'
# To help contribute to the plugin and provide new language files you can create a pull-request at https://github.com/JamesPeters98/ChestsPlusPlus or join our Discord https://discord.gg/YRs3mP5
# --------
# Language: French
# Percentage Complete: 100.0%
# Updated: 2020-10-27T14:40:10+0000
ADDED_MEMBER = {player_name} a bien été ajouté au groupe {storage_type} {storage_identifier}
ADDED_MEMBER_TO_ALL = {player_name} a bien été ajouté à tous les groupes {storage_type}
ALREADY_EXISTS_ANVIL = Existe déjà\!
@ -66,13 +70,13 @@ PARTY_NO_INVITE = Vous n'avez actuellement aucune invitation en attente\!
PARTY_OWNER = Propriétaire
PARTY_REMOVE_PLAYER = Choisissez un joueur à supprimer\!
PARTY_REMOVE_PLAYER_DIALOG = Supprimer le joueur "{player_name}"?
REMOVE_MEMBER_FROM_ALL = {player_name} a bien été supprimé de tous les groupes {storage_type}
REMOVED_GROUP = Le groupe {storage_group} a bien été supprimé de vos {storage_type}\!
REMOVED_MEMBER = {player_name} a bien été supprimé du groupe {storage_type} {storage_identifier}
REMOVE_MEMBER_FROM_ALL = {player_name} a bien été supprimé de tous les groupes {storage_type}
SET_PUBLICITY = Il n'y a aucun membre supplémentaire dans le groupe\: {storage_identifier}
SORT = La méthode de tri pour {storage_identifier} a été définie sur {sort_method}
STORAGE_ADDED = {storage_type} a bien été ajouté au groupe\: {storage_group} pour {player_name}
STORAGE_REMOVED = {storage_type} a bien été supprimé du groupe\: {storage_group} pour {player_name}
UNABLE_TO_ADD_MEMBER_TO_ALL = Impossible d'ajouter le joueur {player_name} à {storage_type}\!
UNABLE_TO_REMOVE_MEMBER = Impossible de supprimer le joueur {player_name} de {storage_type}\! Étaientt-ils déjà supprimés
YES = Oui
YES = Oui

View File

@ -1,5 +1,13 @@
# Chests++ Magyar - hu_HU
# Megjegyzés: Ez a fájl felülíródik minden alkalommal amikor a plugin elindul. Ha módosítani szeretnél a fájl tartalmán csinálj egy másolatot egy másik névvel!
# Chests++ Language File (Version 2.3-Beta-2)
# NOTE: This file gets replaced when the plugin launches! If you want to make modifications create a copy first!
# To create a new language file simply create a copy of this file and rename it to your desired choice for example 'en_US.properties'
# It should be located in the 'lang' folder
# Then in config.yml 'language-file: default' would be renamed to 'language-file: en_US'
# To help contribute to the plugin and provide new language files you can create a pull-request at https://github.com/JamesPeters98/ChestsPlusPlus or join our Discord https://discord.gg/YRs3mP5
# --------
# Language: Hungarian
# Percentage Complete: 100.0%
# Updated: 2020-10-28T14:17:26+0000
ADDED_MEMBER = {player_name} sikeresen hozzáadva a/az {storage_type} tipusú {storage_identifier} nevű csoporthoz.
ADDED_MEMBER_TO_ALL = {player_name} sikeresen hozzáadva az összes {storage_type} tipusú csoporthoz\!
ALREADY_EXISTS_ANVIL = Már létezik\!
@ -23,6 +31,7 @@ COMMAND_CHESTLINK_SETPUBLIC = Mindenki számára elérhetővé teszi a ChestLink
COMMAND_CHESTLINK_SORT = Beálítja a szelektáló opciót a megadott ChestLink csoportodnak.
COMMAND_HELP = A Parancsok és a leírásuk kilistázása.
COMMAND_MEMBER = Hozzáad, elvesz vagy kilistázza egy csoport tagjait.
COMMAND_PARTY = Nyisd meg a party menüt hogy engedélyezd más játékosoknak hogy hozzáférjenek a ládáidhoz és AutoCrafter állomásaidhoz.
CURRENT_MEMBERS = Jelenlegi tagok\: {player_list}
FOUND_UNLINKED_STORAGE = Ez a {storage_type} tipusú elem nem volt regisztrálva. Regisztrálva lett a {storage_identifier} nevű csoporthoz\!
GROUP_DOESNT_EXIST = {storage_group} nem egy létező {storage_type}. Nem lehet eltávolítani\!
@ -61,13 +70,13 @@ PARTY_NO_INVITE = Jelenleg nincs függőben lévő party meghívásod\!
PARTY_OWNER = Tulajdonos
PARTY_REMOVE_PLAYER = Válassz ki egy eltávolítandó játékost\!
PARTY_REMOVE_PLAYER_DIALOG = {player_name} játékos eltávolítása?
REMOVE_MEMBER_FROM_ALL = {player_name} sikeresen eltávolítva minden {storage_type} tipusú csoportból.
REMOVED_GROUP = {storage_type} tipusú {storage_identifier} nevű csoportból sikeresen eltávolítva\!
REMOVED_MEMBER = {player_name} sikeresen eltávolítva a/az {storage_type} tipusú {storage_identifier} nevű csoportból.
REMOVE_MEMBER_FROM_ALL = {player_name} sikeresen eltávolítva minden {storage_type} tipusú csoportból.
SET_PUBLICITY = Nincs több tagja az adott csoportnak\: {storage_identifier}
SORT = Szelektálási forma a {storage_identifier} csoport számára beállítva\: {sort_method}
STORAGE_ADDED = {player_name} sikeresen hozzáadva a/az {storage_type} tipusú {storage_group} nevű csoporthoz.
STORAGE_REMOVED = {storage_type} sikeresen eltávolítva a {storage_group} csoportból {player_name} játékosnak.
UNABLE_TO_ADD_MEMBER_TO_ALL = Nem lehet hozzáadni {player_name} játékost a következő tipushoz\: {storage_type}\!
UNABLE_TO_REMOVE_MEMBER = {storage_type} tipusú csoportból nem lehet eltávolítani {player_name} játékost\! Már eltávolítottad?
YES = Igen
YES = Igen

View File

@ -1,9 +1,13 @@
# Chests++ Language File
# Chests++ Language File (Version 2.3-Beta-2)
# NOTE: This file gets replaced when the plugin launches! If you want to make modifications create a copy first!
# To create a new language file simply create a copy of this file and rename it to your desired choice for example 'en_US.properties'
# It should be located in the 'lang' folder
# Then in config.yml 'language-file: default' would be renamed to 'language-file: en_US'
# To help contribute to the plugin and provide new language files you can create a pull-request at https://github.com/JamesPeters98/ChestsPlusPlus or join our Discord https://discord.gg/YRs3mP5
# --------
# Language: Italian
# Percentage Complete: 100.0%
# Updated: 2020-10-27T13:25:28+0000
ADDED_MEMBER = Aggiunto {player_name} con successo al gruppo {storage_type} "{storage_identifier}
ADDED_MEMBER_TO_ALL = Aggiunto {player_name} a tutti i gruppi {storage_type} con successo.
ALREADY_EXISTS_ANVIL = Esiste già\!
@ -66,13 +70,13 @@ PARTY_NO_INVITE = Non hai inviti in sospeso.
PARTY_OWNER = Prioprietario
PARTY_REMOVE_PLAYER = Seleziona un giocatore da rimuovere.
PARTY_REMOVE_PLAYER_DIALOG = Rimuovere il giocatore "{player_name}"?
REMOVE_MEMBER_FROM_ALL = Rimosso {player_name} con successo da tutti i gruppi {storage_type}
REMOVED_GROUP = Rimosso con successo il gruppo {storage_group} dai tuoi {storage_type}
REMOVED_MEMBER = Rimosso {player_name} con successo dal gruppo {storage_type} "{storage_identifier}
REMOVE_MEMBER_FROM_ALL = Rimosso {player_name} con successo da tutti i gruppi {storage_type}
SET_PUBLICITY = Non ci sono altri membri nel gruppo\: {storage_identifier}
SORT = Il metodo di filtraggio per {storage_identifier} è stato settato su {sort_method}
STORAGE_ADDED = Aggiunto {storage_type} con successo al gruppo\: {storage_group} di {player_name}
STORAGE_REMOVED = Rimosso {storage_type} con successo dal gruppo\: {storage_group} per {player_name}
UNABLE_TO_ADD_MEMBER_TO_ALL = Impossible aggiungere il giocatore {player_name}
UNABLE_TO_REMOVE_MEMBER = Impossibile rimuovere {player_name} dal {storage_type}\! Per caso è già stato rimosso?
YES = Si
YES = Si

View File

@ -1,11 +1,16 @@
# Chests++ Taalbestand nl_NL
# LET OP: Dit bestand word vervangen wanneer de plugin opstart, als jij dit bestand wilt wijzigen, maak er dan eerst een kopie van!
# Om een nieuw taalbestand the creëeren maakt u eerst een kopie van dit bestand en wijzigt u de naam naar bijvoorbeeld 'nl_NL.properties`
# Zorg dat dit bestand zich in de 'lang' map bevindt.
# In de config.yml wijzigt u de waarde van 'language-file: default' naar 'language-file: nl_NL'
# Als u wilt bijdragen aan deze plugin en nieuwe taalbestanden wilt aanbieden can u een pull-request aanmaken op https://github.com/JamesPeters98/ChestsPlusPlus of join onze Discord server https://discord.gg/YRs3mP5
# Chests++ Language File (Version 2.3-Beta-2)
# NOTE: This file gets replaced when the plugin launches! If you want to make modifications create a copy first!
# To create a new language file simply create a copy of this file and rename it to your desired choice for example 'en_US.properties'
# It should be located in the 'lang' folder
# Then in config.yml 'language-file: default' would be renamed to 'language-file: en_US'
# To help contribute to the plugin and provide new language files you can create a pull-request at https://github.com/JamesPeters98/ChestsPlusPlus or join our Discord https://discord.gg/YRs3mP5
# --------
# Language: Dutch
# Percentage Complete: 69.0%
# Updated: 2020-08-17T17:42:43+0000
ADDED_MEMBER = U hebt succesvol {player_name} aan {storage_type} groep {storage_identifier} toegevoegd.
ADDED_MEMBER_TO_ALL = U hebt succesvol {player_name} toegevoegd aan alle {storage_type} groepen.
ALREADY_EXISTS_ANVIL =
ALREADY_PART_OF_GROUP = Deze {storage_type} is maakt al deel uit van een groep.
CANNOT_RENAME_GROUP_ALREADY_EXISTS = Er is iets misgelopen, {storage_identifier} bestaat al\!
CANNOT_RENAME_GROUP_DOESNT_EXIST = Er is iets misgelopen, {storage_identifier} bestaat niet\!
@ -26,6 +31,7 @@ COMMAND_CHESTLINK_SETPUBLIC = Maak een ChestLink toegankelijk voor iedereen.
COMMAND_CHESTLINK_SORT = Stel de sorteer optie in voor de opgegeven ChestLink.
COMMAND_HELP = Geeft een lijst weer met alle commando's die jij kan gebruiken.
COMMAND_MEMBER = Voeg leden toe aan een groep, verwijder ze of verkrijg een lijst van een groep.
COMMAND_PARTY =
CURRENT_MEMBERS = Leden\: {player_list}
FOUND_UNLINKED_STORAGE = Deze {storage_type} was nog niet aan jouw systeem gekoppeld, het werd toegevoegd aan de {storage_identifier} groep.
GROUP_DOESNT_EXIST = {storage_group} is geen geldige {storage_type} om te verwijderen.
@ -42,15 +48,35 @@ LIST_OF_CHESTLINK = Lijst van jou ChestLinks\:
MUST_HOLD_SIGN = U moet een sign in uw hand hebben om dit uit te voeren.
MUST_LOOK_AT_CHEST = U moet naar de kist kijken die u wilt koppelen aan de ChestLink.
MUST_LOOK_AT_CRAFTING_TABLE = U moet naar de werkbank kijken waarmee AutoCraft wilt uitvoeren.
NO =
NO_ADDITIONAL_MEMBERS = Er zijn geen andere leden in de groep {storage_identifier}.
NO_PERMISSION = U mag dit commando niet uitvoeren.
OWNER_HAS_TOO_MANY_CHESTS = Eigenaar {player_name} heeft het limiet voor het aantal groepen bereikt\!
REMOVE_MEMBER_FROM_ALL = U hebt succesvol {player_name} van alle {storage_type} groepen verwijderd.
PARTY_ACCEPT_INVITE =
PARTY_ALREADY_EXISTS =
PARTY_CREATED =
PARTY_DELETE =
PARTY_DELETED =
PARTY_DOESNT_EXIST =
PARTY_ENTER_NAME =
PARTY_INVITE =
PARTY_INVITE_OWNER =
PARTY_INVITE_PLAYER =
PARTY_JOIN =
PARTY_JOINED =
PARTY_LEAVE =
PARTY_MEMBERS =
PARTY_NO_INVITE =
PARTY_OWNER =
PARTY_REMOVE_PLAYER =
PARTY_REMOVE_PLAYER_DIALOG =
REMOVED_GROUP = U hebt succesvol {storage_group} verwijderd van uw {storage_type}'s.
REMOVED_MEMBER = U hebt succesvol {player_name} verwijderd uit de {storage_group} groep {storage_identifier}
REMOVE_MEMBER_FROM_ALL = U hebt succesvol {player_name} van alle {storage_type} groepen verwijderd.
SET_PUBLICITY = Er zijn geen andere leden in de groep {storage_identifier}.
SORT = Sorteermethode voor {storage_identifier} werd gewijzigd naar {sort_method}.
STORAGE_ADDED = U hebt succesvol {storage_type} toegevoegd aan de groep {storage_group} voor {player_name}.
STORAGE_REMOVED = U hebt succesvol {storage_type} van groep {storage_group} verwijderd voor {player_name}.
UNABLE_TO_ADD_MEMBER_TO_ALL = Kan {player_name} niet aan {storage_type} toevoegen\!
UNABLE_TO_REMOVE_MEMBER = Kon speler {player_name} niet verwijderen van {storage_type}, deze speler is mogelijk al verwijderd.
UNABLE_TO_REMOVE_MEMBER = Kon speler {player_name} niet verwijderen van {storage_type}, deze speler is mogelijk al verwijderd.
YES =

View File

@ -0,0 +1,82 @@
# Chests++ Language File (Version 2.3-Beta-2)
# NOTE: This file gets replaced when the plugin launches! If you want to make modifications create a copy first!
# To create a new language file simply create a copy of this file and rename it to your desired choice for example 'en_US.properties'
# It should be located in the 'lang' folder
# Then in config.yml 'language-file: default' would be renamed to 'language-file: en_US'
# To help contribute to the plugin and provide new language files you can create a pull-request at https://github.com/JamesPeters98/ChestsPlusPlus or join our Discord https://discord.gg/YRs3mP5
# --------
# Language: Portuguese (BR)
# Percentage Complete: 100.0%
# Updated: 2020-10-27T15:27:55+0000
ADDED_MEMBER = Adicionou {player_name} a grupo (de) {storage_type} {storage_identifier} com sucesso
ADDED_MEMBER_TO_ALL = Adicionou {player_name} para todos os grupos (de) {storage_type} com sucesso\!
ALREADY_EXISTS_ANVIL = Já existe\!
ALREADY_PART_OF_GROUP = Esse {storage_type} já faz parte de um grupo\!
CANNOT_RENAME_GROUP_ALREADY_EXISTS = Erro ao renomear grupo\! {storage_identifier} já existe\!
CANNOT_RENAME_GROUP_DOESNT_EXIST = Erro ao renomear grupo\! {storage_identifier} não existe\!
CHEST_HAD_OVERFLOW = Os itens do baú não caberiam todos dentro do Chest Link\!
COMMAND_AUTOCRAFT_ADD = Cria/adiciona uma mesa de trabalho a um grupo de AutoCraft
COMMAND_AUTOCRAFT_LIST = Lista todos grupos de AutoCraft que te pertencem\!
COMMAND_AUTOCRAFT_OPEN = Abre a bancada de trabalho de um grupo de AutoCraft
COMMAND_AUTOCRAFT_REMOVE = Deleta um grupo de AutoCraft e dropa todas as mesas de trabalho\!
COMMAND_AUTOCRAFT_RENAME = Renomeia um grupo de AutoCraft.
COMMAND_AUTOCRAFT_SETPUBLIC = Deixa um grupo de AutoCraft acessível a todos\!
COMMAND_CHESTLINK_ADD = Cria/adiciona um baú a um grupo de ChestLink
COMMAND_CHESTLINK_LIST = Lista todos os ChestLink's que te pertencem\!
COMMAND_CHESTLINK_MENU = Abre o menu do ChestLink para exibir todos os grupos\!
COMMAND_CHESTLINK_OPEN = Abre o inventário de um grupo de ChestLink.
COMMAND_CHESTLINK_REMOVE = Deleta um ChestLink e dropa o seu iventário aos seus pés\!
COMMAND_CHESTLINK_RENAME = Renomeia um ChestLink.
COMMAND_CHESTLINK_SETPUBLIC = Deixa um ChestLink acessível a todos.
COMMAND_CHESTLINK_SORT = Defina a opção de classificação para o ChestLink fornecido.
COMMAND_HELP = Lista de comandos e seus usos\!
COMMAND_MEMBER = Adiciona, remove ou lista membros de um grupo
COMMAND_PARTY = Abra o menu da equipe, para permitir que outros jogadores acessem todos os seus ChestLinks e AutoCrafters
CURRENT_MEMBERS = Membros atuais\: {player_list}
FOUND_UNLINKED_STORAGE = Este {storage_type} não estava vinculado ao seu sistema\! Havia sido adicionado ao grupo {storage_identifier}\!
GROUP_DOESNT_EXIST = {storage_group} não é um grupo (de) {storage_type} válido para remover\!
INVALID_AUTOCRAFTER = AutoCrafter inválido - Você deve colocar uma placa em qualquer lado de uma mesa de trabalho, e ela já não deve estar separada de um grupo\!
INVALID_CHESTLINK = ChestLink inválido - Você deve colocar uma placa na frente do baú / você deve se certificar que existe espaço para uma placa na frente do baú\!
INVALID_ID = ID de {storage_type} inválido\! Deve conter dois pontos "\:" a não ser que você esteja se referindo a grupos de outros jogadores na qual você é membro.
ITEM_FRAME_FILTER_ALL_TYPES = Item Frame agora filtra todos os tipos deste item\! ex\: Livros Encantados.
ITEM_FRAME_FILTER_DEFAULT = Item Frame está no modo de filtragem padrão. Gire o Item Frame para alterar o modo\!
ITEM_FRAME_FILTER_DENY = Item Frame agora evita que este item seja aceito no funil\!
ITEM_FRAME_FILTER_DENY_ALL_TYPES = Item Frame agora impede que todos os tipos deste item sejam aceitos no funil\! ex\: Livros Encantados.
LIST_MEMBERS_OF_GROUP = Membros do grupo {storage_type} {storage_identifier}\: {player_list}
LIST_OF_AUTOCRAFTERS = Lista das suas estações de AutoCraft
LIST_OF_CHESTLINK = Lista dos seus ChestLink's\:
MUST_HOLD_SIGN = Você deve estar segurando uma placa para fazer isso\!
MUST_LOOK_AT_CHEST = Você deve estar olhando para o baú no qual quer associar ao ChestLink\!
MUST_LOOK_AT_CRAFTING_TABLE = Você deve estar olhando para a bancada de trabalho que quer usar para o AutoCraft\!
NO = Não
NO_ADDITIONAL_MEMBERS = Não existem mais membros no grupo\: {storage_identifier}
NO_PERMISSION = Você não tem permissão para fazer isso\!
OWNER_HAS_TOO_MANY_CHESTS = Owner("Dono" in Pt-Br)\: {player_name} atingiu o limite de grupos permitidos\!
PARTY_ACCEPT_INVITE = Clique Aqui para aceitar o convite\!
PARTY_ALREADY_EXISTS = Equipe {party_name} já existe, não é possível criá-la\!
PARTY_CREATED = Equipe {party_name} foi criada\!
PARTY_DELETE = Deletar equipe "{party_name}"?
PARTY_DELETED = Equipe {party_name} foi deletada\!
PARTY_DOESNT_EXIST = A equipe {party_name} não existe\!
PARTY_ENTER_NAME = Insira o Nome da Equipe
PARTY_INVITE = Você foi convidado para juntar-se à equipe {party_name} de {player_name}
PARTY_INVITE_OWNER = Você convidou {player_name} para entrar em sua equipe\: {party_name}
PARTY_INVITE_PLAYER = Escolha um jogador para convidar\!
PARTY_JOIN = Juntar-se à equipe "{party_name} de {player_name}
PARTY_JOINED = Você se juntou à equipe {party_name} de {player_name}
PARTY_LEAVE = Deixar equipe\: {party_name}?
PARTY_MEMBERS = Membros de {party_name}
PARTY_NO_INVITE = Você não possui convites de equipe pendentes\!
PARTY_OWNER = Dono
PARTY_REMOVE_PLAYER = Escolha um jogador para remover
PARTY_REMOVE_PLAYER_DIALOG = Remover jogador "{player_name}"?
REMOVED_GROUP = Removeu o grupo {storage_group} dos seus {storage_type}'s com sucesso\!
REMOVED_MEMBER = Removeu {player_name} do grupo (de) {storage_type} {storage_identifier} com sucesso\!
REMOVE_MEMBER_FROM_ALL = {player_name} removido de todos os grupos {storage_type} com sucesso
SET_PUBLICITY = Não há membros adicionais no grupo\: {storage_identifier}
SORT = Método de classificação de {storage_identifier} foi selecionado no modo {sort_method}
STORAGE_ADDED = Adicionou {storage_type} com sucesso ao grupo\: {storage_group} para {player_name}
STORAGE_REMOVED = Removeu {storage_type} do grupo com sucesso\: {storage_group} para {player_name}
UNABLE_TO_ADD_MEMBER_TO_ALL = Não foi possível adicionar {player_name} a {storage_type}\!
UNABLE_TO_REMOVE_MEMBER = Não foi possível remover jogador {player_name} de {storage_type}\! Será que ele(a) já havia sido removido(a)?
YES = Sim

View File

@ -1,9 +1,13 @@
# Chests++ Language File (Version 2.3-Beta-2))
# Chests++ Language File (Version 2.3-Beta-2)
# NOTE: This file gets replaced when the plugin launches! If you want to make modifications create a copy first!
# To create a new language file simply create a copy of this file and rename it to your desired choice for example 'en_US.properties'
# It should be located in the 'lang' folder
# Then in config.yml 'language-file: default' would be renamed to 'language-file: en_US'
# To help contribute to the plugin and provide new language files you can create a pull-request at https://github.com/JamesPeters98/ChestsPlusPlus or join our Discord https://discord.gg/YRs3mP5
# --------
# Language: Portuguese
# Percentage Complete: 100.0%
# Updated: 2020-10-27T17:59:41+0000
ADDED_MEMBER = Adicionaste {player_name} ao grupo {storage_type}, {storage_identifier}
ADDED_MEMBER_TO_ALL = Adicionaste {player_name} a todos os grupos {storage_type}
ALREADY_EXISTS_ANVIL = Já existe\!
@ -66,13 +70,13 @@ PARTY_NO_INVITE = Atualmente não tens convites pendentes de nenhuma Party
PARTY_OWNER = Proprietário
PARTY_REMOVE_PLAYER = Escolhe um jogador para remover\!
PARTY_REMOVE_PLAYER_DIALOG = Remover jogador "{player_name}" ?
REMOVE_MEMBER_FROM_ALL = Removeste {player_name} de todos os grupos {storage_type}
REMOVED_GROUP = Removeste o grupo {storage_group} dos teus grupos {storage_type}\!
REMOVED_MEMBER = Removeste {player_name} do grupo {storage_type}, {storage_identifier}
REMOVE_MEMBER_FROM_ALL = Removeste {player_name} de todos os grupos {storage_type}
SET_PUBLICITY = Não há membros adicionais neste grupo\: {storage_identifier}
SORT = Método de organização para {storage_identifier} foi definido para {sort_method}
STORAGE_ADDED = Adicionaste {storage_type} ao grupo\: {storage_group} de {player_name}
STORAGE_REMOVED = Removeste {storage_type} do grupo\: {storage_group} de {player_name}
UNABLE_TO_ADD_MEMBER_TO_ALL = Não é possível adicionar {player_name} a {storage_type}\!
UNABLE_TO_REMOVE_MEMBER = Não foi possível remover {player_name} de {storage_type}\! Talvez já tinha sido removido?
YES = Sim
YES = Sim

View File

@ -1,11 +1,16 @@
# Chests++ Language File
# Chests++ Language File (Version 2.3-Beta-2)
# NOTE: This file gets replaced when the plugin launches! If you want to make modifications create a copy first!
# To create a new language file simply create a copy of this file and rename it to your desired choice for example 'en_US.properties'
# It should be located in the 'lang' folder
# Then in config.yml 'language-file: default' would be renamed to 'language-file: en_US'
# To help contribute to the plugin and provide new language files you can create a pull-request at https://github.com/JamesPeters98/ChestsPlusPlus or join our Discord https://discord.gg/YRs3mP5
# --------
# Language: Russian
# Percentage Complete: 69.0%
# Updated: 2020-08-29T21:28:39+0000
ADDED_MEMBER = Успешно добавлено {player_name} ко всем {storage_type} группам
ADDED_MEMBER_TO_ALL = Успешно добавлено {player_name} ко всем {storage_type} группам
ALREADY_EXISTS_ANVIL =
ALREADY_PART_OF_GROUP = Этот {storage_type} является уже частью группы\!
CANNOT_RENAME_GROUP_ALREADY_EXISTS = Ошибка переименования группы\! {storage_identifier} уже существует\!
CANNOT_RENAME_GROUP_DOESNT_EXIST = Ошибка переименования группы\! {storage_identifier} не существует\!
@ -26,6 +31,7 @@ COMMAND_CHESTLINK_SETPUBLIC = Установите Соединение сунд
COMMAND_CHESTLINK_SORT = Установите параметр сортировки для получения Соединение сундука.
COMMAND_HELP = Список команд и их использование\!
COMMAND_MEMBER = Добавить, удалить или перечислить участников группы
COMMAND_PARTY =
CURRENT_MEMBERS = Hынешние участники\: {player_list}
FOUND_UNLINKED_STORAGE = Этот {storage_type} не был связан с Вашей системой\! Он был добавлен в группу {storage_identifier}\!
GROUP_DOESNT_EXIST = Не допустимая группа {storage_group} для удаления {storage_type}\!
@ -42,15 +48,35 @@ LIST_OF_CHESTLINK = Список Ваших Связей с сундуками\:
MUST_HOLD_SIGN = Вы, наверное, удерживаете табличку, чтобы это сделать\!
MUST_LOOK_AT_CHEST = Вы, наверное, смотрите на сундук, Соединение сундука, с которым Вы хотите работать\!
MUST_LOOK_AT_CRAFTING_TABLE = Вы, наверное, смотрите на Верстак Авто-создания, с которым Вы хотите работать\!
NO =
NO_ADDITIONAL_MEMBERS = Здесь, нет дополнительных участников в группе\: {storage_identifier}
NO_PERMISSION = У Вас нет прав, чтобы сделать это\!
OWNER_HAS_TOO_MANY_CHESTS = Владелец\: {player_name} достиг предела разрешённых групп\!
REMOVE_MEMBER_FROM_ALL = Успешно удалён {player_name} из всех {storage_type} групп
PARTY_ACCEPT_INVITE =
PARTY_ALREADY_EXISTS =
PARTY_CREATED =
PARTY_DELETE =
PARTY_DELETED =
PARTY_DOESNT_EXIST =
PARTY_ENTER_NAME =
PARTY_INVITE =
PARTY_INVITE_OWNER =
PARTY_INVITE_PLAYER =
PARTY_JOIN =
PARTY_JOINED =
PARTY_LEAVE =
PARTY_MEMBERS =
PARTY_NO_INVITE =
PARTY_OWNER =
PARTY_REMOVE_PLAYER =
PARTY_REMOVE_PLAYER_DIALOG =
REMOVED_GROUP = Группа успешно удалена {storage_group} из Ваших {storage_type}\!
REMOVED_MEMBER = Успешно удалён {player_name} из {storage_type} группы {storage_identifier}
REMOVE_MEMBER_FROM_ALL = Успешно удалён {player_name} из всех {storage_type} групп
SET_PUBLICITY = Здесь, нет дополнительных участников в группе\: {storage_identifier}
SORT = Метод сортировки для {storage_identifier} был установлен в {sort_method}
STORAGE_ADDED = Успешно добавлен {storage_type} в группу\: {storage_group} для {player_name}
STORAGE_REMOVED = Успешно удалён {storage_type} из группы\: {storage_group} для {player_name}
UNABLE_TO_ADD_MEMBER_TO_ALL = Невозможно добавить игрока {player_name} в {storage_type}\!
UNABLE_TO_REMOVE_MEMBER = Невозможно удалить игрока {player_name} из {storage_type}\! Они уже были удалены?
UNABLE_TO_REMOVE_MEMBER = Невозможно удалить игрока {player_name} из {storage_type}\! Они уже были удалены?
YES =

View File

@ -0,0 +1,82 @@
# Chests++ Language File (Version 2.3-Beta-2)
# NOTE: This file gets replaced when the plugin launches! If you want to make modifications create a copy first!
# To create a new language file simply create a copy of this file and rename it to your desired choice for example 'en_US.properties'
# It should be located in the 'lang' folder
# Then in config.yml 'language-file: default' would be renamed to 'language-file: en_US'
# To help contribute to the plugin and provide new language files you can create a pull-request at https://github.com/JamesPeters98/ChestsPlusPlus or join our Discord https://discord.gg/YRs3mP5
# --------
# Language: Ukrainian
# Percentage Complete: 0.0%
# Updated:
ADDED_MEMBER =
ADDED_MEMBER_TO_ALL =
ALREADY_EXISTS_ANVIL =
ALREADY_PART_OF_GROUP =
CANNOT_RENAME_GROUP_ALREADY_EXISTS =
CANNOT_RENAME_GROUP_DOESNT_EXIST =
CHEST_HAD_OVERFLOW =
COMMAND_AUTOCRAFT_ADD =
COMMAND_AUTOCRAFT_LIST =
COMMAND_AUTOCRAFT_OPEN =
COMMAND_AUTOCRAFT_REMOVE =
COMMAND_AUTOCRAFT_RENAME =
COMMAND_AUTOCRAFT_SETPUBLIC =
COMMAND_CHESTLINK_ADD =
COMMAND_CHESTLINK_LIST =
COMMAND_CHESTLINK_MENU =
COMMAND_CHESTLINK_OPEN =
COMMAND_CHESTLINK_REMOVE =
COMMAND_CHESTLINK_RENAME =
COMMAND_CHESTLINK_SETPUBLIC =
COMMAND_CHESTLINK_SORT =
COMMAND_HELP =
COMMAND_MEMBER =
COMMAND_PARTY =
CURRENT_MEMBERS =
FOUND_UNLINKED_STORAGE =
GROUP_DOESNT_EXIST =
INVALID_AUTOCRAFTER =
INVALID_CHESTLINK =
INVALID_ID =
ITEM_FRAME_FILTER_ALL_TYPES =
ITEM_FRAME_FILTER_DEFAULT =
ITEM_FRAME_FILTER_DENY =
ITEM_FRAME_FILTER_DENY_ALL_TYPES =
LIST_MEMBERS_OF_GROUP =
LIST_OF_AUTOCRAFTERS =
LIST_OF_CHESTLINK =
MUST_HOLD_SIGN =
MUST_LOOK_AT_CHEST =
MUST_LOOK_AT_CRAFTING_TABLE =
NO =
NO_ADDITIONAL_MEMBERS =
NO_PERMISSION =
OWNER_HAS_TOO_MANY_CHESTS =
PARTY_ACCEPT_INVITE =
PARTY_ALREADY_EXISTS =
PARTY_CREATED =
PARTY_DELETE =
PARTY_DELETED =
PARTY_DOESNT_EXIST =
PARTY_ENTER_NAME =
PARTY_INVITE =
PARTY_INVITE_OWNER =
PARTY_INVITE_PLAYER =
PARTY_JOIN =
PARTY_JOINED =
PARTY_LEAVE =
PARTY_MEMBERS =
PARTY_NO_INVITE =
PARTY_OWNER =
PARTY_REMOVE_PLAYER =
PARTY_REMOVE_PLAYER_DIALOG =
REMOVED_GROUP =
REMOVED_MEMBER =
REMOVE_MEMBER_FROM_ALL =
SET_PUBLICITY =
SORT =
STORAGE_ADDED =
STORAGE_REMOVED =
UNABLE_TO_ADD_MEMBER_TO_ALL =
UNABLE_TO_REMOVE_MEMBER =
YES =

50
POEditorImport/pom.xml Normal file
View File

@ -0,0 +1,50 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.jamesdpeters</groupId>
<artifactId>POEditorImport</artifactId>
<version>1.0-SNAPSHOT</version>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>8</source>
<target>8</target>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
<version>4.9.0</version>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>2.6</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.jamesdpeters.minecraft.chests</groupId>
<artifactId>ChestsPlusPlus-Master</artifactId>
<version>2.3-Beta-2</version>
<scope>compile</scope>
</dependency>
</dependencies>
</project>

View File

@ -0,0 +1,45 @@
package com.jamesdpeters.poeditor;
import com.google.gson.Gson;
import okhttp3.FormBody;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
import java.io.IOException;
public abstract class POEMethod<T> {
private static final OkHttpClient client = new OkHttpClient();
private static final Gson gson = new Gson();
FormBody.Builder requestBody = new FormBody.Builder()
.add("api_token", POEapi.TOKEN);
protected abstract String getBaseURL();
protected abstract Class<T> getSerialiseClass();
public void addPostData(String name, String value){
requestBody.add(name, value);
}
public T get() {
Request request = new Request.Builder()
.url(getBaseURL())
.post(requestBody.build())
.build();
try (Response response = client.newCall(request).execute()){
if (!response.isSuccessful()) throw new IOException("Unexpected code "+ response);
String terms = response.body().string();
T t = gson.fromJson(terms, getSerialiseClass());
return t;
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
}

View File

@ -0,0 +1,59 @@
package com.jamesdpeters.poeditor;
import com.google.gson.Gson;
import com.jamesdpeters.minecraft.chests.lang.LanguageFile;
import com.jamesdpeters.poeditor.lang.Language;
import com.jamesdpeters.poeditor.lang.POELanguageMethod;
import com.jamesdpeters.poeditor.lang.POELanguages;
import com.jamesdpeters.poeditor.terms.POETerms;
import com.jamesdpeters.poeditor.terms.POETermsMethod;
import com.jamesdpeters.poeditor.terms.Term;
import okhttp3.OkHttpClient;
import java.io.File;
import java.io.IOException;
import java.net.URISyntaxException;
import java.util.Comparator;
public class POEditorImport {
private static final OkHttpClient client = new OkHttpClient();
private static final Gson gson = new Gson();
public static void main(String[] args) {
POELanguageMethod languages = new POELanguageMethod();
POELanguages poeLanguages = languages.get();
if (poeLanguages != null)
poeLanguages.getResult().getLanguages().forEach(language -> {
POETermsMethod termsMethod = new POETermsMethod(language.getCode());
POETerms terms = termsMethod.get();
try {
saveTermsToFile(language, terms);
} catch (IOException | URISyntaxException e) {
e.printStackTrace();
}
});
}
public static void saveTermsToFile(Language language, POETerms poeTerms) throws IOException, URISyntaxException {
File langSrcFile = new File( "ChestsPlusPlus_Main/src/main/resources/lang/"+language.getFullCode()+".properties");
LanguageFile lang = new LanguageFile();
lang.addComment(" -------- ");
lang.addComment(" Language: "+language.getName());
lang.addComment(" Percentage Complete: "+language.getPercentage()+"%");
lang.addComment(" Updated: "+language.getUpdated());
poeTerms.getResult().getTerms().sort(Comparator.comparing(Term::getTerm));
for (Term term : poeTerms.getResult().getTerms()) {
System.out.println(term.getTerm() + " = " + term.getTranslation().getContent());
lang.setProperty(term.getTerm(), term.getTranslation().getContent());
}
lang.storeGenerated(langSrcFile);
}
}

View File

@ -0,0 +1,79 @@
package com.jamesdpeters.poeditor.lang;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
import org.apache.commons.lang.builder.ToStringBuilder;
public class Language {
@SerializedName("name")
@Expose
private String name;
@SerializedName("code")
@Expose
private String code;
@SerializedName("translations")
@Expose
private Integer translations;
@SerializedName("percentage")
@Expose
private Double percentage;
@SerializedName("updated")
@Expose
private String updated;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getCode() {
return code;
}
public String getFullCode() {
if (getCode().contains("-")){
String[] codes = getCode().split("-");
return codes[0]+"_"+codes[1].toUpperCase();
}
return getCode()+"_"+getCode().toUpperCase();
}
public void setCode(String code) {
this.code = code;
}
public Integer getTranslations() {
return translations;
}
public void setTranslations(Integer translations) {
this.translations = translations;
}
public Double getPercentage() {
return percentage;
}
public void setPercentage(Double percentage) {
this.percentage = percentage;
}
public String getUpdated() {
return updated;
}
public void setUpdated(String updated) {
this.updated = updated;
}
@Override
public String toString() {
return new ToStringBuilder(this).append("name", name).append("code", code).append("translations", translations).append("percentage", percentage).append("updated", updated).toString();
}
}

View File

@ -0,0 +1,21 @@
package com.jamesdpeters.poeditor.lang;
import com.jamesdpeters.poeditor.POEMethod;
import com.jamesdpeters.poeditor.POEapi;
public class POELanguageMethod extends POEMethod<POELanguages> {
public POELanguageMethod(){
addPostData("id", POEapi.PROJECT_ID);
}
@Override
protected String getBaseURL() {
return "https://api.poeditor.com/v2/languages/list";
}
@Override
protected Class<POELanguages> getSerialiseClass() {
return POELanguages.class;
}
}

View File

@ -0,0 +1,38 @@
package com.jamesdpeters.poeditor.lang;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
import org.apache.commons.lang.builder.ToStringBuilder;
public class POELanguages {
@SerializedName("response")
@Expose
private Response response;
@SerializedName("result")
@Expose
private Result result;
public Response getResponse() {
return response;
}
public void setResponse(Response response) {
this.response = response;
}
public Result getResult() {
return result;
}
public void setResult(Result result) {
this.result = result;
}
@Override
public String toString() {
return new ToStringBuilder(this).append("response", response).append("result", result).toString();
}
}

View File

@ -0,0 +1,49 @@
package com.jamesdpeters.poeditor.lang;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
import org.apache.commons.lang.builder.ToStringBuilder;
public class Response {
@SerializedName("status")
@Expose
private String status;
@SerializedName("code")
@Expose
private String code;
@SerializedName("message")
@Expose
private String message;
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
@Override
public String toString() {
return new ToStringBuilder(this).append("status", status).append("code", code).append("message", message).toString();
}
}

View File

@ -0,0 +1,28 @@
package com.jamesdpeters.poeditor.lang;
import java.util.List;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
import org.apache.commons.lang.builder.ToStringBuilder;
public class Result {
@SerializedName("languages")
@Expose
private List<Language> languages = null;
public List<Language> getLanguages() {
return languages;
}
public void setLanguages(List<Language> languages) {
this.languages = languages;
}
@Override
public String toString() {
return new ToStringBuilder(this).append("languages", languages).toString();
}
}

View File

@ -0,0 +1,32 @@
package com.jamesdpeters.poeditor.terms;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
public class POETerms {
@SerializedName("response")
@Expose
private Response response;
@SerializedName("result")
@Expose
private Result result;
public Response getResponse() {
return response;
}
public void setResponse(Response response) {
this.response = response;
}
public Result getResult() {
return result;
}
public void setResult(Result result) {
this.result = result;
}
}

View File

@ -0,0 +1,23 @@
package com.jamesdpeters.poeditor.terms;
import com.jamesdpeters.poeditor.POEMethod;
import com.jamesdpeters.poeditor.POEapi;
public class POETermsMethod extends POEMethod<POETerms> {
public POETermsMethod(String languageCode) {
addPostData("id", POEapi.PROJECT_ID);
addPostData("language", languageCode);
}
@Override
protected String getBaseURL() {
return "https://api.poeditor.com/v2/terms/list";
}
@Override
protected Class<POETerms> getSerialiseClass() {
return POETerms.class;
}
}

View File

@ -0,0 +1,43 @@
package com.jamesdpeters.poeditor.terms;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
public class Response {
@SerializedName("status")
@Expose
private String status;
@SerializedName("code")
@Expose
private String code;
@SerializedName("message")
@Expose
private String message;
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}

View File

@ -0,0 +1,23 @@
package com.jamesdpeters.poeditor.terms;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
import java.util.ArrayList;
public class Result {
@SerializedName("terms")
@Expose
private ArrayList<Term> terms = null;
public ArrayList<Term> getTerms() {
return terms;
}
public void setTerms(ArrayList<Term> terms) {
this.terms = terms;
}
}

View File

@ -0,0 +1,112 @@
package com.jamesdpeters.poeditor.terms;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
import java.util.List;
public class Term {
@SerializedName("term")
@Expose
private String term;
@SerializedName("context")
@Expose
private String context;
@SerializedName("plural")
@Expose
private String plural;
@SerializedName("created")
@Expose
private String created;
@SerializedName("updated")
@Expose
private String updated;
@SerializedName("translation")
@Expose
private Translation translation;
@SerializedName("reference")
@Expose
private String reference;
@SerializedName("tags")
@Expose
private List<Object> tags = null;
@SerializedName("comment")
@Expose
private String comment;
public String getTerm() {
return term;
}
public void setTerm(String term) {
this.term = term;
}
public String getContext() {
return context;
}
public void setContext(String context) {
this.context = context;
}
public String getPlural() {
return plural;
}
public void setPlural(String plural) {
this.plural = plural;
}
public String getCreated() {
return created;
}
public void setCreated(String created) {
this.created = created;
}
public String getUpdated() {
return updated;
}
public void setUpdated(String updated) {
this.updated = updated;
}
public Translation getTranslation() {
return translation;
}
public void setTranslation(Translation translation) {
this.translation = translation;
}
public String getReference() {
return reference;
}
public void setReference(String reference) {
this.reference = reference;
}
public List<Object> getTags() {
return tags;
}
public void setTags(List<Object> tags) {
this.tags = tags;
}
public String getComment() {
return comment;
}
public void setComment(String comment) {
this.comment = comment;
}
}

View File

@ -0,0 +1,43 @@
package com.jamesdpeters.poeditor.terms;
import com.google.gson.annotations.Expose;
import com.google.gson.annotations.SerializedName;
public class Translation {
@SerializedName("content")
@Expose
private String content;
@SerializedName("fuzzy")
@Expose
private Integer fuzzy;
@SerializedName("updated")
@Expose
private String updated;
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public Integer getFuzzy() {
return fuzzy;
}
public void setFuzzy(Integer fuzzy) {
this.fuzzy = fuzzy;
}
public String getUpdated() {
return updated;
}
public void setUpdated(String updated) {
this.updated = updated;
}
}