Advertisement
Tugamars_PT

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

Dec 8th, 2013
1,867
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 9.16 KB | None | 0 0
  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. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement