O TEMA DO FÓRUM ESTÁ EM MANUTENÇÃO. FEEDBACKS AQUI: ACESSAR

Iavra_MasterLocalization (Para adicionar outros idiomas no seu jogo)

Iniciado por Eliaquim, 11/04/2020 às 00:08


Autor: Iavra

[box2 class=titlebg title=Introdução]
Esse plugin é a fusão de dois plugins do autor Iavra: Iavra_Localization_Core e Iavra_Localization_Menu.
Eu não alterei nada nos códigos, apenas mudei a forma como é escrito para melhorar meu entendimento(foi na época que estava aprendendo a programar)
Foram consertados três bugs, dois por mim e outro pelo próprio autor no tópico oficial:
Por mim > Quando havia mais de 3 idiomas para selecionar no menu de opções, a seleção não ficava na ordem segundo os parâmetros de plugin.
Pelo autor(e adicionado no código) > Pode traduzir o nome dos atores também.
Adicionado um comando de plugin para mudar o idioma.
Também houveram algumas mudanças no arquivo de ajuda.[/box2]

[box2 class=titlebg title=Funcionalidades]

• Adicione quantos idiomas quiser.
• Faça as traduções por um arquivo externo .json e importe para o jogo.
• Você pode traduzir todo o database.
• Também pode traduzir qualquer coisa nos parâmetros de outros plugins.
• Mude a linguagem através do menu ou de script calls.
• Funciona em Pc e Mobile.[/box2]

[box2 class=titlebg title=Como usar]

• Definindo os idiomas:
Primeiro defina seus idiomas no parâmetro "Languages". Depois faça os arquivos
.json(Devem ser salvos em UTF-8) no seu editor de texto favorito e nomeie-os
de acordo com o preenchimento do parâmetro.

Exemplo:
Parâmetro > en, ptbr, esp
Arquivos > en.json, ptbr.json, esp.json

Esses arquivos devem estar na pasta raiz do projeto.
A primeira linguagem definida será a linguagem padrão.

• Como funciona a tradução:
O plugin irá substituir um "escape code" que você usar no jogo para o que
estiver correspondente a ele nos arquivos .json.
Exemplo:

Caixa de mensagens > #{Npc.01} ou #{Npc01}

No arquivo .json dos idiomas você deverá colocar assim:

"Npc": {
   "01":"Meu nome é Haroldo",
   "02":"Meu nome é Laura"
}

ou

"Npc01":"Meu nome é Haroldo"

Poderá repetir o mesmo procedimento no database e parâmetros de outros plugins.

Você também pode traduzir usando arrays:

No .json:
"text": ["Text 1", "Text 2", "Text 3"]
Isso vai gerar os escape codes > "text.0", "text.1" and "text.2"

Os escape codes também podem conter outros escape codes dentro deles:

{
"text": "Hi, my name is #{actor}",
"actor": "Harold"
}

*Não use acentos no "escape code".
*Para usar os escape codes default da caixa de mensagens(incluindo de outros
plugins):
Errado > \i[2]
Certo > \\i[2]
*Para pular uma linha use \n, já que o arquivo .json por padrão não suporta
quebra de linha.

O plugin oferece os seguintes script calls:

IAVRA.MasterLocalization.I18N.language;           Retorna o idioma atual.
IAVRA.MasterLocalization.I18N.language = "lang";  Muda o idioma para outro idioma "lang".
IAVRA.MasterLocalization.I18N.languages();        Retorna uma lista de todos os idiomas.
IAVRA.MasterLocalization.I18N.localize(text);     Localiza o texto desejado.

Você pode mudar um idioma através do menu de opções, pelos script calls
acima ou pelo comando de plugin:

SET_LANG [idioma]

Exemplo:

SET_LANG ptbr

*Você pode usar esse site para corrigir erros de formatação no arquivo .json
https://jsonformatter.curiousconcept.com/
[/box2]

Imagens
Spoiler





[close]

[box2 class=titlebg title=Termos de uso]

Livre para projetos comerciais e não comerciais, contanto que seja dado créditos para Iavra.
Link do tópico oficial feito pelo autor.
Se quiser, pode me dar créditos também(Eliaquim)  :*-*:
[/box2]



[box2 class=titlebg title=Atualizações]
Versão 1.0 - 10/04/2020
- Lançado!
[/box2]

Bem legal e útil esse plugin! Aposto que vai ajudar muitos! Obrigado por compartilhar, Eliaquim! :>
^~^) -Rhyan.

Citação de: Rhyan online 11/04/2020 às 05:23
Bem legal e útil esse plugin! Aposto que vai ajudar muitos! Obrigado por compartilhar, Eliaquim! :>

Valeu!!!  :ok:

Eu uso esses plugins do Iavra, acho a melhor forma de lidar com strings no rpg maker.

Em qual pasta do projeto colocamos os arquivos onde ficarão a tradução?