Mentosan

[FS] RainbowVehicle Color

Jun 28th, 2018
182
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #include <a_samp>
  2. #include <zcmd>
  3. #include <sscanf2>
  4. #include <streamer>
  5.  
  6. //=============================define=================================================
  7. #define ATENTIE 0xAFAFAFAA
  8. #define DIALOG_SHOP 1
  9. //=============================mews=============================================
  10. new
  11.     rainbowCAR[MAX_PLAYERS], activerainbow[MAX_PLAYERS], Culori[7][MAX_PLAYERS],
  12.     CARrainbow[MAX_PLAYERS], masinaRainbow[MAX_PLAYERS], K[MAX_PLAYERS];
  13. //==============================================================================
  14. public OnFilterScriptInit()
  15. {
  16.  
  17.  
  18.     return 1;
  19. }
  20. //==============================================================================
  21. public OnFilterScriptExit()
  22. {
  23.     print("\n--------------------------------------------------");
  24.     print("      FILTERSCRIPT BY MENTOSAN (JADE: HOUSE)        ");
  25.     print("  ~ RAINBOW CAR, WITHOUT MOD ~                      ");
  26.     print("----------------------------------------------------\n");
  27.  
  28.  
  29.     //ATENTIE :
  30.      // ACEST FS CONTINE CULORIILE DE LA 128-255, CELE DIN 0.3X, SE POATE MODIFICA USOR
  31.      // PUTETI SA MAI ADAUGATI SI VOI CONEXIUNEA LA BAZA DE DATE, SA SE SALVEZE DACA PLAYERUL A CUMPARAT DEJA OPTIUNEA CU RAINBOW VEH COLOR, ETC
  32.      // SE POATE ADESEA MODIFICA PRETUL, SA FIE PUSA O CONDITIE SA SE POATA APLICA OPTIUNEA DOAR PE MASINI PERSONALE, ETC..
  33.      // SPER CA V-AM AJUTAT, MERSI DE DOWNLOAD SI MERSI DE CREDIT
  34.     return 1;
  35. }
  36. //==============================================================================
  37. public OnGameModeInit() {
  38.  
  39.     CreateVehicle(444, 1511.4323, -1725.0913, 13.7506, 0.0000, -1, -1, 100);
  40.  
  41.     return 1;
  42. }
  43.  
  44. //======================STOCK'S=================================================
  45. forward Schimbare_Culori(playerid);
  46. //==============================================================================
  47.  
  48. public OnPlayerConnect(playerid) {
  49.  
  50.     rainbowCAR[playerid] = 0;
  51.     K[playerid] = 0;
  52.     SendClientMessage(playerid, -1, "{ffffff}({66cdaa}R{bdb76b}A{daa520}I{ff6347}N{c71585}B{20b2aa}O{2f4f4f}W {ffffff}VEHICLE COLOR): Loading...");
  53.  
  54.     return 1;
  55.  
  56. }
  57.  
  58. public OnPlayerDeath(playerid, killerid, reason) {
  59.  
  60.  
  61.     return 1;
  62. }
  63.  
  64.  
  65. //================================[FORWARDURI / FUNCTII]========================
  66. public Schimbare_Culori(playerid) {
  67.     K[playerid]++;
  68.  
  69.     if(K[playerid] >= 0 && K[playerid] < 7) { // K apartine [0, 7)
  70.         ChangeVehicleColor(masinaRainbow[playerid], Culori[K[playerid]][playerid], Culori[K[playerid]][playerid]);
  71.     }else
  72.         K[playerid] = 0;
  73.  
  74.     return 1;
  75. }
  76.  
  77.  
  78. //==============================================================================
  79.  
  80. public OnPlayerEnterCheckpoint(playerid) {
  81.  
  82.  
  83.     return 1;
  84. }
  85.  
  86. public OnPlayerPickUpPickup(playerid, pickupid) {
  87.  
  88.     return 1;
  89. }
  90.  
  91.  
  92. public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
  93. {  
  94.     if(dialogid == DIALOG_SHOP) {
  95.         if(!response)  
  96.             return 1;
  97.         else {
  98.             if(listitem == 0) {
  99.  
  100.                 if(rainbowCAR[playerid] == 0) {
  101.                     if(GetPlayerMoney(playerid) < 50000)
  102.                         SendClientMessage(playerid, ATENTIE, "Eroare: nu dispui de suficienti bani!");
  103.                     else {
  104.                         new mesaj[1200];
  105.                         format(mesaj, sizeof(mesaj), "  Rainbow Vehicle Color consta in schimbarea culorii masinii dumneavoastra ca intr-un curcubeu, spre exeplu \n");
  106.                         format(mesaj, sizeof(mesaj), "%s din rosu se face albastru, albastru portocaliu etc.. Pentru a accesa, tasteaza [/rainbowveh]  \n", mesaj);
  107.                         format(mesaj, sizeof(mesaj), "%s in masina dvs. si-ti va deschide Meniul. Odata iesit din vehicul, optiunea devine 0 (adica se opreste pentru a nu cauza lag).  \n", mesaj);
  108.                         ShowPlayerDialog(playerid, DIALOG_SHOP+1, DIALOG_STYLE_MSGBOX, " SHOP Rainbow Vehicle Color", mesaj, "OK", ".");
  109.  
  110.                     }
  111.                 }else
  112.                     SendClientMessage(playerid, ATENTIE, "Eroare: deja detii aceasta optiune!");
  113.             }
  114.         }
  115.     }else if(dialogid == DIALOG_SHOP+1) {
  116.  
  117.         GivePlayerMoney(playerid, -50000);
  118.         rainbowCAR[playerid] = 1;
  119.         activerainbow[playerid] = 0;
  120.  
  121.         for(new i=0;i<7;i++) {
  122.             if(i == 0)
  123.                 Culori[i][playerid] = 181;
  124.             else if(i == 1)
  125.                 Culori[i][playerid] = 147;
  126.             else if(i == 2)
  127.                 Culori[i][playerid] = 150;
  128.             else if(i == 3)
  129.                 Culori[i][playerid] = 201;
  130.             else if(i == 4)
  131.                 Culori[i][playerid] = 241;
  132.             else if(i == 5)
  133.                 Culori[i][playerid] = 129;
  134.             else if(i == 6)
  135.                 Culori[i][playerid] = 228;
  136.         }
  137.  
  138.     }else if(dialogid == DIALOG_SHOP+2) {
  139.  
  140.         if(!response)
  141.             return 1;
  142.         else {
  143.             if(listitem == 0) {
  144.                 ShowPlayerDialog(playerid, DIALOG_SHOP+3, DIALOG_STYLE_MSGBOX, " RainbowVehicle Status", " Meniu activare RainbowVehicle Colors.\n   1 - ACTIVARE,  0 - DEZACTIVARE ", "1", "2");
  145.             }else if(listitem == 1) {
  146.                 new mesaj[1200];
  147.                 for(new i = 0; i < 7; i++) {
  148.                     format(mesaj, sizeof(mesaj), "%s %d \n", mesaj, Culori[i][playerid]);
  149.                 }
  150.                 ShowPlayerDialog(playerid, DIALOG_SHOP+4, DIALOG_STYLE_LIST, " RainbowVeh Colors: To edit Click on the ID", mesaj, "Edit", "Iesire");
  151.                 if(activerainbow[playerid] == 1) {
  152.                     activerainbow[playerid] = 0;
  153.                     KillTimer(CARrainbow[playerid]);
  154.                     SendClientMessage(playerid, -1, "{d2691e}(RainbowVehicle Status:) {FFFFFF}OFF ");
  155.                 }
  156.             }
  157.         }
  158.  
  159.     }else if(dialogid == DIALOG_SHOP+3) {
  160.  
  161.         if(response) {
  162.             activerainbow[playerid] = 1;
  163.             SendClientMessage(playerid, -1, "{d2691e}(RainbowVehicle Status:) {32cd32}ON ");
  164.             CARrainbow[playerid] = SetTimerEx("Schimbare_Culori", 1000, true, "i", playerid);
  165.             masinaRainbow[playerid] = GetPlayerVehicleID(playerid);
  166.         }else {
  167.             activerainbow[playerid] = 0;
  168.             SendClientMessage(playerid, -1, "{d2691e}(RainbowVehicle Status:) {FFFFFF}OFF ");
  169.             KillTimer(CARrainbow[playerid]);
  170.         }
  171.  
  172.     }else if(dialogid == DIALOG_SHOP+4) {
  173.         if(response) {
  174.             if(listitem == 0) {
  175.                 new mesaj[256];
  176.                 format(mesaj, sizeof(mesaj), " Modificati culoarea pentru pozitia [0]. \n");
  177.                 format(mesaj, sizeof(mesaj), "%s Culoare Actuala: %d. Introduceti mai jos numarul culorii (128-255) ", mesaj, Culori[0][playerid]);
  178.                 ShowPlayerDialog(playerid, DIALOG_SHOP+5, DIALOG_STYLE_INPUT, " RainbowVehicle: ID Culori", mesaj, "Schimba", "Iesire");
  179.             }else if(listitem == 1) {
  180.                 new mesaj[256];
  181.                 format(mesaj, sizeof(mesaj), " Modificati culoarea pentru pozitia [1]. \n");
  182.                 format(mesaj, sizeof(mesaj), "%s Culoare Actuala: %d. Introduceti mai jos numarul culorii (128-255) ", mesaj, Culori[1][playerid]);
  183.                 ShowPlayerDialog(playerid, DIALOG_SHOP+6, DIALOG_STYLE_INPUT, " RainbowVehicle: ID Culori", mesaj, "Schimba", "Iesire");
  184.             }else if(listitem == 2) {
  185.                 new mesaj[256];
  186.                 format(mesaj, sizeof(mesaj), " Modificati culoarea pentru pozitia [2]. \n");
  187.                 format(mesaj, sizeof(mesaj), "%s Culoare Actuala: %d. Introduceti mai jos numarul culorii (128-255) ", mesaj, Culori[2][playerid]);
  188.                 ShowPlayerDialog(playerid, DIALOG_SHOP+7, DIALOG_STYLE_INPUT, " RainbowVehicle: ID Culori", mesaj, "Schimba", "Iesire");
  189.             }else if(listitem == 3) {
  190.                 new mesaj[256];
  191.                 format(mesaj, sizeof(mesaj), " Modificati culoarea pentru pozitia [3]. \n");
  192.                 format(mesaj, sizeof(mesaj), "%s Culoare Actuala: %d. Introduceti mai jos numarul culorii (128-255) ", mesaj, Culori[3][playerid]);
  193.                 ShowPlayerDialog(playerid, DIALOG_SHOP+8, DIALOG_STYLE_INPUT, " RainbowVehicle: ID Culori", mesaj, "Schimba", "Iesire");
  194.             }else if(listitem == 4) {
  195.                 new mesaj[256];
  196.                 format(mesaj, sizeof(mesaj), " Modificati culoarea pentru pozitia [4]. \n");
  197.                 format(mesaj, sizeof(mesaj), "%s Culoare Actuala: %d. Introduceti mai jos numarul culorii (128-255) ", mesaj, Culori[3][playerid]);
  198.                 ShowPlayerDialog(playerid, DIALOG_SHOP+9, DIALOG_STYLE_INPUT, " RainbowVehicle: ID Culori", mesaj, "Schimba", "Iesire");
  199.             }else if(listitem == 5) {
  200.                 new mesaj[256];
  201.                 format(mesaj, sizeof(mesaj), " Modificati culoarea pentru pozitia [5]. \n");
  202.                 format(mesaj, sizeof(mesaj), "%s Culoare Actuala: %d. Introduceti mai jos numarul culorii (128-255) ", mesaj, Culori[4][playerid]);
  203.                 ShowPlayerDialog(playerid, DIALOG_SHOP+10, DIALOG_STYLE_INPUT, " RainbowVehicle: ID Culori", mesaj, "Schimba", "Iesire");
  204.             }else if(listitem == 6) {
  205.                 new mesaj[256];
  206.                 format(mesaj, sizeof(mesaj), " Modificati culoarea pentru pozitia [6]. \n");
  207.                 format(mesaj, sizeof(mesaj), "%s Culoare Actuala: %d. Introduceti mai jos numarul culorii (128-255) ", mesaj, Culori[5][playerid]);
  208.                 ShowPlayerDialog(playerid, DIALOG_SHOP+11, DIALOG_STYLE_INPUT, " RainbowVehicle: ID Culori", mesaj, "Schimba", "Iesire");
  209.             }
  210.         }
  211.     }else if(dialogid == DIALOG_SHOP+5) {
  212.         if(!response)
  213.             return 1;
  214.         new culoare;
  215.         culoare = strval(inputtext);
  216.         if(culoare < 128 || culoare > 255) {
  217.             SendClientMessage(playerid, ATENTIE, "Eroare: Cod culoare invalid.");
  218.             new mesaj[256];
  219.             format(mesaj, sizeof(mesaj), " Modificati culoarea pentru pozitia [0]. \n");
  220.             format(mesaj, sizeof(mesaj), "%s Culoare Actuala: %d. Introduceti mai jos numarul culorii (128-255) ", mesaj, Culori[0][playerid]);
  221.             ShowPlayerDialog(playerid, DIALOG_SHOP+5, DIALOG_STYLE_INPUT, " RainbowVehicle: ID Culori", mesaj, "Schimba", "Iesire");
  222.         }else
  223.             Culori[0][playerid] = culoare;
  224.     }else if(dialogid == DIALOG_SHOP+6) {
  225.         if(!response)
  226.             return 1;
  227.         new culoare;
  228.         culoare = strval(inputtext);
  229.         if(culoare < 128 || culoare > 255) {
  230.             SendClientMessage(playerid, ATENTIE, "Eroare: Cod culoare invalid.");
  231.             new mesaj[256];
  232.             format(mesaj, sizeof(mesaj), " Modificati culoarea pentru pozitia [1]. \n");
  233.             format(mesaj, sizeof(mesaj), "%s Culoare Actuala: %d. Introduceti mai jos numarul culorii (128-255) ", mesaj, Culori[1][playerid]);
  234.             ShowPlayerDialog(playerid, DIALOG_SHOP+6, DIALOG_STYLE_INPUT, " RainbowVehicle: ID Culori", mesaj, "Schimba", "Iesire");
  235.         }else
  236.             Culori[1][playerid] = culoare;
  237.     }else if(dialogid == DIALOG_SHOP+7) {
  238.         if(!response)
  239.             return 1;
  240.         new culoare;
  241.         culoare = strval(inputtext);
  242.         if(culoare < 128 || culoare > 255) {
  243.             SendClientMessage(playerid, ATENTIE, "Eroare: Cod culoare invalid.");
  244.             new mesaj[256];
  245.             format(mesaj, sizeof(mesaj), " Modificati culoarea pentru pozitia [2]. \n");
  246.             format(mesaj, sizeof(mesaj), "%s Culoare Actuala: %d. Introduceti mai jos numarul culorii (128-255) ", mesaj, Culori[2][playerid]);
  247.             ShowPlayerDialog(playerid, DIALOG_SHOP+7, DIALOG_STYLE_INPUT, " RainbowVehicle: ID Culori", mesaj, "Schimba", "Iesire");
  248.         }else
  249.             Culori[2][playerid] = culoare;
  250.     }else if(dialogid == DIALOG_SHOP+8) {
  251.         if(!response)
  252.             return 1;
  253.         new culoare;
  254.         culoare = strval(inputtext);
  255.         if(culoare < 128 || culoare > 255) {
  256.             SendClientMessage(playerid, ATENTIE, "Eroare: Cod culoare invalid.");
  257.             new mesaj[256];
  258.             format(mesaj, sizeof(mesaj), " Modificati culoarea pentru pozitia [3]. \n");
  259.             format(mesaj, sizeof(mesaj), "%s Culoare Actuala: %d. Introduceti mai jos numarul culorii (128-255) ", mesaj, Culori[3][playerid]);
  260.             ShowPlayerDialog(playerid, DIALOG_SHOP+8, DIALOG_STYLE_INPUT, " RainbowVehicle: ID Culori", mesaj, "Schimba", "Iesire");
  261.         }else
  262.             Culori[3][playerid] = culoare;
  263.     }else if(dialogid == DIALOG_SHOP+9) {
  264.         if(!response)
  265.             return 1;
  266.         new culoare;
  267.         culoare = strval(inputtext);
  268.         if(culoare < 128 || culoare > 255) {
  269.             SendClientMessage(playerid, ATENTIE, "Eroare: Cod culoare invalid.");
  270.             new mesaj[256];
  271.             format(mesaj, sizeof(mesaj), " Modificati culoarea pentru pozitia [4]. \n");
  272.             format(mesaj, sizeof(mesaj), "%s Culoare Actuala: %d. Introduceti mai jos numarul culorii (128-255) ", mesaj, Culori[4][playerid]);
  273.             ShowPlayerDialog(playerid, DIALOG_SHOP+9, DIALOG_STYLE_INPUT, " RainbowVehicle: ID Culori", mesaj, "Schimba", "Iesire");
  274.         }else
  275.             Culori[4][playerid] = culoare;
  276.     }else if(dialogid == DIALOG_SHOP+10) {
  277.         if(!response)
  278.             return 1;
  279.         new culoare;
  280.         culoare = strval(inputtext);
  281.         if(culoare < 128 || culoare > 255) {
  282.             SendClientMessage(playerid, ATENTIE, "Eroare: Cod culoare invalid.");
  283.             new mesaj[256];
  284.             format(mesaj, sizeof(mesaj), " Modificati culoarea pentru pozitia [5]. \n");
  285.             format(mesaj, sizeof(mesaj), "%s Culoare Actuala: %d. Introduceti mai jos numarul culorii (128-255) ", mesaj, Culori[5][playerid]);
  286.             ShowPlayerDialog(playerid, DIALOG_SHOP+10, DIALOG_STYLE_INPUT, " RainbowVehicle: ID Culori", mesaj, "Schimba", "Iesire");
  287.         }else
  288.             Culori[5][playerid] = culoare;
  289.     }else if(dialogid == DIALOG_SHOP+11) {
  290.         if(!response)
  291.             return 1;
  292.         new culoare;
  293.         culoare = strval(inputtext);
  294.         if(culoare < 128 || culoare > 255) {
  295.             SendClientMessage(playerid, ATENTIE, "Eroare: Cod culoare invalid.");
  296.             new mesaj[256];
  297.             format(mesaj, sizeof(mesaj), " Modificati culoarea pentru pozitia [6]. \n");
  298.             format(mesaj, sizeof(mesaj), "%s Culoare Actuala: %d. Introduceti mai jos numarul culorii (128-255) ", mesaj, Culori[6][playerid]);
  299.             ShowPlayerDialog(playerid, DIALOG_SHOP+11, DIALOG_STYLE_INPUT, " RainbowVehicle: ID Culori", mesaj, "Schimba", "Iesire");
  300.         }else
  301.             Culori[6][playerid] = culoare;
  302.     }
  303.  
  304.  
  305.  
  306.     return 1;
  307. }
  308.  
  309.  
  310. public OnPlayerExitVehicle(playerid, vehicleid) {
  311.  
  312.     if(vehicleid == masinaRainbow[playerid]) {
  313.         KillTimer(CARrainbow[playerid]);
  314.         activerainbow[playerid] = 0;
  315.     }
  316.  
  317.     return 1;
  318. }
  319.  
  320.  
  321. //==============================================================================
  322.  
  323. public OnPlayerKeyStateChange(playerid, newkeys, oldkeys){
  324.    #define PRESSED(%0) \
  325.      (((newkeys & (%0)) == (%0)) && ((oldkeys & (%0)) != (%0)))
  326.  
  327.    
  328.  
  329.     return 1;
  330. }
  331. //================================[COMENZI CMD]=====================================
  332.  
  333.  
  334. CMD:shop(playerid, params[]) {
  335.  
  336.     new string[1200];
  337.     format(string, sizeof(string), " RainbowColor on Vehicle  -   $50.000 \n");
  338.     format(string, sizeof(string), "%s Alta optiune ...  \n", string);
  339.     format(string, sizeof(string), "%s Alta optiune ...  \n", string);
  340.     format(string, sizeof(string), "%s Alta optiune ...  \n", string);
  341.     format(string, sizeof(string), "%s Alta optiune ...  \n", string);
  342.     ShowPlayerDialog(playerid, DIALOG_SHOP, DIALOG_STYLE_LIST, " SHOP: ", string, "Selecteaza", "Iesire");
  343.  
  344.     return 1;
  345. }
  346.  
  347. CMD:rainbowveh(playerid, params[]) {
  348.  
  349.     if(rainbowCAR[playerid] == 0)   return SendClientMessage(playerid, ATENTIE, "Eroare: Nu detii acest serviciu. Achizitioneaza-l din [/shop]. ");
  350.     if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, ATENTIE, "Eroare: Trebuie sa fii intr-un vehicul!");
  351.     if(IsPlayerInAnyVehicle(playerid) && GetPlayerVehicleSeat(playerid) != 0) return SendClientMessage(playerid, ATENTIE, "Eroare: Trebuie sa conduci vehiculul. ");
  352.  
  353.     new mesaj[256], anunt[126], nume[MAX_PLAYER_NAME];
  354.  
  355.     GetPlayerName(playerid, nume, sizeof(nume));
  356.     format(mesaj, sizeof(mesaj), " Activare Rainbow Color \n");
  357.     format(mesaj, sizeof(mesaj), "%s Setare culori Rainbow \n", mesaj);
  358.     format(anunt, sizeof(anunt), " RainbowVehicle %s ", nume);
  359.     ShowPlayerDialog(playerid, DIALOG_SHOP+2, DIALOG_STYLE_LIST, anunt, mesaj, "Selectare", "Iesire");
  360.  
  361.     return 1;
  362. }
  363.  
  364. CMD:gotolos(playerid, params[]) {
  365.     SetPlayerPos(playerid, 1529.6449, -1686.4519, 13.7506);
  366.  
  367.     return 1;
  368. }
RAW Paste Data