SSGamers - 13 Anos online por você.

#SSGamers - A Comunidade que mais crescer no brasil!

Participe do fórum, é rápido e fácil

SSGamers - 13 Anos online por você.

#SSGamers - A Comunidade que mais crescer no brasil!

SSGamers - 13 Anos online por você.

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Chegou o novo tema 6.5.5 - SSGamers - Servidores online de qualidade - Aproveite e entre para nossa comunidade, inscreva-se já! - Ouça nossa web radio - Veja nossas novidades - Participe dos nossos setores de jogos online - Parcerias aberta fale já com um administrador.

    [Tutorial] Criando um servidor em dois Idiomas [INICIANTES]

    Weslley_Script
    Weslley_Script
    SS - Fundador
    SS - Fundador


    Steam Steam : WeslleySSGames
    Zello : WeslleySSGames
    Mensagens : 11624
    Moedas : 1032875
    Data de inscrição : 06/10/2011
    Idade : 28
    Localização : Brasil

    [Tutorial] Criando um servidor em dois Idiomas [INICIANTES] Empty [Tutorial] Criando um servidor em dois Idiomas [INICIANTES]

    Mensagem por Weslley_Script Ter 28 Mar 2023 - 11:32

    Bom galera venho trazer aqui meu primeiro tutorial, bem simples porйm pode ser de grande utilidade a muitos.
    Antes de tudo jб aviso que a forma que irei fazer й a forma que aprendi e que acho mais simples.

    Explicaзгo

    O sistema funcionarб da seguinte forma , quando o jogador entrar no servidor irб aparecer um Dialog para que ele escolha a linguagem, a escolha do jogador serб armazenada em uma variбvel global, essa variбvel nгo serб adicionada na conta do jogador como o score,dinheiro , ou seja, suponhamos que Jogador1 entrou no servidor fez o login e spawnou, nesse momento o Jogador1 escolhe a linguagem que deseja e as configuraзхes serгo ajustadas de acordo com sua escolha atй que ele deslogue. Quando o Jogador1 entrar no servidor novamente ele escolherб a linguagem que deseja novamente e as configuraзхes que vocк deseja irгo ser atribuнdas para ele novamente.

    Downloads

    Caso queira seguir o tutorial todo e conseguir fazer tudo o que serб feito aqui em baixo, baixe a include ZCMD (Clique Aqui).
    Apуs fazer o download vб na pasta do seu servidor, abra a pasta Pawno e coloque o arquivo dentro da pasta Includes.
    Iniciando

    * Primeiro Passo : No topo do seu GM(Game-Mode) inclua as includes.
    Code:

    Código:
    #include <a_samp>


    #include <zcmd>


    * Segundo Passo : Apуs incluir as includes devemos criar a variбvel Global que armazenarб a Linguagem escolhida por cada jogador.
    No topo do GM declare :
    Code:

    Código:
    new pLinguagem[MAX_PLAYERS] = 0; //Criamos uma vбriavel Global com o nome "pLinguagem" para armazenar a linguagem escolhida pelo jogador.


    Explicaзгo :
    Code:

    Código:
    [MAX_PLAYERS] //Com essa funзгo a variбvel serб criada para cada player que conectar-se ao servidor.


    Code:

    Código:
    = 0; //Definimos a variбvel de inнcio para 0 onde para nуs 0 significarб NULA


    0 = NULA (Sem Linguagem Selecionada)


    1 = Inglкs (Linguagem EN Selecionada)


    2 = Portuguкs (Linguagem PT Selecionada)




    * Terceiro Passo : Agora iremos definir a Dialog que serб usada e a cor que serб usada em um comando.
    Ainda no topo do GM:
    Code:

    Código:
    #define     DIALOG_LINGUAGEM        1


    Code:

    Código:
    #define amarelo 0xFFFF00FF


    Organize seu GM, nгo deixe tudo junto coloque cores juntas e separadas de Dialogs sempre adicionando comentбrios em seu GM se possнvel.

    * Quarto Passo : Agora iremos criar a Dialog onde ao spawnar o player irб escolher a linguagem desejada.

    Apertando (CTR + F) com o pawno aberto busque pela Public OnPlayerRequestSpawn(playerid) e coloque o cуdigo abaixo.
    Code:

    Código:
    public OnPlayerRequestSpawn(playerid)


    {


       ShowPlayerDialog(playerid, DIALOG_LINGUAGEM, DIALOG_STYLE_MSGBOX, "Language/Linguagem",


       "Just choose Your Language !\n\


       Apenas Escolha sua Linguagem !",


       "English", "Portuguкs");


       return 1;


    }


    Fiz a Dialog de maneira bem simples, caso queira pode sim implementar cores nas frases, mudar, adicionar ou remover-las.

    Explicaзгo :
    Code:

    Código:
    public OnPlayerRequestSpawn(playerid) = Dentro dessa Public sгo colocadas funзхes para acontecerem assim que o jogador Spawnar.


    ShowPlayerDialog = Funзгo para mostrar a Dialog para o Player.


    playerid = A Dialog serб mostrada para um certo playerid.
    DIALOG_LINGUAGEM = O nome da Dialog que serб chamada (Definimos ela no topo do GM).
    DIALOG_STYLE_MSGBOX = O estilo da Dialog que irб aparecer. (Caso queira estudar mais sobre Dialogs "Clique Aqui")
    "Language/Linguagem" = Coloque dentro das Aspas o que vocк deseja como tнtulo da Dialog.
    "Just choose Your Language !
    Apenas Escolha sua Linguagem !" = Coloque dentro das Aspas oque vocк quer como descriзгo dentro da Dialog.
    \n\ = Use quando quiser passar para a linha de baixo (Quebra de linha).
    "English", "Portuguкs" = Dentro das primeiras Aspas coloque o nome do Botгo1 ena segunda o Botгo2.
    * Quinto Passo : Agora iremos dar funзгo para os dois botхes da Dialog.
    Novamente Apertando (CTR + F) busque pela Public public OnDialogResponse e coloque o cуdigo abaixo.

    Code:

    Código:
    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])


    {


       if(dialogid == DIALOG_LINGUAGEM)


       {


         if(response)


         {


            linguagem[playerid] = 1;


       SendClientMessage(playerid, -1,"{BD0D0D}Try /help , and have a Good Game !");


          }else


            {


                linguagem[playerid] = 2;


                SendClientMessage(playerid, -1,"{BD0D0D}Digite /ajuda , e tenha um bom jogo !");


            }


        }


        return 1;


    }


    Explicaзгo :

    Code:

    Código:
    public OnDialogResponse = Nessa public definimos as respostas de cada botгo na Dialog.


    if(dialogid == DIALOG_LINGUAGEM) = Estrutura condicional para caso for chamada a DIALOG_LINGUAGEM.


    if(response) = Estrutura condicional para caso o jogador clicar no primeiro botгo (English)


    linguagem[playerid] = 1; = Definimos a variбvel do jogador para 1 (English)


    else = Caso nгo seja no primeiro botгo, ou seja, no segundo (Portuguкs).


    linguagem[playerid] = 2; = Definimos a variбvel do jogador para 2 (Portuguкs)


    * Sexto Passo : Aqui serб apenas um complemento para iniciantes caso queiram criar o comando /ajuda e /help.

    Comando /ajuda :
    Code:


    Código:
    CMD:ajuda(playerid)


    {


      SendClientMessage(playerid, amarelo, "Para ver todos os comandos digite /cmds ou /comandos.");


      SendClientMessage(playerid, amarelo, "Para ver as regras do servidor digite /regras.");


      SendClientMessage(playerid, amarelo, "Para ver os creditos do servidor digite /creditos.");


      return 1;


    }


    Comando /help:
    Code:


    Código:
    CMD:help(playerid)


    {


      SendClientMessage(playerid, amarelo, "You can see all the commands using /cmds ou /commands.");


      SendClientMessage(playerid, amarelo, "You can see the rules writing /rules.");


      SendClientMessage(playerid, amarelo, "For see the credits of this server use /credits.");


      return 1;


    }


    Explicaзгo Final

    Vocк pode implementar muito mais esse sistema, eu apenas lhe dei a base mas vocк pode usar a variбvel como restriзгo de alguns comandos, exemplo (Pessoas que escolheram PT nгo podem usar comandos da бrea EN) isso й vocк quem decide ! Espero que faзam bom proveito disso. Como foi meu primeiro tutorial e ainda estou estudando MUITO pawn, vejo que tenho muita coisa a aprender pela frente, portanto quaisquer crнticas sгo Bem-Vindas desde que sejam para crescimento. Qualquer dъvida poste e eu tentarei ajudar.
    Crйditos
    - Tutorial feito por mim ZackT.
    - Retirei a ideia do SA-MP DayZ pois foi o primeiro servidor que vi com esse sistema.
    - Ao Jonathan Feitosa, pois comentei o tutorial dele aqui.

    Reajustes serгo sempre feitos.



    [Tutorial] Criando um servidor em dois Idiomas [INICIANTES] D07Xwqb
    [Tutorial] Criando um servidor em dois Idiomas [INICIANTES] Yjab9HN

      Data/hora atual: Ter 5 Nov 2024 - 10:58