Advertisement
zBreno

ANSI characters in gametext and textdraw

Oct 22nd, 2023
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 1.86 KB | Source Code | 0 0
  1. /*
  2. Irei abordar aqui a maneira correta de inserir letras com acentos nas funções GameTextForPlayer e outras relacionadas a textdraws. Irei mostrar um exemplo abaixo errôneo do ato: GameTextForPlayer(playerid, "Você está logado no servidor!", 2000, 1); // Not work for ANSI on SAMP
  3.  
  4. Errôneo porque a codificação padrão do jogo não aceita letras acentuadas! Vejamos como você poderia contornar isso. Para poder colocar letras acentuadas, é preciso de que você substitua a letra que você quer pelo símbolo correspondente a ela. Haverá um símbolo (caractere) específico para uma porção de letras que, usando-os, você a terá acentuada.
  5.  
  6. г = љ
  7. Г = ѓ
  8. б =
  9. а = —
  10. в = ™
  11.  
  12. й = ћ
  13. Й = ‡
  14. к = џ
  15. К = €
  16.  
  17. н = ў
  18.  
  19. х = Ё
  20. у = ¦
  21. ф = §
  22. Ф = ‘
  23.  
  24. ъ = Є
  25. Ъ = “
  26.  
  27. з = њ
  28. З = …
  29.  
  30. Exemplo de uso: GameTextForPlayer (playerid, "VOCÊ ESTÁ LOGADO!", 2000, 1); // Not work!
  31. GameTextForPlayer (playerid, "VOC€ EST LOGADO!", 2000, 1); // Work
  32.  
  33. O conceito é simples, basta você substituir a letra pelo símbolo e você terá ela acentuada, conforme podem ver na segunda chamada da função GameTextForPlayer acima.
  34.  
  35. Convert ANSI characters to show in gametext and textdraw
  36.  
  37. */
  38.  
  39. stock ConverterTexto(texto[])
  40. {
  41. new string[256];
  42. for(new i = 0; texto[i]; ++i)
  43. {
  44. string[i] = texto[i];
  45. switch(string[i])
  46. {
  47. case 0xC0 .. 0xC3: string[i] -= 0x40; case 0xC7 .. 0xC9: string[i] -= 0x42; case 0xD2 .. 0xD5: string[i] -= 0x44; case 0xD9 .. 0xDC: string[i] -= 0x47; case 0xE0 .. 0xE3: string[i] -= 0x49;
  48. case 0xE7 .. 0xEF: string[i] -= 0x4B; case 0xF2 .. 0xF5: string[i] -= 0x4D; case 0xF9 .. 0xFC: string[i] -= 0x50; case 0xC4, 0xE4: string[i] = 0x83; case 0xC6, 0xE6: string[i] = 0x84; case 0xD6, 0xF6: string[i] = 0x91; case 0xD1, 0xF1: string[i] = 0xEC; case 0xDF: string[i] = 0x96; case 0xBF: string[i] = 0xAF;
  49. }
  50. }
  51. return string;
  52. }
Tags: pawn
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement