Olá,
Hoje vou estar mostrando a você, a como criar um servidor com mais de uma língua utilizando o XML. Não vou explicar muito, porque é bem fácil, é tudo questão de prestar atenção nos códigos e seguir igual. Então vamos lá:
[list="box-sizing: border-box; margin-bottom: 10px; color: rgb(51, 51, 51); font-family:"][*]Copie este cуdigo abaixo, e salve-o em seus scriptfiles com o nome language.xml:Hoje vou estar mostrando a você, a como criar um servidor com mais de uma língua utilizando o XML. Não vou explicar muito, porque é bem fácil, é tudo questão de prestar atenção nos códigos e seguir igual. Então vamos lá:
Código PHP:
- Código:
<?xml version="1.0" encoding="UTF-8"?>
<language sigla="pt-BR">
<string id="msg_boasvindas" output="Ola"/>
</language>
<language sigla="en">
<string id="msg_boasvindas" output="Hello"/>
</language>
Citar:
Citar:
E a onde está escrito ' Texto pra quando o player logar no servidor ' é o texto final que você quer que seja exibido em sua mensagem.
Entre por exemplo:
Código PHP:
- Código:
<string id="forum_samp" output="Olб fуrum sa-mp"/>
[*]Agora vamos ao cуdigo peão:
Primeiro salve a include na pasta de includes do seu gamemode, e depois chame-a no gamemode, exemplo:
Código PHP:
- Código:
#include <xml>
Código PHP:
- Código:
new XML:lang; // crie uma variavel, na qual vocк utilizarб para dizer qual й o arquivo que vocк estб "usando"
public OnGameModeInit()
{
lang = xml_open("languages.xml"); // Indique onde estб o arquivo xml.
return 1;
}
Citar:
nova mensagem[100]; xml_get_string( variavel definida acima , "language[@sigla=\" A sigla que você define lá em cima \"]/string[@id=\" O id que você define lá em cima \"]/@output", msg ); |
Código PHP:
- Código:
new msg[100]; // variavel que irб retornar a msg
xml_get_string(lang, "language[@sigla=\"fr\"]/string[@id=\"mensagem_Login\"]/@output", msg);
Código PHP:
- Código:
SendClientMessage(playerid, -1, msg);
Código PHP:
- Código:
new msg[100]; // variavel que irб retornar a msg
xml_get_string(lang, "language[@sigla=\"fr\"]/string[@id=\"mensagem_Login\"]/@output", msg);
SendClientMessage(playerid, -1, msg);
[/list]
Exemplo de código:
- Código:
#include <a_samp>
#include "../include/xml.inc"
main()
{
print("\n----------------------------------");
print(" Blank Gamemode by your name here");
print("----------------------------------\n");
}
new XML:lang;
public OnGameModeInit()
{
lang = xml_open("languages.xml");
return 1;
}
public OnGameModeExit()
{
xml_close(lang);
return 1;
}
public OnPlayerConnect(playerid)
{
ShowPlayerDialog(playerid, 1, DIALOG_STYLE_LIST, "Select your language", "Portuguкs\nEnglish", "Select", "");
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 1){
new msg[20];
if(listitem==0){
xml_get_string(lang, "language[@sigla=\"pt-BR\"]/string[@id=\"msg_boasvindas\"]/@output", msg);
SendClientMessage(playerid, -1, msg);
return 1;
}
if(listitem==1)
{
xml_get_string(lang, "language[@sigla=\"en\"]/string[@id=\"msg_boasvindas\"]/@output", msg);
SendClientMessage(playerid, -1, msg);
return 1;
}
}
return 1;
}
Espero que tenha entendido, a explicação não ficou muito boa, mas é bem simples de se compreender. Você pode criar algo mais complexo usando este exemplo eu passei, espero que gostem. Para baixar o plugin ea include clique aqui .
Creditos: HaRdiiZin