Advertisement
Chip7

[TUT] Criando TextDraw's que pisca

May 13th, 2012
414
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 4.71 KB | None | 0 0
  1. /*VISITE NOSSO SITE: http://www.sampknd.com/
  2.   SAMP KND MELHOR BLOG DE SAMP DO BRASIL
  3. */
  4.  
  5. #include <a_samp>
  6.  
  7. #define COR_TEXT_1 0xFF0000AA //COR 1 da TextDraw
  8. #define COR_TEXT_2 0xFFFF00AA //COR 2 da TextDraw
  9. #define COR_TEXT_3 0x00FFFFAA //COR 3 da TextDraw
  10. #define COR_TEXT_4 0x88FF9FAA //COR 4 da TextDraw
  11. #define COR_TEXT_5 0xFF9900AA //COR 5 da TextDraw
  12.  
  13. TrocarCor(playerid); //Definimos aqui para podermos usar a public
  14. forward PararDePiscar(playerid); //Definimos aqui para podermos usar a public
  15.  
  16. new Text:Exemplo; //Necessario para criar a TextDraw
  17. new pText; //Será usado a frente
  18. new TimerForPlayer[MAX_PLAYERS]; //Iremos usar no KillTimer
  19. new TimerForAll; //Iremos usar no KillTimer
  20.  
  21. public OnGameModeInit()
  22. {
  23.     Exemplo = TextDrawCreate(123.0, 123.0, "Tutorial by CidadeNovaRP -q"); //Criando a TetxDraw
  24.     pText = false; //Setamos a variavel/bool pText a false
  25.     return 1;
  26. }
  27.  
  28. public TrocarCor(playerid) //public que troca a Text de cor de acordo com "playerid"
  29. {
  30.     if(playerid == -1) //Se for para Todos
  31.     {
  32.         #define TextDrawHide TextDrawHideForAll(Exemplo); //Define TextDrawHideForAll
  33.         #define TextDrawShow TextDrawShowForAll(Exemplo); //Define TextDrawShowForAll
  34.     }
  35.     else //Se não for para todos
  36.     {
  37.         #undef TextDrawHide //Undefine TextDrawHide
  38.         #undef TextDrawShow //Undefine TextDrawShow
  39.         #define TextDrawHide TextDrawHideForPlayer(playerid, Exemplo); //Define TextDrawHideForPlayer
  40.         #define TextDrawShow TextDrawShowForPlayer(playerid, Exemplo); //Define TextDrawShowForPlayer
  41.     }
  42.     if(pText == 0) //Verifica se pText = 0
  43.     {
  44.         TextDrawHide //Esconde a TextDraw para o "playerid" ou for all (de acordo com a #define)
  45.         TextDrawColor(Exemplo, COR_TEXT_1); //Seta a cor de acordo com "COR_TEXT_1"
  46.         TextDrawShow //Mostra a TextDraw para o "playerid" ou for all (de acordo com a #define)
  47.         pText = 1;
  48.     }
  49.     else if(pText == 1) //Verifica se pText = 1
  50.     {
  51.         TextDrawHide //Esconde a TextDraw para o "playerid" ou for all (de acordo com a #define)
  52.         TextDrawColor(Exemplo, COR_TEXT_2); //Seta a cor de acordo com "COR_TEXT_2"
  53.         TextDrawShow //Mostra a TextDraw para o "playerid" ou for all (de acordo com a #define)
  54.         pText = 2;
  55.     }
  56.     else if(pText == 2) //Verifica se pText = 2
  57.     {
  58.         TextDrawHide //Esconde a TextDraw para o "playerid" ou for all (de acordo com a #define)
  59.         TextDrawColor(Exemplo, COR_TEXT_3); //Seta a cor de acordo com "COR_TEXT_3"
  60.         TextDrawShow //Mostra a TextDraw para o "playerid" ou for all (de acordo com a #define)
  61.         pText = 3;
  62.     }
  63.     else if(pText == 3) //Verifica se pText = 3
  64.     {
  65.         TextDrawHide //Esconde a TextDraw para o "playerid" ou for all (de acordo com a #define)
  66.         TextDrawColor(Exemplo, COR_TEXT_4); //Seta a cor de acordo com "COR_TEXT_4"
  67.         TextDrawShow //Mostra a TextDraw para o "playerid" ou for all (de acordo com a #define)
  68.         pText = 4;
  69.     }
  70.     else if(pText == 4) //Verifica se pText = 4
  71.     {
  72.         TextDrawHide //Esconde a TextDraw para o "playerid" ou for all (de acordo com a #define)
  73.         TextDrawColor(Exemplo, COR_TEXT_5); //Seta a cor de acordo com "COR_TEXT_5"
  74.         TextDrawShow //Mostra a TextDraw para o "playerid" ou for all (de acordo com a #define)
  75.         pText = 0;
  76.     }
  77.     return 1;
  78. }
  79.  
  80. public PararDePiscar(playerid) //public que para de piscar de acordo com o "playerid"
  81. {
  82.     if(playerid == -1) return TextDrawHideForAll(Exemplo), KillTimer(TimerForAll); //Esconde a TextDraw para todos e Mata/destroi o Timer se "playerid" == -1
  83.     TextDrawHideForPlayer(playerid, Exemplo), KillTimer(TimerForPlayer[playerid]); //Esconde a TextDraw para o "playerid" e Mata/destroi o Timer
  84.     return 1;
  85. }
  86.  
  87. public OnPlayerCommandText(playerid, cmdtext[])
  88. {
  89.     if (strcmp("/piscarparamim", cmdtext, true, 10) == 0)
  90.     {
  91.         TextDrawShowForPlayer(playerid, Exemplo); //Mostra a TextDraw pra você
  92.         pText = false; //Setamos a variavel/bool pText a false
  93.         TimerForPlayer[playerid] = SetTimerEx("TrocarCor", 1000, true, "i", playerid); //Chama a callback "TrocarCor"
  94.         SetTimerEx("PararDePiscar", 30000, false, "i", playerid); //Timer para fazer parar de piscar para você
  95.         return 1;
  96.     }
  97.     if (strcmp("/piscarparatodos", cmdtext, true, 10) == 0)
  98.     {
  99.         TextDrawShowForAll(Exemplo); //Mostra a TextDraw pra todos
  100.         pText = false; //Setamos a variavel/bool pText a false
  101.         TimerForAll = SetTimerEx("TrocarCor", 1000, true, "i", -1); //Chama a callback "TrocarCor"
  102.         SetTimerEx("PararDePiscar", 30000, false, "i", -1); //Timer para fazer parar de piscar para todos
  103.         return 1;
  104.     }
  105.     return 0;
  106. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement