SHARE
TWEET

Sistema de Pedágio [v2.0] By: Tugamars

Tugamars_PT Dec 8th, 2013 1,257 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #define FILTERSCRIPT
  2.  
  3. #include <a_samp>
  4. //#include <DOF2>
  5.  
  6. #define PEDAGIO 2600
  7.  
  8. #pragma tabsize 0
  9.  
  10. forward fecharlvls();
  11. forward fecharlslv();
  12.  
  13. new CancelaLVLS;
  14. new CancelaLSLV;
  15.  
  16. new Viaverde[MAX_PLAYERS];
  17. new Pedagios[MAX_PLAYERS];
  18. new Pedagiospagar[MAX_PLAYERS];
  19.  
  20.  
  21. public OnFilterScriptInit()
  22. {
  23.         print("\n--------------------------------------");
  24.         print(" Sistema de Pedágios v.1.1 By: Tugamars ");
  25.         print("--------------------------------------\n");
  26.     //Pedagio LV LS
  27.         //Laterais
  28.         CreateObject(979, 1812.13989, 805.36542, 10.42910,   0.00000, 0.00000, 178.75070);
  29.         CreateObject(978, 1781.99170, 804.51849, 10.36460,   0.00000, 0.00000, 179.42149);
  30.         CreateObject(978, 1811.90137, 819.88654, 9.98615,   0.00000, 0.00000, 0.00000);
  31.         CreateObject(979, 1782.73938, 819.75769, 9.99752,   0.00000, 0.00000, 0.00000);
  32.         //Lampadas
  33.         CreateObject(3877, 1798.24463, 806.10339, 10.40543,   0.00000, 0.00000, 0.00000);
  34.         CreateObject(3877, 1808.45886, 806.91925, 10.40543,   0.00000, 0.00000, 0.00000);
  35.         CreateObject(3877, 1796.03662, 820.09576, 10.10944,   0.00000, 0.00000, 0.00000);
  36.         CreateObject(3877, 1786.30347, 818.96729, 10.10944,   0.00000, 0.00000, 0.00000);
  37.         //Cancela
  38.         CancelaLVLS = CreateObject(968, 1788.48254, 810.79248, 10.79725,   0.00000, 90.00000, 357.00000);
  39.         CancelaLSLV = CreateObject(968, 1799.02673, 814.75079, 10.79720,   0.00000, 90.00000, 357.00000);
  40.         //Resto
  41.         CreateObject(8556, 1797.39087, 812.63733, 13.98732,   0.00000, 0.00000, 0.00000);
  42.         CreateObject(8168, 1786.40283, 812.52698, 11.58143,   0.00000, 0.00000, 104.01295);
  43.         CreateObject(8168, 1808.45154, 812.57507, 11.58143,   0.00000, 0.00000, 286.69287);
  44.     //Fim Pedagio LV-LS
  45.  
  46.         //======================= Pickups =============================
  47.         CreatePickup(1239, 1, 1802.70203, 811.19946, 10.72504, 0);
  48.         CreatePickup(1239, 1, 1791.70203, 813.72076, 10.72504, 0);
  49.         //======================= Pickups =============================
  50.  
  51.         //====================== 3D TextLabel =========================
  52.         Create3DTextLabel("Pressione (Y) para usar o pedágio", 0xF0B937FF, 1802.70203, 811.19946, 10.72504, 40.0, 0, 0);
  53.         Create3DTextLabel("Pressione (Y) para usar o pedágio", 0xF0B937FF, 1791.70203, 813.72076, 10.72504, 40.0, 0, 0);
  54.  
  55.  
  56.         return 1;
  57. }
  58.  
  59. public OnFilterScriptExit()
  60. {
  61.         print("\n--------------------------------------");
  62.         print(" Sistema de Pedágios By: Tugamars       ");
  63.         print("--------------------------------------\n");
  64.  
  65.  
  66.  
  67.         return 1;
  68. }
  69.  
  70. public OnPlayerConnect(playerid)
  71. {
  72.     Pedagios[playerid] = 0;
  73.     return true;
  74. }
  75.  
  76. public OnPlayerDisconnect(playerid, reason)
  77. {
  78.         return 1;
  79. }
  80.  
  81. public OnPlayerSpawn(playerid)
  82. {
  83.         return 1;
  84. }
  85.  
  86. public OnPlayerDeath(playerid, killerid, reason)
  87. {
  88.         return 1;
  89. }
  90.  
  91. public OnVehicleSpawn(vehicleid)
  92. {
  93.         return 1;
  94. }
  95.  
  96. public OnVehicleDeath(vehicleid, killerid)
  97. {
  98.         return 1;
  99. }
  100.  
  101. public OnPlayerText(playerid, text[])
  102. {
  103.         return 1;
  104. }
  105.  
  106. public OnPlayerCommandText(playerid, cmdtext[])
  107. {
  108.         if (strcmp("/pedagio", cmdtext, true, 10) == 0)
  109.         {
  110.  
  111.  
  112.                 if(Viaverde[playerid] == 1)//Caso o jogador tenha via verde
  113.                 {
  114.                         if(IsPlayerInRangeOfPoint(playerid, 4.0, 1802.70203, 811.19946, 10.72504))
  115.                         {
  116.                                 SetObjectRot(CancelaLSLV, 0.00000, 18.00000, 357.00000);//Abre a cancela
  117.                                 SendClientMessage(playerid, 0xF47A00FF, "Bem vindo a Las Venturas .As contas de pedágio serão debitadas no PayDay .");
  118.                                 SetTimer("fecharlslv", 3000, false);
  119.                                 Pedagios[playerid] += 1;//Acrescenta mais um pedágio que será depois descontado ...
  120.  
  121.                         }
  122.                         if(IsPlayerInRangeOfPoint(playerid, 4.0, 1791.70203, 813.72076, 10.72504))
  123.                         {
  124.                                 SetObjectRot(CancelaLVLS,  0.00000, 18.00000, 357.00000);
  125.                                 SendClientMessage(playerid, 0xF47A00FF, "Bem vindo a Los Santos .As contas de pedágio serão debitadas no PayDay .");
  126.                                 SetTimer("fecharlvls", 3000, false);
  127.                                 Pedagios[playerid] += 1;
  128.                         }
  129.                  }
  130.         if(Viaverde[playerid] == 0)//Caso o jogador não tenha via verde
  131.       {
  132.            if(IsPlayerInRangeOfPoint(playerid, 3.0, 1802.70203, 811.19946, 10.72504))
  133.                 {
  134.         ShowPlayerDialog(playerid, PEDAGIO, DIALOG_STYLE_MSGBOX, "{FF1212}Pedágio {FF7D12}LS-LV :", "{12A4FF}Para continuar terá de pagar o pedágio .", "Pagar", "Não pagar");
  135.                 }
  136.            if(IsPlayerInRangeOfPoint(playerid, 3.0, 1791.70203, 813.72076, 10.72504))
  137.                 {
  138.                 ShowPlayerDialog(playerid, PEDAGIO+1, DIALOG_STYLE_MSGBOX, "{FF1212}Pedágio {FF7D12}LV-LS :", "{12A4FF}Para continuar terá de pagar o pedágio .", "Pagar", "Não pagar");
  139.                 }
  140.                 return 1;
  141.         }
  142.         }
  143.         if(strcmp("/pedagiospagar", cmdtext, true, 10) == 0)//Comando para fazer com que todos os que tem via verde paguem o valor de todos os pedagios
  144.         {
  145.  
  146.  
  147.                 if(Viaverde[playerid] == 1)
  148.                 {
  149.  
  150.  
  151.                         Pedagiospagar[playerid] = Pedagios[playerid]*=30;
  152.                         GivePlayerMoney(playerid, -Pedagiospagar[playerid]);
  153.                         new string[128];
  154.                         format(string, sizeof(string), "Você pagou %i , pelas passagens no pedágio.", Pedagiospagar[playerid]);
  155.                         SendClientMessage(playerid, 0xF47A00FF, string);
  156.                         print(Pedagios[playerid]);
  157.                         Pedagios[playerid] = 0;//Seta o numero de pedagios para 0 , fazendo com que volte a contar tudo
  158.                 }
  159.                 if(Viaverde[playerid] == 0)//Se não tiver via verde não faz nada . Acho que podem ser retiradas
  160.                 {
  161.                 }
  162.                 return 1;
  163.         }
  164.  
  165.         if(strcmp("/comprarviaverde", cmdtext, true, 10) == 0)//Comando de comprar via verde
  166.         {
  167.  
  168.  
  169.                 Viaverde[playerid] = 1;//Seta a via verde para 1
  170.                 SendClientMessage(playerid, 0x2CBC36FF, "Você comprou a Via verde , agora não terá de esperar na fila do pedágio.");
  171.                 return 1;
  172.         }
  173.         return 0;
  174. }
  175.  
  176. public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
  177. {
  178.         return 1;
  179. }
  180.  
  181. public OnPlayerExitVehicle(playerid, vehicleid)
  182. {
  183.         return 1;
  184. }
  185.  
  186. public OnPlayerStateChange(playerid, newstate, oldstate)
  187. {
  188.         return 1;
  189. }
  190.  
  191. public OnPlayerEnterCheckpoint(playerid)
  192. {
  193.         return 1;
  194. }
  195.  
  196. public OnPlayerLeaveCheckpoint(playerid)
  197. {
  198.         return 1;
  199. }
  200.  
  201. public OnPlayerEnterRaceCheckpoint(playerid)
  202. {
  203.         return 1;
  204. }
  205.  
  206. public OnPlayerLeaveRaceCheckpoint(playerid)
  207. {
  208.         return 1;
  209. }
  210.  
  211. public OnRconCommand(cmd[])
  212. {
  213.         return 1;
  214. }
  215.  
  216. public OnPlayerRequestSpawn(playerid)
  217. {
  218.         return 1;
  219. }
  220.  
  221. public OnObjectMoved(objectid)
  222. {
  223.         return 1;
  224. }
  225.  
  226. public OnPlayerObjectMoved(playerid, objectid)
  227. {
  228.         return 1;
  229. }
  230.  
  231. public OnPlayerPickUpPickup(playerid, pickupid)
  232. {
  233.         return 1;
  234. }
  235.  
  236. public OnVehicleMod(playerid, vehicleid, componentid)
  237. {
  238.         return 1;
  239. }
  240.  
  241. public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
  242. {
  243.         return 1;
  244. }
  245.  
  246. public OnVehicleRespray(playerid, vehicleid, color1, color2)
  247. {
  248.         return 1;
  249. }
  250.  
  251. public OnPlayerSelectedMenuRow(playerid, row)
  252. {
  253.         return 1;
  254. }
  255.  
  256. public OnPlayerExitedMenu(playerid)
  257. {
  258.         return 1;
  259. }
  260.  
  261. public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
  262. {
  263.         return 1;
  264. }
  265.  
  266. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  267. {
  268. if((newkeys == 65536) && (IsPlayerInAnyVehicle(playerid)))// Tecla Y
  269.    {
  270.    OnPlayerCommandText(playerid, "/pedagio");
  271.    return 1;
  272.    }
  273.         return 1;
  274. }
  275.  
  276. public OnRconLoginAttempt(ip[], password[], success)
  277. {
  278.         return 1;
  279. }
  280.  
  281. public OnPlayerUpdate(playerid)
  282. {
  283.         return 1;
  284. }
  285.  
  286. public OnPlayerStreamIn(playerid, forplayerid)
  287. {
  288.         return 1;
  289. }
  290.  
  291. public OnPlayerStreamOut(playerid, forplayerid)
  292. {
  293.         return 1;
  294. }
  295.  
  296. public OnVehicleStreamIn(vehicleid, forplayerid)
  297. {
  298.         return 1;
  299. }
  300.  
  301. public OnVehicleStreamOut(vehicleid, forplayerid)
  302. {
  303.         return 1;
  304. }
  305.  
  306. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  307. {
  308.  if(dialogid == PEDAGIO)
  309.  {
  310.   if(!response)
  311.   {
  312.   SendClientMessage(playerid, 0xF20006FF, "Você escolheu não pagar o pedágio , logo terá de voltar para trás");
  313.   }
  314.   if(response)
  315.         {
  316.         if(GetPlayerMoney(playerid) < 50)//Caso o dinheiro do jogador seja menor do que 50
  317.                         {
  318.                         SendClientMessage(playerid, 0xF20006FF, "Você não tem dinheiro suficiente");
  319.                         }
  320.         if(GetPlayerMoney(playerid) >= 50)//Caso o dinheiro do jogador seja maior ou igual a 50
  321.                         {
  322.                         GivePlayerMoney(playerid, -50);//Tira 50 R$ do dinheiro do jogador
  323.                         SetObjectRot(CancelaLSLV, 0.00000, 18.00000, 357.00000);//Abre a cancelar
  324.                         SendClientMessage(playerid, 0xF47A00FF, "Bem vindo a Las Venturas .Foi debitado 50R$ na sua conta .");
  325.                         SetTimer("fecharlslv", 5000, false);
  326.                         }
  327.         }
  328.         return 1;
  329.         }
  330. if(dialogid == PEDAGIO+1)
  331.  {
  332.   if(!response)
  333.   {
  334.   SendClientMessage(playerid, 0xF20006FF, "Você escolheu não pagar o pedágio , logo terá de voltar para trás");
  335.   }
  336.   if(response)
  337.    {
  338.         if(GetPlayerMoney(playerid) < 50)//Caso o dinheiro do jogador seja menor do que 50
  339.                 {
  340.                 SendClientMessage(playerid, 0xF20006FF, "Você não tem dinheiro suficiente");
  341.                 }
  342.         if(GetPlayerMoney(playerid) >= 50)//Caso o dinheiro do jogador seja maior ou igual a 50
  343.                 {
  344.                 GivePlayerMoney(playerid, -50);//Tira 50 R$ do jogador
  345.                 SetObjectRot(CancelaLVLS,  0.00000, 18.00000, 357.00000);//Abre cancela
  346.                 SendClientMessage(playerid, 0xF47A00FF, "Bem vindo a Los Santos .Foi debitado 50R$ na sua conta .");
  347.                 SetTimer("fecharlvls", 5000, false);
  348.                 }
  349.                 }
  350.         return 1;
  351.         }
  352. return 0;
  353. }
  354.  
  355. public OnPlayerClickPlayer(playerid, clickedplayerid, source)
  356. {
  357.         return 1;
  358. }
  359. public fecharlvls()
  360. {
  361. SetObjectRot(CancelaLVLS,  0.00000, 90.00000, 357.00000);
  362. }
  363. public fecharlslv()
  364. {
  365. SetObjectRot(CancelaLSLV, 0.00000, 90.00000, 357.00000);
  366. }
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