2 Language manager
jakub edited this page 1 year ago

Language Manager

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:

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í:

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í:

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í:

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í:

LangManager.warning(key);
LangManager.warning(key, s1);
LangManager.warning(key, s1, s2);
LangManager.warning(key, s1, s2, s3);