Advertisement
Guest User

Sistema De Televisão 1.0 - Único - Inédito !

a guest
May 13th, 2011
504
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 16.67 KB | None | 0 0
  1. #include <a_samp>
  2. // ============================ VARIAVEIS ======================================
  3. enum pInfo
  4. {
  5.   Jornal,
  6.   Balada
  7. }
  8. new PlayerInfo[MAX_PLAYERS][pInfo];
  9. new Nome[MAX_PLAYER_NAME];
  10. new Calado[MAX_PLAYER_NAME];
  11. new Audiencia[MAX_PLAYERS];
  12. new DuasVezesNao[MAX_PLAYERS];
  13. new Trancado[MAX_PLAYERS];
  14. new Urgente[MAX_PLAYERS];
  15. new string[128];
  16. new AudienciaLOL[100];
  17. // =============================================================================
  18. #if defined FILTERSCRIPT
  19.  
  20. public OnFilterScriptInit()
  21. {
  22.     print("\n--------------------------------------");
  23.     print(" Sistema de Televisão By: Jonathan Feitosa");
  24.     print("--------------------------------------\n");
  25.     return true;
  26. }
  27.  
  28. #else
  29.  
  30. // =============================================================================
  31. main()
  32. {
  33.     print("\n----------------------------------");
  34.     print(" Sistema de Televisão By: Jonathan Feitosa");
  35.     print("----------------------------------\n");
  36. }
  37. // =============================================================================
  38. #endif
  39. // =============================================================================
  40. public OnGameModeInit()
  41. {
  42.     Create3DTextLabel("Televisão\nBalada", 0xF68E00F6, 647.8179,-1353.9329,13.5477,60.0,0);
  43.     Create3DTextLabel("Televisão\nJornal", 0xF68E00F6, 648.0414,-1360.7756,13.5901,60.0,0);
  44.     AddStaticPickup(1318, 23, 648.0414,-1360.7756,13.5901); // Jornal Entrada
  45.     AddStaticPickup(1318, 1, 965.0610,-53.1662,1001.1246); // Jornal Saida
  46.     AddStaticPickup(1318, 23, 647.8179,-1353.9329,13.5477); // Balada Entrada
  47.     AddStaticPickup(1318, 1, -2634.9578,1409.8467,906.4609); // Balada Saida
  48.     // =================================== Jornal ==============================
  49.     CreateObject(18654,957.96453857,-55.19634628,1000.11718750,0.00000000,0.00000000,138.00000000); //object(mansion-light05) (1)
  50.     CreateObject(18648,963.55859375,-57.58300781,1000.14801025,0.00000000,0.00000000,0.00000000); //object(flower-bush08) (1)
  51.     CreateObject(18648,963.56066895,-58.55468750,1000.14801025,0.00000000,0.00000000,0.00000000); //object(flower-bush08) (2)
  52.     CreateObject(18648,964.47753906,-60.58984375,1000.28308105,0.00000000,0.00000000,0.00000000); //object(flower-bush08) (3)
  53.     CreateObject(18648,964.67382812,-55.56250000,1000.14062500,0.00000000,0.00000000,0.00000000); //object(flower-bush08) (4)
  54.     CreateObject(2853,960.08325195,-57.26187134,1000.93243408,0.00000000,0.00000000,0.00000000); //object(gb_bedmags03) (1)
  55.     CreateObject(2634,968.30175781,-53.22460938,1001.26879883,0.00000000,0.00000000,87.99499512); //object(ab_vaultdoor) (1)
  56.     CreateObject(2634,968.52429199,-53.23706055,1002.40686035,0.00000000,0.00000000,269.99499512); //object(ab_vaultdoor) (2)
  57.     return true;
  58. }
  59. // =============================================================================
  60. public OnGameModeExit()
  61. {
  62.     for(new i = 0; i < MAX_PLAYERS; i++)
  63.     {
  64.         Audiencia[i] --;
  65.         PlayerInfo[pInfo][Jornal] = 0;
  66.     }
  67.     return true;
  68. }
  69. // =============================================================================
  70. public OnPlayerDisconnect(playerid, reason)
  71. {
  72.     if(Audiencia[playerid] == 1)
  73.     {
  74.     Audiencia[playerid] --;
  75.     }
  76.     return true;
  77. }
  78. // =============================================================================
  79. public OnPlayerText(playerid, text[])
  80. {
  81.     if(Calado[playerid] == 1)
  82.     {
  83.         SendClientMessage(playerid, 0xFF0000FF, "Você Não Pode Falar.");
  84.         return false;
  85.     }
  86.     return true;
  87. }
  88. // =============================================================================
  89. public OnPlayerCommandText(playerid, cmdtext[])
  90. {
  91. // =============================================================================
  92.     if (strcmp("/levantar", cmdtext, true) == 0)
  93.     {
  94.         if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,0xFF0000FF,"> Você Não é Administrador !");
  95.         ApplyAnimation(playerid,"Attractors","Stepsit_out",4.1,0,1,1,1,1);
  96.         return true;
  97.     }
  98. // =============================================================================
  99.     if (strcmp("/sentar", cmdtext, true) == 0)
  100.     {
  101.         if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,0xFF0000FF,"> Você Não é Administrador !");
  102.         ApplyAnimation(playerid, "BEACH", "ParkSit_M_loop", 4.0, 1, 0, 0, 0, 0);
  103.         return true;
  104.     }
  105. // =============================================================================
  106.     if (strcmp("/irla", cmdtext, true) == 0)
  107.     {
  108.         if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,0xFF0000FF,"> Você Não é Administrador !");
  109.         SetPlayerPos(playerid, 644.8199,-1354.1106,13.5530);
  110.         SetPlayerInterior(playerid, 0);
  111.         return true;
  112.     }
  113. // =============================================================================
  114.     if (strcmp("/trancar", cmdtext, true) == 0)
  115.     {
  116.         if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,0xFF0000FF,"> Você Não é Administrador !");
  117.         if(Trancado[playerid] == 1) return SendClientMessage(playerid,0xFF0000FF,"Já Está Trancado !");
  118.         for(new i = 0; i < MAX_PLAYERS; i++)
  119.         {
  120.         Trancado[i] ++;
  121.         }
  122.         return true;
  123.     }
  124. // =============================================================================
  125.     if (strcmp("/destrancar", cmdtext, true) == 0)
  126.     {
  127.         if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,0xFF0000FF,"> Você Não é Administrador !");
  128.         if(Trancado[playerid] < 1) return SendClientMessage(playerid,0xFF0000FF,"A Porta Não Está Trancada !");
  129.         for(new i = 0; i < MAX_PLAYERS; i++)
  130.         {
  131.         Trancado[i] --;
  132.         }
  133.         return true;
  134.     }
  135. // =============================================================================
  136.     if(strcmp("/filmarjornal", cmdtext, true) == 0)
  137.     {
  138.         if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,0xFF0000FF,"> Você Não é Administrador !");
  139.         if(PlayerInfo[pInfo][Jornal] == 1) return SendClientMessage(playerid,0xFF0000FF," Já Tem Uma Programação Em Andamento !");
  140.         if(PlayerInfo[pInfo][Balada] == 1) return SendClientMessage(playerid,0xFF0000FF," Já Tem Uma Programação Em Andamento !");
  141.         GetPlayerName(playerid, Nome, sizeof(Nome));
  142.         format(string, sizeof(string), "ATENÇÃO: Daqui a 1 Minuto Está Começando o Programa de TV de {2641FE}%s - Jornal AoVivo!", Nome);
  143.         SendClientMessageToAll(0xFF0000FF,string);
  144.         SendClientMessage(playerid,0xFF0000FF,"> Você Ligou a Câmera de Jornal, Aguarde 1 Minuto Para Entrar no Ar.");
  145.         SetTimerEx("EntrandoNoArJornal", 60000, false, "i", playerid);
  146.         for(new i = 0; i < MAX_PLAYERS; i++)
  147.         {
  148.         PlayerInfo[i][Jornal] = 1;
  149.         }
  150.         return true;
  151.     }
  152. // =============================================================================
  153.     if(strcmp("/filmarbalada", cmdtext, true) == 0)
  154.     {
  155.         if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,0xFF0000FF,"> Você Não é Administrador !");
  156.         if(PlayerInfo[pInfo][Jornal] == 1) return SendClientMessage(playerid,0xFF0000FF," Já Tem Uma Programação Em Andamento !");
  157.         if(PlayerInfo[pInfo][Balada] == 1) return SendClientMessage(playerid,0xFF0000FF," Já Tem Uma Programação Em Andamento !");
  158.         GetPlayerName(playerid, Nome, sizeof(Nome));
  159.         format(string, sizeof(string), "ATENÇÃO: Daqui a 1 Minuto Está Começando o Programa de TV de {2641FE}%s - Balada AoVivo!", Nome);
  160.         SendClientMessageToAll(0xFF0000FF,string);
  161.         SendClientMessage(playerid,0xFF0000FF,"> Você Ligou a Câmera de Balada, Aguarde 1 Minuto Para Entrar no Ar.");
  162.         SetTimerEx("EntrandoNoArBalada", 60000, false, "i", playerid);
  163.         for(new i = 0; i < MAX_PLAYERS; i++)
  164.         {
  165.         PlayerInfo[i][Balada] = 1;
  166.         }
  167.         return true;
  168.     }
  169. // =============================================================================
  170.     if (strcmp("/terminar", cmdtext, true) == 0)
  171.     {
  172.         if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,0xFF0000FF,"> Você Não é Administrador !");
  173.         if(PlayerInfo[pInfo][Jornal] == 1 || PlayerInfo[pInfo][Balada] == 1)
  174.         {
  175.             GetPlayerName(playerid, Nome, sizeof(Nome));
  176.             format(string, sizeof(string), "{2641FE}ATENÇÃO:{FF0000} O Programa de TV {2641FE}%s{FF0000} Chegou Ao Final - Obrigado Por Assistir.", Nome);
  177.             SendClientMessageToAll(0xFF0000FF,string);
  178.             for(new i = 0; i < MAX_PLAYERS; i++)
  179.             {
  180.                PlayerInfo[i][Jornal] = 0;
  181.                PlayerInfo[i][Balada] = 0;
  182.                if(Urgente[i] >= 1)
  183.                {
  184.                  Urgente[i] --;
  185.                  Desligar(i);
  186.                }
  187.             }
  188.         }
  189.         return true;
  190.     }
  191. // =============================================================================
  192.     if(strcmp("/comandostv", cmdtext, true) == 0)
  193.     {
  194.         new tv[300];
  195.         strcat(tv,"{FF0000}Para Administradores Logado Na Rcon : \n");
  196.         strcat(tv,"{2641FE}/filmarbalada /filmarjornal /trancar /destrancar /levantar \n");
  197.         strcat(tv,"{2641FE}/terminar /sentar /irla /audiencia\n");
  198.         strcat(tv,"\n");
  199.         strcat(tv,"\n");
  200.         strcat(tv,"{FF0000}Comandos Normais :\n");
  201.         strcat(tv,"{2641FE}/assistirjornal /assistirbalada /desligartv\n");
  202.         strcat(tv,"\n");
  203.         strcat(tv,"\n");
  204.         strcat(tv,"{FF0000}>> Tecnologia: Jonathan Feitosa << \n");
  205.         ShowPlayerDialog(playerid, 4532, DIALOG_STYLE_MSGBOX, "Sistema de TV - Jonathan Feitosa",tv, "Fechar", "");
  206.         return true;
  207.     }
  208. // =============================================================================
  209.     if (strcmp("/assistirjornal", cmdtext, true) == 0)
  210.     {
  211.         if(PlayerInfo[pInfo][Jornal] == 0) return SendClientMessage(playerid,0xFF0000FF," Nenhuma Programação Em Andamento... !");
  212.         if(DuasVezesNao[playerid] == 1) return SendClientMessage(playerid,0xFF0000FF," Você Já Está Assintindo TV !");
  213.         Audiencia[playerid] ++;
  214.         Calado[playerid] ++;
  215.         DuasVezesNao[playerid] ++;
  216.         PlayerInfo[pInfo][Jornal] = 1;
  217.         AssistirJornal(playerid);
  218.         SendClientMessage(playerid,0xFF0000FF,"Você Foi Calado, Escute o Jornal, Para Sair Use {2641FE}/desligartv !");
  219.         return true;
  220.     }
  221. // =============================================================================
  222.     if (strcmp("/assistirbalada", cmdtext, true) == 0)
  223.     {
  224.         if(PlayerInfo[pInfo][Balada] == 0) return SendClientMessage(playerid,0xFF0000FF," Nenhuma Programação de Balada Em Andamento... ! !");
  225.         if(DuasVezesNao[playerid] == 1) return SendClientMessage(playerid,0xFF0000FF," Você Já Está Assintindo TV !");
  226.         Audiencia[playerid] ++;
  227.         Calado[playerid] ++;
  228.         PlayerInfo[pInfo][Balada] = 1;
  229.         DuasVezesNao[playerid] ++;
  230.         AssistirBalada(playerid);
  231.         SendClientMessage(playerid,0xFF0000FF,"Você Foi Calado, Curta é Escute a Balada, Para Sair Use {2641FE}/desligartv !");
  232.         return true;
  233.     }
  234. // =============================================================================
  235.     if (strcmp("/desligartv", cmdtext, true) == 0)
  236.     {
  237.         if(DuasVezesNao[playerid] < 1) return SendClientMessage(playerid,0x2641FEAA,"Você Não Está Assistindo TV.");
  238.         if(PlayerInfo[pInfo][Jornal] == 1)
  239.         {
  240.             Desligar(playerid);
  241.             SendClientMessage(playerid,0x2641FEAA,"Você Desligou a TV Jornal.");
  242.             return true;
  243.         }
  244.         if(PlayerInfo[pInfo][Balada] == 1)
  245.         {
  246.             Desligar(playerid);
  247.             SendClientMessage(playerid,0x2641FEAA,"Você Desligou a TV Balada.");
  248.             return true;
  249.         }
  250.         return true;
  251.     }
  252. // =============================================================================
  253.     if (strcmp("/audiencia", cmdtext, true) == 0)
  254.     {
  255.         if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,0xFF0000FF,"> Você Não é Administrador !");
  256.         if(PlayerInfo[pInfo][Jornal] == 1)
  257.         {
  258.             SendClientMessage(playerid,0x2641FEAA," Audiência Jornal :");
  259.             format(AudienciaLOL, 100," >> Audiência: {FF0000}%i Pessoas << ", Audiencia);
  260.             SendClientMessage(playerid, 0x2641FEAA, AudienciaLOL);
  261.             return true;
  262.         }
  263.         if(PlayerInfo[pInfo][Balada] == 1)
  264.         {
  265.             SendClientMessage(playerid,0x2641FEAA," Audiência Balada :");
  266.             format(AudienciaLOL, 100," >> Audiência: {FF0000}%i Pessoas << ", Audiencia);
  267.             SendClientMessage(playerid, 0x2641FEAA, AudienciaLOL);
  268.             return true;
  269.         }
  270.         return true;
  271.     }
  272. // ============================================================================
  273.     if (strcmp("/entrandoooooooo", cmdtext, true) == 0)
  274.     {
  275. // ENTRANDO - JORNAL
  276.     if(Trancado[playerid] == 1) return SendClientMessage(playerid,0xFF0000FF,"A Porta Está TRANCADA !");
  277.     if(IsPlayerInRangeOfPoint(playerid, 1.0, 648.0414,-1360.7756,13.5901))
  278.     {
  279.         SetPlayerPos(playerid, 962.7113,-53.3025,1001.1246);
  280.         SetPlayerInterior(playerid, 3);
  281.         SetPlayerFacingAngle(playerid, 90.4818);
  282.         return true;
  283.     }
  284. //Saindo - Jornal
  285.     if(IsPlayerInRangeOfPoint(playerid, 1.0, 965.0610,-53.1662,1001.1246))
  286.     {
  287.         SetPlayerPos(playerid, 645.1032,-1360.6869,13.5884);
  288.         SetPlayerInterior(playerid, 0);
  289.         SetPlayerFacingAngle(playerid, 270.4818);
  290.         return true;
  291.     }
  292. //Entrando - Balada
  293.     if(IsPlayerInRangeOfPoint(playerid, 1.0, 647.8179,-1353.9329,13.5477))
  294.     {
  295.         SetPlayerPos(playerid, -2637.3010,1409.5979,906.4609);
  296.         SetPlayerInterior(playerid, 3);
  297.         SetPlayerFacingAngle(playerid, 115.9109);
  298.         return true;
  299.     }
  300. //Saindo - Balada
  301.     if(IsPlayerInRangeOfPoint(playerid, 1.0, -2634.9578,1409.8467,906.4609))
  302.     {
  303.         SetPlayerPos(playerid, 644.8199,-1354.1106,13.5530);
  304.         SetPlayerInterior(playerid, 0);
  305.         SetPlayerFacingAngle(playerid, 270.4818);
  306.         return true;
  307.     }
  308. // =============================================================================
  309.     return true;
  310.     }
  311.     return false;
  312. }
  313. // =============================================================================
  314. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  315. {
  316.     if((newkeys & KEY_SECONDARY_ATTACK))
  317.     {
  318.         if(IsPlayerInRangeOfPoint(playerid, 1.0, 648.0414,-1360.7756,13.5901) || IsPlayerInRangeOfPoint(playerid, 1.0, 965.0610,-53.1662,1001.1246) ||
  319.         IsPlayerInRangeOfPoint(playerid, 1.0, 647.8179,-1353.9329,13.5477) || IsPlayerInRangeOfPoint(playerid, 1.0, -2634.9578,1409.8467,906.4609))
  320.         {
  321.             if(Trancado[playerid] == 1) return SendClientMessage(playerid,0xFF0000FF,"A Porta Está TRANCADA !");
  322.             OnPlayerCommandText(playerid,"/entrandoooooooo");
  323.         }
  324.     }
  325.     return true;
  326. }
  327. // =============================================================================
  328. forward EntrandoNoArJornal(playerid);
  329. public EntrandoNoArJornal(playerid)
  330. {
  331.     SetTimer("NumeroAudiencia", 500, true);
  332.     SendClientMessage(playerid,0xFF0000FF,"Seu Programa de TV, Está no Ar. DIVULGUE. Use /audiencia para ver Quem Esté Lhe Vendo.");
  333.     GetPlayerName(playerid, Nome, sizeof(Nome));
  334.     format(string, sizeof(string), "ATENÇÃO:{FF0000} O Programa de TV de {2641FE}%s{FF0000} Começou - ( JORNAL AOVIVO ) - {2641FE}Use /assistirjornal", Nome);
  335.     SendClientMessageToAll(0xFF0000FF,string);
  336.     return true;
  337. }
  338. // =============================================================================
  339. forward EntrandoNoArBalada(playerid);
  340. public EntrandoNoArBalada(playerid)
  341. {
  342.     SetTimer("NumeroAudiencia", 500, true);
  343.     SendClientMessage(playerid,0xFF0000FF,"Seu Programa de TV, Está no Ar. DIVULGUE. Use /audiencia para ver Quem Esté Lhe Vendo.");
  344.     GetPlayerName(playerid, Nome, sizeof(Nome));
  345.     format(string, sizeof(string), "ATENÇÃO:{FF0000} O Programa de TV de {2641FE}%s{FF0000} Começou ( BALADA AOVIVO ) - {2641FE}Use /assistirbalada", Nome);
  346.     SendClientMessageToAll(0xFF0000FF,string);
  347.     for(new i = 0; i < MAX_PLAYERS; i++)
  348.     {
  349.         PlayerInfo[i][Balada] = 1;
  350.     }
  351.     return true;
  352. }
  353. // =============================================================================
  354. stock AssistirBalada(playerid)
  355. {
  356.     SetTimer("NumeroAudiencia", 500, true);
  357.     SetPlayerPos(playerid, -2668.5520,1410.4603,904.4609);
  358.     SetPlayerCameraPos(playerid, -2659.6606,1410.3605,912.1703);
  359.     SetPlayerCameraLookAt(playerid, -2663.8882,1410.3678,912.1703);
  360.     SetPlayerInterior(playerid, 3);
  361.     TogglePlayerControllable(playerid, 0);
  362.     Urgente[playerid] ++;
  363. }
  364. // =============================================================================
  365. stock AssistirJornal(playerid)
  366. {
  367.     SetTimer("NumeroAudiencia", 500, true);
  368.     SetPlayerPos(playerid, 962.6662,-59.6662, 9500.1000);
  369.     SetPlayerCameraPos(playerid, 956.5108,-55.7790,1002.1172);
  370.     SetPlayerCameraLookAt(playerid, 958.5601,-56.7886,1002.1172);
  371.     SetPlayerInterior(playerid, 3);
  372.     TogglePlayerControllable(playerid, 0);
  373.     Urgente[playerid] ++;
  374. }
  375. // =============================================================================
  376. stock Desligar(playerid)
  377. {
  378.     DuasVezesNao[playerid] --;
  379.     Audiencia[playerid] --;
  380.     SpawnPlayer(playerid);
  381.     Calado[playerid] --;
  382.     SetPlayerInterior(playerid, 0);
  383. }
  384. // =============================================================================
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement