From f07a2a05f3b0ffd7e2913579472bc7336458157f Mon Sep 17 00:00:00 2001 From: jakub Date: Sun, 20 Oct 2024 15:13:43 +0200 Subject: [PATCH] Update 'Language manager' --- Language-manager.md | 87 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 Language-manager.md diff --git a/Language-manager.md b/Language-manager.md new file mode 100644 index 0000000..8ab325b --- /dev/null +++ b/Language-manager.md @@ -0,0 +1,87 @@ +Language Manager se používá pro získávání zpráv z .yml souboru definovaném v configu. + +Všechny zprávy a texty na které hráči narazí, by měli být získány přes LangManager. + + +V základu LangManager bere jako vstup klíč dané zprávy a případně hodnoty placeholderů. + +Lang manager placeholdery automaticky dosadí a převede formátovací kódy. + +## Zápis zpráv v souboru +Do souboru lze zapsat jednořádkový i víceřádkový text a to takto: + +```YAML +one-line: "&cToto je zpráva s barvou a použitou hodnotou placeholderu %s1" +multi-line: + - "&3 tato zprává má více řádků a i více placeholderů" + - "&2První placeholder %s1" + - "&6Druhý placeholder %s2" + - "&7Třetí placeholder %s3" +``` +Povšimněte si placeholderů. Nemusí být definované ale mohou být. %s1, %s2 a %s3 budou nahrazeny, pokud jejich hodnota bude dodána (viz. níže) + +Maximální počet placeholderrů je nyní 3, ale v případě potřeby bude navíšen. + +## Funkce pro kontaktování LangManageru: + +Všechny funkce mají skoro stejné parametry, ale mohou se lišit jejich použití. + +Honota key se zadává jako u configu. Například `error.command.tpw.invalid-world` + +Všechny vstupní a výstupní hodnoty jsou proměnná typu String. + +### LangManager.get() + +Navrátí String hodnotu s doplněnými placeholdery a barvami. + +Povinný pouze první argument key, další nemusí být zadány + +**Příklady použití:** +```JAVA +String string_a = LangManager.get(key); +String string_b = LangManager.get(key, s1); +String string_c = LangManager.get(key, s1, s2); +String string_d = LangManager.get(key, s1, s2, s3); +``` + +### LangManager.message() + +Získanou hodnotu obarví, doplní placeholdery a rovnou odešle hráči nebo konzoli. + +Povinný první argument CommandSender/Player a key, další nemusí být zadány + +**Příklady použití:** +```JAVA +LangManager.message(player, key); +LangManager.message(player, key, s1); +LangManager.message(player, key, s1, s2); +LangManager.message(player, key, s1, s2, s3); +``` + +### LangManager.info() + +Získanou hodnotu zbaví barev, doplní placeholdery a odešle jako INFO do konzole za pomocí Logger + +Povinný pouze první argument key, další nemusí být zadány + +**Příklady použití:** +```JAVA +LangManager.info(key); +LangManager.info(key, s1); +LangManager.info(key, s1, s2); +LangManager.info(key, s1, s2, s3); +``` + +### LangManager.warning() + +Získanou hodnotu zbaví barev, doplní placeholdery a odešle jako WARNING do konzole za pomocí Logger + +Povinný pouze první argument key, další nemusí být zadány + +**Příklady použití:** +```JAVA +LangManager.warning(key); +LangManager.warning(key, s1); +LangManager.warning(key, s1, s2); +LangManager.warning(key, s1, s2, s3); +``` \ No newline at end of file