toribio

toribio

Sep 21st, 2008
142
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 5.58 KB | None | 0 0
  1. #include <a_samp>
  2. #include <cpstream>
  3.  
  4. #define point(%0,%1,%2,%3,%4,%5,%6) \
  5.     (((%0 - %3) * (%0 - %3)) + ((%1 - %4) * (%1 - %4)) + ((%2 - %5) * (%2 - %5)) <= %6 * %6)
  6.  
  7. new Menu:menu1;
  8. new Menu:menu2;
  9. new Menu:menu3;
  10. new cp1;
  11. new vehicle[MAX_VEHICLES];
  12. new pickup[1];
  13. new Float:pickupsmenu[1][3] =
  14. {
  15.     {-60.0, 0.0, 3.1}
  16. };
  17.  
  18. main();
  19.  
  20. public OnGameModeInit()
  21. {
  22.     SetGameModeText("lol?");
  23.     AddPlayerClass(124, -70.0, -25.0, 3.1, 340.0, 0, 0, 0, 0, 0, 0);
  24.  
  25.     menu1 = CreateMenu("Ve�culos", 1, 20, 140, 105, 5);
  26.     AddMenuItem(menu1, 0, "Carros");
  27.     AddMenuItem(menu1, 0, "Motos");
  28.  
  29.     menu2 = CreateMenu("Carros", 2, 20, 140, 90, 5);
  30.     SetMenuColumnHeader(menu2, 0, "Nome");
  31.     SetMenuColumnHeader(menu2, 1, "Custo");
  32.     AddMenuItem(menu2, 0, "Infernus");
  33.     AddMenuItem(menu2, 1, "$100000");
  34.     AddMenuItem(menu2, 0, "Cheetah");
  35.     AddMenuItem(menu2, 1, "$95000");
  36.     AddMenuItem(menu2, 0, "Turismo");
  37.     AddMenuItem(menu2, 1, "$90000");
  38.     AddMenuItem(menu2, 0, "Bullet");
  39.     AddMenuItem(menu2, 1, "$85000");
  40.     AddMenuItem(menu2, 0, "Super GT");
  41.     AddMenuItem(menu2, 1, "$80000");
  42.     AddMenuItem(menu2, 0, "Sabre");
  43.     AddMenuItem(menu2, 1, "$75000");
  44.     AddMenuItem(menu2, 0, "Phoenix");
  45.     AddMenuItem(menu2, 1, "$70000");
  46.     AddMenuItem(menu2, 0, "Jester");
  47.     AddMenuItem(menu2, 1, "$65000");
  48.     AddMenuItem(menu2, 0, "Buffalo");
  49.     AddMenuItem(menu2, 1, "$60000");
  50.  
  51.     menu3 = CreateMenu("Motos", 2, 20, 140, 90, 5);
  52.     SetMenuColumnHeader(menu3, 0, "Nome");
  53.     SetMenuColumnHeader(menu3, 1, "Custo");
  54.     AddMenuItem(menu3, 0, "NRG-500");
  55.     AddMenuItem(menu3, 1, "$500");
  56.     AddMenuItem(menu3, 0, "FCR-900");
  57.     AddMenuItem(menu3, 1, "$350");
  58.  
  59.     //cp1 = CPS_AddCheckpoint(-50.0, 30.0, 3.1, 3.0, 40);
  60.  
  61.     for(new i; i < sizeof pickupsmenu-1; i++)
  62.     {
  63.         if(pickupsmenu[i][0] != 0.0 && pickupsmenu[i][1] != 0.0 && pickupsmenu[i][2] != 0.0)
  64.         {
  65.             pickup[i] = CreatePickup(1239, 2, pickupsmenu[i][0], pickupsmenu[i][1], pickupsmenu[i][2]);
  66.         }
  67.     }
  68.  
  69.     return 1;
  70. }
  71.  
  72. /*public OnPlayerEnterCheckpoint(playerid)
  73. {
  74.     new checkpointid = CPS_GetPlayerCheckpoint(playerid);
  75.     if(checkpointid == cp1-1)
  76.     {
  77.         if(!IsPlayerInAnyVehicle(playerid))
  78.         {
  79.             ShowMenuForPlayer(menu1, playerid);
  80.             TogglePlayerControllable(playerid, 0);
  81.         }
  82.     }
  83.     return 1;
  84. }*/
  85.  
  86. public OnPlayerPickUpPickup(playerid, pickupid)
  87. {
  88.     for(new i; i < sizeof pickupsmenu-1; i++)
  89.     {
  90.         if(pickupid == pickup[i])
  91.         {
  92.             if(!IsPlayerInAnyVehicle(playerid))
  93.             {
  94.                 ShowMenuForPlayer(menu1, playerid);
  95.                 TogglePlayerControllable(playerid, 0);
  96.             }
  97.             break;
  98.         }
  99.     }
  100.     return 1;
  101. }
  102.  
  103. public OnPlayerSelectedMenuRow(playerid, row)
  104. {
  105.     new Menu:current = GetPlayerMenu(playerid);
  106.     if(current == menu1)
  107.     {
  108.         switch(row)
  109.         {
  110.             case 0:
  111.             {
  112.                 HideMenuForPlayer(current, playerid);
  113.                 ShowMenuForPlayer(menu2, playerid);
  114.             }
  115.             case 1:
  116.             {
  117.                 HideMenuForPlayer(current, playerid);
  118.                 ShowMenuForPlayer(menu3, playerid);
  119.             }
  120.         }
  121.     }
  122.  
  123.     if(current == menu2)
  124.     {
  125.         switch(row)
  126.         {
  127.             case 0:Vehicle(playerid, 411, 100000, current, menu2);
  128.             case 1:Vehicle(playerid, 415, 95000, current, menu2);
  129.             case 2:Vehicle(playerid, 451, 90000, current, menu2);
  130.             case 3:Vehicle(playerid, 541, 85000, current, menu2);
  131.             case 4:Vehicle(playerid, 506, 80000, current, menu2);
  132.             case 5:Vehicle(playerid, 475, 75000, current, menu2);
  133.             case 6:Vehicle(playerid, 603, 70000, current, menu2);
  134.             case 7:Vehicle(playerid, 559, 65000, current, menu2);
  135.             case 8:Vehicle(playerid, 402, 60000, current, menu2);
  136.         }
  137.     }
  138.  
  139.     if(current == menu3)
  140.     {
  141.         switch(row)
  142.         {
  143.             case 0:Vehicle(playerid, 522, 500, current, menu3);
  144.             case 1:Vehicle(playerid, 521, 350, current, menu3);
  145.         }
  146.     }
  147.     return 1;
  148. }
  149.  
  150. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
  151. {
  152.     if(GetPlayerMenu(playerid) == menu1 || GetPlayerMenu(playerid) == menu2 ||
  153.     GetPlayerMenu(playerid) == menu3)
  154.     {
  155.         new Float:x, Float:y, Float:z;
  156.         GetPlayerPos(playerid, x, y, z);
  157.         for(new i; i < sizeof pickupsmenu; i++)
  158.         {
  159.             if(newkeys == 16 && !IsPlayerInAnyVehicle(playerid) && /*CPS_GetPlayerCheckpoint(playerid) == cp1-1*/
  160.             point(x, y, z, pickupsmenu[i][0], pickupsmenu[i][1], pickupsmenu[i][2], 1.5))
  161.             {
  162.                 if(GetPlayerMenu(playerid) == menu1)
  163.                 {
  164.                     HideMenuForPlayer(GetPlayerMenu(playerid), playerid);
  165.                     TogglePlayerControllable(playerid, 1);
  166.                 } else if(GetPlayerMenu(playerid) == menu2 || GetPlayerMenu(playerid) == menu3)
  167.                 {
  168.                     HideMenuForPlayer(GetPlayerMenu(playerid), playerid);
  169.                     ShowMenuForPlayer(menu1, playerid);
  170.                 }
  171.                 break;
  172.             }
  173.         }
  174.     }
  175.     return 1;
  176. }
  177.  
  178. public OnVehicleDeath(vehicleid)
  179. {
  180.     if(vehicle[vehicleid])
  181.     {
  182.         DestroyVehicle(vehicleid);
  183.         vehicle[vehicleid] = 0;
  184.     }
  185.     return 1;
  186. }
  187.  
  188. stock Vehicle(playerid, modelid, price, Menu:current, Menu:returns)
  189. {
  190.     if(GetPlayerMoney(playerid) >= price)
  191.     {
  192.         HideMenuForPlayer(current, playerid);
  193.         new Float:x, Float:y, Float:z, Float:a;
  194.         GetPlayerPos(playerid, x, y, z);
  195.         GetPlayerFacingAngle(playerid, a);
  196.         new veiculo = CreateVehicle(modelid, x, y, z, a, -1, -1, -1);
  197.         vehicle[veiculo] = 1;
  198.         PutPlayerInVehicle(playerid, veiculo, 0);
  199.         GivePlayerMoney(playerid, -price);
  200.         TogglePlayerControllable(playerid, 1);
  201.     } else {
  202.         GameTextForPlayer(playerid, "~r~Voc� n�o tem dinheiro!", 1000, 5);
  203.         HideMenuForPlayer(current, playerid);
  204.         ShowMenuForPlayer(returns, playerid);
  205.     }
  206. }
Add Comment
Please, Sign In to add comment