SSGamers - 12 Anos online por você.

#SSGamers - A Comunidade que mais crescer no brasil!

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

SSGamers - 12 Anos online por você.

#SSGamers - A Comunidade que mais crescer no brasil!

SSGamers - 12 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.

5 participantes

    Tutorial Como mecher em TextDraws.

    avatar
    -
    SS - Membro de honra
    SS - Membro de honra


    Celular : -
    Mensagens : 2172
    Moedas : 7354
    Data de inscrição : 12/10/2015
    Idade : 73

    Tutorial Como mecher em TextDraws. Empty Tutorial Como mecher em TextDraws.

    Mensagem por - Ter 28 Jun 2016 - 16:54

    Principais funções:

    Código:
    Função                               Explicação

    TextDrawShowForPlayer  Serve para mostrar o textdraw somente ao player.
    TextDrawShowForAll  Mostra-rá para todos
    TextDrawHideForPlayer  Desligara o textdraw somente para o do Player (playerid)
    TextDrawHideForAll  Desligará o TextDraw De Todos
    TextDrawDestroy          Apagará o TextDraw,isto é mais usado no OnPlayerDisconnect
    Brasil=TextDrawCreate  criará um novo text draw
    TextDrawAlignment  definirá se vai ser no Centro ou nos Lados
    TextDrawBoxColor  definirá se vai ter uma caixa no textdraw
    TextDrawBackgroundColor  definirá cor de fundo do textdraw
    TextDrawFont          Nem Preciso dizer que é a fonte do TextDraw
    TextDrawLetterSize  define o tamanho da letra do textdraw
    TextDrawColor          define a cor do textdraw
    TextDrawSetOutline  define se usará uma estrutura
    TextDrawSetProportional  define a escala do texto se será desproporcional ou não
    TextDrawSetShadow  Sombra do textdraw
    TextDrawUseBox          Se o textdraw usará Um BOx ou não
    TextDrawSetString  Define uma string no textdraw

    Para nós criarmos qualquer textdraw, devemos primeiro criar uma variável aonde irá armazenar o ID do nosso textdraw

    Código:
    new Text:Brasil; //

    A Função TextDrawCreate cria um textdraw. quando o textdraw é criado ela é armazenada na variável Brasil o ID dela, para nós termos total controle sobre ela.

    Código:
    public OnGameModeInit()
    {
      Brasil = TextDrawCreate(240.0,580.0,"Brasil Rumo Ao Hexa");
      return 1;
    }

    Quando determinamos que nosso textdraw não tem mais utilidade, precisaremos deletar ele para liberar a memória armazenada na variável Brasil

    Código:
    public OnPlayerDisconnect(playerid, reason)
    {
     TextDrawDestroy(Brasil);
     return 1;
    }

    Para que nosso textdraw possa ser enxergado para todos, devemos exibi-la podendo usar duas funções, TextDrawShowForPlayer aonde é exibida somente para um jogador ou TextDrawShowForAll aonde é exibido há todos ao mesmo tempo:

    Código:
    public OnPlayerConnect(playerid)
    {
      TextDrawShowForPlayer(playerid,Brasil);
      TextDrawShowForAll(Brasil);
    }

    Obsevação: Quando deletamos um textdraw, ela não pode ser mais usada

    Quando queremos esconder um textdraw há um jogador, usamos a função TextDrawHidForPlayer, quando queremos esconder de todos os jogadores, usamos a função TextDrawHideForAll:

    Código:
    if (strcmp("/desligar", cmdtext, true) == 0)
    {  
    TextDrawHideForPlayer(playerid,Brasil);
    TextDrawHideForAll(Brasil);
    return 1;  
    }

    Observação: Quando escondemos uma textdraw, ela não é deletada

    Com a função TextdrawAlignment, podemos alinhar nosso texto ao tamanho dele

    Código:
    public OnGameModeInit()
    {
      Brasil = TextDrawCreate(240.0,580.0,"Brasil Rumo Ao Hexa");
      TextDrawAlignment(Brasil, 2); //
      return 1;
    }

    Já a função TextdrawBoxColor gera uma "Caixa" atrás do nosso textraw:

    Código:
    public OnGameModeInit()
    {
      Brasil = TextDrawCreate(240.0,580.0,"Brasil Rumo Ao Hexa");
      TextDrawBoxColor(Brasil,0x000000FF);
      return 1;
    }

    A Função TextDrawBackgroundColor modifica a "sombra" de nosso textraw.

    Código:
    public OnGameModeInit()
    {
      Brasil = TextDrawCreate(240.0,580.0,"Brasil Rumo Ao Hexa");
      TextDrawUseBox(Brasil,1);
      TextDrawBackgroundColor(Brasil, 0xFFFFFFFF);//branco
    return 1;
    }


    A Função TextDrawFont, define o estilo da fonte que iremos exibir na tela do jogador, tendo disponível 3 estilos:

    Tutorial Como mecher em TextDraws. HftLSbE

    Código:
    public OnGameModeInit()
    {
      Brasil = TextDrawCreate(240.0,580.0,"Brasil Rumo Ao Hexa");
      TextDrawFont(Brasil,1);
    return 1;
    }

    A Função TextDrawLetterSize define o tamanho do nosso texto. Quando utilizamos algum texto para ser clicado, devemos sempre definir essa função.

    Código:
    public OnGameModeInit()
    {
      Brasil = TextDrawCreate(240.0,580.0,"Brasil Rumo Ao Hexa");
      TextDrawLetterSize(Brasil, 3.2 ,5.1);
    return 1;
    }

    A Função TextDrawColor modifica a cor do texto da nossa textdraw, podendo ser usado números hexadecimais ou decimais e também cores da função GameTextForPlayer:

    Código:
    ~n~ Nova linha
        ~r~ Vermelho
        ~g~ Verde
        ~b~ Azul
        ~w~ Branco
        ~y~ Amarelo
        ~p~ Roxo
        ~l~ Preto( L em minúsculo )
        ~h~ Deixa seu texto mais claro(não funciona na cor preto).

    Código:
    public OnGameModeInit()
    {
      Brasil = TextDrawCreate(240.0,580.0,"Brasil Rumo Ao ~r~H~h~e~h~x~~h~a");
      TextDrawColor(Brasil,0xFFFFFFFF);//branco
    return 1;
    }

    A Função TextDrawSetOutline define o contorno nosso textdraw.

    Código:
    public OnGameModeInit()
    {
      Brasil = TextDrawCreate(240.0,580.0,"Brasil Rumo Ao Hexa");
      TextDrawSetOutline(Brasil,1);//Define a espessura do Contorno
    return 1;
    }

    A Função TextDrawSetProportional deixa todas as letras em tamanho iguais e proporcionais ao resto da frase

    Código:
    public OnGameModeInit()
    {
      Brasil = TextDrawCreate(240.0,580.0,"Brasil Rumo Ao Hexa");
      TextDrawSetProportional(Brasil,1);//booleano que indica se o TextDraw é proporcional
      return 1;
    }

    Com a função TextDrawSetShadow, é possível definir o tamanho da sombra no textdraw

    Código:
    public OnGameModeInit()
    {
      Brasil = TextDrawCreate(240.0,580.0,"Brasil Rumo Ao Hexa");
      TextDrawSetShadow(Brasil,1);//O tamanho da sombra
      return 1;
    }

    A Função TextDrawUseBox habilita uma "caixa" atrás do nosso textdraw

    Código:
    public OnGameModeInit()
    {
      Brasil = TextDrawCreate(240.0,580.0,"Brasil Rumo Ao Hexa");
      TextDrawUseBox(Brasil,1);
      TextDrawBackgroundColor(Brasil, 0xFFFFFFFF);//branco
    return 1;
    }

    A Função TextDrawSetString modifica o texto original de uma textdraw, normalmente essa função é utilizada

    Código:
    new texto;

    forward TrocarTexto();
    public TrocarTexto(){

     if(texto == 0) TextDrawSetString(Brasil, "Santa Catarina");
     if(texto == 1) TextDrawSetString(Brasil, "Sao Ludgero");
     if(texto == 2) TextDrawSetString(Brasil, "Braco do Norte");
     if(texto == 3) TextDrawSetString(Brasil, "Orleans");
     if(texto == 4) TextDrawSetString(Brasil, "Criciuma");
     texto ++;
     return SetTimer("TrocarTexto", 5000, false);
    }

    Novas funções:

    Todos os exemplos citados acima podem ser usados para PlayerTextDraw, a única diferença é que em cada função é adicionado um "Player":

    Código:

    Função                             Explicação

    CreatePlayerTextDraw        Cria um textdraw
    PlayerTextDrawAlignment        Define um alinhamento em nossa textdraw.
    PlayerTextDrawBackgroundColor Muda acorda da sombra de nosso textdraw
    PlayerTextDrawBoxColor        Modifica acorda "caixa" de nosso textdraw
    PlayerTextDrawColor        Define acordo nosso textdraw
    PlayerTextDrawDestroy        Destrói a textdraw
    PlayerTextDrawFont        Definea fonte do textdraw
    PlayerTextDrawHide        Esconde a textdraw
    PlayerTextDrawLetterSize Modificao tamanho do nosso textdraw
    PlayerTextDrawSetOutline Habilita contorno de nosso textdraw
    PlayerTextDrawSetProportional Modifica a escaladas letras, tornando todas alinhadas
    PlayerTextDrawSetShadow        Define a sombra em nosso textdraw
    PlayerTextDrawSetString        Modifica a frase do nosso textdraw
    PlayerTextDrawShow        Exibe o Textdraw para o jogador
    PlayerTextDrawTextSize        Modifica o tamanho do texto da nossa textdraw
    PlayerTextDrawUseBox        Habilita uma "Caixa" atrás do nosso textdraw
    PlayerTextDrawSetSelectable Define se a nossa textdraw pode ser clicada
    PlayerTextDrawSetPreviewModel Define um modelo 3D para ser exibido em textdraw
    PlayerTextDrawSetPreviewRot Define a rotação de nosso textdraw 3D
    PlayerTextDrawSetPreviewVehCol Modifica acordo nossoTextdraw 3D

    As funções "PlayerTextdraw" são basicamente as mesmas que as citadas no início do tópico, exceto que algumas funções foram adicionadas como PlayerTextDrawSetSelectable aonde ativa um textdraw que pode ser clicado.

    Como criar um textdraw clicável
    Para fazer este feito, primeiro devemos criar um textdraw qualquer, neste exemplo vamos usar para o PlayerTextdraw:

    Código:
    #include <a_samp>

    new PlayerText:BemVindo[MAX_PLAYERS];

    public OnPlayerConnect(playerid)
    {
        // Criando um textdraw, com as funções do nosso tutorial
        BemVindo[playerid] = CreatePlayerTextDraw(playerid, 10.000000, 141.000000, "MyTextDraw");
        PlayerTextDrawTextSize(playerid, BemVindo[playerid], 60.000000, 20.000000);
        PlayerTextDrawAlignment(playerid, BemVindo[playerid],0);
        PlayerTextDrawBackgroundColor(playerid, BemVindo[playerid],0x000000ff);
        PlayerTextDrawFont(playerid, BemVindo[playerid], 1);
        PlayerTextDrawLetterSize(playerid, BemVindo[playerid], 0.250000, 1.000000);
        PlayerTextDrawColor(playerid, BemVindo[playerid], 0xffffffff);
        PlayerTextDrawSetProportional(playerid, BemVindo[playerid], 1);
        PlayerTextDrawSetShadow(playerid, BemVindo[playerid], 1);

        // Habilitando que este textdraw é clicável
        PlayerTextDrawSetSelectable(playerid, BemVindo[playerid], 1);

        // Exibindo para o jogador
        PlayerTextDrawShow(playerid, BemVindo[playerid]);
        return 1;
    }  

    Segundo o código acima, quando o jogador conectar ao seridor será criado um PlayerTextdraw aonde será definido várias configurações sobre nossa textdraw inclusive a função PlayerTextDrawSetSelectable. Se você testar o código em seu servidor, notará que aparecera "MyTextDraw" na tela e você pode clicar nele porém não irá acontecer nada!

    Para nós criar uma "reação" para nosso textdraw, vamos usar a callback própria dele chamada OnPlayerClickPlayerTextDraw

    Código:
    public OnPlayerClickPlayerTextDraw(playerid, PlayerText:playertextid)
    {
        if(playertextid == BemVindo[playerid])
        {
             SendClientMessage(playerid, 0xFFFFFFAA, "Você clicou no textdraw!");
             CancelSelectTextDraw(playerid);
        }
        return 1;
    }  

    Quando o jogador entrar no servidor, será criado um textdraw com todas as definições na callback OnPlayerConnect e quando o jogador clicar na textdraw automaticamente será mandado uma mensagem e a opção de selecionar será desativada.
    Smokiie_Gamer
    Smokiie_Gamer
    --> Postador Iniciante
    --> Postador Iniciante


    Celular : +4915778593172
    Mensagens : 44
    Moedas : 3148
    Data de inscrição : 25/11/2015
    Idade : 21
    Localização : Em casa .-.

    Tutorial Como mecher em TextDraws. Empty Re: Tutorial Como mecher em TextDraws.

    Mensagem por Smokiie_Gamer Ter 28 Jun 2016 - 17:31

    Bom



    Hello
    Me adc no skype fiao:D
    facebook:smokiiegamer23
    Lucas_Scarfe
    Lucas_Scarfe
    --> Postador Médio
    --> Postador Médio


    Steam Steam : Teacher English
    Zello : Scripter SA:MP
    Celular : 011966569419
    Mensagens : 321
    Moedas : 3551
    Data de inscrição : 08/05/2016

    Tutorial Como mecher em TextDraws. Empty Re: Tutorial Como mecher em TextDraws.

    Mensagem por Lucas_Scarfe Ter 28 Jun 2016 - 17:44

    Boa!

    iMicrosoft
    iMicrosoft
    --> Postador Iniciante
    --> Postador Iniciante


    Celular : 021 99097-6212
    Mensagens : 7
    Moedas : 2895
    Data de inscrição : 07/05/2016

    Tutorial Como mecher em TextDraws. Empty Re: Tutorial Como mecher em TextDraws.

    Mensagem por iMicrosoft Ter 28 Jun 2016 - 21:49

    Excelente senhor Sweet
    Lucas_Scarfe
    Lucas_Scarfe
    --> Postador Médio
    --> Postador Médio


    Steam Steam : Teacher English
    Zello : Scripter SA:MP
    Celular : 011966569419
    Mensagens : 321
    Moedas : 3551
    Data de inscrição : 08/05/2016

    Tutorial Como mecher em TextDraws. Empty Re: Tutorial Como mecher em TextDraws.

    Mensagem por Lucas_Scarfe Qua 29 Jun 2016 - 9:32

    Muito Bom ira ajuudar mt novatos

    ChryyS
    ChryyS
    --> Postador Iniciante
    --> Postador Iniciante


    Celular : 4298555478
    Mensagens : 7
    Moedas : 3381
    Data de inscrição : 11/01/2015
    Idade : 24

    Tutorial Como mecher em TextDraws. Empty Re: Tutorial Como mecher em TextDraws.

    Mensagem por ChryyS Sáb 20 Ago 2016 - 11:00

    Tutorial excelente, ajudará muitos novatos que tem interesse em programar!!



    Tutorial Como mecher em TextDraws. Q2eQ997

    Conteúdo patrocinado


    Tutorial Como mecher em TextDraws. Empty Re: Tutorial Como mecher em TextDraws.

    Mensagem por Conteúdo patrocinado


      Data/hora atual: Qui 28 Mar 2024 - 9:42