SHARE
TWEET

[TUT] Criando TextDraw's que pisca

Chip7 May 13th, 2012 252 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  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 0xF60000AA //COR 1 da TextDraw
  8. #define COR_TEXT_2 0x00F600AA //COR 2 da TextDraw
  9.  
  10. TrocarCor(playerid); //Definimos aqui para podermos usar a public
  11. forward PararDePiscar(playerid); //Definimos aqui para podermos usar a public
  12.  
  13. new Text:Exemplo; //Necessario para criar a TextDraw
  14. new bool:pText; //Será usado a frente
  15. new TimerForPlayer[MAX_PLAYERS]; //Iremos usar no KillTimer
  16. new TimerForAll; //Iremos usar no KillTimer
  17.  
  18. public OnGameModeInit()
  19. {
  20.     Exemplo = TextDrawCreate(123.0, 123.0, "Tutorial by CidadeNovaRP -q"); //Criando a TetxDraw
  21.     pText = false; //Setamos a variavel/bool pText a false
  22.     return 1;
  23. }
  24.  
  25. public TrocarCor(playerid) //public que troca a Text de cor de acordo com "playerid"
  26. {
  27.     if(playerid == -1)
  28.     {
  29.         if(pText == true) //Verifica se pText = true
  30.         {
  31.             TextDrawHideForAll(Exemplo); //Esconde a TextDraw para o "playerid"
  32.             TextDrawColor(Exemplo, COR_TEXT_1); //Seta a cor de acordo com "COR_TEXT_1"
  33.             TextDrawShowForAll(Exemplo); //Mostra a TextDraw pra você
  34.             pText = false;
  35.         }
  36.         else //Se não for true...
  37.         {
  38.             TextDrawHideForAll(Exemplo); //Esconde a TextDraw para o "playerid"
  39.             TextDrawColor(Exemplo, COR_TEXT_2); //Seta a cor de acordo com "COR_TEXT_2"
  40.             TextDrawShowForAll(Exemplo); //Mostra a TextDraw pra você
  41.             pText = true;
  42.         }
  43.     }
  44.     if(pText == true) //Verifica se pText = true
  45.     {
  46.         TextDrawHideForPlayer(playerid, Exemplo); //Esconde a TextDraw para o "playerid"
  47.         TextDrawColor(Exemplo, COR_TEXT_1); //Seta a cor de acordo com "COR_TEXT_1"
  48.         TextDrawShowForPlayer(playerid, Exemplo); //Mostra a TextDraw pra você
  49.         pText = false;
  50.     }
  51.     else //Se não for true...
  52.     {
  53.         TextDrawHideForPlayer(playerid, Exemplo); //Esconde a TextDraw para o "playerid"
  54.         TextDrawColor(Exemplo, COR_TEXT_2); //Seta a cor de acordo com "COR_TEXT_2"
  55.         TextDrawShowForPlayer(playerid, Exemplo); //Mostra a TextDraw pra você
  56.         pText = true;
  57.     }
  58.     return 1;
  59. }
  60.  
  61. public PararDePiscar(playerid) //public que para de piscar de acordo com o "playerid"
  62. {
  63.     if(playerid == -1) return TextDrawHideForAll(Exemplo), KillTimer(TimerForAll); //Esconde a TextDraw para todos e Mata/destroi o Timer se "playerid" == -1
  64.     TextDrawHideForPlayer(playerid, Exemplo), KillTimer(TimerForPlayer[playerid]); //Esconde a TextDraw para o "playerid" e Mata/destroi o Timer
  65.     return 1;
  66. }
  67.  
  68. public OnPlayerCommandText(playerid, cmdtext[])
  69. {
  70.     if (strcmp("/piscarparamim", cmdtext, true, 10) == 0)
  71.     {
  72.         TextDrawShowForPlayer(playerid, Exemplo); //Mostra a TextDraw pra você
  73.         pText = false; //Setamos a variavel/bool pText a false
  74.         TimerForPlayer[playerid] = SetTimerEx("TrocarCor", 1000, true, "i", playerid); //Chama a callback "TrocarCor"
  75.         SetTimerEx("PararDePiscar", 30000, false, "i", playerid); //Timer para fazer parar de piscar para você
  76.         return 1;
  77.     }
  78.     if (strcmp("/piscarparatodos", cmdtext, true, 10) == 0)
  79.     {
  80.         TextDrawShowForAll(Exemplo); //Mostra a TextDraw pra todos
  81.         pText = false; //Setamos a variavel/bool pText a false
  82.         TimerForAll = SetTimerEx("TrocarCor", 1000, true, "i", -1); //Chama a callback "TrocarCor"
  83.         SetTimerEx("PararDePiscar", 30000, false, "i", -1); //Timer para fazer parar de piscar para todos
  84.         return 1;
  85.     }
  86.     return 0;
  87. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top