[Include] Lang (Sistema de Idioma) (v/0.1)
#1

Desenvolvi esta pequena include porque precisei para o gamemode que estou a desenvolver.
Nгo tenho muito a dizer sobre ela porque alйm de estar bem simples, pelas funзхes percebe-se bem como funcionar.
Espero que alguйm a use. (:

Funзхes:

GetPlayerLang - Getar o idioma do jogador;
SetPlayerLang - Setar o idioma ao jogador;
SendClientMessageLang - Enviar uma mensagem ao jogador (no idioma do prуprio);
SendClientMessageToAllLang - Enviar uma mensagem a todos os jogadores on (cada um com o seu idioma);
GameTextForPlayerLang - Enviar uma mensagem (gametext) ao jogador (no idioma do prуprio);
GameTextForAllLang - Enviar uma mensagem (gametext) a todos os jogadores on (cada um com o seu idioma);

Como usar cada funзгo:

SetPlayerLang
pawn Код:
SetPlayerLang(playerid, lang)
ex:
pawn Код:
if(!strcmp(cmdtext, "/lang1", true))
{
    SetPlayerLanguage(playerid, 0); //PT
    SendClientMessage(playerid, 0xFFF000AA, "Idioma: Portuguкs");
    return true;
}

if(!strcmp(cmdtext, "/lang2", true))
{
    SetPlayerLanguage(playerid, 1); //ENG
    SendClientMessage(playerid, 0xFFF000AA, "Language: English");
    return true;
}

if(!strcmp(cmdtext, "/lang3", true))
{
    SetPlayerLanguage(playerid, 2); //ESP
    SendClientMessage(playerid, 0xFFF000AA, "Idioma: Espaсol");
    return true;
}
playerid - jogador que irб ser setado.
lang - o idioma que irб ser setado ao jogador (0, 1 ou 2)


SendClientMessageLang
pawn Код:
SendClientMessageLang(playerid, cor, const mensagem0[], const mensagem1[], const mensagem2[])
ex:
pawn Код:
if(!strcmp(cmdtext, "/texto", true))
{
    SendClientMessageLang(playerid, 0xFFF000AA, "Olб (:", "Hello (:", "Holla (:");
    SendClientMessageLang(playerid, 0xFFF000AA, "Eu sou bonito", "I'm beautiful", "Yo soy guapo");
    return true;
}
playerid - jogador.
cor - cor da mensagem.
const mensagem0[] - a mensagem do idioma 0.
const mensagem1[] - a mensagem do idioma 1.
const mensagem2[] - a mensagem do idioma 2.


SendClientMessageToAllLang
pawn Код:
SendClientMessageToAllLang(cor, const mensagem0[], const mensagem1[], const mensagem2[])
ex:
pawn Код:
if(!strcmp(cmdtext, "/textotodos", true))
{
    SendClientMessageToAllLang(0xFFF000AA, "Olб (:", "Hello (:", "Holla (:");
    SendClientMessageToAllLang(0xFFF000AA, "Eu sou bonito", "I'm beautiful", "Yo soy guapo");
    return true;
}
cor - cor da mensagem.
const mensagem0[] - a mensagem do idioma 0.
const mensagem1[] - a mensagem do idioma 1.
const mensagem2[] - a mensagem do idioma 2.


GameTextForPlayerLang
pawn Код:
GameTextForPlayerLang(playerid, const mensagem0[], const mensagem1[], const mensagem2[], tempo, estilo)
ex:
pawn Код:
if(!strcmp(cmdtext, "/text", true))
{
    GameTextForPlayerLang(playerid, "Eu sou bonito", "I am beautiful", "Yo soy guapo", 3000, 1);
    return true;
}
playerid - jogador.
const mensagem0[] - a mensagem do idioma 0.
const mensagem1[] - a mensagem do idioma 1.
const mensagem2[] - a mensagem do idioma 2.
tempo - o tempo que o gametext vai ficar na tela.
estilo - o estilo do gametext.


GameTextForAllLang
pawn Код:
GameTextForAllLang(const mensagem0[], const mensagem1[], const mensagem2[], tempo, estilo)
ex:
pawn Код:
if(!strcmp(cmdtext, "/texttodos", true))
{
    GameTextForAllLang("Eu sou bonito", "I am beautiful", "Yo soy guapo", 3000, 1);
    return true;
}
const mensagem0[] - a mensagem do idioma 0.
const mensagem1[] - a mensagem do idioma 1.
const mensagem2[] - a mensagem do idioma 2.
tempo - o tempo que o gametext vai ficar na tela.
estilo - o estilo do gametext.

ESTILOS - https://sampwiki.blast.hk/wiki/GameTextStyle#Text_Styles

IMAGENS:




INCLUDE:
pawn Код:
/*FUNЗХES:
GetPlayerLang(playerid)
SetPlayerLang(playerid, lang)
SendClientMessageLang(playerid, cor, const mensagem0[], const mensagem1[], const mensagem2[])
SendClientMessageToAllLang(cor, const mensagem0[], const mensagem1[], const mensagem2[])
GameTextForPlayerLang(playerid, const mensagem0[], const mensagem1[], const mensagem2[], tempo, estilo)
GameTextForAllLang(const mensagem0[], const mensagem1[], const mensagem2[], tempo, estilo)
*/


#include <a_samp>
new jLang[MAX_PLAYERS] = 0;

stock GetPlayerLang(playerid) return jLang[playerid];

stock SetPlayerLang(playerid, lang)
{
    if(lang < 0 || lang > 2)
        return false;

    if(lang == 0)
        return jLang[playerid] = 0;

    else if(lang == 1)
        return jLang[playerid] = 1;

    else if(lang == 2)
        return jLang[playerid] = 2;

    return true;
}


stock SendClientMessageLang(playerid, cor, const mensagem0[], const mensagem1[], const mensagem2[])
{
    if(jLang[playerid] == 0)
        return SendClientMessage(playerid, cor, mensagem0);

    else if(jLang[playerid] == 1)
        return SendClientMessage(playerid, cor, mensagem1);

    else if(jLang[playerid] == 2)
        return SendClientMessage(playerid, cor, mensagem2);

    return true;
}

stock SendClientMessageToAllLang(cor, const mensagem0[], const mensagem1[], const mensagem2[])
{
    for(new x = 0; x <= GetMaxPlayers(); x++)
    {
        if(IsPlayerConnected(x))
        {

            if(jLang[x] == 0)
                return SendClientMessage(x, cor, mensagem0);

            else if(jLang[x] == 1)
                return SendClientMessage(x, cor, mensagem1);

            else if(jLang[x] == 2)
                return SendClientMessage(x, cor, mensagem2);
        }
    }
    return true;
}      

stock GameTextForPlayerLang(playerid, const mensagem0[], const mensagem1[], const mensagem2[], tempo, estilo)
{
    if(jLang[playerid] == 0)
        return GameTextForPlayer(playerid, mensagem0, tempo, estilo);

    else if(jLang[playerid] == 1)
        return GameTextForPlayer(playerid, mensagem1, tempo, estilo);

    else if(jLang[playerid] == 2)
        return GameTextForPlayer(playerid, mensagem2, tempo, estilo);

    return true;
}  

stock GameTextForAllLang(const mensagem0[], const mensagem1[], const mensagem2[], tempo, estilo)
{
    for(new y = 0; y <= GetMaxPlayers(); y++)
    {
        if(IsPlayerConnected(y))
        {
            if(jLang[y] == 0)
                return GameTextForPlayer(y, mensagem0, tempo, estilo);

            else if(jLang[y] == 1)
                return GameTextForPlayer(y, mensagem1, tempo, estilo);

            else if(jLang[y] == 2)
                return GameTextForPlayer(y, mensagem2, tempo, estilo);
        }
    }
    return true;
}
http://pastebin.com/ia2Bfc6K
Reply


Messages In This Thread
Lang (Sistema de Idioma) (v/0.1) - by Knight97 - 21.07.2013, 13:40
Re: Lang (Sistema de Idioma) (v/0.1) - by godkrad - 21.07.2013, 14:12
Re: Lang (Sistema de Idioma) (v/0.1) - by Knight97 - 21.07.2013, 14:18
Re: Lang (Sistema de Idioma) (v/0.1) - by arakuta - 21.07.2013, 15:17
Re: Lang (Sistema de Idioma) (v/0.1) - by @Riichard - 21.07.2013, 15:41
Re: Lang (Sistema de Idioma) (v/0.1) - by darkxdll - 21.07.2013, 17:14
Re: Lang (Sistema de Idioma) (v/0.1) - by ProKillerpa - 21.07.2013, 17:24
Re: Lang (Sistema de Idioma) (v/0.1) - by Knight97 - 21.07.2013, 18:16
Re: Lang (Sistema de Idioma) (v/0.1) - by Lуs - 21.07.2013, 18:23
Re: Lang (Sistema de Idioma) (v/0.1) - by Juninho_Oakley - 21.07.2013, 18:42

Forum Jump:


Users browsing this thread: 1 Guest(s)