Um guia rápido para text_draw
Mostrando um texto empate
Texto desenhar são muito poderosos em que eles realmente estão limitadas apenas por sua imaginação. Que disseram que pode ser complicado de acertar. Se você é um novato para desenhar o texto é, eu recomendo você primeiro começar com o básico. Criar o sorteio de texto (você pode definir estes em qualquer lugar em seu script), mostrá-lo e, em seguida, construir sobre ela a partir daí. por exemplo.
O texto que você mostrar ou passar para TextDrawCreate não deve ser uma string vazia. Além disso, não se esqueça que você precisará para ocultar / destruir o texto, eventualmente, chamar para ser removido de uma tela de jogadores. Por exemplo, o código a seguir irá mostrar um texto de boas-vindas do servidor para os novos jogadores que entram em seu servidor ... Adicione isto a parte superior do seu script:
No OnGameModeInit () de callback acrescentar:
No retorno de chamada OnPlayerRequestSpawn (playerid) acrescentar:
Seu agora bem no seu caminho para dominar texto de draw. Com a prática de criar algo como isso é fácil: Alterar o texto de um empate texto em SA: MP 0.2.2, fomos abençoados com o "TextDrawSetString (Texto: texto, string []);" nativo. Referência a variável de texto e passar uma nova seqüência para atualizar o texto de um empate de texto (todas as propriedades existentes empate de texto são mantidos). Verificar se um empate texto é válido Você deve ter notado que há um texto inválido chamar a definir:
No entanto, você não pode simplesmente comparar um empate contra este texto definir para determinar se a sua validade. Por exemplo, o seguinte irá dar um aviso incompatibilidade tag em tempo de compilação:
Para obter arround a incompatibilidade tag, você tem duas opções.
ou ...
Código peão:
Eu prefiro o primeiro método, no entanto, se você gosta o segundo método o seu provavelmente mais fácil simplesmente redefinir INVALID_TEXT_DRAW em seu modo de jogo. Para fazer isso, adicione-o ao topo de seu modo de jogo:
Desenhar texto fuctions nativas explicou
Texto nativa: TextDrawCreate (Float: x, Float: y, text []);
Uso: . Cria um texto desenhar área na memória (não exibe na tela) Notas: A coordenada x, y é o coordenada superior esquerda para a área de desenho de texto baseado em um 640x480 "tela" (independentemente da resolução da tela). Se você planeja usar TextDrawAlignment com alinhamento de 3 (direita), a coordenada x, y é a coordenada superior direito para o sorteio de texto. Não passe uma string vazia para essa função (por exemplo, onde o texto = ""). Em 0.2.2 do sorteio texto de Max você pode criar é 1024. TextDrawDestroy nativa (Texto: texto); Uso: Destrói um empate texto. Notas: Nenhum. nativa TextDrawLetterSize (Texto: texto Float: x, Float: y); Uso : . Define a largura ea altura das letras Notas: Use com TextDrawSetProportional se você quiser mesmo espaçamento. TextDrawTextSize nativa (Texto: Float texto: x, Float: y); Uso: Quando usado com TextDrawUseBox ela muda o tamanho da caixa . Notas: Quando utilizado com TextDrawAlignment de alinhamento 3 (direita), o X e Y são as coordenadas do canto mais à esquerda da caixa. Para o alinhamento 2 (centro) os valores de x, y precisa invertido (alternar a dois) eo valor de x é a largura total da caixa. Para todos os outros alinhamentos as coordenadas x e y são para o canto mais à direita da caixa. TextDrawAlignment nativa (Texto: texto, alinhamento); Uso: Alinha o texto na área de desenho. Notas: Alinhamentos ... para a esquerda = 0 ou 1 (talvez um destes se justifica), centro e direita = 2 = 3. TextDrawColor nativa (Texto: texto, cor); Uso: Define a cor do texto. Notas: A cor é em formato hexadecimal. TextDrawUseBox nativa ( Texto: texto, use); Uso: Adiciona ou remove uma caixa (área de sombra) por trás do texto. Notas: Mostrar uma caixa com 'uso' set a 1, ou esconder uma caixa (se estiver previamente definido) com 'uso' definido para 0. TextDrawBoxColor nativa (Texto: texto, cor); Uso: Ajusta a cor da caixa de texto (usada apenas se o parâmetro "uso" TextDrawUseBox é 1). Notas: A opacidade da cor é definida pela intensidade de cor alfa (por exemplo, cor 0x000000FF tem uma opacidade caixa preta sólida, enquanto 0x000000AA tem uma semi-transparente opacidade caixa preta). TextDrawSetShadow nativa (Texto: texto, tamanho); Uso: . Adiciona uma sombra preta ao lado inferior direito do texto Notas: Os jogos de sombra fonte a fonte do texto. A sombra pode ser cortado pela área da caixa se o tamanho for muito grande para a área. TextDrawSetOutline nativa (Texto: texto, tamanho); Uso: Adiciona um contorno preto ao texto. Notas: O parâmetro tamanho define a espessura da delinear. A cor de contorno não pode ser alterado a menos que TextDrawBackgroundColor é usado. nativa TextDrawBackgroundColor (Texto: texto, cor); Uso: Ajusta o texto chamar a cor de fundo área. Notas: Se TextDrawSetOutline é usado com tamanho> 0, a cor do contorno irá coincidir com a cor usada em TextDrawBackgroundColor. Alterar o valor de cor parece alterar a cor usada em TextDrawColor. TextDrawFont nativa (Texto: texto, pia batismal); Uso: . Altera a fonte de texto Notas: Existem quatro estilos de fonte, como mostrado abaixo. Um valor de fonte superior a 3 não exibe, e qualquer coisa maior do que 16 falhas do cliente. nativa TextDrawSetProportional (Texto: texto set); Uso: Parece que para dimensionar o espaçamento do texto a uma relação proporcional. Notas: Útil quando se usa TextDrawLetterSize para garantir o texto tem ainda o espaçamento entre caracteres. TextDrawShowForPlayer nativa (playerid, Texto: texto); Uso: Mostra um empate texto para um jogador específico. Notas: Texto permanecerá na tela até que os jogadores TextDrawHideForPlayer, TextDrawHideForAll ou TextDrawDestroy é usado ou se o modo de jogo é alterada. TextDrawHideForPlayer nativa (playerid, Texto: texto); Uso: . Oculta um empate texto para um dado jogador Notas: . Nenhum TextDrawShowForAll nativa (Texto: texto); Uso: Mostra um texto para chamar a todos os jogadores. Notas: Texto permanecerá em todas as telas jogadores até TextDrawHideForPlayer, TextDrawHideForAll ou TextDrawDestroy é usado ou se o modo de jogo é alterado. TextDrawHideForAll nativa (Texto: texto); Uso: Esconde um texto para extrair todos os jogadores. Notas: Nenhum. TextDrawSetString (Texto: texto, string [] ); Uso: Altera o texto apresentado pelo desenhar texto. Notas: Nenhum.
Creditos:BetaMaster
Mostrando um texto empate
Texto desenhar são muito poderosos em que eles realmente estão limitadas apenas por sua imaginação. Que disseram que pode ser complicado de acertar. Se você é um novato para desenhar o texto é, eu recomendo você primeiro começar com o básico. Criar o sorteio de texto (você pode definir estes em qualquer lugar em seu script), mostrá-lo e, em seguida, construir sobre ela a partir daí. por exemplo.
- Código:
Código peão:
novo Texto : txt;
txt = TextDrawCreate ( 10,0 , 100,0 , "O texto de exemplo desenhar sob a caixa de chat" ) ;
TextDrawUseBox ( txt, 1 ) ;
TextDrawShowForPlayer ( playerid, txt ) ;
O texto que você mostrar ou passar para TextDrawCreate não deve ser uma string vazia. Além disso, não se esqueça que você precisará para ocultar / destruir o texto, eventualmente, chamar para ser removido de uma tela de jogadores. Por exemplo, o código a seguir irá mostrar um texto de boas-vindas do servidor para os novos jogadores que entram em seu servidor ... Adicione isto a parte superior do seu script:
- Código:
Código peão:
novo texto : gTextDraw;
No OnGameModeInit () de callback acrescentar:
- Código:
Código peão:
TextDrawShowForPlayer ( playerid, gTextDraw ) ;
No retorno de chamada OnPlayerRequestSpawn (playerid) acrescentar:
- Código:
Código peão:
TextDrawHideForPlayer ( playerid, gTextDraw ) ;
Seu agora bem no seu caminho para dominar texto de draw. Com a prática de criar algo como isso é fácil: Alterar o texto de um empate texto em SA: MP 0.2.2, fomos abençoados com o "TextDrawSetString (Texto: texto, string []);" nativo. Referência a variável de texto e passar uma nova seqüência para atualizar o texto de um empate de texto (todas as propriedades existentes empate de texto são mantidos). Verificar se um empate texto é válido Você deve ter notado que há um texto inválido chamar a definir:
- Código:
Código peão:
# Define INVALID_TEXT_DRAW (0xFFFF)
No entanto, você não pode simplesmente comparar um empate contra este texto definir para determinar se a sua validade. Por exemplo, o seguinte irá dar um aviso incompatibilidade tag em tempo de compilação:
- Código:
novo texto : gTextDraw; se ( gTextDraw == INVALID_TEXT_DRAW ) { / / blah, faça o código aqui }
Para obter arround a incompatibilidade tag, você tem duas opções.
- Código:
novo texto : gTextDraw; se ( _ : gTextDraw == INVALID_TEXT_DRAW ) { / / _: remove a marcação de gTextDraw / / blah, faça o código aqui }
ou ...
Código peão:
- Código:
novo texto : gTextDraw; se ( gTextDraw == Texto : INVALID_TEXT_DRAW ) { / / adiciona o "Texto" tag para INVALID_TEXT_DRAW / / blah, faça o código aqui }
Eu prefiro o primeiro método, no entanto, se você gosta o segundo método o seu provavelmente mais fácil simplesmente redefinir INVALID_TEXT_DRAW em seu modo de jogo. Para fazer isso, adicione-o ao topo de seu modo de jogo:
- Código:
# Undef INVALID_TEXT_DRAW
# define INVALID_TEXT_DRAW Texto: 0xFFFF
Desenhar texto fuctions nativas explicou
Texto nativa: TextDrawCreate (Float: x, Float: y, text []);
Uso: . Cria um texto desenhar área na memória (não exibe na tela) Notas: A coordenada x, y é o coordenada superior esquerda para a área de desenho de texto baseado em um 640x480 "tela" (independentemente da resolução da tela). Se você planeja usar TextDrawAlignment com alinhamento de 3 (direita), a coordenada x, y é a coordenada superior direito para o sorteio de texto. Não passe uma string vazia para essa função (por exemplo, onde o texto = ""). Em 0.2.2 do sorteio texto de Max você pode criar é 1024. TextDrawDestroy nativa (Texto: texto); Uso: Destrói um empate texto. Notas: Nenhum. nativa TextDrawLetterSize (Texto: texto Float: x, Float: y); Uso : . Define a largura ea altura das letras Notas: Use com TextDrawSetProportional se você quiser mesmo espaçamento. TextDrawTextSize nativa (Texto: Float texto: x, Float: y); Uso: Quando usado com TextDrawUseBox ela muda o tamanho da caixa . Notas: Quando utilizado com TextDrawAlignment de alinhamento 3 (direita), o X e Y são as coordenadas do canto mais à esquerda da caixa. Para o alinhamento 2 (centro) os valores de x, y precisa invertido (alternar a dois) eo valor de x é a largura total da caixa. Para todos os outros alinhamentos as coordenadas x e y são para o canto mais à direita da caixa. TextDrawAlignment nativa (Texto: texto, alinhamento); Uso: Alinha o texto na área de desenho. Notas: Alinhamentos ... para a esquerda = 0 ou 1 (talvez um destes se justifica), centro e direita = 2 = 3. TextDrawColor nativa (Texto: texto, cor); Uso: Define a cor do texto. Notas: A cor é em formato hexadecimal. TextDrawUseBox nativa ( Texto: texto, use); Uso: Adiciona ou remove uma caixa (área de sombra) por trás do texto. Notas: Mostrar uma caixa com 'uso' set a 1, ou esconder uma caixa (se estiver previamente definido) com 'uso' definido para 0. TextDrawBoxColor nativa (Texto: texto, cor); Uso: Ajusta a cor da caixa de texto (usada apenas se o parâmetro "uso" TextDrawUseBox é 1). Notas: A opacidade da cor é definida pela intensidade de cor alfa (por exemplo, cor 0x000000FF tem uma opacidade caixa preta sólida, enquanto 0x000000AA tem uma semi-transparente opacidade caixa preta). TextDrawSetShadow nativa (Texto: texto, tamanho); Uso: . Adiciona uma sombra preta ao lado inferior direito do texto Notas: Os jogos de sombra fonte a fonte do texto. A sombra pode ser cortado pela área da caixa se o tamanho for muito grande para a área. TextDrawSetOutline nativa (Texto: texto, tamanho); Uso: Adiciona um contorno preto ao texto. Notas: O parâmetro tamanho define a espessura da delinear. A cor de contorno não pode ser alterado a menos que TextDrawBackgroundColor é usado. nativa TextDrawBackgroundColor (Texto: texto, cor); Uso: Ajusta o texto chamar a cor de fundo área. Notas: Se TextDrawSetOutline é usado com tamanho> 0, a cor do contorno irá coincidir com a cor usada em TextDrawBackgroundColor. Alterar o valor de cor parece alterar a cor usada em TextDrawColor. TextDrawFont nativa (Texto: texto, pia batismal); Uso: . Altera a fonte de texto Notas: Existem quatro estilos de fonte, como mostrado abaixo. Um valor de fonte superior a 3 não exibe, e qualquer coisa maior do que 16 falhas do cliente. nativa TextDrawSetProportional (Texto: texto set); Uso: Parece que para dimensionar o espaçamento do texto a uma relação proporcional. Notas: Útil quando se usa TextDrawLetterSize para garantir o texto tem ainda o espaçamento entre caracteres. TextDrawShowForPlayer nativa (playerid, Texto: texto); Uso: Mostra um empate texto para um jogador específico. Notas: Texto permanecerá na tela até que os jogadores TextDrawHideForPlayer, TextDrawHideForAll ou TextDrawDestroy é usado ou se o modo de jogo é alterada. TextDrawHideForPlayer nativa (playerid, Texto: texto); Uso: . Oculta um empate texto para um dado jogador Notas: . Nenhum TextDrawShowForAll nativa (Texto: texto); Uso: Mostra um texto para chamar a todos os jogadores. Notas: Texto permanecerá em todas as telas jogadores até TextDrawHideForPlayer, TextDrawHideForAll ou TextDrawDestroy é usado ou se o modo de jogo é alterado. TextDrawHideForAll nativa (Texto: texto); Uso: Esconde um texto para extrair todos os jogadores. Notas: Nenhum. TextDrawSetString (Texto: texto, string [] ); Uso: Altera o texto apresentado pelo desenhar texto. Notas: Nenhum.
Creditos:BetaMaster