mforce

Skincsomag Rendszer

Sep 20th, 2015
237
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pawn 18.16 KB | None | 0 0
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <fakemeta>
  4. #include <fvault>
  5.  
  6. #define PLUGIN "Skincsomag Rendszer"
  7. #define VERSION "1.0"
  8. #define AUTHOR "mforce"
  9.  
  10. // Modellek Letöltése: https://mega.nz/#!bkJHzQzC!NRK6QDwZOu-YrL-Enx5FAVOLWEIqmFsOuKqz4JQK5gk
  11.  
  12. // Beállítások
  13.  
  14. #define PREFIX "ProKillers"
  15.  
  16. // Ha regisztrációs rendszert használsz, akkor érdemes névre menteni SteamID helyett. Ehhez vedd ki a //-t a # elől.
  17. //#define NEVRE_MENTES
  18.  
  19. #define OLES_PONT (1)
  20. #define FEJLOVES_PONT (2)
  21.  
  22. #define ROZSDAS_PONT (100)
  23. #define BRONZ_PONT (200)
  24. #define EZUST_PONT (350)
  25. #define ARANY_PONT (500)
  26.  
  27. // Beállítások vége
  28.  
  29. new const g_vaultName[]  = "skincsomag_rendszer";
  30. new pont[33], csomag[33];
  31. new iSteamID[33][32];
  32. new g_iCelpont[33]
  33.  
  34. public plugin_init() {
  35.     register_plugin(PLUGIN, VERSION, AUTHOR)
  36.     register_cvar("skincsomag_rendszer", AUTHOR, FCVAR_SERVER | FCVAR_SPONLY);
  37.     register_clcmd("say /menu", "ShowMenu")
  38.     register_clcmd("say /pontadas", "AdasMenu")
  39.     register_concmd("amx_pontok", "admin_pontok", ADMIN_KICK," <Jatekos neve> - Kiirja a jatekos pontjait.");
  40.     register_event("DeathMsg", "halal", "a")
  41.     register_event("CurWeapon", "Event_CurWeapon", "be", "1=1")
  42.     register_clcmd("PONT_ADDOLAS", "PontAdas")
  43.     set_task(172.0, "pontrendszerfut", 0, _, _, "b");
  44. }
  45.  
  46. new const fegyverek[][] = {
  47.     "models/skincsomag/rozsdas/p_ak47.mdl", // 0. elem
  48.     "models/skincsomag/rozsdas/v_ak47.mdl", // 1
  49.     "models/skincsomag/rozsdas/p_m4a1.mdl", // 2
  50.     "models/skincsomag/rozsdas/v_m4a1.mdl", // 3
  51.     "models/skincsomag/rozsdas/p_awp.mdl", // 4
  52.     "models/skincsomag/rozsdas/v_awp.mdl", // 5
  53.     "models/skincsomag/rozsdas/p_deagle.mdl", // 6
  54.     "models/skincsomag/rozsdas/v_deagle.mdl", // 7
  55.     "models/skincsomag/rozsdas/p_famas.mdl", // 8
  56.     "models/skincsomag/rozsdas/v_famas.mdl", // 9
  57.     "models/skincsomag/rozsdas/p_m3.mdl", // 10
  58.     "models/skincsomag/rozsdas/v_m3.mdl", // 11
  59.     "models/skincsomag/rozsdas/p_mp5navy.mdl", // 12
  60.     "models/skincsomag/rozsdas/v_mp5navy.mdl", // 13
  61.     "models/skincsomag/rozsdas/p_c4.mdl", // 14
  62.     "models/skincsomag/rozsdas/v_c4.mdl", // 15
  63.     "models/skincsomag/rozsdas/p_scout.mdl", // 16
  64.     "models/skincsomag/rozsdas/v_scout.mdl", // 17
  65.     "models/skincsomag/bronz/p_ak47.mdl", // 18. elem
  66.     "models/skincsomag/bronz/v_ak47.mdl", // 19
  67.     "models/skincsomag/bronz/p_m4a1.mdl", // 20
  68.     "models/skincsomag/bronz/v_m4a1.mdl", // 21
  69.     "models/skincsomag/bronz/p_awp.mdl", // 22
  70.     "models/skincsomag/bronz/v_awp.mdl", // 23
  71.     "models/skincsomag/bronz/p_deagle.mdl", // 24
  72.     "models/skincsomag/bronz/v_deagle.mdl", // 25
  73.     "models/skincsomag/bronz/p_famas.mdl", // 26
  74.     "models/skincsomag/bronz/v_famas.mdl", // 27
  75.     "models/skincsomag/bronz/p_m3.mdl", // 28
  76.     "models/skincsomag/bronz/v_m3.mdl", // 29
  77.     "models/skincsomag/bronz/p_mp5navy.mdl", // 30
  78.     "models/skincsomag/bronz/v_mp5navy.mdl", // 31
  79.     "models/skincsomag/bronz/p_c4.mdl", // 32
  80.     "models/skincsomag/bronz/v_c4.mdl", // 33
  81.     "models/skincsomag/bronz/p_scout.mdl", // 34
  82.     "models/skincsomag/bronz/v_scout.mdl", // 35
  83.     "models/skincsomag/ezust/p_ak47.mdl", // 36. elem
  84.     "models/skincsomag/ezust/v_ak47.mdl", // 37
  85.     "models/skincsomag/ezust/p_m4a1.mdl", // 38
  86.     "models/skincsomag/ezust/v_m4a1.mdl", // 39
  87.     "models/skincsomag/ezust/p_awp.mdl", // 40
  88.     "models/skincsomag/ezust/v_awp.mdl", // 41
  89.     "models/skincsomag/ezust/p_deagle.mdl", // 42
  90.     "models/skincsomag/ezust/v_deagle.mdl", // 43
  91.     "models/skincsomag/ezust/p_famas.mdl", // 44
  92.     "models/skincsomag/ezust/v_famas.mdl", // 45
  93.     "models/skincsomag/ezust/p_m3.mdl", // 46
  94.     "models/skincsomag/ezust/v_m3.mdl", // 47
  95.     "models/skincsomag/ezust/p_mp5navy.mdl", // 48
  96.     "models/skincsomag/ezust/v_mp5navy.mdl", // 49
  97.     "models/skincsomag/ezust/p_c4.mdl", // 50
  98.     "models/skincsomag/ezust/v_c4.mdl", // 51
  99.     "models/skincsomag/ezust/p_scout.mdl", // 52
  100.     "models/skincsomag/ezust/v_scout.mdl", // 53
  101.     "models/skincsomag/arany/p_ak47.mdl", // 54. elem
  102.     "models/skincsomag/arany/v_ak47.mdl", // 55
  103.     "models/skincsomag/arany/p_m4a1.mdl", // 56
  104.     "models/skincsomag/arany/v_m4a1.mdl", // 57
  105.     "models/skincsomag/arany/p_awp.mdl", // 58
  106.     "models/skincsomag/arany/v_awp.mdl", // 59
  107.     "models/skincsomag/arany/p_deagle.mdl", // 60
  108.     "models/skincsomag/arany/v_deagle.mdl", // 61
  109.     "models/skincsomag/arany/p_famas.mdl", // 62
  110.     "models/skincsomag/arany/v_famas.mdl", // 63
  111.     "models/skincsomag/arany/p_m3.mdl", // 64
  112.     "models/skincsomag/arany/v_m3.mdl", // 65
  113.     "models/skincsomag/arany/p_mp5navy.mdl", // 66
  114.     "models/skincsomag/arany/v_mp5navy.mdl", // 67
  115.     "models/skincsomag/arany/p_c4.mdl", // 68
  116.     "models/skincsomag/arany/v_c4.mdl", // 69
  117.     "models/skincsomag/arany/p_scout.mdl", // 70
  118.     "models/skincsomag/arany/v_scout.mdl" // 71
  119. };
  120.  
  121. public Event_CurWeapon(id) {
  122.     new weap = get_user_weapon(id)
  123.     if(csomag[id] == 1) {
  124.         if(weap == CSW_AK47) {
  125.         set_pev(id, pev_weaponmodel2, fegyverek[0])
  126.         set_pev(id, pev_viewmodel2, fegyverek[1])
  127.         }
  128.         else if(weap == CSW_M4A1) {
  129.         set_pev(id, pev_weaponmodel2, fegyverek[2])
  130.         set_pev(id, pev_viewmodel2, fegyverek[3])
  131.         }
  132.         else if(weap == CSW_AWP) {
  133.         set_pev(id, pev_weaponmodel2, fegyverek[4])
  134.         set_pev(id, pev_viewmodel2, fegyverek[5])
  135.         }
  136.         else if(weap == CSW_DEAGLE) {
  137.         set_pev(id, pev_weaponmodel2, fegyverek[6])
  138.         set_pev(id, pev_viewmodel2, fegyverek[7])
  139.         }
  140.         else if(weap == CSW_FAMAS) {
  141.         set_pev(id, pev_weaponmodel2, fegyverek[8])
  142.         set_pev(id, pev_viewmodel2, fegyverek[9])
  143.         }
  144.         else if(weap == CSW_M3) {
  145.         set_pev(id, pev_weaponmodel2, fegyverek[10])
  146.         set_pev(id, pev_viewmodel2, fegyverek[11])
  147.         }
  148.         else if(weap == CSW_MP5NAVY) {
  149.         set_pev(id, pev_weaponmodel2, fegyverek[12])
  150.         set_pev(id, pev_viewmodel2, fegyverek[13])
  151.         }
  152.         else if(weap == CSW_C4) {
  153.         set_pev(id, pev_weaponmodel2, fegyverek[14])
  154.         set_pev(id, pev_viewmodel2, fegyverek[15])
  155.         }
  156.         else if(weap == CSW_SCOUT) {
  157.         set_pev(id, pev_weaponmodel2, fegyverek[16])
  158.         set_pev(id, pev_viewmodel2, fegyverek[17])
  159.         }
  160.     }
  161.     else if(csomag[id] == 2) {
  162.         if(weap == CSW_AK47) {
  163.         set_pev(id, pev_weaponmodel2, fegyverek[18])
  164.         set_pev(id, pev_viewmodel2, fegyverek[19])
  165.         }
  166.         else if(weap == CSW_M4A1) {
  167.         set_pev(id, pev_weaponmodel2, fegyverek[20])
  168.         set_pev(id, pev_viewmodel2, fegyverek[21])
  169.         }
  170.         else if(weap == CSW_AWP) {
  171.         set_pev(id, pev_weaponmodel2, fegyverek[22])
  172.         set_pev(id, pev_viewmodel2, fegyverek[23])
  173.         }
  174.         else if(weap == CSW_DEAGLE) {
  175.         set_pev(id, pev_weaponmodel2, fegyverek[24])
  176.         set_pev(id, pev_viewmodel2, fegyverek[25])
  177.         }
  178.         else if(weap == CSW_FAMAS) {
  179.         set_pev(id, pev_weaponmodel2, fegyverek[26])
  180.         set_pev(id, pev_viewmodel2, fegyverek[27])
  181.         }
  182.         else if(weap == CSW_M3) {
  183.         set_pev(id, pev_weaponmodel2, fegyverek[28])
  184.         set_pev(id, pev_viewmodel2, fegyverek[29])
  185.         }
  186.         else if(weap == CSW_MP5NAVY) {
  187.         set_pev(id, pev_weaponmodel2, fegyverek[30])
  188.         set_pev(id, pev_viewmodel2, fegyverek[31])
  189.         }
  190.         else if(weap == CSW_C4) {
  191.         set_pev(id, pev_weaponmodel2, fegyverek[32])
  192.         set_pev(id, pev_viewmodel2, fegyverek[33])
  193.         }
  194.         else if(weap == CSW_SCOUT) {
  195.         set_pev(id, pev_weaponmodel2, fegyverek[34])
  196.         set_pev(id, pev_viewmodel2, fegyverek[35])
  197.         }
  198.     }
  199.     else if(csomag[id] == 3) {
  200.         if(weap == CSW_AK47) {
  201.         set_pev(id, pev_weaponmodel2, fegyverek[36])
  202.         set_pev(id, pev_viewmodel2, fegyverek[37])
  203.         }
  204.         else if(weap == CSW_M4A1) {
  205.         set_pev(id, pev_weaponmodel2, fegyverek[38])
  206.         set_pev(id, pev_viewmodel2, fegyverek[39])
  207.         }
  208.         else if(weap == CSW_AWP) {
  209.         set_pev(id, pev_weaponmodel2, fegyverek[40])
  210.         set_pev(id, pev_viewmodel2, fegyverek[41])
  211.         }
  212.         else if(weap == CSW_DEAGLE) {
  213.         set_pev(id, pev_weaponmodel2, fegyverek[42])
  214.         set_pev(id, pev_viewmodel2, fegyverek[43])
  215.         }
  216.         else if(weap == CSW_FAMAS) {
  217.         set_pev(id, pev_weaponmodel2, fegyverek[44])
  218.         set_pev(id, pev_viewmodel2, fegyverek[45])
  219.         }
  220.         else if(weap == CSW_M3) {
  221.         set_pev(id, pev_weaponmodel2, fegyverek[46])
  222.         set_pev(id, pev_viewmodel2, fegyverek[47])
  223.         }
  224.         else if(weap == CSW_MP5NAVY) {
  225.         set_pev(id, pev_weaponmodel2, fegyverek[48])
  226.         set_pev(id, pev_viewmodel2, fegyverek[49])
  227.         }
  228.         else if(weap == CSW_C4) {
  229.         set_pev(id, pev_weaponmodel2, fegyverek[50])
  230.         set_pev(id, pev_viewmodel2, fegyverek[51])
  231.         }
  232.         else if(weap == CSW_SCOUT) {
  233.         set_pev(id, pev_weaponmodel2, fegyverek[52])
  234.         set_pev(id, pev_viewmodel2, fegyverek[53])
  235.         }
  236.     }
  237.     else if(csomag[id] == 4) {
  238.         if(weap == CSW_AK47) {
  239.         set_pev(id, pev_weaponmodel2, fegyverek[54])
  240.         set_pev(id, pev_viewmodel2, fegyverek[55])
  241.         }
  242.         else if(weap == CSW_M4A1) {
  243.         set_pev(id, pev_weaponmodel2, fegyverek[56])
  244.         set_pev(id, pev_viewmodel2, fegyverek[57])
  245.         }
  246.         else if(weap == CSW_AWP) {
  247.         set_pev(id, pev_weaponmodel2, fegyverek[58])
  248.         set_pev(id, pev_viewmodel2, fegyverek[59])
  249.         }
  250.         else if(weap == CSW_DEAGLE) {
  251.         set_pev(id, pev_weaponmodel2, fegyverek[60])
  252.         set_pev(id, pev_viewmodel2, fegyverek[61])
  253.         }
  254.         else if(weap == CSW_FAMAS) {
  255.         set_pev(id, pev_weaponmodel2, fegyverek[62])
  256.         set_pev(id, pev_viewmodel2, fegyverek[63])
  257.         }
  258.         else if(weap == CSW_M3) {
  259.         set_pev(id, pev_weaponmodel2, fegyverek[64])
  260.         set_pev(id, pev_viewmodel2, fegyverek[65])
  261.         }
  262.         else if(weap == CSW_MP5NAVY) {
  263.         set_pev(id, pev_weaponmodel2, fegyverek[66])
  264.         set_pev(id, pev_viewmodel2, fegyverek[67])
  265.         }
  266.         else if(weap == CSW_C4) {
  267.         set_pev(id, pev_weaponmodel2, fegyverek[68])
  268.         set_pev(id, pev_viewmodel2, fegyverek[69])
  269.         }
  270.         else if(weap == CSW_SCOUT) {
  271.         set_pev(id, pev_weaponmodel2, fegyverek[70])
  272.         set_pev(id, pev_viewmodel2, fegyverek[71])
  273.         }
  274.     }
  275. }
  276.  
  277. public plugin_precache() {
  278.     for(new i; i<sizeof(fegyverek);i++)
  279.     {
  280.         precache_model(fegyverek[i]);
  281.     }
  282. }
  283.  
  284. public halal() {
  285.     new killer = read_data(1)
  286.     new victim = read_data(2)
  287.     new kteam = get_user_team(killer)
  288.     new vteam = get_user_team(victim)
  289.    
  290.     if(killer != victim && kteam != vteam && read_data(3)) {
  291.         pont[killer] += FEJLOVES_PONT
  292.         set_hudmessage(0, 255, 0, -0.9, 0.15, 0, 6.0, 1.0);
  293.         show_hudmessage(killer, "+%i Pont", FEJLOVES_PONT);
  294.     }
  295.     else if(killer != victim && kteam != vteam) {
  296.         pont[killer] += OLES_PONT
  297.         set_hudmessage(0, 255, 0, -0.9, 0.15, 0, 6.0, 1.0);
  298.         show_hudmessage(killer, "+%i Pont", OLES_PONT);
  299.     }
  300. }
  301.  
  302. public pontrendszerfut() print_color(0, "!g[%s]!y Szerverünkön !tSkincsomag Rendszer!y fut, írd be: !t/menu", PREFIX)
  303.  
  304. public ShowMenu(id) {
  305.     new temp[128];
  306.     formatex(temp, charsmax(temp), "\r[%s] \wSkincsomag Rendszer ^nPontok: \y%d", PREFIX, pont[id]);
  307.     new menu = menu_create(temp, "mh_MyMenu");
  308.    
  309.     formatex(temp, charsmax(temp), "Alap Skinek %s", csomag[id] == 0 ? "\y|AKTÍV|":"");
  310.     menu_additem(menu, temp, "0", 0);
  311.     if(pont[id] >= ROZSDAS_PONT) {
  312.         formatex(temp, charsmax(temp), "Rozsdás Skinek %s", csomag[id] == 1 ? "\y|AKTÍV|":"\r|Elérhető|");
  313.         menu_additem(menu, temp, "1", 0);
  314.     }
  315.     else {
  316.         formatex(temp, charsmax(temp), "Rozsdás Skinek \r|%i| Pont", ROZSDAS_PONT);
  317.         menu_additem(menu, temp, "1", 0);
  318.     }
  319.     if(pont[id] >= BRONZ_PONT) {
  320.         formatex(temp, charsmax(temp), "Bronz Skinek %s", csomag[id] == 2 ? "\y|AKTÍV|":"\r|Elérhető|");
  321.         menu_additem(menu, temp, "2", 0);
  322.     }
  323.     else {
  324.         formatex(temp, charsmax(temp), "Bronz Skinek \r|%i| Pont", BRONZ_PONT);
  325.         menu_additem(menu, temp, "2", 0);
  326.     }
  327.     if(pont[id] >= EZUST_PONT) {
  328.         formatex(temp, charsmax(temp), "Ezüst Skinek %s", csomag[id] == 3 ? "\y|AKTÍV|":"\r|Elérhető|");
  329.         menu_additem(menu, temp, "3", 0);
  330.     }
  331.     else {
  332.         formatex(temp, charsmax(temp), "Ezüst Skinek \r|%i| Pont", EZUST_PONT);
  333.         menu_additem(menu, temp, "3", 0);
  334.     }
  335.     if(pont[id] >= ARANY_PONT) {
  336.         formatex(temp, charsmax(temp), "Arany Skinek %s", csomag[id] == 4 ? "\y|AKTÍV|":"\r|Elérhető|");
  337.         menu_additem(menu, temp, "4", 0);
  338.     }
  339.     else {
  340.         formatex(temp, charsmax(temp), "Arany Skinek \r|%i| Pont", ARANY_PONT);
  341.         menu_additem(menu, temp, "4", 0);
  342.     }
  343.  
  344.     menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
  345.     menu_setprop(menu, MPROP_BACKNAME, "Vissza");
  346.     menu_setprop(menu, MPROP_NEXTNAME, "Előre");
  347.     menu_setprop(menu, MPROP_EXITNAME, "Kilépés");
  348.  
  349.     menu_display(id, menu, 0);
  350.     return PLUGIN_HANDLED;
  351. }
  352.  
  353. public mh_MyMenu(id, menu, item) {
  354.     if(item == MENU_EXIT)
  355.     {
  356.         menu_cancel(id);
  357.         return PLUGIN_HANDLED;
  358.     }
  359.    
  360.     new command[6], name[64], access, callback;
  361.    
  362.     menu_item_getinfo(menu, item, access, command, sizeof command - 1, name, sizeof name - 1, callback);
  363.    
  364.     switch(item)
  365.     {
  366.         case 0: {
  367.             if(csomag[id] == 0) print_color(id, "!g[%s]!y Neked már aktív ez a csomag.", PREFIX)
  368.             else {
  369.             csomag[id] = 0;
  370.             print_color(id, "!g[%s]!y Sikeresen aktiváltad a csomagot.", PREFIX)
  371.             }
  372.         }
  373.         case 1: {
  374.             if(csomag[id] == 1) print_color(id, "!g[%s]!y Neked már aktív ez a csomag.", PREFIX)
  375.             else if(csomag[id] != 1 && pont[id] >= ROZSDAS_PONT) {
  376.             csomag[id] = 1;
  377.             print_color(id, "!g[%s]!y Sikeresen aktiváltad a csomagot.", PREFIX)
  378.             }
  379.             else if(csomag[id] != 1 && pont[id] < ROZSDAS_PONT) print_color(id, "!g[%s]!y Nincs elég pontod az aktiváláshoz.", PREFIX)
  380.         }
  381.         case 2: {
  382.             if(csomag[id] == 2) print_color(id, "!g[%s]!y Neked már aktív ez a csomag.", PREFIX)
  383.             else if(csomag[id] != 2 && pont[id] >= BRONZ_PONT) {
  384.             csomag[id] = 2;
  385.             print_color(id, "!g[%s]!y Sikeresen aktiváltad a csomagot.", PREFIX)
  386.             }
  387.             else if(csomag[id] != 2 && pont[id] < BRONZ_PONT) print_color(id, "!g[%s]!y Nincs elég pontod az aktiváláshoz.", PREFIX)
  388.         }
  389.         case 3: {
  390.             if(csomag[id] == 3) print_color(id, "!g[%s]!y Neked már aktív ez a csomag.", PREFIX)
  391.             else if(csomag[id] != 3 && pont[id] >= EZUST_PONT) {
  392.             csomag[id] = 3;
  393.             print_color(id, "!g[%s]!y Sikeresen aktiváltad a csomagot.", PREFIX)
  394.             }
  395.             else if(csomag[id] != 3 && pont[id] < EZUST_PONT) print_color(id, "!g[%s]!y Nincs elég pontod az aktiváláshoz.", PREFIX)
  396.         }
  397.         case 4: {
  398.             if(csomag[id] == 4) print_color(id, "!g[%s]!y Neked már aktív ez a csomag.", PREFIX)
  399.             else if(csomag[id] != 4 && pont[id] >= ARANY_PONT) {
  400.             csomag[id] = 4;
  401.             print_color(id, "!g[%s]!y Sikeresen aktiváltad a csomagot.", PREFIX)
  402.             }
  403.             else if(csomag[id] != 4 && pont[id] < ARANY_PONT) print_color(id, "!g[%s]!y Nincs elég pontod az aktiváláshoz.", PREFIX)
  404.         }
  405.     }
  406.    
  407.     return PLUGIN_HANDLED;
  408. }
  409.  
  410. public admin_pontok(id,level,cid) {
  411.         if(!cmd_access(id, level, cid, 2))
  412.                 return PLUGIN_HANDLED;
  413.  
  414.         static arg[32];
  415.         read_argv(1, arg, 31);
  416.  
  417.         new player = cmd_target(id, arg, 2);
  418.  
  419.         if(!player)
  420.                 return PLUGIN_HANDLED;
  421.  
  422.         static name[32];
  423.         get_user_name(player, name, charsmax(name));
  424.  
  425.         console_print(id, "--------------------(#Skincsomag Rendszer#)--------------------");
  426.         console_print(id, "%s pontjai: %i pont.", name, pont[player]);
  427.         console_print(id, "-----------------------------------------------------------------");
  428.  
  429.         return PLUGIN_HANDLED;
  430. }
  431.  
  432. public client_putinserver(id) {
  433.     if (is_user_bot(id)) return;
  434.     else {
  435.         #if defined NEVRE_MENTES
  436.         get_user_name(id, iSteamID[id], charsmax(iSteamID));
  437.         #else
  438.         get_user_authid(id, iSteamID[id], charsmax(iSteamID));
  439.         if (containi(iSteamID[id], "_ID_LAN") != -1 || containi(iSteamID[id], "HLTV") != -1) get_user_ip(id, iSteamID[id], charsmax(iSteamID), 1);
  440.         #endif
  441.         pont[id] = 0;
  442.         csomag[id] = 0;
  443.         Load(id);
  444.     }
  445. }
  446.  
  447. public client_disconnect(id) {
  448.     if (is_user_bot(id)) return;
  449.     else Save(id);
  450. }
  451.  
  452. Load(id) {
  453.     new szData[64]
  454.     new szKey[40]
  455.  
  456.     formatex(szKey , 39, "%s" , iSteamID[id])
  457.  
  458.     if(fvault_get_data(g_vaultName, szKey, szData, 31))
  459.     {
  460.     new iSpacePos = contain(szData, " ")
  461.  
  462.     if(iSpacePos > -1)
  463.     {    
  464.         new fpont[32], fcsomag[3];
  465.  
  466.         parse(szData , fpont, 31, fcsomag, 2)
  467.  
  468.         pont[id] = str_to_num(fpont)
  469.         csomag[id] = str_to_num(fcsomag)
  470.     }
  471.     }
  472. }
  473.  
  474. Save(id) {
  475.     new szData[64]
  476.     new szKey[40]
  477.  
  478.     formatex(szKey, 39, "%s", iSteamID[id])
  479.     formatex(szData, 34, "%i %i", pont[id], csomag[id])
  480.  
  481.     fvault_set_data(g_vaultName, szKey, szData)
  482. }
  483.  
  484. public AdasMenu(id)
  485. {
  486.     if(get_user_flags(id) & ADMIN_IMMUNITY)
  487.     {
  488.         new menu = menu_create("Válaszd ki kinek szeretnél adni pontot!", "AdasKezelo")
  489.  
  490.         new szTempid[32]
  491.  
  492.         for(new celpont; celpont <= 32; celpont++) {
  493.             if(is_user_connected(celpont) && celpont != id && !is_user_bot(celpont)) {
  494.                 new szJatekosok[60]
  495.                 get_user_name(celpont, szJatekosok, charsmax(szJatekosok))
  496.                 num_to_str(celpont, szTempid, charsmax(szTempid))
  497.  
  498.                 menu_additem(menu, szJatekosok, szTempid, 0)
  499.             }
  500.         }
  501.  
  502.         menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
  503.         menu_setprop(menu, MPROP_BACKNAME, "Vissza")
  504.         menu_setprop(menu, MPROP_NEXTNAME, "Előre")
  505.         menu_setprop(menu, MPROP_EXITNAME, "Kilépés")
  506.         menu_display(id , menu , 0)
  507.     }
  508.     else
  509.     {
  510.         print_color(id, "!g[%s]!y Ehhez nincs hozzáférésed!", PREFIX)
  511.     }
  512.     return PLUGIN_HANDLED;
  513. }
  514.  
  515. public AdasKezelo(id, menu, item) {
  516.     if(item == MENU_EXIT)
  517.     {
  518.         menu_destroy(menu)
  519.  
  520.         return PLUGIN_HANDLED
  521.     }
  522.  
  523.     new access, info[6], name[64], callback
  524.     menu_item_getinfo(menu, item, access, info, 5, name, 63, callback)
  525.  
  526.     g_iCelpont[id] = str_to_num(info)
  527.  
  528.     if(!is_user_connected(g_iCelpont[id])) {
  529.         print_color(id, "!g[%s]!y Sajnos lecsatlakozott a kiválasztott játékos!", PREFIX)
  530.         menu_display(id, menu, 0)
  531.  
  532.         return PLUGIN_HANDLED
  533.     }
  534.  
  535.     client_cmd(id, "messagemode PONT_ADDOLAS")
  536.  
  537.     menu_destroy(menu)
  538.     return PLUGIN_CONTINUE
  539. }
  540.  
  541. public PontAdas(id) {
  542.     new adat[192], szam
  543.     read_args(adat, charsmax(adat))
  544.  
  545.     szam = str_to_num(adat)
  546.  
  547.     if(szam) {
  548.         pont[g_iCelpont[id]] += szam
  549.         return PLUGIN_CONTINUE
  550.     }
  551.     return PLUGIN_CONTINUE
  552. }
  553.  
  554. stock print_color(const id, const input[], any:...)
  555. {
  556.         new count = 1, players[32]
  557.         static msg[191]
  558.         vformat(msg, 190, input, 3)
  559.  
  560.         replace_all(msg, 190, "!g", "^4")
  561.         replace_all(msg, 190, "!y", "^1")
  562.         replace_all(msg, 190, "!t", "^3")    
  563.  
  564.         if (id) players[0] = id; else get_players(players, count, "ch")
  565.         {
  566.                 for (new i = 0; i < count; i++)
  567.                 {
  568.                         if (is_user_connected(players[i]))
  569.                         {
  570.                                 message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i])
  571.                                 write_byte(players[i])
  572.                                 write_string(msg)
  573.                                 message_end()
  574.                         }
  575.                 }
  576.         }
  577.         return PLUGIN_HANDLED
  578. }
Advertisement
Add Comment
Please, Sign In to add comment