hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.03.28. 19:16



Jelenlévő felhasználók

Jelenleg 211 felhasználó van jelen :: 0 regisztrált, 0 rejtett és 211 vendég

A legtöbb felhasználó (1565 fő) 2020.11.21. 11:26-kor tartózkodott itt.

Regisztrált felhasználók: nincs regisztrált felhasználó az elmúlt 5 percben aktív felhasználók alapján

Utoljára aktív
Ahhoz hogy lásd ki volt utoljára aktív, be kell jelentkezned.



Az oldal teljeskörű
használatához regisztrálj.

Regisztráció

Kereső


Új téma nyitása  Hozzászólás a témához  [ 4 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: Aktivált skinek
HozzászólásElküldve: 2021.07.08. 13:05 
Offline
Jómunkásember

Csatlakozott: 2020.06.14. 17:59
Hozzászólások: 368
Megköszönt másnak: 64 alkalommal
Megköszönték neki: 10 alkalommal
Üdv!

Szeretnék segítséget kapni hogy a meglévő aktivált skin miért nem marad meg a következő pályán?
  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <hamsandwich>
  4. #include <cstrike>
  5. #include <engine>
  6. #include <fun>
  7. #include <fakemeta>
  8. #include <sqlx>
  9.  
  10. #define PLUGIN  "New Plugin"
  11. #define AUTHOR  "Unknown"
  12. #define VERSION "1.0"
  13.  
  14. #define MAXPLAYERS 33
  15. #define TULAJ ADMIN_IMMUNITY
  16. #define ADMIN ADMIN_BAN
  17. #define VIP ADMIN_LEVEL_H
  18.  
  19. new const SQL_INFO[][] = {"","","",""};
  20. enum eCvar{eCpref,eMpref,};
  21. new cvarS[eCvar];
  22. enum ePlayer{eKills, eUnclockedSkin};
  23. new Player[ePlayer][MAXPLAYERS];
  24. enum _:eWData {eWName[64],eWFile[64],eWKill,eWType[64],};
  25. new iActiveSkin[13][33], iWeaponKills[13][33], iLoadedSkins, iTempID, iMaxPlayers, iChoosedMode, gSteamID[128], SyncHud;
  26. new Handle:SqlTuple;
  27. new Array: aWSkins;
  28.  
  29. public plugin_init(){
  30.     register_plugin(PLUGIN, VERSION, AUTHOR);
  31.    
  32.     register_impulse(201, "main_menu");
  33.     register_clcmd("say /menu", "main_menu");
  34.    
  35.     cvarS[eCpref] = register_cvar("C_Pref", "^4[<<< DarK~DemonS >>>]^3");
  36.     cvarS[eMpref] = register_cvar("M_Pref", "\y[<<< DarK~DemonS >>>]\y");
  37.    
  38.     register_clcmd("type_itemremoveoradd", "type_itemammount");
  39.    
  40.     RegisterHam(Ham_Killed, "player", "PlayerKilled_p", 1);
  41.     RegisterHam(Ham_Item_Deploy, "weapon_m4a1", "WeaponChange_p", 1);
  42.     RegisterHam(Ham_Item_Deploy, "weapon_ak47", "WeaponChange_p", 1);
  43.     RegisterHam(Ham_Item_Deploy, "weapon_awp", "WeaponChange_p", 1);
  44.     RegisterHam(Ham_Item_Deploy, "weapon_scout", "WeaponChange_p", 1);
  45.     RegisterHam(Ham_Item_Deploy, "weapon_famas", "WeaponChange_p", 1);
  46.     RegisterHam(Ham_Item_Deploy, "weapon_galil", "WeaponChange_p", 1);
  47.     RegisterHam(Ham_Item_Deploy, "weapon_aug", "WeaponChange_p", 1);
  48.     RegisterHam(Ham_Item_Deploy, "weapon_m3", "WeaponChange_p", 1);
  49.     RegisterHam(Ham_Item_Deploy, "weapon_xm1014", "WeaponChange_p", 1);
  50.     RegisterHam(Ham_Item_Deploy, "weapon_knife", "WeaponChange_p", 1);
  51.     RegisterHam(Ham_Item_Deploy, "weapon_deagle", "WeaponChange_p", 1);
  52.     RegisterHam(Ham_Item_Deploy, "weapon_usp", "WeaponChange_p", 1);
  53.     RegisterHam(Ham_Item_Deploy, "weapon_glock18", "WeaponChange_p", 1);
  54.    
  55.     register_clcmd("say", "sayhook");
  56.     register_clcmd("say_team", "sayteamhook");
  57.    
  58.     iMaxPlayers = get_maxplayers();
  59.     SyncHud = CreateHudSyncObj();
  60. }
  61. public InfoHud(id)
  62. {
  63.     static eData[eWData];
  64.     new idT;
  65.     new Target = pev(id, pev_iuser1) == 4 ? pev(id, pev_iuser2) : id;
  66.     idT = is_user_alive(id) ? id:Target;
  67.     new iWeapon = get_user_weapon(idT);
  68.     set_hudmessage(0, 255, 0, -1.0, 0.80, 0, 6.0, 1.1, 0.1, 0.2, -1);
  69.    
  70.     set_task(1.0, "InfoHud", id);
  71.    
  72.     switch(iWeapon){
  73.         case CSW_M4A1: {if(iActiveSkin[0][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;} ArrayGetArray(aWSkins, iActiveSkin[0][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[0][id]);}
  74.         case CSW_AK47: {if(iActiveSkin[1][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[1][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[1][id]);}
  75.         case CSW_AWP: {if(iActiveSkin[2][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[2][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[2][id]);}
  76.         case CSW_SCOUT: {if(iActiveSkin[3][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[3][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[3][id]);}
  77.         case CSW_FAMAS: {if(iActiveSkin[4][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[4][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[4][id]);}
  78.         case CSW_GALIL: {if(iActiveSkin[5][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[5][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[5][id]);}
  79.         case CSW_AUG: {if(iActiveSkin[6][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[6][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[6][id]);}
  80.         case CSW_M3: {if(iActiveSkin[7][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[7][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[7][id]);}
  81.         case CSW_XM1014: {if(iActiveSkin[8][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[8][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[8][id]);}
  82.         case CSW_KNIFE: {if(iActiveSkin[9][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[9][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[9][id]);}
  83.         case CSW_DEAGLE: {if(iActiveSkin[10][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[10][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[10][id]);}
  84.         case CSW_USP: {if(iActiveSkin[11][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[11][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[11][id]);}
  85.         case CSW_GLOCK18:{if(iActiveSkin[12][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[12][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[12][id]);}
  86.     }
  87. }
  88. public plugin_precache(){
  89.     LoadSkins();
  90. }
  91. public LoadSkins(){
  92.     aWSkins = ArrayCreate(eWData);
  93.     new sPath[40];
  94.     get_configsdir(sPath, charsmax(sPath));
  95.     format(sPath, charsmax(sPath), "%s/skins.ini", sPath);
  96.    
  97.     if(!file_exists(sPath)){
  98.         log_amx("[HIBA]: Ez a fテ。jl nem lテゥtezik: (%s).", sPath);
  99.         return;
  100.     }
  101.    
  102.     if(file_exists(sPath)){
  103.         enum aDatas{eName[64],eFile[64],eKill2[64],eType[64],};
  104.         new sData[aDatas];
  105.        
  106.         new sLineData[512], iLine;
  107.         new iFile = fopen(sPath, "rt");
  108.        
  109.         while(!feof(iFile)){
  110.             fgets(iFile, sLineData, charsmax(sLineData));
  111.             replace(sLineData, charsmax(sLineData), "^n", "");
  112.            
  113.             if(sLineData[0] == ';' || !sLineData[0]) continue;
  114.            
  115.             parse(sLineData, sData[eName], charsmax(sData), sData[eFile], charsmax(sData), sData[eKill2], charsmax(sData),
  116.             sData[eType], charsmax(sData));
  117.            
  118.             remove_quotes(sData[eName]);remove_quotes(sData[eFile]);
  119.             remove_quotes(sData[eKill2]);remove_quotes(sData[eType]);
  120.            
  121.             static eData[eWData];
  122.             copy(eData[eWName], sizeof(eData[eWName]) - 1, sData[eName]);
  123.             copy(eData[eWFile], sizeof(eData[eWFile]) - 1, sData[eFile]);
  124.             eData[eWKill] = str_to_num(sData[eKill2]);        
  125.             copy(eData[eWType], sizeof(sData[eWType])- 1, sData[eType]);
  126.            
  127.             ArrayPushArray(aWSkins, eData);
  128.             precache_model(eData[eWFile]);
  129.             iLine++;
  130.         }
  131.         fclose(iFile);
  132.         iLoadedSkins = iLine;
  133.     }
  134. }
  135. public WeaponChange_p(iEnt){
  136.     new id = get_pdata_cbase(iEnt, 41, 4);
  137.    
  138.     if(!is_user_alive(id) || !is_user_connected(id))
  139.         return HAM_IGNORED;
  140.    
  141.     static eData[eWData];
  142.     new iWeapon = cs_get_weapon_id(iEnt);
  143.     switch(iWeapon){
  144.         case CSW_M4A1: {if(iActiveSkin[0][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[0][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  145.         case CSW_AK47: {if(iActiveSkin[1][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[1][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  146.         case CSW_AWP: {if(iActiveSkin[2][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[2][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  147.         case CSW_SCOUT: {if(iActiveSkin[3][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[3][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  148.         case CSW_FAMAS: {if(iActiveSkin[4][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[4][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  149.         case CSW_GALIL: {if(iActiveSkin[5][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[5][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  150.         case CSW_AUG: {if(iActiveSkin[6][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[6][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  151.         case CSW_M3: {if(iActiveSkin[7][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[7][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  152.         case CSW_XM1014: {if(iActiveSkin[8][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[8][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  153.         case CSW_KNIFE: {if(iActiveSkin[9][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[9][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  154.         case CSW_DEAGLE: {if(iActiveSkin[10][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[10][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  155.         case CSW_USP: {if(iActiveSkin[11][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[11][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  156.         case CSW_GLOCK18: {if(iActiveSkin[12][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[12][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  157.     }
  158.     return HAM_IGNORED;
  159. }
  160. public PlayerKilled_p(iVictim, iKiller){
  161.     if(iVictim == iKiller || !iKiller || !iVictim)
  162.         return PLUGIN_HANDLED;
  163.    
  164.     new iWeapon = get_user_weapon(iKiller);
  165.    
  166.     Player[eKills][iKiller]++;
  167.     hp_up(iKiller);
  168.    
  169.     switch(iWeapon){
  170.         case CSW_M4A1:{
  171.             iWeaponKills[0][iKiller] += 2;
  172.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[M4a1 fegyver]^1 Jutalom ^3[ +2 M4a1 Pont]", get_prefix(0));
  173.         }
  174.         case CSW_AK47:{
  175.             iWeaponKills[1][iKiller] += 2;
  176.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[AK47 fegyver]^1 Jutalom ^3[ +2 AK47 Pont]", get_prefix(0));
  177.         }
  178.         case CSW_AWP:{
  179.             iWeaponKills[2][iKiller] += 2;
  180.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[AWP fegyver]^1 Jutalom ^3[ +2 AWP Pont]", get_prefix(0));
  181.         }
  182.         case CSW_SCOUT:{
  183.             iWeaponKills[3][iKiller] += 2;
  184.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[SCOUT fegyver]^1 Jutalom ^3[ +2 SCOUT Pont]", get_prefix(0));
  185.         }
  186.         case CSW_FAMAS:{
  187.             iWeaponKills[4][iKiller] += 2;
  188.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[FAMAS fegyver]^1 Jutalom ^3[ +2 FAMAS Pont]", get_prefix(0));
  189.         }
  190.         case CSW_GALIL:{
  191.             iWeaponKills[5][iKiller] += 3;
  192.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[GALIL fegyver]^1 Jutalom ^3[ +2 GALIL Pont]", get_prefix(0));
  193.         }
  194.         case CSW_AUG:{
  195.             iWeaponKills[6][iKiller] += 3;
  196.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[AUG fegyver]^1 Jutalom ^3[ +2 AUG Pont]", get_prefix(0));
  197.         }
  198.         case CSW_M3:{
  199.             iWeaponKills[7][iKiller] += 3;
  200.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[M3 fegyver]^1 Jutalom ^3[ +2 M3 Pont]", get_prefix(0));
  201.         }
  202.         case CSW_XM1014:{
  203.             iWeaponKills[8][iKiller] += 2;
  204.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[XM1014 fegyver]^1 Jutalom ^3[ +2 XM1014 Pont]", get_prefix(0));
  205.         }
  206.         case CSW_KNIFE:{
  207.             iWeaponKills[9][iKiller] += 3;
  208.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[KNIFE fegyver]^1 Jutalom ^3[ +2 KNIFE Pont]", get_prefix(0));
  209.         }
  210.         case CSW_DEAGLE:{
  211.             iWeaponKills[10][iKiller] += 2;
  212.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[DEAGLE fegyver]^1 Jutalom ^3[ +2 DEAGLE Pont]", get_prefix(0));
  213.         }
  214.         case CSW_USP:{
  215.             iWeaponKills[11][iKiller] += 2;
  216.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[USP fegyver]^1 Jutalom ^3[ +2 USP Pont]", get_prefix(0));
  217.         }
  218.         case CSW_GLOCK18:{
  219.             iWeaponKills[12][iKiller] += 3;
  220.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[GLOCK18 fegyver]^1 Jutalom ^3[ +2 GLOCK18 Pont]", get_prefix(0));
  221.         }
  222.     }
  223.     return PLUGIN_HANDLED;
  224. }
  225. public hp_up(id)
  226. {
  227.     new iHealth = get_user_health(id);
  228.    
  229.     if(iHealth < 100)
  230.         set_user_health(id, iHealth + 5);
  231.     if(iHealth > 100)
  232.         set_user_health(id, 110);
  233. }
  234. public main_menu(id){
  235.     new sTitle[128];
  236.     format(sTitle, charsmax(sTitle), "%s \dFőmenü", get_prefix(1));
  237.     new iMenu = menu_create(sTitle, "menu_main_h");
  238.    
  239.     formatex(sTitle, charsmax(sTitle), "\wFegyver Skinek");
  240.     menu_additem(iMenu, sTitle, "1", 0);
  241.     menu_additem(iMenu, "\wAdatkezelő", "2", 0);
  242.    
  243.     menu_setprop(iMenu, MPROP_EXITNAME, "Kilépés");
  244.     menu_display(id, iMenu, 0);
  245. }
  246. public menu_main_h(id, iMenu, iItem){
  247.     if(iItem == MENU_EXIT){menu_destroy(iMenu);return;}
  248.    
  249.     new sData[10], sName[64];
  250.     new iAccess, iCallback;
  251.     menu_item_getinfo(iMenu, iItem, iAccess, sData, charsmax(sData), sName, charsmax(sName), iCallback);
  252.     new iKey = str_to_num(sData);
  253.    
  254.     switch(iKey)
  255.     {
  256.         case 1:  menu_storage(id);
  257.             case 2: adminmenuopen(id);
  258.         }
  259.     playspk(id);
  260. }
  261. public menu_storage(id){
  262.     new sTitle[128];
  263.     format(sTitle, charsmax(sTitle), "%s \dVálassz fegyvert", get_prefix(1));
  264.     new iMenu = menu_create(sTitle, "menu_storage_h");
  265.    
  266.     menu_additem(iMenu, "\rM4A1 \ySkinek", "0", 0);
  267.     menu_additem(iMenu, "\rAK47 \ySkinek", "1", 0);
  268.     menu_additem(iMenu, "\rAWP \ySkinek", "2", 0);
  269.     menu_additem(iMenu, "\rSCOUT \ySkinek", "3", 0);
  270.     menu_additem(iMenu, "\rFAMAS \ySkinek", "4", 0);
  271.     menu_additem(iMenu, "\rGALIL  \ySkinek", "5", 0);
  272.     menu_additem(iMenu, "\rAUG \ySkinek", "6", 0);
  273.     menu_additem(iMenu, "\rM3 \ySkinek", "7", 0);
  274.     menu_additem(iMenu, "\rXM1014 \ySkinek", "8", 0);
  275.     menu_additem(iMenu, "\rKNIFE \ySkinek", "9", 0);
  276.     menu_additem(iMenu, "\rDEAGLE \ySkinek", "10", 0);
  277.     menu_additem(iMenu, "\rUSP \ySkinek", "11", 0);
  278.     menu_additem(iMenu, "\rGLOCK18 \ySkinek", "12", 0);
  279.    
  280.     menu_setprop(iMenu, MPROP_EXITNAME, "Kilepes");
  281.     menu_setprop(iMenu, MPROP_BACKNAME, "Vissza");
  282.     menu_setprop(iMenu, MPROP_NEXTNAME, "Tovabb");
  283.     menu_display(id, iMenu, 0);
  284. }
  285. public menu_storage_h(id, iMenu, iItem){
  286.     if(iItem == MENU_EXIT){menu_destroy(iMenu);return;}
  287.    
  288.     new sData[10], sName[64];
  289.     new iAccess, iCallback;
  290.     menu_item_getinfo(iMenu, iItem, iAccess, sData, charsmax(sData), sName, charsmax(sName), iCallback);
  291.     new iKey = str_to_num(sData);
  292.    
  293.     switch(iKey){
  294.         case 0..12:  WeaponSkins(id, iKey);
  295.         }
  296.     playspk(id);
  297. }
  298. public WeaponSkins(id, iWhich){
  299.     new sTitle[128], sRow[8];
  300.     static eData[eWData];
  301.     format(sTitle, charsmax(sTitle), "%s \dFegyver Skinek", get_prefix(1));
  302.     new iMenu = menu_create(sTitle, "WeaponSkins_h");
  303.    
  304.     switch(iWhich){
  305.         case 0:{
  306.             for(new i; i < iLoadedSkins; i++)
  307.             {
  308.                 ArrayGetArray(aWSkins, i, eData);
  309.                 if(equali(eData[eWType], "M4A1")){
  310.                     num_to_str(i, sRow, 7);
  311.                     if(Player[eKills][id] < eData[eWKill])
  312.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  313.                     else
  314.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  315.                     menu_additem(iMenu, sTitle, sRow);
  316.                 }
  317.             }
  318.         }
  319.         case 1:{
  320.             for(new i; i < iLoadedSkins; i++)
  321.             {
  322.                 ArrayGetArray(aWSkins, i, eData);
  323.                 if(equali(eData[eWType], "AK47")){
  324.                     num_to_str(i, sRow, 7);
  325.                     if(Player[eKills][id] < eData[eWKill])
  326.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  327.                     else
  328.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  329.                     menu_additem(iMenu, sTitle, sRow);
  330.                 }
  331.             }
  332.         }
  333.         case 2:{
  334.             for(new i; i < iLoadedSkins; i++)
  335.             {
  336.                 ArrayGetArray(aWSkins, i, eData);
  337.                 if(equali(eData[eWType], "AWP")){
  338.                     num_to_str(i, sRow, 7);
  339.                     if(Player[eKills][id] < eData[eWKill])
  340.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  341.                     else
  342.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  343.                     menu_additem(iMenu, sTitle, sRow);
  344.                 }
  345.             }
  346.         }
  347.         case 3:{
  348.             for(new i; i < iLoadedSkins; i++)
  349.             {
  350.                 ArrayGetArray(aWSkins, i, eData);
  351.                 if(equali(eData[eWType], "SCOUT")){
  352.                     num_to_str(i, sRow, 7);
  353.                     if(Player[eKills][id] < eData[eWKill])
  354.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  355.                     else
  356.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  357.                     menu_additem(iMenu, sTitle, sRow);
  358.                 }
  359.             }
  360.         }
  361.         case 4:{
  362.             for(new i; i < iLoadedSkins; i++)
  363.             {
  364.                 ArrayGetArray(aWSkins, i, eData);
  365.                 if(equali(eData[eWType], "FAMAS")){
  366.                     num_to_str(i, sRow, 7);
  367.                     if(Player[eKills][id] < eData[eWKill])
  368.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  369.                     else
  370.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  371.                     menu_additem(iMenu, sTitle, sRow);
  372.                 }
  373.             }
  374.         }
  375.         case 5:{
  376.             for(new i; i < iLoadedSkins; i++)
  377.             {
  378.                 ArrayGetArray(aWSkins, i, eData);
  379.                 if(equali(eData[eWType], "GALIL")){
  380.                     num_to_str(i, sRow, 7);
  381.                     if(Player[eKills][id] < eData[eWKill])
  382.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  383.                     else
  384.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  385.                     menu_additem(iMenu, sTitle, sRow);
  386.                 }
  387.             }
  388.         }
  389.         case 6:{
  390.             for(new i; i < iLoadedSkins; i++)
  391.             {
  392.                 ArrayGetArray(aWSkins, i, eData);
  393.                 if(equali(eData[eWType], "AUG")){
  394.                     num_to_str(i, sRow, 7);
  395.                     if(Player[eKills][id] < eData[eWKill])
  396.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  397.                     else
  398.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  399.                     menu_additem(iMenu, sTitle, sRow);
  400.                 }
  401.             }
  402.         }
  403.         case 7:{
  404.             for(new i; i < iLoadedSkins; i++)
  405.             {
  406.                 ArrayGetArray(aWSkins, i, eData);
  407.                 if(equali(eData[eWType], "M3")){
  408.                     num_to_str(i, sRow, 7);
  409.                     if(Player[eKills][id] < eData[eWKill])
  410.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  411.                     else
  412.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  413.                     menu_additem(iMenu, sTitle, sRow);
  414.                 }
  415.             }
  416.         }
  417.         case 8:{
  418.             for(new i; i < iLoadedSkins; i++)
  419.             {
  420.                 ArrayGetArray(aWSkins, i, eData);
  421.                 if(equali(eData[eWType], "XM1014")){
  422.                     num_to_str(i, sRow, 7);
  423.                     if(Player[eKills][id] < eData[eWKill])
  424.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  425.                     else
  426.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  427.                     menu_additem(iMenu, sTitle, sRow);
  428.                 }
  429.             }
  430.         }
  431.         case 9:{
  432.             for(new i; i < iLoadedSkins; i++)
  433.             {
  434.                 ArrayGetArray(aWSkins, i, eData);
  435.                 if(equali(eData[eWType], "KNIFE")){
  436.                     num_to_str(i, sRow, 7);
  437.                     if(Player[eKills][id] < eData[eWKill])
  438.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  439.                     else
  440.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  441.                     menu_additem(iMenu, sTitle, sRow);
  442.                 }
  443.             }
  444.         }
  445.         case 10:{
  446.             for(new i; i < iLoadedSkins; i++)
  447.             {
  448.                 ArrayGetArray(aWSkins, i, eData);
  449.                 if(equali(eData[eWType], "DEAGLE")){
  450.                     num_to_str(i, sRow, 7);
  451.                     if(Player[eKills][id] < eData[eWKill])
  452.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  453.                     else
  454.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  455.                     menu_additem(iMenu, sTitle, sRow);
  456.                 }
  457.             }
  458.         }
  459.         case 11:{
  460.             for(new i; i < iLoadedSkins; i++)
  461.             {
  462.                 ArrayGetArray(aWSkins, i, eData);
  463.                 if(equali(eData[eWType], "USP")){
  464.                     num_to_str(i, sRow, 7);
  465.                     if(Player[eKills][id] < eData[eWKill])
  466.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  467.                     else
  468.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  469.                     menu_additem(iMenu, sTitle, sRow);
  470.                 }
  471.             }
  472.         }
  473.         case 12:{
  474.             for(new i; i < iLoadedSkins; i++)
  475.             {
  476.                 ArrayGetArray(aWSkins, i, eData);
  477.                 if(equali(eData[eWType], "GLOCK18")){
  478.                     num_to_str(i, sRow, 7);
  479.                     if(Player[eKills][id] < eData[eWKill])
  480.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  481.                     else
  482.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  483.                     menu_additem(iMenu, sTitle, sRow);
  484.                 }
  485.             }
  486.         }
  487.     }
  488.     menu_setprop(iMenu, MPROP_EXITNAME, "Kilテゥpテゥs");
  489.     menu_setprop(iMenu, MPROP_BACKNAME, "Vissza");
  490.     menu_setprop(iMenu, MPROP_NEXTNAME, "Tovテ。bb");
  491.     menu_display(id, iMenu, 0);
  492. }
  493. public WeaponSkins_h(id, iMenu, iItem){
  494.     if(iItem == MENU_EXIT){menu_destroy(iMenu);return;}
  495.    
  496.     new sData[10], sName[64];
  497.     new iAccess, iCallback;
  498.     static eData[eWData];
  499.     menu_item_getinfo(iMenu, iItem, iAccess, sData, charsmax(sData), sName, charsmax(sName), iCallback);
  500.     new iKey = str_to_num(sData);
  501.    
  502.     ArrayGetArray(aWSkins, iKey, eData);
  503.    
  504.     if(equali(eData[eWType], "M4A1")){
  505.         if(Player[eKills][id] < eData[eWKill])
  506.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  507.         else{
  508.             iActiveSkin[0][id] = iKey;
  509.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  510.         }
  511.     }
  512.     else if(equali(eData[eWType], "Ak47")){
  513.         if(Player[eKills][id] < eData[eWKill])
  514.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  515.         else{
  516.             iActiveSkin[1][id] = iKey;
  517.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  518.         }
  519.     }
  520.     else if(equali(eData[eWType], "AWP")){
  521.         if(Player[eKills][id] < eData[eWKill])
  522.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  523.         else{
  524.             iActiveSkin[2][id] = iKey;
  525.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  526.         }
  527.     }
  528.     else if(equali(eData[eWType], "SCOUT")){
  529.         if(Player[eKills][id] < eData[eWKill])
  530.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  531.         else{
  532.             iActiveSkin[3][id] = iKey;
  533.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  534.         }
  535.     }
  536.     else if(equali(eData[eWType], "FAMAS")){
  537.         if(Player[eKills][id] < eData[eWKill])
  538.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  539.         else{
  540.             iActiveSkin[4][id] = iKey;
  541.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  542.         }
  543.     }
  544.     else if(equali(eData[eWType], "GALIL")){
  545.         if(Player[eKills][id] < eData[eWKill])
  546.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  547.         else{
  548.             iActiveSkin[5][id] = iKey;
  549.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  550.         }
  551.     }
  552.     else if(equali(eData[eWType], "AUG")){
  553.         if(Player[eKills][id] < eData[eWKill])
  554.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  555.         else{
  556.             iActiveSkin[6][id] = iKey;
  557.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  558.         }
  559.     }
  560.     else if(equali(eData[eWType], "M3")){
  561.         if(Player[eKills][id] < eData[eWKill])
  562.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  563.         else{
  564.             iActiveSkin[7][id] = iKey;
  565.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  566.         }
  567.     }
  568.     else if(equali(eData[eWType], "XM1014")){
  569.         if(Player[eKills][id] < eData[eWKill])
  570.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  571.         else{
  572.             iActiveSkin[8][id] = iKey;
  573.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  574.         }
  575.     }
  576.     else if(equali(eData[eWType], "KNIFE")){
  577.         if(Player[eKills][id] < eData[eWKill])
  578.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  579.         else{
  580.             iActiveSkin[9][id] = iKey;
  581.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  582.         }
  583.     }
  584.     else if(equali(eData[eWType], "DEAGLE")){
  585.         if(Player[eKills][id] < eData[eWKill])
  586.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  587.         else{
  588.             iActiveSkin[10][id] = iKey;
  589.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  590.         }
  591.     }
  592.     else if(equali(eData[eWType], "USP")){
  593.         if(Player[eKills][id] < eData[eWKill])
  594.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  595.         else{
  596.             iActiveSkin[11][id] = iKey;
  597.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  598.         }
  599.     }
  600.     else if(equali(eData[eWType], "GLOCK18")){
  601.         if(Player[eKills][id] < eData[eWKill])
  602.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  603.         else{
  604.             iActiveSkin[12][id] = iKey;
  605.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  606.         }
  607.     }
  608.     playspk(id);
  609. }
  610. public adminmenuopen(id){
  611.     new sTitle[128];
  612.     format(sTitle, charsmax(sTitle), "%s \dJátékosok kezelése", get_prefix(1));
  613.     new iMenu = menu_create(sTitle, "adminmenuopen_h");
  614.    
  615.     menu_additem(iMenu, "\wPont adás", "1", 0);
  616.     menu_additem(iMenu, "\wPont elvétel", "2", 0);
  617.    
  618.     menu_setprop(iMenu, MPROP_EXITNAME, "Kilテゥpテゥs");
  619.     menu_display(id, iMenu, 0);
  620. }
  621. public adminmenuopen_h(id, iMenu, iItem){
  622.     if(iItem == MENU_EXIT){menu_destroy(iMenu);return;}
  623.    
  624.     new sData[10], sName[64];
  625.     new iAccess, iCallback;
  626.     menu_item_getinfo(iMenu, iItem, iAccess, sData, charsmax(sData), sName, charsmax(sName), iCallback);
  627.     new iKey = str_to_num(sData);
  628.    
  629.     switch(iKey){
  630.         case 1:  {menu_chooseplayer(id); iChoosedMode = 0;}
  631.         case 2: {menu_chooseplayer(id); iChoosedMode = 1;}
  632.     }
  633.     playspk(id);
  634. }
  635. public menu_chooseplayer(id){
  636.     new sTitle[128], iPlayers[32], iPNum, iId, sName[64], sId[10];
  637.     format(sTitle, charsmax(sTitle), "%s \dVálassz játékost", get_prefix(1));
  638.     new iMenu = menu_create(sTitle, "menu_chooseplayer_h");
  639.    
  640.     get_players(iPlayers, iPNum);
  641.    
  642.     for(new i; i < iPNum; i++)
  643.     {
  644.         iId = iPlayers[i];
  645.         if(is_user_bot(iId) || !is_user_connected(iId))
  646.             continue;
  647.        
  648.         get_user_name(iId, sName, charsmax(sName));
  649.         num_to_str(iId, sId, charsmax(sId));    
  650.         menu_additem(iMenu, sName, sId, 0);          
  651.     }
  652.    
  653.     menu_setprop(iMenu, MPROP_EXITNAME, "Kilépés");
  654.     menu_display(id, iMenu, 0);
  655. }
  656. public menu_chooseplayer_h(id, iMenu, iItem){
  657.     if(iItem == MENU_EXIT){menu_destroy(iMenu);return;}
  658.    
  659.     new sData[10], sName[64];
  660.     new iAccess, iCallback;
  661.     menu_item_getinfo(iMenu, iItem, iAccess, sData, charsmax(sData), sName, charsmax(sName), iCallback);
  662.     iTempID = str_to_num(sData);
  663.    
  664.     client_cmd(id, "messagemode type_itemremoveoradd");
  665.     playspk(id);
  666. }
  667. public type_itemammount(id){
  668.     new sItem[128], iItemAmmount, sSenderName[64], sTargetName[64];
  669.     read_args(sItem, charsmax(sItem));
  670.     remove_quotes(sItem);
  671.    
  672.     get_user_name(id, sSenderName, charsmax(sSenderName));
  673.     get_user_name(iTempID, sTargetName, charsmax(sTargetName));
  674.    
  675.     iItemAmmount = str_to_num(sItem);
  676.    
  677.     if(iItemAmmount < 0){
  678.         client_print_color(id, print_team_blue, "%s ^1Nem írhasz nulla értéket!.", get_prefix(0));
  679.         return PLUGIN_HANDLED;
  680.     }
  681.    
  682.     switch(iChoosedMode){
  683.         case 0:{
  684.            
  685.             for(new i = 0; i < 13; i++)
  686.                 iWeaponKills[i][iTempID] += iItemAmmount;
  687.            
  688.             client_print_color(id, print_team_blue, "%s ^1Sikeresen jóváírtak:^4 %d ^1t, neki:^4 %s", get_prefix(0), iItemAmmount, sTargetName);
  689.             client_print_color(iTempID, print_team_blue, "%s ^1Jóváírtak neked^4 %d ^1pontot! BY:^4 %s", get_prefix(0), iItemAmmount, sTargetName);
  690.             client_print_color(id, print_team_blue, "^3 Admin: %s | Játékos: %s | összeg: %d | Tíus: pont jóváírás", sSenderName, sTargetName, iItemAmmount);
  691.             return PLUGIN_HANDLED;
  692.         }
  693.         case 1:{
  694.             for(new i = 0; i < 13; i++)
  695.                 iWeaponKills[i][iTempID] -= iItemAmmount;
  696.            
  697.             client_print_color(id, print_team_blue, "%s ^1Sikeresen elvettek:^4 %d ^1, te:^4 %s", get_prefix(0), iItemAmmount, sTargetName);
  698.             client_print_color(iTempID, print_team_blue, "%s ^1Elvettek tőled^4 %d ^1pontot! BY:^4 %s", get_prefix(0), iItemAmmount, sTargetName);
  699.             client_print_color(id, print_team_blue, "^3 Admin: %s | Játékos: %s | összeg: %d | Tius: Pont elvétel", sSenderName, sTargetName, iItemAmmount);
  700.             return PLUGIN_HANDLED;
  701.         }
  702.     }  
  703.     return PLUGIN_HANDLED;
  704. }
  705. public client_disconnected(id){
  706.     if(is_user_bot(id))
  707.         return;
  708.    
  709.     Update(id);
  710.    
  711.     Player[eKills][id] = 0;
  712.     Player[eUnclockedSkin][id] = 0;
  713.    
  714.     for(new i = 0; i < 13; i++)
  715.         iActiveSkin[i][id] = -1;
  716.     for(new i = 0; i < 13; i++)
  717.         iWeaponKills[i][id] = 0;
  718. }
  719. public client_putinserver(id){
  720.     if(is_user_bot(id))
  721.         return;
  722.    
  723.     SQL_load(id);
  724.    
  725.     Player[eKills][id] = 0;
  726.     Player[eUnclockedSkin][id] = 0;
  727.    
  728.     for(new i = 0; i < 13; i++)
  729.         iActiveSkin[i][id] = -1;
  730.     for(new i = 0; i < 13; i++)
  731.         iWeaponKills[i][id] = 0;
  732.    
  733.     InfoHud(id);
  734. }
  735. public plugin_cfg(){
  736.     new iLen, sQuery[512];
  737.     SqlTuple = SQL_MakeDbTuple(SQL_INFO[0], SQL_INFO[1], SQL_INFO[2], SQL_INFO[3])
  738.     iLen += formatex(sQuery[iLen], charsmax(sQuery), "CREATE TABLE IF NOT EXISTS `SkinMenu`")
  739.     iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "(`Steamid` varchar(128) NOT NULL, ")
  740.     iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "`UnlockedSkin` int(11) NOT NULL,");
  741.    
  742.     for(new i = 0; i < 13; i++)
  743.         iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "`WK%d` int(11) NOT NULL,", i);
  744.    
  745.     iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "`Olesek` int(11) NOT NULL, `id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY)");
  746.     SQL_ThreadQuery(SqlTuple, "createTableThread", sQuery);
  747. }
  748. public createTableThread(FailState, Handle:Query, Error[], Errcode, Data[], DataSize, Float:Queuetime){
  749.     if(FailState == TQUERY_CONNECT_FAILED)
  750.         set_fail_state("[HIBA*] NEM TUDTAM CSATLAKOZNI AZ ADATBAZISHOZ!");
  751.     else if(FailState == TQUERY_QUERY_FAILED)
  752.         set_fail_state("Query Error");
  753.     if(Errcode)
  754.         log_amx("[HIBA*] HIBAT DOBTAM: %s", Error);
  755. }
  756. public SQL_load(id){
  757.     new Data[1], sQuery[512];
  758.     Data[0] = id;
  759.     get_user_authid(id, gSteamID, charsmax(gSteamID))
  760.    
  761.     formatex(sQuery, charsmax(sQuery), "SELECT * FROM `SkinMenu` WHERE Steamid = ^"%s^";", gSteamID);
  762.     SQL_ThreadQuery(SqlTuple, "SQL_load_thr", sQuery, Data, 1)
  763. }
  764. public SQL_load_thr(FailState, Handle:Query, Error[], Errcode, Data[], DataSize, Float:Queuetime){
  765.     if(FailState == TQUERY_CONNECT_FAILED)
  766.         set_fail_state("[*HIBA*] NEM LEHET KAPCSOLODNI AZ ADATBAZISHOZ!");
  767.     else if(FailState == TQUERY_QUERY_FAILED)
  768.         set_fail_state("[*HIBA*] A LEKERDEZES MEGSZAKADT!");
  769.     if(Errcode)
  770.         log_amx("[*HIBA*] PROBLEMA A LEKERDEZESNEL! ( %s )",Error);
  771.    
  772.     new id = Data[0];
  773.    
  774.     if(SQL_NumRows(Query) > 0){
  775.         Player[eUnclockedSkin][id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "UnlockedSkin"));
  776.         for(new i = 0; i < 13; i++){
  777.             new sString[64];
  778.             formatex(sString, charsmax(sString), "WK%d", i);
  779.             iWeaponKills[i][id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, sString));
  780.         }
  781.        
  782.         Player[eKills][id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "Olesek"));
  783.     }
  784.     else
  785.         SQL_Save(id);
  786. }
  787. public Update(id){
  788.     new iLen, sQuery[512];
  789.     get_user_authid(id, gSteamID, charsmax(gSteamID))
  790.    
  791.     iLen += formatex(sQuery[iLen], charsmax(sQuery), "UPDATE `SkinMenu` SET UnlockedSkin = ^"%i^", ", Player[eUnclockedSkin][id]);
  792.    
  793.     for(new i = 0; i < 13; i++)
  794.         iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "WK%d = ^"%i^", ", i, iWeaponKills[i][id]);
  795.    
  796.     iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "Olesek = ^"%i^" WHERE Steamid = ^"%s^";", Player[eKills][id], gSteamID);
  797.    
  798.     SQL_ThreadQuery(SqlTuple, "QuerySetData", sQuery)
  799. }
  800. public SQL_Save(id){
  801.     new sQuery[512]
  802.     get_user_authid(id, gSteamID, charsmax(gSteamID))
  803.    
  804.     formatex(sQuery, charsmax(sQuery), "INSERT INTO `SkinMenu` (`Steamid`) VALUES (^"%s^");", gSteamID);
  805.     SQL_ThreadQuery(SqlTuple, "QuerySetData", sQuery);
  806. }
  807. public QuerySetData(FailState, Handle:Query, Error[], Errcode, Data[], DataSize, Float:Queuetime){
  808.     if(FailState == TQUERY_CONNECT_FAILED || FailState == TQUERY_QUERY_FAILED){
  809.         log_amx("%s", Error);
  810.         return;
  811.     }
  812. }
  813. public plugin_end(){
  814.     SQL_FreeHandle(SqlTuple);
  815. }
  816. public sayhook(id){
  817.     new Message[192];
  818.     read_args(Message, charsmax(Message))
  819.     remove_quotes(Message)
  820.    
  821.     if(strlen(Message) == 0 || Message[0] == '/')
  822.         return PLUGIN_HANDLED_MAIN;
  823.    
  824.     new Death[16], sName[MAX_NAME_LENGTH];
  825.     get_user_name(id, sName, charsmax(sName));
  826.    
  827.     new sRank[64], sColor[16];
  828.    
  829.     switch(get_user_flags(id)){
  830.         case TULAJ:{ sRank = "^4[^3Tulajdonos^4]"; sColor = "^4";}
  831.         case ADMIN:{ sRank = "^4[^3Admin^4]"; sColor = "^4";}
  832.         case VIP:{ sRank = "^4[^3VIP^4]"; sColor = "^3";}
  833.         default:{ sRank = "^4[^3Játékos^4]"; sColor = "^1";}
  834.     }
  835.     for(new i = 1; i <= iMaxPlayers; i++){
  836.         if(is_user_connected(i) && !is_user_bot(i)){
  837.             formatex(Death, charsmax(Death), is_user_alive(id) ? "":"*Halott*");
  838.             client_print_color(i, print_team_default, "%s%s^3%s: %s%s", Death, sRank, sName, sColor, Message);
  839.         }
  840.     }
  841.     return PLUGIN_HANDLED_MAIN;
  842. }
  843. public sayteamhook(id){
  844.     new Message[192];
  845.     read_args(Message, charsmax(Message))
  846.     remove_quotes(Message)
  847.    
  848.     if(strlen(Message) == 0 || Message[0] == '/')
  849.         return PLUGIN_HANDLED_MAIN;
  850.    
  851.     new Death[16], sName[MAX_NAME_LENGTH];
  852.     get_user_name(id, sName, charsmax(sName));
  853.    
  854.     new iTeam, sTeam[32];
  855.     iTeam = get_user_team(id, sTeam, charsmax(sTeam));
  856.    
  857.     switch(iTeam){
  858.         case CS_TEAM_CT: sTeam = "CT";
  859.             case CS_TEAM_T: sTeam = "T";
  860.             case CS_TEAM_SPECTATOR: sTeam = "SPEC";
  861.         }
  862.     for(new i = 1; i <=  iMaxPlayers; i++){
  863.         if(is_user_connected(i) && !is_user_bot(i) || get_user_flags(id) & ADMIN_BAN){
  864.             formatex(Death, charsmax(Death), is_user_alive(id) ? "":"*Halott*");
  865.             client_print_color(i, print_team_default, "%s^3(%s)^1%s: ^3%s", Death, sTeam, sName, Message);
  866.         }
  867.     }
  868.     return PLUGIN_HANDLED_MAIN;
  869. }
  870. stock get_prefix(which){
  871.     new sPrefix[32];
  872.     if(which == 0)
  873.         get_pcvar_string(cvarS[eCpref], sPrefix, charsmax(sPrefix));
  874.     else if(which == 1)
  875.         get_pcvar_string(cvarS[eMpref], sPrefix, charsmax(sPrefix));
  876.    
  877.     return sPrefix;
  878. }
  879. public playspk(id){
  880.     client_cmd(id, "spk buttons/lightswitch2");
  881. }
  882. /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE


A hozzászólást 2 alkalommal szerkesztették, utoljára saxxo 2022.04.16. 08:06-kor.

Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Aktivált skinek
HozzászólásElküldve: 2021.07.09. 05:34 
Offline
Senior Tag
Avatar

Csatlakozott: 2017.08.09. 17:01
Hozzászólások: 266
Megköszönt másnak: 61 alkalommal
Megköszönték neki: 72 alkalommal
saxxo írta:
Üdv!

Szeretnék segítséget kapni hogy a meglévő aktivált skin miért nem marad meg a következő pályán?


Szia, mert azok nincsenek lementve, megcsinálom amint lesz rá időm.

Kicsit késve, de tessék :lol: (teszteltem nekem mentett rendesen és be is töltött):

  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <hamsandwich>
  4. #include <cstrike>
  5. #include <engine>
  6. #include <fun>
  7. #include <fakemeta>
  8. #include <sqlx>
  9.  
  10. #define PLUGIN  "New Plugin"
  11. #define AUTHOR  "Unknown"
  12. #define VERSION "1.0"
  13.  
  14. #define MAXPLAYERS 33
  15. #define TULAJ ADMIN_IMMUNITY
  16. #define ADMIN ADMIN_BAN
  17. #define VIP ADMIN_LEVEL_H
  18.  
  19. new const SQL_INFO[][] = {"","","",""};
  20. enum eCvar{eCpref,eMpref,};
  21. new cvarS[eCvar];
  22. enum ePlayer{eKills, eUnclockedSkin};
  23. new Player[ePlayer][MAXPLAYERS];
  24. enum _:eWData {eWName[64],eWFile[64],eWKill,eWType[64],};
  25. new iActiveSkin[13][33], iWeaponKills[13][33], iLoadedSkins, iTempID, iMaxPlayers, iChoosedMode, gSteamID[128], SyncHud;
  26. new Handle:SqlTuple;
  27. new Array: aWSkins;
  28.  
  29. public plugin_init(){
  30.     register_plugin(PLUGIN, VERSION, AUTHOR);
  31.    
  32.     register_impulse(201, "main_menu");
  33.     register_clcmd("say /menu", "main_menu");
  34.    
  35.     cvarS[eCpref] = register_cvar("C_Pref", "^4[<<< DarK~DemonS >>>]^3");
  36.     cvarS[eMpref] = register_cvar("M_Pref", "\y[<<< DarK~DemonS >>>]\y");
  37.    
  38.     register_clcmd("type_itemremoveoradd", "type_itemammount");
  39.    
  40.     RegisterHam(Ham_Killed, "player", "PlayerKilled_p", 1);
  41.     RegisterHam(Ham_Item_Deploy, "weapon_m4a1", "WeaponChange_p", 1);
  42.     RegisterHam(Ham_Item_Deploy, "weapon_ak47", "WeaponChange_p", 1);
  43.     RegisterHam(Ham_Item_Deploy, "weapon_awp", "WeaponChange_p", 1);
  44.     RegisterHam(Ham_Item_Deploy, "weapon_scout", "WeaponChange_p", 1);
  45.     RegisterHam(Ham_Item_Deploy, "weapon_famas", "WeaponChange_p", 1);
  46.     RegisterHam(Ham_Item_Deploy, "weapon_galil", "WeaponChange_p", 1);
  47.     RegisterHam(Ham_Item_Deploy, "weapon_aug", "WeaponChange_p", 1);
  48.     RegisterHam(Ham_Item_Deploy, "weapon_m3", "WeaponChange_p", 1);
  49.     RegisterHam(Ham_Item_Deploy, "weapon_xm1014", "WeaponChange_p", 1);
  50.     RegisterHam(Ham_Item_Deploy, "weapon_knife", "WeaponChange_p", 1);
  51.     RegisterHam(Ham_Item_Deploy, "weapon_deagle", "WeaponChange_p", 1);
  52.     RegisterHam(Ham_Item_Deploy, "weapon_usp", "WeaponChange_p", 1);
  53.     RegisterHam(Ham_Item_Deploy, "weapon_glock18", "WeaponChange_p", 1);
  54.    
  55.     register_clcmd("say", "sayhook");
  56.     register_clcmd("say_team", "sayteamhook");
  57.    
  58.     iMaxPlayers = get_maxplayers();
  59.     SyncHud = CreateHudSyncObj();
  60. }
  61. public InfoHud(id)
  62. {
  63.     static eData[eWData];
  64.     new idT;
  65.     new Target = pev(id, pev_iuser1) == 4 ? pev(id, pev_iuser2) : id;
  66.     idT = is_user_alive(id) ? id:Target;
  67.     new iWeapon = get_user_weapon(idT);
  68.     set_hudmessage(0, 255, 0, -1.0, 0.80, 0, 6.0, 1.1, 0.1, 0.2, -1);
  69.    
  70.     set_task(1.0, "InfoHud", id);
  71.    
  72.     switch(iWeapon){
  73.         case CSW_M4A1: {if(iActiveSkin[0][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;} ArrayGetArray(aWSkins, iActiveSkin[0][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[0][id]);}
  74.         case CSW_AK47: {if(iActiveSkin[1][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[1][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[1][id]);}
  75.         case CSW_AWP: {if(iActiveSkin[2][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[2][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[2][id]);}
  76.         case CSW_SCOUT: {if(iActiveSkin[3][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[3][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[3][id]);}
  77.         case CSW_FAMAS: {if(iActiveSkin[4][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[4][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[4][id]);}
  78.         case CSW_GALIL: {if(iActiveSkin[5][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[5][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[5][id]);}
  79.         case CSW_AUG: {if(iActiveSkin[6][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[6][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[6][id]);}
  80.         case CSW_M3: {if(iActiveSkin[7][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[7][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[7][id]);}
  81.         case CSW_XM1014: {if(iActiveSkin[8][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[8][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[8][id]);}
  82.         case CSW_KNIFE: {if(iActiveSkin[9][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[9][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[9][id]);}
  83.         case CSW_DEAGLE: {if(iActiveSkin[10][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[10][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[10][id]);}
  84.         case CSW_USP: {if(iActiveSkin[11][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[11][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[11][id]);}
  85.         case CSW_GLOCK18:{if(iActiveSkin[12][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[12][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[12][id]);}
  86.     }
  87. }
  88. public plugin_precache(){
  89.     LoadSkins();
  90. }
  91. public LoadSkins(){
  92.     aWSkins = ArrayCreate(eWData);
  93.     new sPath[40];
  94.     get_configsdir(sPath, charsmax(sPath));
  95.     format(sPath, charsmax(sPath), "%s/skins.ini", sPath);
  96.    
  97.     if(!file_exists(sPath)){
  98.         log_amx("[HIBA]: Ez a f??jl nem l??tezik: (%s).", sPath);
  99.         return;
  100.     }
  101.    
  102.     if(file_exists(sPath)){
  103.         enum aDatas{eName[64],eFile[64],eKill2[64],eType[64],};
  104.         new sData[aDatas];
  105.        
  106.         new sLineData[512], iLine;
  107.         new iFile = fopen(sPath, "rt");
  108.        
  109.         while(!feof(iFile)){
  110.             fgets(iFile, sLineData, charsmax(sLineData));
  111.             replace(sLineData, charsmax(sLineData), "^n", "");
  112.            
  113.             if(sLineData[0] == ';' || !sLineData[0]) continue;
  114.            
  115.             parse(sLineData, sData[eName], charsmax(sData), sData[eFile], charsmax(sData), sData[eKill2], charsmax(sData),
  116.             sData[eType], charsmax(sData));
  117.            
  118.             remove_quotes(sData[eName]);remove_quotes(sData[eFile]);
  119.             remove_quotes(sData[eKill2]);remove_quotes(sData[eType]);
  120.            
  121.             static eData[eWData];
  122.             copy(eData[eWName], sizeof(eData[eWName]) - 1, sData[eName]);
  123.             copy(eData[eWFile], sizeof(eData[eWFile]) - 1, sData[eFile]);
  124.             eData[eWKill] = str_to_num(sData[eKill2]);        
  125.             copy(eData[eWType], sizeof(sData[eWType])- 1, sData[eType]);
  126.            
  127.             ArrayPushArray(aWSkins, eData);
  128.             precache_model(eData[eWFile]);
  129.             iLine++;
  130.         }
  131.         fclose(iFile);
  132.         iLoadedSkins = iLine;
  133.     }
  134. }
  135. public WeaponChange_p(iEnt){
  136.     new id = get_pdata_cbase(iEnt, 41, 4);
  137.    
  138.     if(!is_user_alive(id) || !is_user_connected(id))
  139.         return HAM_IGNORED;
  140.    
  141.     static eData[eWData];
  142.     new iWeapon = cs_get_weapon_id(iEnt);
  143.     switch(iWeapon){
  144.         case CSW_M4A1: {if(iActiveSkin[0][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[0][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  145.         case CSW_AK47: {if(iActiveSkin[1][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[1][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  146.         case CSW_AWP: {if(iActiveSkin[2][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[2][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  147.         case CSW_SCOUT: {if(iActiveSkin[3][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[3][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  148.         case CSW_FAMAS: {if(iActiveSkin[4][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[4][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  149.         case CSW_GALIL: {if(iActiveSkin[5][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[5][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  150.         case CSW_AUG: {if(iActiveSkin[6][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[6][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  151.         case CSW_M3: {if(iActiveSkin[7][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[7][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  152.         case CSW_XM1014: {if(iActiveSkin[8][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[8][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  153.         case CSW_KNIFE: {if(iActiveSkin[9][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[9][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  154.         case CSW_DEAGLE: {if(iActiveSkin[10][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[10][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  155.         case CSW_USP: {if(iActiveSkin[11][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[11][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  156.         case CSW_GLOCK18: {if(iActiveSkin[12][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[12][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  157.     }
  158.     return HAM_IGNORED;
  159. }
  160. public PlayerKilled_p(iVictim, iKiller){
  161.     if(iVictim == iKiller || !iKiller || !iVictim)
  162.         return PLUGIN_HANDLED;
  163.    
  164.     new iWeapon = get_user_weapon(iKiller);
  165.    
  166.     Player[eKills][iKiller]++;
  167.     hp_up(iKiller);
  168.    
  169.     switch(iWeapon){
  170.         case CSW_M4A1:{
  171.             iWeaponKills[0][iKiller] += 2;
  172.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[M4a1 fegyver]^1 Jutalom ^3[ +2 M4a1 Pont]", get_prefix(0));
  173.         }
  174.         case CSW_AK47:{
  175.             iWeaponKills[1][iKiller] += 2;
  176.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[AK47 fegyver]^1 Jutalom ^3[ +2 AK47 Pont]", get_prefix(0));
  177.         }
  178.         case CSW_AWP:{
  179.             iWeaponKills[2][iKiller] += 2;
  180.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[AWP fegyver]^1 Jutalom ^3[ +2 AWP Pont]", get_prefix(0));
  181.         }
  182.         case CSW_SCOUT:{
  183.             iWeaponKills[3][iKiller] += 2;
  184.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[SCOUT fegyver]^1 Jutalom ^3[ +2 SCOUT Pont]", get_prefix(0));
  185.         }
  186.         case CSW_FAMAS:{
  187.             iWeaponKills[4][iKiller] += 2;
  188.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[FAMAS fegyver]^1 Jutalom ^3[ +2 FAMAS Pont]", get_prefix(0));
  189.         }
  190.         case CSW_GALIL:{
  191.             iWeaponKills[5][iKiller] += 3;
  192.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[GALIL fegyver]^1 Jutalom ^3[ +2 GALIL Pont]", get_prefix(0));
  193.         }
  194.         case CSW_AUG:{
  195.             iWeaponKills[6][iKiller] += 3;
  196.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[AUG fegyver]^1 Jutalom ^3[ +2 AUG Pont]", get_prefix(0));
  197.         }
  198.         case CSW_M3:{
  199.             iWeaponKills[7][iKiller] += 3;
  200.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[M3 fegyver]^1 Jutalom ^3[ +2 M3 Pont]", get_prefix(0));
  201.         }
  202.         case CSW_XM1014:{
  203.             iWeaponKills[8][iKiller] += 2;
  204.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[XM1014 fegyver]^1 Jutalom ^3[ +2 XM1014 Pont]", get_prefix(0));
  205.         }
  206.         case CSW_KNIFE:{
  207.             iWeaponKills[9][iKiller] += 3;
  208.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[KNIFE fegyver]^1 Jutalom ^3[ +2 KNIFE Pont]", get_prefix(0));
  209.         }
  210.         case CSW_DEAGLE:{
  211.             iWeaponKills[10][iKiller] += 2;
  212.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[DEAGLE fegyver]^1 Jutalom ^3[ +2 DEAGLE Pont]", get_prefix(0));
  213.         }
  214.         case CSW_USP:{
  215.             iWeaponKills[11][iKiller] += 2;
  216.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[USP fegyver]^1 Jutalom ^3[ +2 USP Pont]", get_prefix(0));
  217.         }
  218.         case CSW_GLOCK18:{
  219.             iWeaponKills[12][iKiller] += 3;
  220.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[GLOCK18 fegyver]^1 Jutalom ^3[ +2 GLOCK18 Pont]", get_prefix(0));
  221.         }
  222.     }
  223.     return PLUGIN_HANDLED;
  224. }
  225. public hp_up(id)
  226. {
  227.     new iHealth = get_user_health(id);
  228.    
  229.     if(iHealth < 100)
  230.         set_user_health(id, iHealth + 5);
  231.     if(iHealth > 100)
  232.         set_user_health(id, 110);
  233. }
  234. public main_menu(id){
  235.     new sTitle[128];
  236.     format(sTitle, charsmax(sTitle), "%s \dFőmenü", get_prefix(1));
  237.     new iMenu = menu_create(sTitle, "menu_main_h");
  238.    
  239.     formatex(sTitle, charsmax(sTitle), "\wFegyver Skinek");
  240.     menu_additem(iMenu, sTitle, "1", 0);
  241.     menu_additem(iMenu, "\wAdatkezelő", "2", 0);
  242.    
  243.     menu_setprop(iMenu, MPROP_EXITNAME, "Kilépés");
  244.     menu_display(id, iMenu, 0);
  245. }
  246. public menu_main_h(id, iMenu, iItem){
  247.     if(iItem == MENU_EXIT){menu_destroy(iMenu);return;}
  248.    
  249.     new sData[10], sName[64];
  250.     new iAccess, iCallback;
  251.     menu_item_getinfo(iMenu, iItem, iAccess, sData, charsmax(sData), sName, charsmax(sName), iCallback);
  252.     new iKey = str_to_num(sData);
  253.    
  254.     switch(iKey)
  255.     {
  256.         case 1:  menu_storage(id);
  257.             case 2: adminmenuopen(id);
  258.         }
  259.     playspk(id);
  260. }
  261. public menu_storage(id){
  262.     new sTitle[128];
  263.     format(sTitle, charsmax(sTitle), "%s \dVálassz fegyvert", get_prefix(1));
  264.     new iMenu = menu_create(sTitle, "menu_storage_h");
  265.    
  266.     menu_additem(iMenu, "\rM4A1 \ySkinek", "0", 0);
  267.     menu_additem(iMenu, "\rAK47 \ySkinek", "1", 0);
  268.     menu_additem(iMenu, "\rAWP \ySkinek", "2", 0);
  269.     menu_additem(iMenu, "\rSCOUT \ySkinek", "3", 0);
  270.     menu_additem(iMenu, "\rFAMAS \ySkinek", "4", 0);
  271.     menu_additem(iMenu, "\rGALIL  \ySkinek", "5", 0);
  272.     menu_additem(iMenu, "\rAUG \ySkinek", "6", 0);
  273.     menu_additem(iMenu, "\rM3 \ySkinek", "7", 0);
  274.     menu_additem(iMenu, "\rXM1014 \ySkinek", "8", 0);
  275.     menu_additem(iMenu, "\rKNIFE \ySkinek", "9", 0);
  276.     menu_additem(iMenu, "\rDEAGLE \ySkinek", "10", 0);
  277.     menu_additem(iMenu, "\rUSP \ySkinek", "11", 0);
  278.     menu_additem(iMenu, "\rGLOCK18 \ySkinek", "12", 0);
  279.    
  280.     menu_setprop(iMenu, MPROP_EXITNAME, "Kilepes");
  281.     menu_setprop(iMenu, MPROP_BACKNAME, "Vissza");
  282.     menu_setprop(iMenu, MPROP_NEXTNAME, "Tovabb");
  283.     menu_display(id, iMenu, 0);
  284. }
  285. public menu_storage_h(id, iMenu, iItem){
  286.     if(iItem == MENU_EXIT){menu_destroy(iMenu);return;}
  287.    
  288.     new sData[10], sName[64];
  289.     new iAccess, iCallback;
  290.     menu_item_getinfo(iMenu, iItem, iAccess, sData, charsmax(sData), sName, charsmax(sName), iCallback);
  291.     new iKey = str_to_num(sData);
  292.    
  293.     switch(iKey){
  294.         case 0..12:  WeaponSkins(id, iKey);
  295.         }
  296.     playspk(id);
  297. }
  298. public WeaponSkins(id, iWhich){
  299.     new sTitle[128], sRow[8];
  300.     static eData[eWData];
  301.     format(sTitle, charsmax(sTitle), "%s \dFegyver Skinek", get_prefix(1));
  302.     new iMenu = menu_create(sTitle, "WeaponSkins_h");
  303.    
  304.     switch(iWhich){
  305.         case 0:{
  306.             for(new i; i < iLoadedSkins; i++)
  307.             {
  308.                 ArrayGetArray(aWSkins, i, eData);
  309.                 if(equali(eData[eWType], "M4A1")){
  310.                     num_to_str(i, sRow, 7);
  311.                     if(Player[eKills][id] < eData[eWKill])
  312.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  313.                     else
  314.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  315.                     menu_additem(iMenu, sTitle, sRow);
  316.                 }
  317.             }
  318.         }
  319.         case 1:{
  320.             for(new i; i < iLoadedSkins; i++)
  321.             {
  322.                 ArrayGetArray(aWSkins, i, eData);
  323.                 if(equali(eData[eWType], "AK47")){
  324.                     num_to_str(i, sRow, 7);
  325.                     if(Player[eKills][id] < eData[eWKill])
  326.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  327.                     else
  328.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  329.                     menu_additem(iMenu, sTitle, sRow);
  330.                 }
  331.             }
  332.         }
  333.         case 2:{
  334.             for(new i; i < iLoadedSkins; i++)
  335.             {
  336.                 ArrayGetArray(aWSkins, i, eData);
  337.                 if(equali(eData[eWType], "AWP")){
  338.                     num_to_str(i, sRow, 7);
  339.                     if(Player[eKills][id] < eData[eWKill])
  340.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  341.                     else
  342.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  343.                     menu_additem(iMenu, sTitle, sRow);
  344.                 }
  345.             }
  346.         }
  347.         case 3:{
  348.             for(new i; i < iLoadedSkins; i++)
  349.             {
  350.                 ArrayGetArray(aWSkins, i, eData);
  351.                 if(equali(eData[eWType], "SCOUT")){
  352.                     num_to_str(i, sRow, 7);
  353.                     if(Player[eKills][id] < eData[eWKill])
  354.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  355.                     else
  356.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  357.                     menu_additem(iMenu, sTitle, sRow);
  358.                 }
  359.             }
  360.         }
  361.         case 4:{
  362.             for(new i; i < iLoadedSkins; i++)
  363.             {
  364.                 ArrayGetArray(aWSkins, i, eData);
  365.                 if(equali(eData[eWType], "FAMAS")){
  366.                     num_to_str(i, sRow, 7);
  367.                     if(Player[eKills][id] < eData[eWKill])
  368.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  369.                     else
  370.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  371.                     menu_additem(iMenu, sTitle, sRow);
  372.                 }
  373.             }
  374.         }
  375.         case 5:{
  376.             for(new i; i < iLoadedSkins; i++)
  377.             {
  378.                 ArrayGetArray(aWSkins, i, eData);
  379.                 if(equali(eData[eWType], "GALIL")){
  380.                     num_to_str(i, sRow, 7);
  381.                     if(Player[eKills][id] < eData[eWKill])
  382.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  383.                     else
  384.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  385.                     menu_additem(iMenu, sTitle, sRow);
  386.                 }
  387.             }
  388.         }
  389.         case 6:{
  390.             for(new i; i < iLoadedSkins; i++)
  391.             {
  392.                 ArrayGetArray(aWSkins, i, eData);
  393.                 if(equali(eData[eWType], "AUG")){
  394.                     num_to_str(i, sRow, 7);
  395.                     if(Player[eKills][id] < eData[eWKill])
  396.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  397.                     else
  398.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  399.                     menu_additem(iMenu, sTitle, sRow);
  400.                 }
  401.             }
  402.         }
  403.         case 7:{
  404.             for(new i; i < iLoadedSkins; i++)
  405.             {
  406.                 ArrayGetArray(aWSkins, i, eData);
  407.                 if(equali(eData[eWType], "M3")){
  408.                     num_to_str(i, sRow, 7);
  409.                     if(Player[eKills][id] < eData[eWKill])
  410.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  411.                     else
  412.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  413.                     menu_additem(iMenu, sTitle, sRow);
  414.                 }
  415.             }
  416.         }
  417.         case 8:{
  418.             for(new i; i < iLoadedSkins; i++)
  419.             {
  420.                 ArrayGetArray(aWSkins, i, eData);
  421.                 if(equali(eData[eWType], "XM1014")){
  422.                     num_to_str(i, sRow, 7);
  423.                     if(Player[eKills][id] < eData[eWKill])
  424.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  425.                     else
  426.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  427.                     menu_additem(iMenu, sTitle, sRow);
  428.                 }
  429.             }
  430.         }
  431.         case 9:{
  432.             for(new i; i < iLoadedSkins; i++)
  433.             {
  434.                 ArrayGetArray(aWSkins, i, eData);
  435.                 if(equali(eData[eWType], "KNIFE")){
  436.                     num_to_str(i, sRow, 7);
  437.                     if(Player[eKills][id] < eData[eWKill])
  438.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  439.                     else
  440.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  441.                     menu_additem(iMenu, sTitle, sRow);
  442.                 }
  443.             }
  444.         }
  445.         case 10:{
  446.             for(new i; i < iLoadedSkins; i++)
  447.             {
  448.                 ArrayGetArray(aWSkins, i, eData);
  449.                 if(equali(eData[eWType], "DEAGLE")){
  450.                     num_to_str(i, sRow, 7);
  451.                     if(Player[eKills][id] < eData[eWKill])
  452.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  453.                     else
  454.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  455.                     menu_additem(iMenu, sTitle, sRow);
  456.                 }
  457.             }
  458.         }
  459.         case 11:{
  460.             for(new i; i < iLoadedSkins; i++)
  461.             {
  462.                 ArrayGetArray(aWSkins, i, eData);
  463.                 if(equali(eData[eWType], "USP")){
  464.                     num_to_str(i, sRow, 7);
  465.                     if(Player[eKills][id] < eData[eWKill])
  466.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  467.                     else
  468.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  469.                     menu_additem(iMenu, sTitle, sRow);
  470.                 }
  471.             }
  472.         }
  473.         case 12:{
  474.             for(new i; i < iLoadedSkins; i++)
  475.             {
  476.                 ArrayGetArray(aWSkins, i, eData);
  477.                 if(equali(eData[eWType], "GLOCK18")){
  478.                     num_to_str(i, sRow, 7);
  479.                     if(Player[eKills][id] < eData[eWKill])
  480.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  481.                     else
  482.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  483.                     menu_additem(iMenu, sTitle, sRow);
  484.                 }
  485.             }
  486.         }
  487.     }
  488.     menu_setprop(iMenu, MPROP_EXITNAME, "Kil??p??s");
  489.     menu_setprop(iMenu, MPROP_BACKNAME, "Vissza");
  490.     menu_setprop(iMenu, MPROP_NEXTNAME, "Tov??bb");
  491.     menu_display(id, iMenu, 0);
  492. }
  493. public WeaponSkins_h(id, iMenu, iItem){
  494.     if(iItem == MENU_EXIT){menu_destroy(iMenu);return;}
  495.    
  496.     new sData[10], sName[64];
  497.     new iAccess, iCallback;
  498.     static eData[eWData];
  499.     menu_item_getinfo(iMenu, iItem, iAccess, sData, charsmax(sData), sName, charsmax(sName), iCallback);
  500.     new iKey = str_to_num(sData);
  501.    
  502.     ArrayGetArray(aWSkins, iKey, eData);
  503.    
  504.     if(equali(eData[eWType], "M4A1")){
  505.         if(Player[eKills][id] < eData[eWKill])
  506.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  507.         else{
  508.             iActiveSkin[0][id] = iKey;
  509.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  510.         }
  511.     }
  512.     else if(equali(eData[eWType], "Ak47")){
  513.         if(Player[eKills][id] < eData[eWKill])
  514.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  515.         else{
  516.             iActiveSkin[1][id] = iKey;
  517.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  518.         }
  519.     }
  520.     else if(equali(eData[eWType], "AWP")){
  521.         if(Player[eKills][id] < eData[eWKill])
  522.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  523.         else{
  524.             iActiveSkin[2][id] = iKey;
  525.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  526.         }
  527.     }
  528.     else if(equali(eData[eWType], "SCOUT")){
  529.         if(Player[eKills][id] < eData[eWKill])
  530.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  531.         else{
  532.             iActiveSkin[3][id] = iKey;
  533.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  534.         }
  535.     }
  536.     else if(equali(eData[eWType], "FAMAS")){
  537.         if(Player[eKills][id] < eData[eWKill])
  538.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  539.         else{
  540.             iActiveSkin[4][id] = iKey;
  541.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  542.         }
  543.     }
  544.     else if(equali(eData[eWType], "GALIL")){
  545.         if(Player[eKills][id] < eData[eWKill])
  546.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  547.         else{
  548.             iActiveSkin[5][id] = iKey;
  549.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  550.         }
  551.     }
  552.     else if(equali(eData[eWType], "AUG")){
  553.         if(Player[eKills][id] < eData[eWKill])
  554.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  555.         else{
  556.             iActiveSkin[6][id] = iKey;
  557.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  558.         }
  559.     }
  560.     else if(equali(eData[eWType], "M3")){
  561.         if(Player[eKills][id] < eData[eWKill])
  562.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  563.         else{
  564.             iActiveSkin[7][id] = iKey;
  565.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  566.         }
  567.     }
  568.     else if(equali(eData[eWType], "XM1014")){
  569.         if(Player[eKills][id] < eData[eWKill])
  570.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  571.         else{
  572.             iActiveSkin[8][id] = iKey;
  573.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  574.         }
  575.     }
  576.     else if(equali(eData[eWType], "KNIFE")){
  577.         if(Player[eKills][id] < eData[eWKill])
  578.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  579.         else{
  580.             iActiveSkin[9][id] = iKey;
  581.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  582.         }
  583.     }
  584.     else if(equali(eData[eWType], "DEAGLE")){
  585.         if(Player[eKills][id] < eData[eWKill])
  586.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  587.         else{
  588.             iActiveSkin[10][id] = iKey;
  589.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  590.         }
  591.     }
  592.     else if(equali(eData[eWType], "USP")){
  593.         if(Player[eKills][id] < eData[eWKill])
  594.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  595.         else{
  596.             iActiveSkin[11][id] = iKey;
  597.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  598.         }
  599.     }
  600.     else if(equali(eData[eWType], "GLOCK18")){
  601.         if(Player[eKills][id] < eData[eWKill])
  602.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  603.         else{
  604.             iActiveSkin[12][id] = iKey;
  605.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  606.         }
  607.     }
  608.     playspk(id);
  609. }
  610. public adminmenuopen(id){
  611.     new sTitle[128];
  612.     format(sTitle, charsmax(sTitle), "%s \dJátékosok kezelése", get_prefix(1));
  613.     new iMenu = menu_create(sTitle, "adminmenuopen_h");
  614.    
  615.     menu_additem(iMenu, "\wPont adás", "1", 0);
  616.     menu_additem(iMenu, "\wPont elvétel", "2", 0);
  617.    
  618.     menu_setprop(iMenu, MPROP_EXITNAME, "Kil??p??s");
  619.     menu_display(id, iMenu, 0);
  620. }
  621. public adminmenuopen_h(id, iMenu, iItem){
  622.     if(iItem == MENU_EXIT){menu_destroy(iMenu);return;}
  623.    
  624.     new sData[10], sName[64];
  625.     new iAccess, iCallback;
  626.     menu_item_getinfo(iMenu, iItem, iAccess, sData, charsmax(sData), sName, charsmax(sName), iCallback);
  627.     new iKey = str_to_num(sData);
  628.    
  629.     switch(iKey){
  630.         case 1:  {menu_chooseplayer(id); iChoosedMode = 0;}
  631.         case 2: {menu_chooseplayer(id); iChoosedMode = 1;}
  632.     }
  633.     playspk(id);
  634. }
  635. public menu_chooseplayer(id){
  636.     new sTitle[128], iPlayers[32], iPNum, iId, sName[64], sId[10];
  637.     format(sTitle, charsmax(sTitle), "%s \dVálassz játékost", get_prefix(1));
  638.     new iMenu = menu_create(sTitle, "menu_chooseplayer_h");
  639.    
  640.     get_players(iPlayers, iPNum);
  641.    
  642.     for(new i; i < iPNum; i++)
  643.     {
  644.         iId = iPlayers[i];
  645.         if(is_user_bot(iId) || !is_user_connected(iId))
  646.             continue;
  647.        
  648.         get_user_name(iId, sName, charsmax(sName));
  649.         num_to_str(iId, sId, charsmax(sId));    
  650.         menu_additem(iMenu, sName, sId, 0);          
  651.     }
  652.    
  653.     menu_setprop(iMenu, MPROP_EXITNAME, "Kilépés");
  654.     menu_display(id, iMenu, 0);
  655. }
  656. public menu_chooseplayer_h(id, iMenu, iItem){
  657.     if(iItem == MENU_EXIT){menu_destroy(iMenu);return;}
  658.    
  659.     new sData[10], sName[64];
  660.     new iAccess, iCallback;
  661.     menu_item_getinfo(iMenu, iItem, iAccess, sData, charsmax(sData), sName, charsmax(sName), iCallback);
  662.     iTempID = str_to_num(sData);
  663.    
  664.     client_cmd(id, "messagemode type_itemremoveoradd");
  665.     playspk(id);
  666. }
  667. public type_itemammount(id){
  668.     new sItem[128], iItemAmmount, sSenderName[64], sTargetName[64];
  669.     read_args(sItem, charsmax(sItem));
  670.     remove_quotes(sItem);
  671.    
  672.     get_user_name(id, sSenderName, charsmax(sSenderName));
  673.     get_user_name(iTempID, sTargetName, charsmax(sTargetName));
  674.    
  675.     iItemAmmount = str_to_num(sItem);
  676.    
  677.     if(iItemAmmount < 0){
  678.         client_print_color(id, print_team_blue, "%s ^1Nem írhasz nulla értéket!.", get_prefix(0));
  679.         return PLUGIN_HANDLED;
  680.     }
  681.    
  682.     switch(iChoosedMode){
  683.         case 0:{
  684.            
  685.             for(new i = 0; i < 13; i++)
  686.                 iWeaponKills[i][iTempID] += iItemAmmount;
  687.            
  688.             client_print_color(id, print_team_blue, "%s ^1Sikeresen jóváírtak:^4 %d ^1t, neki:^4 %s", get_prefix(0), iItemAmmount, sTargetName);
  689.             client_print_color(iTempID, print_team_blue, "%s ^1Jóváírtak neked^4 %d ^1pontot! BY:^4 %s", get_prefix(0), iItemAmmount, sTargetName);
  690.             client_print_color(id, print_team_blue, "^3 Admin: %s | Játékos: %s | összeg: %d | Tíus: pont jóváírás", sSenderName, sTargetName, iItemAmmount);
  691.             return PLUGIN_HANDLED;
  692.         }
  693.         case 1:{
  694.             for(new i = 0; i < 13; i++)
  695.                 iWeaponKills[i][iTempID] -= iItemAmmount;
  696.            
  697.             client_print_color(id, print_team_blue, "%s ^1Sikeresen elvettek:^4 %d ^1, t?e:^4 %s", get_prefix(0), iItemAmmount, sTargetName);
  698.             client_print_color(iTempID, print_team_blue, "%s ^1Elvettek tőled^4 %d ^1pontot! BY:^4 %s", get_prefix(0), iItemAmmount, sTargetName);
  699.             client_print_color(id, print_team_blue, "^3 Admin: %s | Játékos: %s | összeg: %d | Tius: Pont elvétel", sSenderName, sTargetName, iItemAmmount);
  700.             return PLUGIN_HANDLED;
  701.         }
  702.     }  
  703.     return PLUGIN_HANDLED;
  704. }
  705. public client_disconnected(id){
  706.     if(is_user_bot(id))
  707.         return;
  708.    
  709.     Update(id);
  710.    
  711.     Player[eKills][id] = 0;
  712.     Player[eUnclockedSkin][id] = 0;
  713.    
  714.     for(new i = 0; i < 13; i++)
  715.         iActiveSkin[i][id] = -1;
  716.     for(new i = 0; i < 13; i++)
  717.         iWeaponKills[i][id] = 0;
  718. }
  719. public client_putinserver(id){
  720.     if(is_user_bot(id))
  721.         return;
  722.  
  723.     for(new i = 0; i < 13; i++)
  724.         iActiveSkin[i][id] = -1;
  725.     for(new i = 0; i < 13; i++)
  726.         iWeaponKills[i][id] = 0;
  727.    
  728.     SQL_load(id);
  729.     InfoHud(id);
  730. }
  731. public plugin_cfg(){
  732.     new iLen, sQuery[2048];
  733.     SqlTuple = SQL_MakeDbTuple(SQL_INFO[0], SQL_INFO[1], SQL_INFO[2], SQL_INFO[3])
  734.     iLen += formatex(sQuery[iLen], charsmax(sQuery), "CREATE TABLE IF NOT EXISTS `SkinMenu`")
  735.     iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "(`Steamid` varchar(128) NOT NULL, ")
  736.     iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "`UnlockedSkin` int(11) NOT NULL,");
  737.    
  738.     for(new i = 0; i < 13; i++)
  739.         iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "`WK%d` int(11) NOT NULL,", i);
  740.    
  741.     for(new i = 0; i < 13; i++)
  742.         iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "`MentettSkin_%d` int(11) NOT NULL,", i);
  743.    
  744.     iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "`Olesek` int(11) NOT NULL, `id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY)");
  745.     SQL_ThreadQuery(SqlTuple, "createTableThread", sQuery);
  746. }
  747. public createTableThread(FailState, Handle:Query, Error[], Errcode, Data[], DataSize, Float:Queuetime){
  748.     if(FailState == TQUERY_CONNECT_FAILED)
  749.         set_fail_state("[HIBA*] NEM TUDTAM CSATLAKOZNI AZ ADATBAZISHOZ!");
  750.     else if(FailState == TQUERY_QUERY_FAILED)
  751.         set_fail_state("Query Error");
  752.     if(Errcode)
  753.         log_amx("[HIBA*] HIBAT DOBTAM: %s", Error);
  754. }
  755. public SQL_load(id){
  756.     new Data[1], sQuery[2048];
  757.     Data[0] = id;
  758.     get_user_authid(id, gSteamID, charsmax(gSteamID))
  759.    
  760.     formatex(sQuery, charsmax(sQuery), "SELECT * FROM `SkinMenu` WHERE Steamid = ^"%s^";", gSteamID);
  761.     SQL_ThreadQuery(SqlTuple, "SQL_load_thr", sQuery, Data, 1)
  762. }
  763. public SQL_load_thr(FailState, Handle:Query, Error[], Errcode, Data[], DataSize, Float:Queuetime){
  764.     if(FailState == TQUERY_CONNECT_FAILED)
  765.         set_fail_state("[*HIBA*] NEM LEHET KAPCSOLODNI AZ ADATBAZISHOZ!");
  766.     else if(FailState == TQUERY_QUERY_FAILED)
  767.         set_fail_state("[*HIBA*] A LEKERDEZES MEGSZAKADT!");
  768.     if(Errcode)
  769.         log_amx("[*HIBA*] PROBLEMA A LEKERDEZESNEL! ( %s )",Error);
  770.    
  771.     new id = Data[0];
  772.    
  773.     if(SQL_NumRows(Query) > 0){
  774.         Player[eUnclockedSkin][id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "UnlockedSkin"));
  775.         for(new i = 0; i < 13; i++){
  776.             new sString[64];
  777.             formatex(sString, charsmax(sString), "WK%d", i);
  778.             iWeaponKills[i][id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, sString));
  779.         }
  780.         for(new i = 0; i < 13; i++){
  781.             new sString[64];
  782.             formatex(sString, charsmax(sString), "MentettSkin_%d", i);
  783.             iActiveSkin[i][id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, sString));
  784.         }
  785.         Player[eKills][id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "Olesek"));
  786.     }
  787.     else
  788.         SQL_Save(id);
  789. }
  790. public Update(id){
  791.     new iLen, sQuery[2048];
  792.     get_user_authid(id, gSteamID, charsmax(gSteamID))
  793.    
  794.     iLen += formatex(sQuery[iLen], charsmax(sQuery), "UPDATE `SkinMenu` SET UnlockedSkin = ^"%i^", ", Player[eUnclockedSkin][id]);
  795.    
  796.     for(new i = 0; i < 13; i++)
  797.         iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "WK%d = ^"%i^", ", i, iWeaponKills[i][id]);
  798.    
  799.     for(new i = 0; i < 13; i++)
  800.         iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "MentettSkin_%d = ^"%i^", ", i, iActiveSkin[i][id]);
  801.    
  802.     iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "Olesek = ^"%i^" WHERE Steamid = ^"%s^";", Player[eKills][id], gSteamID);
  803.    
  804.     SQL_ThreadQuery(SqlTuple, "QuerySetData", sQuery)
  805. }
  806. public SQL_Save(id){
  807.     new sQuery[2048]
  808.     get_user_authid(id, gSteamID, charsmax(gSteamID))
  809.    
  810.     formatex(sQuery, charsmax(sQuery), "INSERT INTO `SkinMenu` (`Steamid`) VALUES (^"%s^");", gSteamID);
  811.     SQL_ThreadQuery(SqlTuple, "QuerySetData", sQuery);
  812. }
  813. public QuerySetData(FailState, Handle:Query, Error[], Errcode, Data[], DataSize, Float:Queuetime){
  814.     if(FailState == TQUERY_CONNECT_FAILED || FailState == TQUERY_QUERY_FAILED){
  815.         log_amx("%s", Error);
  816.         return;
  817.     }
  818. }
  819. public plugin_end(){
  820.     SQL_FreeHandle(SqlTuple);
  821. }
  822. public sayhook(id){
  823.     new Message[192];
  824.     read_args(Message, charsmax(Message))
  825.     remove_quotes(Message)
  826.    
  827.     if(strlen(Message) == 0 || Message[0] == '/')
  828.         return PLUGIN_HANDLED_MAIN;
  829.    
  830.     new Death[16], sName[MAX_NAME_LENGTH];
  831.     get_user_name(id, sName, charsmax(sName));
  832.    
  833.     new sRank[64], sColor[16];
  834.    
  835.     switch(get_user_flags(id)){
  836.         case TULAJ:{ sRank = "^4[^3Tulajdonos^4]"; sColor = "^4";}
  837.         case ADMIN:{ sRank = "^4[^3Admin^4]"; sColor = "^4";}
  838.         case VIP:{ sRank = "^4[^3VIP^4]"; sColor = "^3";}
  839.         default:{ sRank = "^4[^3Játékos^4]"; sColor = "^1";}
  840.     }
  841.     for(new i = 1; i <= iMaxPlayers; i++){
  842.         if(is_user_connected(i) && !is_user_bot(i)){
  843.             formatex(Death, charsmax(Death), is_user_alive(id) ? "":"*Halott*");
  844.             client_print_color(i, print_team_default, "%s%s^3%s: %s%s", Death, sRank, sName, sColor, Message);
  845.         }
  846.     }
  847.     return PLUGIN_HANDLED_MAIN;
  848. }
  849. public sayteamhook(id){
  850.     new Message[192];
  851.     read_args(Message, charsmax(Message))
  852.     remove_quotes(Message)
  853.    
  854.     if(strlen(Message) == 0 || Message[0] == '/')
  855.         return PLUGIN_HANDLED_MAIN;
  856.    
  857.     new Death[16], sName[MAX_NAME_LENGTH];
  858.     get_user_name(id, sName, charsmax(sName));
  859.    
  860.     new iTeam, sTeam[32];
  861.     iTeam = get_user_team(id, sTeam, charsmax(sTeam));
  862.    
  863.     switch(iTeam){
  864.         case CS_TEAM_CT: sTeam = "CT";
  865.             case CS_TEAM_T: sTeam = "T";
  866.             case CS_TEAM_SPECTATOR: sTeam = "SPEC";
  867.         }
  868.     for(new i = 1; i <=  iMaxPlayers; i++){
  869.         if(is_user_connected(i) && !is_user_bot(i) || get_user_flags(id) & ADMIN_BAN){
  870.             formatex(Death, charsmax(Death), is_user_alive(id) ? "":"*Halott*");
  871.             client_print_color(i, print_team_default, "%s^3(%s)^1%s: ^3%s", Death, sTeam, sName, Message);
  872.         }
  873.     }
  874.     return PLUGIN_HANDLED_MAIN;
  875. }
  876. stock get_prefix(which){
  877.     new sPrefix[32];
  878.     if(which == 0)
  879.         get_pcvar_string(cvarS[eCpref], sPrefix, charsmax(sPrefix));
  880.     else if(which == 1)
  881.         get_pcvar_string(cvarS[eMpref], sPrefix, charsmax(sPrefix));
  882.    
  883.     return sPrefix;
  884. }
  885. public playspk(id){
  886.     client_cmd(id, "spk buttons/lightswitch2");
  887. }

_________________
"Szeretek aludni... mert az álmaim szebbek, mint a valóság."

Ők köszönték meg HellEnergY nek ezt a hozzászólást: saxxo (2021.07.16. 16:07)
  Népszerűség: 2.27%


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: Aktivált skinek
HozzászólásElküldve: 2022.04.14. 08:20 
Offline
Jómunkásember

Csatlakozott: 2020.06.14. 17:59
Hozzászólások: 368
Megköszönt másnak: 64 alkalommal
Megköszönték neki: 10 alkalommal
HellEnergY írta:
saxxo írta:
Üdv!

Szeretnék segítséget kapni hogy a meglévő aktivált skin miért nem marad meg a következő pályán?


Szia, mert azok nincsenek lementve, megcsinálom amint lesz rá időm.

Kicsit késve, de tessék :lol: (teszteltem nekem mentett rendesen és be is töltött):

  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <hamsandwich>
  4. #include <cstrike>
  5. #include <engine>
  6. #include <fun>
  7. #include <fakemeta>
  8. #include <sqlx>
  9.  
  10. #define PLUGIN  "New Plugin"
  11. #define AUTHOR  "Unknown"
  12. #define VERSION "1.0"
  13.  
  14. #define MAXPLAYERS 33
  15. #define TULAJ ADMIN_IMMUNITY
  16. #define ADMIN ADMIN_BAN
  17. #define VIP ADMIN_LEVEL_H
  18.  
  19. new const SQL_INFO[][] = {"","","",""};
  20. enum eCvar{eCpref,eMpref,};
  21. new cvarS[eCvar];
  22. enum ePlayer{eKills, eUnclockedSkin};
  23. new Player[ePlayer][MAXPLAYERS];
  24. enum _:eWData {eWName[64],eWFile[64],eWKill,eWType[64],};
  25. new iActiveSkin[13][33], iWeaponKills[13][33], iLoadedSkins, iTempID, iMaxPlayers, iChoosedMode, gSteamID[128], SyncHud;
  26. new Handle:SqlTuple;
  27. new Array: aWSkins;
  28.  
  29. public plugin_init(){
  30.     register_plugin(PLUGIN, VERSION, AUTHOR);
  31.    
  32.     register_impulse(201, "main_menu");
  33.     register_clcmd("say /menu", "main_menu");
  34.    
  35.     cvarS[eCpref] = register_cvar("C_Pref", "^4[<<< DarK~DemonS >>>]^3");
  36.     cvarS[eMpref] = register_cvar("M_Pref", "\y[<<< DarK~DemonS >>>]\y");
  37.    
  38.     register_clcmd("type_itemremoveoradd", "type_itemammount");
  39.    
  40.     RegisterHam(Ham_Killed, "player", "PlayerKilled_p", 1);
  41.     RegisterHam(Ham_Item_Deploy, "weapon_m4a1", "WeaponChange_p", 1);
  42.     RegisterHam(Ham_Item_Deploy, "weapon_ak47", "WeaponChange_p", 1);
  43.     RegisterHam(Ham_Item_Deploy, "weapon_awp", "WeaponChange_p", 1);
  44.     RegisterHam(Ham_Item_Deploy, "weapon_scout", "WeaponChange_p", 1);
  45.     RegisterHam(Ham_Item_Deploy, "weapon_famas", "WeaponChange_p", 1);
  46.     RegisterHam(Ham_Item_Deploy, "weapon_galil", "WeaponChange_p", 1);
  47.     RegisterHam(Ham_Item_Deploy, "weapon_aug", "WeaponChange_p", 1);
  48.     RegisterHam(Ham_Item_Deploy, "weapon_m3", "WeaponChange_p", 1);
  49.     RegisterHam(Ham_Item_Deploy, "weapon_xm1014", "WeaponChange_p", 1);
  50.     RegisterHam(Ham_Item_Deploy, "weapon_knife", "WeaponChange_p", 1);
  51.     RegisterHam(Ham_Item_Deploy, "weapon_deagle", "WeaponChange_p", 1);
  52.     RegisterHam(Ham_Item_Deploy, "weapon_usp", "WeaponChange_p", 1);
  53.     RegisterHam(Ham_Item_Deploy, "weapon_glock18", "WeaponChange_p", 1);
  54.    
  55.     register_clcmd("say", "sayhook");
  56.     register_clcmd("say_team", "sayteamhook");
  57.    
  58.     iMaxPlayers = get_maxplayers();
  59.     SyncHud = CreateHudSyncObj();
  60. }
  61. public InfoHud(id)
  62. {
  63.     static eData[eWData];
  64.     new idT;
  65.     new Target = pev(id, pev_iuser1) == 4 ? pev(id, pev_iuser2) : id;
  66.     idT = is_user_alive(id) ? id:Target;
  67.     new iWeapon = get_user_weapon(idT);
  68.     set_hudmessage(0, 255, 0, -1.0, 0.80, 0, 6.0, 1.1, 0.1, 0.2, -1);
  69.    
  70.     set_task(1.0, "InfoHud", id);
  71.    
  72.     switch(iWeapon){
  73.         case CSW_M4A1: {if(iActiveSkin[0][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;} ArrayGetArray(aWSkins, iActiveSkin[0][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[0][id]);}
  74.         case CSW_AK47: {if(iActiveSkin[1][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[1][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[1][id]);}
  75.         case CSW_AWP: {if(iActiveSkin[2][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[2][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[2][id]);}
  76.         case CSW_SCOUT: {if(iActiveSkin[3][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[3][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[3][id]);}
  77.         case CSW_FAMAS: {if(iActiveSkin[4][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[4][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[4][id]);}
  78.         case CSW_GALIL: {if(iActiveSkin[5][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[5][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[5][id]);}
  79.         case CSW_AUG: {if(iActiveSkin[6][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[6][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[6][id]);}
  80.         case CSW_M3: {if(iActiveSkin[7][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[7][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[7][id]);}
  81.         case CSW_XM1014: {if(iActiveSkin[8][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[8][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[8][id]);}
  82.         case CSW_KNIFE: {if(iActiveSkin[9][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[9][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[9][id]);}
  83.         case CSW_DEAGLE: {if(iActiveSkin[10][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[10][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[10][id]);}
  84.         case CSW_USP: {if(iActiveSkin[11][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[11][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[11][id]);}
  85.         case CSW_GLOCK18:{if(iActiveSkin[12][id] == -1){ShowSyncHudMsg(id, SyncHud, "--");return;}ArrayGetArray(aWSkins, iActiveSkin[12][id], eData);ShowSyncHudMsg(id, SyncHud, "Fegyver neve: %s, Ölések: %d", eData[eWName], iWeaponKills[12][id]);}
  86.     }
  87. }
  88. public plugin_precache(){
  89.     LoadSkins();
  90. }
  91. public LoadSkins(){
  92.     aWSkins = ArrayCreate(eWData);
  93.     new sPath[40];
  94.     get_configsdir(sPath, charsmax(sPath));
  95.     format(sPath, charsmax(sPath), "%s/skins.ini", sPath);
  96.    
  97.     if(!file_exists(sPath)){
  98.         log_amx("[HIBA]: Ez a f??jl nem l??tezik: (%s).", sPath);
  99.         return;
  100.     }
  101.    
  102.     if(file_exists(sPath)){
  103.         enum aDatas{eName[64],eFile[64],eKill2[64],eType[64],};
  104.         new sData[aDatas];
  105.        
  106.         new sLineData[512], iLine;
  107.         new iFile = fopen(sPath, "rt");
  108.        
  109.         while(!feof(iFile)){
  110.             fgets(iFile, sLineData, charsmax(sLineData));
  111.             replace(sLineData, charsmax(sLineData), "^n", "");
  112.            
  113.             if(sLineData[0] == ';' || !sLineData[0]) continue;
  114.            
  115.             parse(sLineData, sData[eName], charsmax(sData), sData[eFile], charsmax(sData), sData[eKill2], charsmax(sData),
  116.             sData[eType], charsmax(sData));
  117.            
  118.             remove_quotes(sData[eName]);remove_quotes(sData[eFile]);
  119.             remove_quotes(sData[eKill2]);remove_quotes(sData[eType]);
  120.            
  121.             static eData[eWData];
  122.             copy(eData[eWName], sizeof(eData[eWName]) - 1, sData[eName]);
  123.             copy(eData[eWFile], sizeof(eData[eWFile]) - 1, sData[eFile]);
  124.             eData[eWKill] = str_to_num(sData[eKill2]);        
  125.             copy(eData[eWType], sizeof(sData[eWType])- 1, sData[eType]);
  126.            
  127.             ArrayPushArray(aWSkins, eData);
  128.             precache_model(eData[eWFile]);
  129.             iLine++;
  130.         }
  131.         fclose(iFile);
  132.         iLoadedSkins = iLine;
  133.     }
  134. }
  135. public WeaponChange_p(iEnt){
  136.     new id = get_pdata_cbase(iEnt, 41, 4);
  137.    
  138.     if(!is_user_alive(id) || !is_user_connected(id))
  139.         return HAM_IGNORED;
  140.    
  141.     static eData[eWData];
  142.     new iWeapon = cs_get_weapon_id(iEnt);
  143.     switch(iWeapon){
  144.         case CSW_M4A1: {if(iActiveSkin[0][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[0][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  145.         case CSW_AK47: {if(iActiveSkin[1][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[1][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  146.         case CSW_AWP: {if(iActiveSkin[2][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[2][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  147.         case CSW_SCOUT: {if(iActiveSkin[3][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[3][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  148.         case CSW_FAMAS: {if(iActiveSkin[4][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[4][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  149.         case CSW_GALIL: {if(iActiveSkin[5][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[5][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  150.         case CSW_AUG: {if(iActiveSkin[6][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[6][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  151.         case CSW_M3: {if(iActiveSkin[7][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[7][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  152.         case CSW_XM1014: {if(iActiveSkin[8][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[8][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  153.         case CSW_KNIFE: {if(iActiveSkin[9][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[9][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  154.         case CSW_DEAGLE: {if(iActiveSkin[10][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[10][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  155.         case CSW_USP: {if(iActiveSkin[11][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[11][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  156.         case CSW_GLOCK18: {if(iActiveSkin[12][id] == -1)return HAM_IGNORED;ArrayGetArray(aWSkins, iActiveSkin[12][id], eData);entity_set_string(id, EV_SZ_viewmodel, eData[eWFile]);}
  157.     }
  158.     return HAM_IGNORED;
  159. }
  160. public PlayerKilled_p(iVictim, iKiller){
  161.     if(iVictim == iKiller || !iKiller || !iVictim)
  162.         return PLUGIN_HANDLED;
  163.    
  164.     new iWeapon = get_user_weapon(iKiller);
  165.    
  166.     Player[eKills][iKiller]++;
  167.     hp_up(iKiller);
  168.    
  169.     switch(iWeapon){
  170.         case CSW_M4A1:{
  171.             iWeaponKills[0][iKiller] += 2;
  172.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[M4a1 fegyver]^1 Jutalom ^3[ +2 M4a1 Pont]", get_prefix(0));
  173.         }
  174.         case CSW_AK47:{
  175.             iWeaponKills[1][iKiller] += 2;
  176.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[AK47 fegyver]^1 Jutalom ^3[ +2 AK47 Pont]", get_prefix(0));
  177.         }
  178.         case CSW_AWP:{
  179.             iWeaponKills[2][iKiller] += 2;
  180.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[AWP fegyver]^1 Jutalom ^3[ +2 AWP Pont]", get_prefix(0));
  181.         }
  182.         case CSW_SCOUT:{
  183.             iWeaponKills[3][iKiller] += 2;
  184.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[SCOUT fegyver]^1 Jutalom ^3[ +2 SCOUT Pont]", get_prefix(0));
  185.         }
  186.         case CSW_FAMAS:{
  187.             iWeaponKills[4][iKiller] += 2;
  188.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[FAMAS fegyver]^1 Jutalom ^3[ +2 FAMAS Pont]", get_prefix(0));
  189.         }
  190.         case CSW_GALIL:{
  191.             iWeaponKills[5][iKiller] += 3;
  192.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[GALIL fegyver]^1 Jutalom ^3[ +2 GALIL Pont]", get_prefix(0));
  193.         }
  194.         case CSW_AUG:{
  195.             iWeaponKills[6][iKiller] += 3;
  196.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[AUG fegyver]^1 Jutalom ^3[ +2 AUG Pont]", get_prefix(0));
  197.         }
  198.         case CSW_M3:{
  199.             iWeaponKills[7][iKiller] += 3;
  200.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[M3 fegyver]^1 Jutalom ^3[ +2 M3 Pont]", get_prefix(0));
  201.         }
  202.         case CSW_XM1014:{
  203.             iWeaponKills[8][iKiller] += 2;
  204.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[XM1014 fegyver]^1 Jutalom ^3[ +2 XM1014 Pont]", get_prefix(0));
  205.         }
  206.         case CSW_KNIFE:{
  207.             iWeaponKills[9][iKiller] += 3;
  208.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[KNIFE fegyver]^1 Jutalom ^3[ +2 KNIFE Pont]", get_prefix(0));
  209.         }
  210.         case CSW_DEAGLE:{
  211.             iWeaponKills[10][iKiller] += 2;
  212.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[DEAGLE fegyver]^1 Jutalom ^3[ +2 DEAGLE Pont]", get_prefix(0));
  213.         }
  214.         case CSW_USP:{
  215.             iWeaponKills[11][iKiller] += 2;
  216.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[USP fegyver]^1 Jutalom ^3[ +2 USP Pont]", get_prefix(0));
  217.         }
  218.         case CSW_GLOCK18:{
  219.             iWeaponKills[12][iKiller] += 3;
  220.             client_print_color(iKiller, print_team_default, "%s ^1 Fegyver :^3[GLOCK18 fegyver]^1 Jutalom ^3[ +2 GLOCK18 Pont]", get_prefix(0));
  221.         }
  222.     }
  223.     return PLUGIN_HANDLED;
  224. }
  225. public hp_up(id)
  226. {
  227.     new iHealth = get_user_health(id);
  228.    
  229.     if(iHealth < 100)
  230.         set_user_health(id, iHealth + 5);
  231.     if(iHealth > 100)
  232.         set_user_health(id, 110);
  233. }
  234. public main_menu(id){
  235.     new sTitle[128];
  236.     format(sTitle, charsmax(sTitle), "%s \dFőmenü", get_prefix(1));
  237.     new iMenu = menu_create(sTitle, "menu_main_h");
  238.    
  239.     formatex(sTitle, charsmax(sTitle), "\wFegyver Skinek");
  240.     menu_additem(iMenu, sTitle, "1", 0);
  241.     menu_additem(iMenu, "\wAdatkezelő", "2", 0);
  242.    
  243.     menu_setprop(iMenu, MPROP_EXITNAME, "Kilépés");
  244.     menu_display(id, iMenu, 0);
  245. }
  246. public menu_main_h(id, iMenu, iItem){
  247.     if(iItem == MENU_EXIT){menu_destroy(iMenu);return;}
  248.    
  249.     new sData[10], sName[64];
  250.     new iAccess, iCallback;
  251.     menu_item_getinfo(iMenu, iItem, iAccess, sData, charsmax(sData), sName, charsmax(sName), iCallback);
  252.     new iKey = str_to_num(sData);
  253.    
  254.     switch(iKey)
  255.     {
  256.         case 1:  menu_storage(id);
  257.             case 2: adminmenuopen(id);
  258.         }
  259.     playspk(id);
  260. }
  261. public menu_storage(id){
  262.     new sTitle[128];
  263.     format(sTitle, charsmax(sTitle), "%s \dVálassz fegyvert", get_prefix(1));
  264.     new iMenu = menu_create(sTitle, "menu_storage_h");
  265.    
  266.     menu_additem(iMenu, "\rM4A1 \ySkinek", "0", 0);
  267.     menu_additem(iMenu, "\rAK47 \ySkinek", "1", 0);
  268.     menu_additem(iMenu, "\rAWP \ySkinek", "2", 0);
  269.     menu_additem(iMenu, "\rSCOUT \ySkinek", "3", 0);
  270.     menu_additem(iMenu, "\rFAMAS \ySkinek", "4", 0);
  271.     menu_additem(iMenu, "\rGALIL  \ySkinek", "5", 0);
  272.     menu_additem(iMenu, "\rAUG \ySkinek", "6", 0);
  273.     menu_additem(iMenu, "\rM3 \ySkinek", "7", 0);
  274.     menu_additem(iMenu, "\rXM1014 \ySkinek", "8", 0);
  275.     menu_additem(iMenu, "\rKNIFE \ySkinek", "9", 0);
  276.     menu_additem(iMenu, "\rDEAGLE \ySkinek", "10", 0);
  277.     menu_additem(iMenu, "\rUSP \ySkinek", "11", 0);
  278.     menu_additem(iMenu, "\rGLOCK18 \ySkinek", "12", 0);
  279.    
  280.     menu_setprop(iMenu, MPROP_EXITNAME, "Kilepes");
  281.     menu_setprop(iMenu, MPROP_BACKNAME, "Vissza");
  282.     menu_setprop(iMenu, MPROP_NEXTNAME, "Tovabb");
  283.     menu_display(id, iMenu, 0);
  284. }
  285. public menu_storage_h(id, iMenu, iItem){
  286.     if(iItem == MENU_EXIT){menu_destroy(iMenu);return;}
  287.    
  288.     new sData[10], sName[64];
  289.     new iAccess, iCallback;
  290.     menu_item_getinfo(iMenu, iItem, iAccess, sData, charsmax(sData), sName, charsmax(sName), iCallback);
  291.     new iKey = str_to_num(sData);
  292.    
  293.     switch(iKey){
  294.         case 0..12:  WeaponSkins(id, iKey);
  295.         }
  296.     playspk(id);
  297. }
  298. public WeaponSkins(id, iWhich){
  299.     new sTitle[128], sRow[8];
  300.     static eData[eWData];
  301.     format(sTitle, charsmax(sTitle), "%s \dFegyver Skinek", get_prefix(1));
  302.     new iMenu = menu_create(sTitle, "WeaponSkins_h");
  303.    
  304.     switch(iWhich){
  305.         case 0:{
  306.             for(new i; i < iLoadedSkins; i++)
  307.             {
  308.                 ArrayGetArray(aWSkins, i, eData);
  309.                 if(equali(eData[eWType], "M4A1")){
  310.                     num_to_str(i, sRow, 7);
  311.                     if(Player[eKills][id] < eData[eWKill])
  312.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  313.                     else
  314.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  315.                     menu_additem(iMenu, sTitle, sRow);
  316.                 }
  317.             }
  318.         }
  319.         case 1:{
  320.             for(new i; i < iLoadedSkins; i++)
  321.             {
  322.                 ArrayGetArray(aWSkins, i, eData);
  323.                 if(equali(eData[eWType], "AK47")){
  324.                     num_to_str(i, sRow, 7);
  325.                     if(Player[eKills][id] < eData[eWKill])
  326.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  327.                     else
  328.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  329.                     menu_additem(iMenu, sTitle, sRow);
  330.                 }
  331.             }
  332.         }
  333.         case 2:{
  334.             for(new i; i < iLoadedSkins; i++)
  335.             {
  336.                 ArrayGetArray(aWSkins, i, eData);
  337.                 if(equali(eData[eWType], "AWP")){
  338.                     num_to_str(i, sRow, 7);
  339.                     if(Player[eKills][id] < eData[eWKill])
  340.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  341.                     else
  342.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  343.                     menu_additem(iMenu, sTitle, sRow);
  344.                 }
  345.             }
  346.         }
  347.         case 3:{
  348.             for(new i; i < iLoadedSkins; i++)
  349.             {
  350.                 ArrayGetArray(aWSkins, i, eData);
  351.                 if(equali(eData[eWType], "SCOUT")){
  352.                     num_to_str(i, sRow, 7);
  353.                     if(Player[eKills][id] < eData[eWKill])
  354.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  355.                     else
  356.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  357.                     menu_additem(iMenu, sTitle, sRow);
  358.                 }
  359.             }
  360.         }
  361.         case 4:{
  362.             for(new i; i < iLoadedSkins; i++)
  363.             {
  364.                 ArrayGetArray(aWSkins, i, eData);
  365.                 if(equali(eData[eWType], "FAMAS")){
  366.                     num_to_str(i, sRow, 7);
  367.                     if(Player[eKills][id] < eData[eWKill])
  368.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  369.                     else
  370.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  371.                     menu_additem(iMenu, sTitle, sRow);
  372.                 }
  373.             }
  374.         }
  375.         case 5:{
  376.             for(new i; i < iLoadedSkins; i++)
  377.             {
  378.                 ArrayGetArray(aWSkins, i, eData);
  379.                 if(equali(eData[eWType], "GALIL")){
  380.                     num_to_str(i, sRow, 7);
  381.                     if(Player[eKills][id] < eData[eWKill])
  382.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  383.                     else
  384.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  385.                     menu_additem(iMenu, sTitle, sRow);
  386.                 }
  387.             }
  388.         }
  389.         case 6:{
  390.             for(new i; i < iLoadedSkins; i++)
  391.             {
  392.                 ArrayGetArray(aWSkins, i, eData);
  393.                 if(equali(eData[eWType], "AUG")){
  394.                     num_to_str(i, sRow, 7);
  395.                     if(Player[eKills][id] < eData[eWKill])
  396.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  397.                     else
  398.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  399.                     menu_additem(iMenu, sTitle, sRow);
  400.                 }
  401.             }
  402.         }
  403.         case 7:{
  404.             for(new i; i < iLoadedSkins; i++)
  405.             {
  406.                 ArrayGetArray(aWSkins, i, eData);
  407.                 if(equali(eData[eWType], "M3")){
  408.                     num_to_str(i, sRow, 7);
  409.                     if(Player[eKills][id] < eData[eWKill])
  410.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  411.                     else
  412.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  413.                     menu_additem(iMenu, sTitle, sRow);
  414.                 }
  415.             }
  416.         }
  417.         case 8:{
  418.             for(new i; i < iLoadedSkins; i++)
  419.             {
  420.                 ArrayGetArray(aWSkins, i, eData);
  421.                 if(equali(eData[eWType], "XM1014")){
  422.                     num_to_str(i, sRow, 7);
  423.                     if(Player[eKills][id] < eData[eWKill])
  424.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  425.                     else
  426.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  427.                     menu_additem(iMenu, sTitle, sRow);
  428.                 }
  429.             }
  430.         }
  431.         case 9:{
  432.             for(new i; i < iLoadedSkins; i++)
  433.             {
  434.                 ArrayGetArray(aWSkins, i, eData);
  435.                 if(equali(eData[eWType], "KNIFE")){
  436.                     num_to_str(i, sRow, 7);
  437.                     if(Player[eKills][id] < eData[eWKill])
  438.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  439.                     else
  440.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  441.                     menu_additem(iMenu, sTitle, sRow);
  442.                 }
  443.             }
  444.         }
  445.         case 10:{
  446.             for(new i; i < iLoadedSkins; i++)
  447.             {
  448.                 ArrayGetArray(aWSkins, i, eData);
  449.                 if(equali(eData[eWType], "DEAGLE")){
  450.                     num_to_str(i, sRow, 7);
  451.                     if(Player[eKills][id] < eData[eWKill])
  452.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  453.                     else
  454.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  455.                     menu_additem(iMenu, sTitle, sRow);
  456.                 }
  457.             }
  458.         }
  459.         case 11:{
  460.             for(new i; i < iLoadedSkins; i++)
  461.             {
  462.                 ArrayGetArray(aWSkins, i, eData);
  463.                 if(equali(eData[eWType], "USP")){
  464.                     num_to_str(i, sRow, 7);
  465.                     if(Player[eKills][id] < eData[eWKill])
  466.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  467.                     else
  468.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  469.                     menu_additem(iMenu, sTitle, sRow);
  470.                 }
  471.             }
  472.         }
  473.         case 12:{
  474.             for(new i; i < iLoadedSkins; i++)
  475.             {
  476.                 ArrayGetArray(aWSkins, i, eData);
  477.                 if(equali(eData[eWType], "GLOCK18")){
  478.                     num_to_str(i, sRow, 7);
  479.                     if(Player[eKills][id] < eData[eWKill])
  480.                         formatex(sTitle, charsmax(sTitle), "\w%s\d - \w%d\r Pont", eData[eWName], eData[eWKill]);
  481.                     else
  482.                         formatex(sTitle, charsmax(sTitle), "\w%s", eData[eWName]);
  483.                     menu_additem(iMenu, sTitle, sRow);
  484.                 }
  485.             }
  486.         }
  487.     }
  488.     menu_setprop(iMenu, MPROP_EXITNAME, "Kil??p??s");
  489.     menu_setprop(iMenu, MPROP_BACKNAME, "Vissza");
  490.     menu_setprop(iMenu, MPROP_NEXTNAME, "Tov??bb");
  491.     menu_display(id, iMenu, 0);
  492. }
  493. public WeaponSkins_h(id, iMenu, iItem){
  494.     if(iItem == MENU_EXIT){menu_destroy(iMenu);return;}
  495.    
  496.     new sData[10], sName[64];
  497.     new iAccess, iCallback;
  498.     static eData[eWData];
  499.     menu_item_getinfo(iMenu, iItem, iAccess, sData, charsmax(sData), sName, charsmax(sName), iCallback);
  500.     new iKey = str_to_num(sData);
  501.    
  502.     ArrayGetArray(aWSkins, iKey, eData);
  503.    
  504.     if(equali(eData[eWType], "M4A1")){
  505.         if(Player[eKills][id] < eData[eWKill])
  506.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  507.         else{
  508.             iActiveSkin[0][id] = iKey;
  509.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  510.         }
  511.     }
  512.     else if(equali(eData[eWType], "Ak47")){
  513.         if(Player[eKills][id] < eData[eWKill])
  514.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  515.         else{
  516.             iActiveSkin[1][id] = iKey;
  517.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  518.         }
  519.     }
  520.     else if(equali(eData[eWType], "AWP")){
  521.         if(Player[eKills][id] < eData[eWKill])
  522.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  523.         else{
  524.             iActiveSkin[2][id] = iKey;
  525.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  526.         }
  527.     }
  528.     else if(equali(eData[eWType], "SCOUT")){
  529.         if(Player[eKills][id] < eData[eWKill])
  530.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  531.         else{
  532.             iActiveSkin[3][id] = iKey;
  533.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  534.         }
  535.     }
  536.     else if(equali(eData[eWType], "FAMAS")){
  537.         if(Player[eKills][id] < eData[eWKill])
  538.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  539.         else{
  540.             iActiveSkin[4][id] = iKey;
  541.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  542.         }
  543.     }
  544.     else if(equali(eData[eWType], "GALIL")){
  545.         if(Player[eKills][id] < eData[eWKill])
  546.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  547.         else{
  548.             iActiveSkin[5][id] = iKey;
  549.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  550.         }
  551.     }
  552.     else if(equali(eData[eWType], "AUG")){
  553.         if(Player[eKills][id] < eData[eWKill])
  554.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  555.         else{
  556.             iActiveSkin[6][id] = iKey;
  557.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  558.         }
  559.     }
  560.     else if(equali(eData[eWType], "M3")){
  561.         if(Player[eKills][id] < eData[eWKill])
  562.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  563.         else{
  564.             iActiveSkin[7][id] = iKey;
  565.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  566.         }
  567.     }
  568.     else if(equali(eData[eWType], "XM1014")){
  569.         if(Player[eKills][id] < eData[eWKill])
  570.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  571.         else{
  572.             iActiveSkin[8][id] = iKey;
  573.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  574.         }
  575.     }
  576.     else if(equali(eData[eWType], "KNIFE")){
  577.         if(Player[eKills][id] < eData[eWKill])
  578.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  579.         else{
  580.             iActiveSkin[9][id] = iKey;
  581.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  582.         }
  583.     }
  584.     else if(equali(eData[eWType], "DEAGLE")){
  585.         if(Player[eKills][id] < eData[eWKill])
  586.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  587.         else{
  588.             iActiveSkin[10][id] = iKey;
  589.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  590.         }
  591.     }
  592.     else if(equali(eData[eWType], "USP")){
  593.         if(Player[eKills][id] < eData[eWKill])
  594.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  595.         else{
  596.             iActiveSkin[11][id] = iKey;
  597.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  598.         }
  599.     }
  600.     else if(equali(eData[eWType], "GLOCK18")){
  601.         if(Player[eKills][id] < eData[eWKill])
  602.             client_print_color(id, print_team_default, "%s^1Nincs elegendő ölésed a skinhez.", get_prefix(0));
  603.         else{
  604.             iActiveSkin[12][id] = iKey;
  605.             client_print_color(id, print_team_default, "%s^1Kiválasztottad a(z) %s skint.", get_prefix(0), eData[eWName]);
  606.         }
  607.     }
  608.     playspk(id);
  609. }
  610. public adminmenuopen(id){
  611.     new sTitle[128];
  612.     format(sTitle, charsmax(sTitle), "%s \dJátékosok kezelése", get_prefix(1));
  613.     new iMenu = menu_create(sTitle, "adminmenuopen_h");
  614.    
  615.     menu_additem(iMenu, "\wPont adás", "1", 0);
  616.     menu_additem(iMenu, "\wPont elvétel", "2", 0);
  617.    
  618.     menu_setprop(iMenu, MPROP_EXITNAME, "Kil??p??s");
  619.     menu_display(id, iMenu, 0);
  620. }
  621. public adminmenuopen_h(id, iMenu, iItem){
  622.     if(iItem == MENU_EXIT){menu_destroy(iMenu);return;}
  623.    
  624.     new sData[10], sName[64];
  625.     new iAccess, iCallback;
  626.     menu_item_getinfo(iMenu, iItem, iAccess, sData, charsmax(sData), sName, charsmax(sName), iCallback);
  627.     new iKey = str_to_num(sData);
  628.    
  629.     switch(iKey){
  630.         case 1:  {menu_chooseplayer(id); iChoosedMode = 0;}
  631.         case 2: {menu_chooseplayer(id); iChoosedMode = 1;}
  632.     }
  633.     playspk(id);
  634. }
  635. public menu_chooseplayer(id){
  636.     new sTitle[128], iPlayers[32], iPNum, iId, sName[64], sId[10];
  637.     format(sTitle, charsmax(sTitle), "%s \dVálassz játékost", get_prefix(1));
  638.     new iMenu = menu_create(sTitle, "menu_chooseplayer_h");
  639.    
  640.     get_players(iPlayers, iPNum);
  641.    
  642.     for(new i; i < iPNum; i++)
  643.     {
  644.         iId = iPlayers[i];
  645.         if(is_user_bot(iId) || !is_user_connected(iId))
  646.             continue;
  647.        
  648.         get_user_name(iId, sName, charsmax(sName));
  649.         num_to_str(iId, sId, charsmax(sId));    
  650.         menu_additem(iMenu, sName, sId, 0);          
  651.     }
  652.    
  653.     menu_setprop(iMenu, MPROP_EXITNAME, "Kilépés");
  654.     menu_display(id, iMenu, 0);
  655. }
  656. public menu_chooseplayer_h(id, iMenu, iItem){
  657.     if(iItem == MENU_EXIT){menu_destroy(iMenu);return;}
  658.    
  659.     new sData[10], sName[64];
  660.     new iAccess, iCallback;
  661.     menu_item_getinfo(iMenu, iItem, iAccess, sData, charsmax(sData), sName, charsmax(sName), iCallback);
  662.     iTempID = str_to_num(sData);
  663.    
  664.     client_cmd(id, "messagemode type_itemremoveoradd");
  665.     playspk(id);
  666. }
  667. public type_itemammount(id){
  668.     new sItem[128], iItemAmmount, sSenderName[64], sTargetName[64];
  669.     read_args(sItem, charsmax(sItem));
  670.     remove_quotes(sItem);
  671.    
  672.     get_user_name(id, sSenderName, charsmax(sSenderName));
  673.     get_user_name(iTempID, sTargetName, charsmax(sTargetName));
  674.    
  675.     iItemAmmount = str_to_num(sItem);
  676.    
  677.     if(iItemAmmount < 0){
  678.         client_print_color(id, print_team_blue, "%s ^1Nem írhasz nulla értéket!.", get_prefix(0));
  679.         return PLUGIN_HANDLED;
  680.     }
  681.    
  682.     switch(iChoosedMode){
  683.         case 0:{
  684.            
  685.             for(new i = 0; i < 13; i++)
  686.                 iWeaponKills[i][iTempID] += iItemAmmount;
  687.            
  688.             client_print_color(id, print_team_blue, "%s ^1Sikeresen jóváírtak:^4 %d ^1t, neki:^4 %s", get_prefix(0), iItemAmmount, sTargetName);
  689.             client_print_color(iTempID, print_team_blue, "%s ^1Jóváírtak neked^4 %d ^1pontot! BY:^4 %s", get_prefix(0), iItemAmmount, sTargetName);
  690.             client_print_color(id, print_team_blue, "^3 Admin: %s | Játékos: %s | összeg: %d | Tíus: pont jóváírás", sSenderName, sTargetName, iItemAmmount);
  691.             return PLUGIN_HANDLED;
  692.         }
  693.         case 1:{
  694.             for(new i = 0; i < 13; i++)
  695.                 iWeaponKills[i][iTempID] -= iItemAmmount;
  696.            
  697.             client_print_color(id, print_team_blue, "%s ^1Sikeresen elvettek:^4 %d ^1, t?e:^4 %s", get_prefix(0), iItemAmmount, sTargetName);
  698.             client_print_color(iTempID, print_team_blue, "%s ^1Elvettek tőled^4 %d ^1pontot! BY:^4 %s", get_prefix(0), iItemAmmount, sTargetName);
  699.             client_print_color(id, print_team_blue, "^3 Admin: %s | Játékos: %s | összeg: %d | Tius: Pont elvétel", sSenderName, sTargetName, iItemAmmount);
  700.             return PLUGIN_HANDLED;
  701.         }
  702.     }  
  703.     return PLUGIN_HANDLED;
  704. }
  705. public client_disconnected(id){
  706.     if(is_user_bot(id))
  707.         return;
  708.    
  709.     Update(id);
  710.    
  711.     Player[eKills][id] = 0;
  712.     Player[eUnclockedSkin][id] = 0;
  713.    
  714.     for(new i = 0; i < 13; i++)
  715.         iActiveSkin[i][id] = -1;
  716.     for(new i = 0; i < 13; i++)
  717.         iWeaponKills[i][id] = 0;
  718. }
  719. public client_putinserver(id){
  720.     if(is_user_bot(id))
  721.         return;
  722.  
  723.     for(new i = 0; i < 13; i++)
  724.         iActiveSkin[i][id] = -1;
  725.     for(new i = 0; i < 13; i++)
  726.         iWeaponKills[i][id] = 0;
  727.    
  728.     SQL_load(id);
  729.     InfoHud(id);
  730. }
  731. public plugin_cfg(){
  732.     new iLen, sQuery[2048];
  733.     SqlTuple = SQL_MakeDbTuple(SQL_INFO[0], SQL_INFO[1], SQL_INFO[2], SQL_INFO[3])
  734.     iLen += formatex(sQuery[iLen], charsmax(sQuery), "CREATE TABLE IF NOT EXISTS `SkinMenu`")
  735.     iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "(`Steamid` varchar(128) NOT NULL, ")
  736.     iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "`UnlockedSkin` int(11) NOT NULL,");
  737.    
  738.     for(new i = 0; i < 13; i++)
  739.         iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "`WK%d` int(11) NOT NULL,", i);
  740.    
  741.     for(new i = 0; i < 13; i++)
  742.         iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "`MentettSkin_%d` int(11) NOT NULL,", i);
  743.    
  744.     iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "`Olesek` int(11) NOT NULL, `id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY)");
  745.     SQL_ThreadQuery(SqlTuple, "createTableThread", sQuery);
  746. }
  747. public createTableThread(FailState, Handle:Query, Error[], Errcode, Data[], DataSize, Float:Queuetime){
  748.     if(FailState == TQUERY_CONNECT_FAILED)
  749.         set_fail_state("[HIBA*] NEM TUDTAM CSATLAKOZNI AZ ADATBAZISHOZ!");
  750.     else if(FailState == TQUERY_QUERY_FAILED)
  751.         set_fail_state("Query Error");
  752.     if(Errcode)
  753.         log_amx("[HIBA*] HIBAT DOBTAM: %s", Error);
  754. }
  755. public SQL_load(id){
  756.     new Data[1], sQuery[2048];
  757.     Data[0] = id;
  758.     get_user_authid(id, gSteamID, charsmax(gSteamID))
  759.    
  760.     formatex(sQuery, charsmax(sQuery), "SELECT * FROM `SkinMenu` WHERE Steamid = ^"%s^";", gSteamID);
  761.     SQL_ThreadQuery(SqlTuple, "SQL_load_thr", sQuery, Data, 1)
  762. }
  763. public SQL_load_thr(FailState, Handle:Query, Error[], Errcode, Data[], DataSize, Float:Queuetime){
  764.     if(FailState == TQUERY_CONNECT_FAILED)
  765.         set_fail_state("[*HIBA*] NEM LEHET KAPCSOLODNI AZ ADATBAZISHOZ!");
  766.     else if(FailState == TQUERY_QUERY_FAILED)
  767.         set_fail_state("[*HIBA*] A LEKERDEZES MEGSZAKADT!");
  768.     if(Errcode)
  769.         log_amx("[*HIBA*] PROBLEMA A LEKERDEZESNEL! ( %s )",Error);
  770.    
  771.     new id = Data[0];
  772.    
  773.     if(SQL_NumRows(Query) > 0){
  774.         Player[eUnclockedSkin][id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "UnlockedSkin"));
  775.         for(new i = 0; i < 13; i++){
  776.             new sString[64];
  777.             formatex(sString, charsmax(sString), "WK%d", i);
  778.             iWeaponKills[i][id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, sString));
  779.         }
  780.         for(new i = 0; i < 13; i++){
  781.             new sString[64];
  782.             formatex(sString, charsmax(sString), "MentettSkin_%d", i);
  783.             iActiveSkin[i][id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, sString));
  784.         }
  785.         Player[eKills][id] = SQL_ReadResult(Query, SQL_FieldNameToNum(Query, "Olesek"));
  786.     }
  787.     else
  788.         SQL_Save(id);
  789. }
  790. public Update(id){
  791.     new iLen, sQuery[2048];
  792.     get_user_authid(id, gSteamID, charsmax(gSteamID))
  793.    
  794.     iLen += formatex(sQuery[iLen], charsmax(sQuery), "UPDATE `SkinMenu` SET UnlockedSkin = ^"%i^", ", Player[eUnclockedSkin][id]);
  795.    
  796.     for(new i = 0; i < 13; i++)
  797.         iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "WK%d = ^"%i^", ", i, iWeaponKills[i][id]);
  798.    
  799.     for(new i = 0; i < 13; i++)
  800.         iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "MentettSkin_%d = ^"%i^", ", i, iActiveSkin[i][id]);
  801.    
  802.     iLen += formatex(sQuery[iLen], charsmax(sQuery)-iLen, "Olesek = ^"%i^" WHERE Steamid = ^"%s^";", Player[eKills][id], gSteamID);
  803.    
  804.     SQL_ThreadQuery(SqlTuple, "QuerySetData", sQuery)
  805. }
  806. public SQL_Save(id){
  807.     new sQuery[2048]
  808.     get_user_authid(id, gSteamID, charsmax(gSteamID))
  809.    
  810.     formatex(sQuery, charsmax(sQuery), "INSERT INTO `SkinMenu` (`Steamid`) VALUES (^"%s^");", gSteamID);
  811.     SQL_ThreadQuery(SqlTuple, "QuerySetData", sQuery);
  812. }
  813. public QuerySetData(FailState, Handle:Query, Error[], Errcode, Data[], DataSize, Float:Queuetime){
  814.     if(FailState == TQUERY_CONNECT_FAILED || FailState == TQUERY_QUERY_FAILED){
  815.         log_amx("%s", Error);
  816.         return;
  817.     }
  818. }
  819. public plugin_end(){
  820.     SQL_FreeHandle(SqlTuple);
  821. }
  822. public sayhook(id){
  823.     new Message[192];
  824.     read_args(Message, charsmax(Message))
  825.     remove_quotes(Message)
  826.    
  827.     if(strlen(Message) == 0 || Message[0] == '/')
  828.         return PLUGIN_HANDLED_MAIN;
  829.    
  830.     new Death[16], sName[MAX_NAME_LENGTH];
  831.     get_user_name(id, sName, charsmax(sName));
  832.    
  833.     new sRank[64], sColor[16];
  834.    
  835.     switch(get_user_flags(id)){
  836.         case TULAJ:{ sRank = "^4[^3Tulajdonos^4]"; sColor = "^4";}
  837.         case ADMIN:{ sRank = "^4[^3Admin^4]"; sColor = "^4";}
  838.         case VIP:{ sRank = "^4[^3VIP^4]"; sColor = "^3";}
  839.         default:{ sRank = "^4[^3Játékos^4]"; sColor = "^1";}
  840.     }
  841.     for(new i = 1; i <= iMaxPlayers; i++){
  842.         if(is_user_connected(i) && !is_user_bot(i)){
  843.             formatex(Death, charsmax(Death), is_user_alive(id) ? "":"*Halott*");
  844.             client_print_color(i, print_team_default, "%s%s^3%s: %s%s", Death, sRank, sName, sColor, Message);
  845.         }
  846.     }
  847.     return PLUGIN_HANDLED_MAIN;
  848. }
  849. public sayteamhook(id){
  850.     new Message[192];
  851.     read_args(Message, charsmax(Message))
  852.     remove_quotes(Message)
  853.    
  854.     if(strlen(Message) == 0 || Message[0] == '/')
  855.         return PLUGIN_HANDLED_MAIN;
  856.    
  857.     new Death[16], sName[MAX_NAME_LENGTH];
  858.     get_user_name(id, sName, charsmax(sName));
  859.    
  860.     new iTeam, sTeam[32];
  861.     iTeam = get_user_team(id, sTeam, charsmax(sTeam));
  862.    
  863.     switch(iTeam){
  864.         case CS_TEAM_CT: sTeam = "CT";
  865.             case CS_TEAM_T: sTeam = "T";
  866.             case CS_TEAM_SPECTATOR: sTeam = "SPEC";
  867.         }
  868.     for(new i = 1; i <=  iMaxPlayers; i++){
  869.         if(is_user_connected(i) && !is_user_bot(i) || get_user_flags(id) & ADMIN_BAN){
  870.             formatex(Death, charsmax(Death), is_user_alive(id) ? "":"*Halott*");
  871.             client_print_color(i, print_team_default, "%s^3(%s)^1%s: ^3%s", Death, sTeam, sName, Message);
  872.         }
  873.     }
  874.     return PLUGIN_HANDLED_MAIN;
  875. }
  876. stock get_prefix(which){
  877.     new sPrefix[32];
  878.     if(which == 0)
  879.         get_pcvar_string(cvarS[eCpref], sPrefix, charsmax(sPrefix));
  880.     else if(which == 1)
  881.         get_pcvar_string(cvarS[eMpref], sPrefix, charsmax(sPrefix));
  882.    
  883.     return sPrefix;
  884. }
  885. public playspk(id){
  886.     client_cmd(id, "spk buttons/lightswitch2");
  887. }



Helló!
köszönöm szépen! :)


Csatolmányok:
probav4.sma [43.32 KiB]
Letöltve 22 alkalommal.


A hozzászólást 1 alkalommal szerkesztették, utoljára saxxo 2022.04.16. 08:06-kor.
Hozzászólás jelentése
Vissza a tetejére
   
HozzászólásElküldve: 2022.04.14. 21:02 
Offline
Jómunkásember
Avatar

Csatlakozott: 2019.11.03. 22:00
Hozzászólások: 346
Megköszönt másnak: 37 alkalommal
Megköszönték neki: 22 alkalommal
Legalább már 10 szer leírtam, hogy próbáld meg magad megoldani.
Ott van leírta mi a hiba és lehet próbálgatni.
Nem igaz hogy te sem tudod megcsinálni magad, kicsit fárasztó hogy állandóan ilyen módokkal álsz ide.

_________________
****


Hozzászólás jelentése
Vissza a tetejére
   
Hozzászólások megjelenítése:  Rendezés  
Új téma nyitása  Hozzászólás a témához  [ 4 hozzászólás ] 


Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 3 vendég


Nyithatsz új témákat ebben a fórumban.
Válaszolhatsz egy témára ebben a fórumban.
Nem szerkesztheted a hozzászólásaidat ebben a fórumban.
Nem törölheted a hozzászólásaidat ebben a fórumban.
Nem küldhetsz csatolmányokat ebben a fórumban.

Keresés:
Ugrás:  
Powered by phpBB® Forum Software © phpBB Limited
Magyar fordítás © Magyar phpBB Közösség
Portal: Kiss Portal Extension © Michael O'Toole