Onde as mentes criativas se encontram!


 
Avatar do usuário
jonnyall
Novato
Novato
Autor
Mensagens: 12
Registrado em: Ter Abr 04, 2017 1:31 am

Game Bilíngue Dúvida

Dom Ago 06, 2017 3:26 am

Boa noite(no caso boa madrugada :v)

Eu me encontro com uma dúvida. Quando a gente faz um jogo que tenha mais de uma língua qual é a "maneira mais certa", por assim dizer, de fazer ele? As ideias que tive era criar um arquivo que conteria as falas e os texto do menu. ... Mas a minha dúvida é justamente saber se esse método é o correto, e no caso de ser, gostaria de saber como fazer esses arquivos e manipulá-los (pra abusar logo, gostaria de umas dicas de como se trabalha com arquivos no GMS :sorrir:)

Grato pela atenção e desculpa por qualquer coisa :feliz2:
AS: Jonnyall

Imagem
 
Avatar do usuário
Willy
Membro
Membro
Mensagens: 20
Registrado em: Dom Ago 16, 2015 12:35 pm

Re: Game Bilíngue Dúvida

Dom Ago 06, 2017 1:37 pm

Eu faço de uma maneira interna usando Arrays 2D da seguinte maneira:

fraseIndex = 0;
idioma= 0;

//Crio um banco de frases:

frase[0,0] = "O livro está na mesa"
frase[0,1] = "The book is on the table"

frase[1,0] = "Olá Mundo!"
frase[1,1] = "Hello World"


Dessa forma, quando eu foi exibir o texto, eu simplesmente faço isso:

draw_text(16,16,frase[fraseIndex, idioma]);


Você deve alterar o valor de "frase" de acordo com o texto que você quer exibir e o mesmo vale pro idioma. É bem mais simples do que usar arquivos de texto!
 
Avatar do usuário
chicoweb
Membro
Membro
Mensagens: 135
Registrado em: Sáb Ago 22, 2015 5:41 pm

Re: Game Bilíngue Dúvida

Qua Ago 16, 2017 12:12 am

Fiz um sistema mais simples do mundo,
Vo posta como que fiz porque acabei de implantar um no meu novo game:

Tenho um script assim:

script: escrever

// Seleciona o texto dependendo do idioma, esse idioma vc salva nas configurações do game
if global.idioma == "pt" {
    texto = argument2
}else if global.idioma == "esp" {
    texto = argument3
}else if global.idioma == "ing" {
    texto = argument4
}
// Escreve o texto rapidamente, no eixo x,y
draw_text(argument0,argument1,texto);


Chamada do script, por exemplo de dentro do botão de jogar:

obj_btnjogar:Draw

escrever(16,8,"Jogar","Jugar","Play")


O método do Willy é mais inteligente eu acho, mais esse que eu fiz aí não precisa ficar consultando o vetor pra saber qual texto exibir ou modificar depois.
Nesse meu método simples aí vc mexe só na chamada e não precisa se importar com mais nada, é muito bom pra fazer alguma alteração futura.
Meus games:
Jump James - Aventura/Estratégia/Robô
Freedom of Pala Pala - Aventura/Estratégia
Prisioneira - RPG/Bloco/Ação
 
Avatar do usuário
Cheguevara
Membro
Membro
Mensagens: 27
Registrado em: Qua Set 28, 2016 3:27 pm

Re: Game Bilíngue Dúvida

Qua Ago 16, 2017 2:21 pm

chicoweb escreveu:
Fiz um sistema mais simples do mundo,
Vo posta como que fiz porque acabei de implantar um no meu novo game:

Tenho um script assim:

script: escrever

// Seleciona o texto dependendo do idioma, esse idioma vc salva nas configurações do game
if global.idioma == "pt" {
    texto = argument2
}else if global.idioma == "esp" {
    texto = argument3
}else if global.idioma == "ing" {
    texto = argument4
}
// Escreve o texto rapidamente, no eixo x,y
draw_text(argument0,argument1,texto);


Chamada do script, por exemplo de dentro do botão de jogar:

obj_btnjogar:Draw

escrever(16,8,"Jogar","Jugar","Play")


O método do Willy é mais inteligente eu acho, mais esse que eu fiz aí não precisa ficar consultando o vetor pra saber qual texto exibir ou modificar depois.

Nesse seu método simples aí você não precisa ficar criando uma forma de banco de dados que até se perde, só na chamada do objeto e não precisa se importar com mais nada, é muito bom pra fazer alguma alteração futura.
O seu modo é muito mais simples, porem variáveis globais pesam mais que array 2d ou Ds.

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 2 visitantes