[Tutorial] Várias Línguas e Tradução

 
   3D Game Builder - Índice » Tutoriais
[Tutorial] Várias Línguas e Tradução
Autor Mensagem
ManoPlayForum
Usuário
Usuário


Registrado: 30/10/15
Mensagens: 344

[Tutorial] Várias Línguas e Tradução
Hoje eu vou mostrar como colocar um jogo em várias línguas.
Se for gravar um vídeo para o seu canal com esse conteúdo deixe o link dessa postagem na descrição.
Eu não sei se funciona totalmente, então se tiver um erro me manda aí nos cometários. Very Happy



Download MediaFire



Caso a imagem não apareça terá ela dentro da pasta do download.

Vamos Para os Códigos

No OnCreate do mapa cole isso:
Citação:
var Conn: TADOConnection;
var DataSet: TADODataset;

Conn:=TADOConnection.Create('Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\idiomas.mdb;');

DataSet:=Conn.Execute('select Idioma, F1, F2 from Idiomas where Numero = 0');

if DataSet.RecordCount <> 0 then
begin
SetLabelText('Frase1', DataSet.FieldAsString[1]);
SetLabelText('Frase2', DataSet.FieldAsString[2]);
end;

WriteGlobalVar('idiomas', 0);

DataSet.free;
Conn.free;


Para adicionar mais frases, na linha "DataSet:=Conn.Execute('select Idioma, F1, F2 from Idiomas where Numero = 0');" Adicione um F3 depois de F2, Ficando assim:
"DataSet:=Conn.Execute('select Idioma, F1, F2, F3 from Idiomas where Numero = 0');"

E nessa mesma frase depois de "Numero =" tem um 0 que é equivalente ao numero da linha da tradução
Citação:
0= PT
1= ES
2= EN


Na parte a seguir, ela indica as labels em que cada uma frase vai aparecer:
Citação:
if DataSet.RecordCount <> 0 then
begin
SetLabelText('Frase1', DataSet.FieldAsString[1]);
SetLabelText('Frase2', DataSet.FieldAsString[2]);
end;

Citação:
Frase1 e Frase2 são as labels e os números depois de "DataSet.FieldAsString" são os números das frases // EXEMPLO: Frase1 = [1]


Para quem quiser mais informações clique Aqui

AGORA AS TEXTURAS

Importe as texturas pro banco de dados do 3DGB.
Com os Nomes Assim dependendo das línguas que você colocou, EXEMPLO: PT1, EN1, ES1
E COLOQUE NO OBJETO QUE VOCÊ QUER.

AGORA OS BOTÕES

Cole esse código em todos os botões mudando apenas umas coisas:
Na linha "DataSet:=Conn.Execute('select Idioma, F1, F2 from Idiomas where Numero = 2');" Mude o 2 do final para a língua desejada de acordo com a tabela lá em cima.
E na linha "SetObjectMaterial('Cubo1' , 'EN1');" Muda Cubo1 para o nome do Objeto que você pôs a textura e EN1 para o nome da textura.

Citação:
var Conn: TADOConnection;
var DataSet: TADODataset;

Conn:=TADOConnection.Create('Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\idiomas.mdb;');

DataSet:=Conn.Execute('select Idioma, F1, F2 from Idiomas where Numero = 2');

if DataSet.RecordCount <> 0 then
begin
SetLabelText('Frase1', DataSet.FieldAsString[1]);
SetLabelText('Frase2', DataSet.FieldAsString[2]);
end;

WriteGlobalVar('idiomas', 0);

DataSet.free;
Conn.free;

SetObjectMaterial('Cubo1' , 'EN1');


Espero ter ajudado Smile


Seg Nov 16, 2015 10:20 pm Exibir perfil de usuários
ManoPlayForum
Usuário
Usuário


Registrado: 30/10/15
Mensagens: 344

Traduz até materiais no jogo.


Ter Nov 17, 2015 12:32 pm Exibir perfil de usuários
yuri
Usuário
Usuário


Registrado: 07/07/14
Mensagens: 162
Localização: Santarem PA

Poxa parabens...

_________________
Metallica

the unforgiven
Ter Nov 17, 2015 12:58 pm Exibir perfil de usuários
BielziimSM
Usuário
Usuário


Registrado: 15/12/13
Mensagens: 190

Ficou Ótimo \o
Ter Nov 17, 2015 8:54 pm Exibir perfil de usuários
ManoPlayForum
Usuário
Usuário


Registrado: 30/10/15
Mensagens: 344

VLW
Sex Nov 20, 2015 8:25 pm Exibir perfil de usuários
ManoPlayForum
Usuário
Usuário


Registrado: 30/10/15
Mensagens: 344

Vou ver se consigo melhorar...
Qui Nov 17, 2016 11:30 pm Exibir perfil de usuários
   3D Game Builder - Índice » Tutoriais
Página 1 de 1