diff --git a/README.md b/README.md index 4951801..fcaf10e 100644 --- a/README.md +++ b/README.md @@ -9,9 +9,9 @@ Rankup can be compiled with the `gradlew build` command. The compiled plugin jar If you would like to contribute to translating the plugin, you can fork it. Locale names are in ISO-639-1 and are in the folder [`src/main/resources/locale`](https://github.com/okx-code/Rankup3/tree/master/src/main/resources/locale) -When a locale is added, it should be saved [here](https://github.com/okx-code/Rankup3/blob/master/src/main/java/sh/okx/rankup/Rankup.java#L242), ie through adding a line such as `saveLocale("es");`. However, I can do it if you forget. +When a locale is added, it should be saved [here](https://github.com/okx-code/Rankup3/blob/master/src/main/java/sh/okx/rankup/RankupPlugin.java#L294), ie through adding a line such as `saveLocale("es");`. However, I can do it if you forget. -You can use the [English](https://github.com/okx-code/Rankup3/blob/locale/src/main/resources/locale/en.yml) locale to help translate. +You can use the [English](https://github.com/okx-code/Rankup3/blob/master/src/main/resources/locale/en.yml) locale to help translate. Locales should be added or modified with a pull request, but if you wish to contribute often I can give you push access to this branch. diff --git a/src/main/java/sh/okx/rankup/RankupPlugin.java b/src/main/java/sh/okx/rankup/RankupPlugin.java index 1c13095..f8907c7 100644 --- a/src/main/java/sh/okx/rankup/RankupPlugin.java +++ b/src/main/java/sh/okx/rankup/RankupPlugin.java @@ -330,6 +330,8 @@ public class RankupPlugin extends JavaPlugin { saveLocale("ru"); saveLocale("zh_cn"); saveLocale("fr"); + saveLocale("it"); + saveLocale("es"); } private void saveLocale(String locale) { diff --git a/src/main/resources/locale/es.yml b/src/main/resources/locale/es.yml new file mode 100644 index 0000000..f7b5331 --- /dev/null +++ b/src/main/resources/locale/es.yml @@ -0,0 +1,104 @@ +# the messages in this section can be customised for each rankup in rankups.yml. +rankup: + requirements-not-met: "&cNo satisfaces los requisitos para seguir al siguiente rango." + no-rankup: "&eEstas en el último rango." + # set to an empty string, ie: success-public: "" + # to hide that message. + success-public: "&a{PLAYER} &eha subido de rango a: &d{RANK}" + success-private: "" + # used for the text confirmation + confirmation: |- + &eEstas seguro de que quires subir de rango a &a{RANK}&e? + &eEscribe /rankup para confirmar. + # used for the GUI confirmation + title: "Subir de rango a {RANK}" + + must-prestige: "&cTienes que prestigiar para seguir subiendo de rango!" + + gui: + rows: 1 + title: "Subir de rango a {RANK}" + rankup: + material: EMERALD_BLOCK + # index can be separated by spaces to show in multiple groups + # for example: 0-3 9-12 18-21 + # you can also just use a single number instead of a range. + index: 0-3 + name: '&a&lConfirmar' + # lore is optional + lore: '&6Subir de rango a {RANK}' + cancel: + material: REDSTONE_BLOCK + index: 5-8 + name: '&c&lCancelar' + fill: + name: ' ' + # if you are using a 1.8-1.12 and you want to change this + # you can use MATERIAL:data, for example STAINED_GLASS_PANE:8 + # this works for both the rankup and cancel blocks as well + material: BLACK_STAINED_GLASS_PANE + + # you can (and probably should) you override these in rankups.yml + # to show the specific requirements for each rank. + # however if you are just using money or don't need to change the message per rank, you can use any combination of: + # {MONEY} {MONEY_NEEDED} {PERCENT_DONE } {PERCENT_LEFT } {AMOUNT } {AMOUNT_NEEDED } + # {MONEY} and {MONEY_NEEDED} are different from {AMOUNT money} and {AMOUNT_NEEDED money} in that they use a different format. + # here is an example of showing the requirements for just money: + #list: + # complete: "&7{OLD_RANK} &8\xbb &7{RANK} &efor &7${MONEY}" + # current: "&c{OLD_RANK} &e\xbb &c{RANK} &efor &a${MONEY} &e{PERCENT_DONE money}%" + # incomplete: "&r{OLD_RANK} &e\xbb &r{RANK} &efor &a${MONEY}" + list: + complete: "&7{OLD_RANK} &8\xbb &7{RANK}" + current: "&c{OLD_RANK} &e\xbb &c{RANK}" + incomplete: "&r{OLD_RANK} &e\xbb &r{RANK}" + # an empty string disables the header/footer + header: "" + footer: "" + # sent when a player tries to rankup when they are on cooldown + cooldown: + singular: "&cTienes que esperar {SECONDS_LEFT} segundo más para subir de rango otra vez." + plural: "&cTienes que esperar {SECONDS_LEFT} segundos más para subir de rango otra vez." +# prestige messages can also be customised +prestige: + requirements-not-met: "&cNecesitas {MONEY} más plata para prestigiar." + no-prestige: "&eYa estás en el prestigio más alto." + + success-public: "&a{PLAYER} &eha prestigiado a: &d{RANK}" + success-private: "" + + confirmation: |- + &eEstás seguro de que quieres prestigiar a &a{RANK}&e? + &eEscribe &c/prestige &otra vez para confirmar. + + gui: + title: "Prestigiar a {RANK}" + rankup: + material: GOLD_BLOCK + index: 0-3 + name: '&a&lConfirmar' + lore: '&6Prestigiar a &b{RANK}' + cancel: + material: REDSTONE_BLOCK + index: 5-8 + name: '&c&lCancelar' + fill: + name: ' ' + # if you are using a 1.8-1.12 and you want to change this + # you can use MATERIAL:data, for example STAINED_GLASS_PANE:8 + # this works for both the rankup and cancel blocks as well + material: BLACK_STAINED_GLASS_PANE + + list: + complete: "&7{OLD_RANK} &8\xbb &7{RANK}" + current: "&c{OLD_RANK} &e\xbb &c{RANK}" + incomplete: "&r{OLD_RANK} &e\xbb &r{RANK}" + header: "" + footer: "" + cooldown: + singular: "&cTienes que esperar {SECONDS_LEFT} segundo más para prestigiar otra vez." + plural: "&cTienes que esperar {SECONDS_LEFT} segundos más para prestigiar otra vez." + +not-high-enough: "&cNo puedes prestigiar a tu rango!" +not-in-ladder: "&cPerdón, pero no hemos podido encontrar rangos en los grupos que perteneces. Usa /ranks para ver los rangos." +invalid-rankup: "&cInvalid rankup defined in config, please check console. &cRango invalido definido en la configuración, verifica que todo esta correcto y chequea la consola." \ No newline at end of file diff --git a/src/main/resources/locale/it.yml b/src/main/resources/locale/it.yml new file mode 100644 index 0000000..bbb6976 --- /dev/null +++ b/src/main/resources/locale/it.yml @@ -0,0 +1,100 @@ +#traduzione italiana del locale per rankup +rankup: + requirements-not-met: "&cHai bisogno di {MONEY} soldi per avanzare di rank." + no-rankup: "&eSei al rank più alto." + # imposta stringa vuota per nascondere il messaggio + success-public: "&a{PLAYER} &e\u00E8 avanzato di rank a: &d{RANK}" + success-private: "&aHai avanzato di rank a: &d{RANK}" + # conferma testuale + confirmation: |- + &eSei sicuro di voler avanzare di rank a &a{RANK}&e? + &eScrivi &c/rankup &edi nuovo per confermare. + # conferma gui + title: "Avanzamento di rank a {RANK}" + + must-prestige: "&cDevi effettuare un prestige prima di avanzare di rank!" + + gui: + title: "Avanzamento di rank a {RANK}" + rankup: + material: EMERALD_BLOCK + # l'indice può essere separato da spazi per mostrarlo in più gruppi + # per esempio: 0-3 9-12 18-21 + # puoi anche inserire numeri al posto di range + index: 0-3 + name: '&a&lConferma' + # lore opzionale + lore: '&6Avanzamento a &b{RANK}' + cancel: + material: REDSTONE_BLOCK + index: 5-8 + name: '&c&lAnnulla' + fill: + name: ' ' + # se stai usando la 1.8 fino alla 1.12.2 per cambiarlo puoi usare + # MATERIAL:data, per esempio STAINED_GLASS_PANE:8 + # funziona per i bloccchi rankup e cancel + material: BLACK_STAINED_GLASS_PANE + + # potresti e dovresti configurare questi in rankup.yml + # per visualizzare i requisiti di ogni rank + # ma se stai usando solo i soldi e non ti serve modificare il mesaggio puoi usapre questi + # {MONEY} {MONEY_NEEDED} {PERCENT_DONE } {PERCENT_LEFT } {AMOUNT } {AMOUNT_NEEDED } + # {MONEY} e {MONEY_NEEDED} sono diversi da {AMOUNT money} e {AMOUNT_NEEDED money}, usano un formato diverso + # ESEMPIO: + + #list: + # complete: "&7{OLD_RANK} &8\xbb &7{RANK} &efor &7${MONEY}" + # current: "&c{OLD_RANK} &e\xbb &c{RANK} &efor &a${MONEY} &e{PERCENT_DONE money}%" + # incomplete: "&r{OLD_RANK} &e\xbb &r{RANK} &efor &a${MONEY}" + list: + complete: "&7{OLD_RANK} &8\xbb &7{RANK}" + current: "&c{OLD_RANK} &e\xbb &c{RANK}" + incomplete: "&r{OLD_RANK} &e\xbb &r{RANK}" + # stringa vuota per disattivare + header: "" + footer: "" + # messaggi cooldown + cooldown: + singular: "&cDevi aspettare ancora {SECONDS_LEFT} secondo per avanzare di rank." + plural: "&cDevi aspettare ancora {SECONDS_LEFT} secondi per avanzare di rank." +# messaggi prestige +prestige: + requirements-not-met: "&cHai bisogno di {MONEY} soldi per effettuare un prestige." + no-prestige: "&eSei al prestige più alto." + + success-public: "&a{PLAYER} &eha effettuato un prestige a: &d{RANK}" + success-private: "&aHai effettuato un prestige a: &d{RANK}" + + confirmation: |- + &eSei sicuro di voler effettuare un prestige a &a{RANK}&e? + &eScrivi &c/prestige &edi nuovo per confermare. + gui: + title: "Prestige a {RANK}" + rankup: + material: GOLD_BLOCK + index: 0-3 + name: '&a&lConferma' + lore: '&6Prestige a &b{RANK}' + cancel: + material: REDSTONE_BLOCK + index: 5-8 + name: '&c&lAnnulla' + fill: + name: ' ' + # riferirsi a commento riga 34 + material: BLACK_STAINED_GLASS_PANE + + list: + complete: "&7{OLD_RANK} &8\xbb &7{RANK}" + current: "&c{OLD_RANK} &e\xbb &c{RANK}" + incomplete: "&r{OLD_RANK} &e\xbb &r{RANK}" + header: "" + footer: "" + cooldown: + singular: "&cDevi aspettare {SECONDS_LEFT} secondo per effettuare un altro prestige." + plural: "&cDevi aspettare {SECONDS_LEFT} secondi per effettuare un altro prestige." + +not-high-enough: "&cNon puoi effettuare un prestige al tuo rank!" +not-in-ladder: "&cNon riusciamo a trovare nessun avanzamento di rank per il tuo gruppo. Scrivi /ranks per ottenere una lista degli avanzamenti disponibili." +invalid-rankup: "&cRankup invalido definito nel file di configurazione, controlla la console."