hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.05.06. 06:04



Jelenlévő felhasználók

Jelenleg 509 felhasználó van jelen :: 0 regisztrált, 0 rejtett és 509 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  [ 11 hozzászólás ]  Oldal 1 2 Következő
Szerző Üzenet
 Hozzászólás témája: global offensive mentés
HozzászólásElküldve: 2016.01.17. 08:55 
Offline
Senior Tag
Avatar

Csatlakozott: 2015.04.10. 23:40
Hozzászólások: 283
Megköszönt másnak: 6 alkalommal
Megköszönték neki: 12 alkalommal
sziasztok.

valaki bele tudná írni, hogy mentse el a kiválasztott skineket a plugin??
valamint, hogy legyen a menübe egy szabályzat menüpont is ami egy motd-ot nyit meg (mondjuk: configs/csgo/szabaly.txt)

aki megcsinálja annak 50 hozzászolására nyomom a gombot (fontos)

  1. #include <amxmodx>
  2. #include <amxmisc>
  3. #include <fakemeta>
  4. #include <hamsandwich>
  5. #include <cstrike>
  6. #include <colorchat>
  7. #include <fun>
  8.  
  9. new const PLUGIN[] = "Global Offensive";
  10. new const VERSION[] = "1.0p";
  11. new const AUTHOR[] = "Der0id";
  12.  
  13. #define MAX 50
  14. #define LADAESELY 98
  15.  
  16. #define PointsMin 3
  17. #define PointsMax 8
  18. #define Drop 5
  19. #define MarkMin 1
  20.  
  21. #pragma semicolon 1
  22.  
  23. #define ADMINRANG ADMIN_KICK
  24. new bool: skinek[33];
  25. new message[192];
  26. new teamInfo;
  27. new maxPlayers;
  28. new strName[191];
  29. new strText[191];
  30. new alive[11];
  31.  
  32. new WeaponNames[MAX][32], WeaponMdls[MAX][48], Weapons[MAX], WeaponDrop[MAX], AllWeapon;
  33. new UsingWeapon[9][33], uWeapon[MAX][33], Chest[33], pKey[33], Points[33], Rang[33], Kills[33],
  34. aThing[33], aTarget[33], aPoints[33], Prefix[32];
  35. new Folder[48], SkinFile[48], SaveFile[48], RegisterFile[48], DefaultSkinFile[48], RangFile[48], MenuMod[33], SayText;
  36. new WeaponinMarket[33], bool: inMarket[33], MarketPoints[33], Choosen[33];
  37. new SavedPassword[33][32], bool:Loged[33], Password[33][32], probalkozasok[33] = 0;
  38. new DefaultSkin[31][32], NeedKills[30], Rangs[30][32];
  39. new Selected[33];
  40.  
  41. new const eWeapon[][] =
  42. {
  43.     "weapon_famas", "weapon_usp", "weapon_awp", "weapon_mp5navy", "weapon_m3", "weapon_m4a1",
  44.     "weapon_deagle", "weapon_ak47", "weapon_knife", "weapon_flashbang", "weapon_hegrenade",
  45.     "weapon_smokegrenade", "weapon_c4"
  46. };
  47.  
  48. enum _:Fegyver{ uzi[64], nev[20], csw[20], golyo };
  49. new const fegyverek[9][Fegyver] =
  50. {
  51.     { "AK47",   "weapon_ak47",      CSW_AK47,       90 },
  52.     { "M4A1",   "weapon_m4a1",      CSW_M4A1,       90 },
  53.     { "AWP",    "weapon_awp",       CSW_AWP,        30 },
  54.     { "FAMAS",  "weapon_famas",     CSW_FAMAS,      90 },
  55.     { "MP5",    "weapon_mp5navy",   CSW_MP5NAVY,        120 },
  56.     { "M3",     "weapon_m3",        CSW_M3,         32 },
  57.     { "DEAGLE",     "weapon_deagle",    CSW_DEAGLE,     35 },
  58.     { "USP",    "weapon_usp",       CSW_USP,        100 },
  59.     { "GLOCK",  "weapon_glock18",       CSW_GLOCK18,        100 }
  60. };
  61.  
  62. public plugin_precache() {
  63.     new Line[128], Data[4][48], Len;
  64.     AllWeapon++;
  65.     get_configsdir(Folder, 47);
  66.     format(Folder, 47, "%s/csgo", Folder);
  67.  
  68.     format(SkinFile, 47, "%s/skins.cfg", Folder);
  69.     format(SaveFile, 47, "%s/save.ini", Folder);
  70.     format(RangFile, 47, "%s/rangs.cfg", Folder);
  71.     format(RegisterFile, 47, "%s/reg.ini", Folder);
  72.     format(DefaultSkinFile, 47, "%s/dskins.cfg", Folder);
  73.     format(Prefix, 31, "[rezidencia Global Offensive]");
  74.  
  75.     if(file_exists(RangFile))
  76.     {
  77.         for(new i; i < file_size(RangFile, 1); i++)
  78.         {
  79.             read_file(RangFile, i, Line, 127, Len);
  80.             parse(Line, Data[0], 31, Data[1], 31);
  81.  
  82.             copy(Rangs[i], 31, Data[0]);
  83.             NeedKills[i] = str_to_num(Data[1]);
  84.         }
  85.     }
  86.     if(file_exists(SkinFile))
  87.     {
  88.         for(new i; i < file_size(SkinFile, 1); i++)
  89.         {
  90.             if(AllWeapon >= MAX-1) break;
  91.             read_file(SkinFile, i, Line, 127, Len);
  92.  
  93.             if(!strlen(Line) || Line[0] == ';')
  94.                 continue;
  95.  
  96.             parse(Line, Data[0], 31, Data[1], 31, Data[2], 47, Data[3], 31);
  97.  
  98.             Weapons[AllWeapon] = str_to_num(Data[0]);
  99.             copy(WeaponNames[AllWeapon], 31, Data[1]);
  100.  
  101.             if(ValidMdl(Data[2])) {
  102.                 precache_model(Data[2]);
  103.                 copy(WeaponMdls[AllWeapon], 47, Data[2]);
  104.             }
  105.  
  106.             WeaponDrop[AllWeapon] = str_to_num(Data[3]);
  107.             AllWeapon++;
  108.         }
  109.     }
  110.     if(file_exists(DefaultSkinFile))
  111.     {
  112.         for(new i; i < file_size(DefaultSkinFile, 1); i++)
  113.         {
  114.             read_file(DefaultSkinFile, i, Line, 127, Len);
  115.  
  116.             if(!strlen(Line) || Line[0] == ';')
  117.                 continue;
  118.  
  119.             parse(Line, Data[0], 31, Data[1], 47);
  120.  
  121.             if(ValidMdl(Data[1])) {
  122.                 precache_model(Data[1]);
  123.                 copy(DefaultSkin[str_to_num(Data[0])], 47, Data[1]);
  124.             }
  125.         }
  126.     }
  127. }
  128. public plugin_init() {
  129.     register_plugin(PLUGIN, VERSION, AUTHOR);
  130.     register_cvar(PLUGIN, VERSION, FCVAR_SERVER);
  131.    
  132.     register_clcmd("say /menu", "MenuOpen");
  133.     register_clcmd("say /reg", "RegMenu");
  134.     register_clcmd("say /gun", "Guns");
  135.     register_clcmd("say /guns", "Guns");
  136.  
  137.     register_concmd("Cost", "MarketCost");
  138.     register_concmd("Gift", "GiftPoint");
  139.     register_concmd("UserPassword", "PlayerPassword");
  140.  
  141.     register_forward(FM_CmdStart, "CmdStart" );
  142.  
  143.     SayText = get_user_msgid("SayText");
  144.     teamInfo = get_user_msgid ("TeamInfo");
  145.     maxPlayers = get_maxplayers();
  146.  
  147.     register_message (SayText, "avoid_duplicated");
  148.  
  149.     register_forward(FM_ClientUserInfoChanged, "ClientInfoChanged");
  150.     RegisterHam(Ham_Spawn, "player", "PlayerSpawn", 1);
  151.  
  152.     for(new i; i < sizeof(eWeapon); i++)
  153.         RegisterHam(Ham_Item_Deploy, eWeapon[i], "WeaponSwitch", 1);
  154.  
  155.     register_clcmd ("say", "hook_say");
  156.     register_clcmd ("say_team", "hook_teamsay");
  157. }
  158. public client_connect(id)
  159. {
  160.     skinek[id]=true;
  161.     probalkozasok[id] = 0;
  162.     Selected[id] = 0;
  163.     for(new i; i<9; i++)
  164.         UsingWeapon[i][id]=0;
  165.     for(new i = 1; i < AllWeapon; i++)
  166.         uWeapon[i][id]=0;
  167. }
  168. public CmdStart(id, uc_handle, seed)
  169. {
  170.     if(get_uc(uc_handle, UC_Impulse) == 201)
  171.     MenuOpen(id);
  172. }
  173. public Guns(id)
  174. {
  175.     if(Choosen[id] < 1)
  176.     {
  177.         Choosen[id] = 0;
  178.         WeaponMenu(id);
  179.     }
  180. }
  181. public PlayerSpawn(id)
  182. {
  183.     if(is_user_alive(id))
  184.     {
  185.         Choosen[id] = 0;
  186.         cs_set_user_money(id, 0, 0);
  187.         if(user_has_weapon(id, CSW_C4))
  188.         {
  189.             strip_user_weapons(id);
  190.             give_item(id, "weapon_c4");
  191.             give_item(id, "weapon_knife");
  192.             WeaponMenu(id);
  193.             return PLUGIN_HANDLED;
  194.         }
  195.  
  196.         strip_user_weapons(id);
  197.         give_item(id, "weapon_knife");
  198.         WeaponMenu(id);
  199.  
  200.         if(cs_get_user_team(id) == CS_TEAM_CT)
  201.             cs_set_user_defuse(id, 1);
  202.     }
  203.     return PLUGIN_CONTINUE;
  204. }
  205. public MenuOpen(id)
  206. {
  207.     if(!Loged[id])
  208.     {
  209.         RegMenu(id);
  210.         return PLUGIN_HANDLED;
  211.     }
  212.  
  213.     MenuMod[id] = 0;
  214.     Menu(id);
  215.     return PLUGIN_CONTINUE;
  216. }
  217. public client_death(Killer, Victim)
  218. {
  219.     if(Killer == Victim)
  220.         return PLUGIN_HANDLED;
  221.  
  222.     Kills[Killer]++;
  223.  
  224.     if(Rang[Killer] < sizeof(Rangs) && Rang[Killer] < file_size(RangFile, 1)-1)
  225.         if(Kills[Killer] >= NeedKills[Rang[Killer]])
  226.             Rang[Killer]++;
  227.  
  228.     new pPont, Name[32];
  229.  
  230.     pPont += random_num(PointsMin, PointsMax);
  231.     Points[Killer] += pPont;
  232.  
  233.     set_hudmessage(255, 255, 255, -1.0, 0.15, 0, 6.0, 2.0);
  234.     show_hudmessage(Killer, "+%d Euro", pPont);
  235.  
  236.  
  237.     if(Drop >= random_num(1, 100))
  238.     {
  239.         get_user_name(Killer, Name, 31);
  240.         new x = random_num(1, 4);
  241.         if(x == 1)
  242.         {
  243.             pKey[Killer]++;
  244.             print_color(0, "!g%s!t %s !y talált egy!g Kulcsot!y!", Prefix, Name);
  245.         }
  246.         if(x == 2 || x == 3)
  247.         {
  248.             Chest[Killer]++;
  249.             print_color(0, "!g%s!t %s!y talált egy!g Ládát!y!", Prefix, Name);
  250.         }
  251.     }
  252.     Save(Killer);
  253.     return PLUGIN_CONTINUE;
  254. }
  255. public MarketCost(id)
  256. {
  257.     if(inMarket[id] || !Loged[id])
  258.         return PLUGIN_HANDLED;
  259.  
  260.     new Data[32], Cost;
  261.     read_args(Data, 31);
  262.     remove_quotes(Data);
  263.  
  264.     Cost = str_to_num(Data);
  265.  
  266.     if(Cost < 0)
  267.     {
  268.         client_cmd(id, "messagemode Cost");
  269.         return PLUGIN_CONTINUE;
  270.     }
  271.     else if(MarkMin >= Cost)
  272.     {
  273.         print_color(id, "%s!t %d!y euro alatt nem tudsz eladni semmit!", Prefix, MarkMin);
  274.         client_cmd(id, "messagemode Cost");
  275.         return PLUGIN_CONTINUE;
  276.     }
  277.     else
  278.     {
  279.         MarketPoints[id] = Cost;
  280.         MenuMod[id] = 3;
  281.         Menu(id);
  282.         return PLUGIN_CONTINUE;
  283.     }
  284.     return PLUGIN_CONTINUE;
  285. }
  286. public GiftPoint(id)
  287. {
  288.     if(inMarket[id] || !Loged[id])
  289.         return PLUGIN_HANDLED;
  290.  
  291.     new Data[32], Cost;
  292.     read_args(Data, 31);
  293.     remove_quotes(Data);
  294.  
  295.     Cost = str_to_num(Data);
  296.  
  297.     if(Cost < 0 || Points[id] < Cost)
  298.     {
  299.         client_cmd(id, "messagemode Gift");
  300.         return PLUGIN_CONTINUE;
  301.     }
  302.     else
  303.     {
  304.         aPoints[id] = Cost;
  305.         MenuMod[id] = 5;
  306.         Menu(id);
  307.         return PLUGIN_CONTINUE;
  308.     }
  309.     return PLUGIN_CONTINUE;
  310. }
  311. public WeaponSwitch(Weapon) {
  312.     new id = get_pdata_cbase(Weapon, 41, 4);
  313.     new wid = cs_get_weapon_id(Weapon);
  314.  
  315.     if(id > 32 || id < 1)
  316.     {
  317.         return HAM_SUPERCEDE;
  318.     }
  319.  
  320.     if(skinek[id])
  321.     {
  322.         for(new j; j<9; j++)
  323.         {
  324.             if(wid == Weapons[UsingWeapon[j][id]])
  325.             {
  326.                 set_pev(id, pev_viewmodel2, WeaponMdls[UsingWeapon[j][id]]);
  327.                 return HAM_SUPERCEDE;
  328.             }
  329.         }
  330.         if(ValidMdl(DefaultSkin[wid]))
  331.             set_pev(id, pev_viewmodel2, DefaultSkin[wid]);
  332.     }
  333.     return HAM_IGNORED;
  334. }
  335. public ChestOpen(id)
  336. {
  337.     new rWeapon, rNum = random_num(1, 100);
  338.     if(LADAESELY >= rNum)
  339.     {
  340.         do
  341.         {
  342.             rWeapon = random_num(1, (AllWeapon-1));
  343.             rNum = random_num(1, 100);
  344.         }
  345.         while(WeaponDrop[rWeapon] < rNum);
  346.  
  347.         new Name[32];
  348.         get_user_name(id, Name, 31);
  349.         print_color(0, "!g%s!t %s!y talált egy!t %s!y-t.", Prefix, Name, WeaponNames[rWeapon]);
  350.         uWeapon[rWeapon][id]++;
  351.         Save(id);
  352.     }
  353.     else
  354.         print_color(id, "!g%s!y Sajnos ebben a ládában nem volt semmi!", Prefix);
  355. }
  356. public Menu(id)
  357. {
  358.     if(!Loged[id])
  359.     {
  360.         RegMenu(id);
  361.         return PLUGIN_CONTINUE;
  362.     }
  363.  
  364.     new sMenu, Line[128];
  365.  
  366.     if(MenuMod[id] == -2)
  367.     {
  368.         formatex(Line, 127, "\r%s\y Válassz valamit! \d[Euro: \y%d\d]", Prefix, Points[id]);
  369.         sMenu = menu_create(Line, "MenuHandler");
  370.         new String[32], All;
  371.         for(new i = 1; i < AllWeapon; i++)
  372.         {
  373.             if(uWeapon[i][id] == 0)
  374.                 continue;
  375.  
  376.             num_to_str(i, String, 31);
  377.             formatex(Line, 127, "\r%s \d|\y %d darab", WeaponNames[i], uWeapon[i][id]);
  378.             menu_additem(sMenu, Line, String);
  379.             All++;
  380.         }
  381.         if(Chest[id] > 0)
  382.         {
  383.             formatex(Line, 127, "\rLáda \d|\y %d darab", Chest[id]);
  384.             menu_additem(sMenu, Line, "101");
  385.             All++;
  386.         }
  387.         if(pKey[id] > 0)
  388.         {
  389.             formatex(Line, 127, "\rKulcs \d|\y %d darab", pKey[id]);
  390.             menu_additem(sMenu, Line, "102");
  391.             All++;
  392.         }
  393.         if(Points[id] > 0)
  394.         {
  395.             formatex(Line, 127, "\rEuro \d|\y %d", Points[id]);
  396.             menu_additem(sMenu, Line, "103");
  397.             All++;
  398.         }
  399.         if(All == 0)
  400.         {
  401.             MenuMod[id] = 0;
  402.             Menu(id);
  403.             return PLUGIN_CONTINUE;
  404.         }
  405.     }
  406.     else if(MenuMod[id] == -1)
  407.     {
  408.         formatex(Line, 127, "\r%s\y Válassz valamit! \d[Euro: \y%d\d]", Prefix, Points[id]);
  409.         sMenu = menu_create(Line, "MenuHandler");
  410.         new String[32], All;
  411.         for(new i = 1; i < AllWeapon; i++)
  412.         {
  413.             if(uWeapon[i][id] == 0)
  414.                 continue;
  415.  
  416.             num_to_str(i, String, 31);
  417.             formatex(Line, 127, "\r%s \d|\y %d darab", WeaponNames[i], uWeapon[i][id]);
  418.             menu_additem(sMenu, Line, String);
  419.             All++;
  420.         }
  421.         if(Chest[id] > 0)
  422.         {
  423.             formatex(Line, 127, "\rLáda \d|\y %d darab", Chest[id]);
  424.             menu_additem(sMenu, Line, "101");
  425.             All++;
  426.         }
  427.         if(pKey[id] > 0)
  428.         {
  429.             formatex(Line, 127, "\rKulcs \d|\y %d darab", pKey[id]);
  430.             menu_additem(sMenu, Line, "102");
  431.             All++;
  432.         }
  433.         if(All == 0)
  434.         {
  435.             MenuMod[id] = 0;
  436.             Menu(id);
  437.             return PLUGIN_CONTINUE;
  438.         }
  439.     }
  440.     else if(MenuMod[id] == 0)
  441.     {
  442.         formatex(Line, 127, "\r%s\y Fõ menü \d[Euro: \y%d\d]", Prefix, Points[id]);
  443.         sMenu = menu_create(Line, "MenuHandler");
  444.         formatex(Line, 127, "Felszerelés");
  445.         menu_additem(sMenu, Line, "1");
  446.  
  447.         if(!inMarket[id])
  448.         {
  449.             formatex(Line, 127, "Láda nyitás");
  450.             menu_additem(sMenu, Line, "2");
  451.         }
  452.         else
  453.         {
  454.             formatex(Line, 127, "Láda nyitás \d[Piacozás közben nem engedélyezett]");
  455.             menu_additem(sMenu, Line, "0");
  456.         }
  457.         formatex(Line, 127, "Piac");
  458.         menu_additem(sMenu, Line, "3");
  459.  
  460.         if(!inMarket[id])
  461.         {
  462.             formatex(Line, 127, "Ajándékozás^n");
  463.             menu_additem(sMenu, Line, "5");
  464.             if(Rang[id] == file_size(RangFile, 1) -1)
  465.                 formatex(Line, 127, "\wSkinek:\d %s^n\rRangod:\d %s \y[Ölés: \r%d]", skinek[id] ? "\yBekapcsolva" : "\rKikapcsolva", Rangs[Rang[id]], Kills[id]);
  466.             else
  467.                 formatex(Line, 127, "\wSkinek:\d %s^n\rKövetkezõ Rangod:\d %s \y[Ölés: \r%d\d/\r%d]", skinek[id] ? "\yBekapcsolva" : "\rKikapcsolva", Rangs[Rang[id]+1], Kills[id], NeedKills[Rang[id]]);
  468.             menu_additem(sMenu, Line, "6");
  469.         }
  470.         else
  471.         {
  472.             formatex(Line, 127, "Ajándékozás \d[Piacozás közben nem engedélyezett]^n");
  473.             menu_additem(sMenu, Line, "0");
  474.             if(Rang[id] == file_size(RangFile, 1) -1)
  475.                 formatex(Line, 127, "\wSkinek:\d %s^n\rRangod:\d %s \y[Ölés: \r%d]", skinek[id] ? "\yBekapcsolva" : "\rKikapcsolva", Rangs[Rang[id]], Kills[id]);
  476.             else
  477.                 formatex(Line, 127, "\wSkinek:\d %s^n\rKövetkezõ Rangod:\d %s \y[Ölés: \r%d\d/\r%d]", skinek[id] ? "\yBekapcsolva" : "\rKikapcsolva", Rangs[Rang[id]+1], Kills[id], NeedKills[Rang[id]]);
  478.             menu_additem(sMenu, Line, "6");
  479.         }
  480.     }
  481.     else if(MenuMod[id] == 1)
  482.     {
  483.         formatex(Line, 127, "\r%s\y Felszerelés \d[Euro: \y%d\d]", Prefix, Points[id]);
  484.         sMenu = menu_create(Line, "MenuHandler");
  485.         new String[32], All;
  486.         for(new i = 1; i < AllWeapon; i++)
  487.         {
  488.             if(uWeapon[i][id] == 0)
  489.                 continue;
  490.  
  491.             formatex(String, 31, "%d %d", i, Weapons[i]);
  492.             formatex(Line, 127, "\r%s \d|\y %d darab", WeaponNames[i], uWeapon[i][id]);
  493.             menu_additem(sMenu, Line, String);
  494.             All++;
  495.         }
  496.         if(All == 0)
  497.         {
  498.             MenuMod[id] = 0;
  499.             Menu(id);
  500.             return PLUGIN_CONTINUE;
  501.         }
  502.     }
  503.     else if(MenuMod[id] == 2)
  504.     {
  505.         formatex(Line, 127, "\r%s\y Láda nyitás ^n\rLáda:\y %d \w| \rKulcs:\y %d", Prefix, Chest[id], pKey[id]);
  506.         sMenu = menu_create(Line, "MenuHandler");
  507.         formatex(Line, 127, "Láda nyitás \d[1 láda és 1 kulcs]");
  508.         menu_additem(sMenu, Line, "1");
  509.     }
  510.     else if(MenuMod[id] == 3)
  511.     {
  512.         formatex(Line, 127, "\r%s\y Piac \d[Euro: \y%d\d]", Prefix, Points[id]);
  513.         sMenu = menu_create(Line, "MenuHandler");
  514.         new String[32], All;
  515.         if(!inMarket[id])
  516.         {
  517.             for(new i = 1; i < AllWeapon; i++)
  518.             {
  519.                 if(i == WeaponinMarket[id] && uWeapon[i][id] > 0)
  520.                 {
  521.                     formatex(Line, 127, "\rStandod:\d %s^n\yÁra:\d %d", WeaponNames[i], MarketPoints[id]);
  522.                     All++;
  523.                 }
  524.             }
  525.  
  526.             if(101 == WeaponinMarket[id] && Chest[id] > 0)
  527.             {
  528.                 formatex(Line, 127, "\rStandod:\d Láda^n\yÁra:\d %d", MarketPoints[id]);
  529.                 All++;
  530.             }
  531.             if(102 == WeaponinMarket[id] && pKey[id] > 0)
  532.             {
  533.                 formatex(Line, 127, "\rStandod:\d Kulcs^n\yÁra:\d %d", MarketPoints[id]);
  534.                 All++;
  535.             }
  536.  
  537.             if(All == 0)
  538.                 formatex(Line, 127, "\dVálasz valamit!");
  539.             menu_additem(sMenu, Line, "-1");
  540.         }
  541.  
  542.         if(!inMarket[id])
  543.             formatex(Line, 127, "\rMehet^n");
  544.         else
  545.             formatex(Line, 127, "\dVissza^n");
  546.         menu_additem(sMenu, Line, "0");
  547.  
  548.         new Name[32];
  549.         for(new x; x < 32; x++)
  550.         {
  551.             if(!is_user_connected(x))
  552.                 continue;
  553.  
  554.             if(inMarket[x] && MarketPoints[x] > 0)
  555.             {
  556.                 num_to_str(x, String, 31);
  557.                 get_user_name(x, Name, 31);
  558.                 if(101 == WeaponinMarket[x])
  559.                 {
  560.                     formatex(Line, 127, "\r%s \d|\y Láda \d| \rÁra:\y %d", Name, MarketPoints[x]);
  561.                     menu_additem(sMenu, Line, String);
  562.                 }
  563.                 else if(102 == WeaponinMarket[x])
  564.                 {
  565.                     formatex(Line, 127, "\r%s \d|\y Kulcs \d| \rÁra:\y %d", Name, MarketPoints[x]);
  566.                     menu_additem(sMenu, Line, String);
  567.                 }
  568.                 else
  569.                 {
  570.                     formatex(Line, 127, "\r%s \d|\y %s \d| \rÁra:\y %d", Name, WeaponNames[WeaponinMarket[x]], MarketPoints[x]);
  571.                     menu_additem(sMenu, Line, String);
  572.                 }
  573.             }
  574.         }
  575.     }
  576.     else if(MenuMod[id] == 5)
  577.     {
  578.         formatex(Line, 127, "\r%s\y Ajándékozás \d[Arany: \y%d\d]", Prefix, Points[id]);
  579.         sMenu = menu_create(Line, "MenuHandler");
  580.         new All, Name[32], String[32];
  581.         get_user_name(aTarget[id], Name, 31);
  582.  
  583.         if(aTarget[id] > 0)
  584.         {
  585.             if(aPoints[id] == 0)
  586.                 aPoints[id] = 1;
  587.             formatex(Line, 127, "Játékos: \d%s", Name);
  588.             menu_additem(sMenu, Line, "-1");
  589.             for(new i = 1; i < AllWeapon; i++)
  590.             {
  591.                 if(i == aThing[id] && uWeapon[i][id] > 0)
  592.                 {
  593.                     formatex(Line, 127, "Ajándék:\d %s^n", WeaponNames[i]);
  594.                     menu_additem(sMenu, Line, "-2");
  595.                     All++;
  596.                 }
  597.             }
  598.  
  599.             if(aThing[id] == 0 && All == 0)
  600.             {
  601.                 formatex(Line, 127, "Válasz valamit!^n");
  602.                 menu_additem(sMenu, Line, "-2");
  603.             }
  604.             else if(aThing[id] > 100)
  605.             {
  606.                 if(101 == aThing[id])
  607.                 {
  608.                     formatex(Line, 127, "Ajándék:\d Láda");
  609.                 }
  610.                 if(102 == aThing[id])
  611.                 {
  612.                     formatex(Line, 127, "Ajándék:\d Kulcs");
  613.                 }
  614.                 if(103 == aThing[id])
  615.                 {
  616.                     formatex(Line, 127, "Ajándék:\d Arany");
  617.                 }
  618.                 menu_additem(sMenu, Line, "-2");
  619.             }
  620.             formatex(Line, 127, "Mennyiség:\d %d^n", aPoints[id]);
  621.             menu_additem(sMenu, Line, "-4");
  622.             formatex(Line, 127, "\yKüldés!");
  623.             menu_additem(sMenu, Line, "-3");
  624.         }
  625.         else
  626.         {
  627.             for(new i; i < 32; i++)
  628.             {
  629.                 if(is_user_connected(i) && i != id)
  630.                 {
  631.                     get_user_name(i, Name, 31);
  632.                     num_to_str(i, String, 31);
  633.                     menu_additem(sMenu, Name, String);
  634.                 }
  635.             }
  636.         }
  637.     }
  638.     menu_display(id, sMenu);
  639.     return PLUGIN_CONTINUE;
  640. }
  641. public MenuHandler(id, gMenu, Key)
  642. {  
  643.     if(Key == MENU_EXIT)
  644.     {
  645.         MenuMod[id] = 0;
  646.         menu_destroy(gMenu);
  647.         return PLUGIN_HANDLED;
  648.     }
  649.     new aMenu[2], Data[4][32], sKey[32], Name[32], mName[32];
  650.     menu_item_getinfo(gMenu, Key, aMenu[0], Data[0], 31, Data[1], 31, aMenu[1]);
  651.  
  652.     parse(Data[0], sKey, 31);
  653.     Key = str_to_num(sKey);
  654.  
  655.     if(MenuMod[id] == -2)
  656.     {
  657.         aThing[id] = Key;
  658.         MenuMod[id] = 5;
  659.         Menu(id);
  660.         return PLUGIN_CONTINUE;
  661.     }
  662.     else if(MenuMod[id] == -1)
  663.     {
  664.         WeaponinMarket[id] = Key;
  665.         client_cmd(id, "messagemode Cost");
  666.         return PLUGIN_CONTINUE;
  667.     }
  668.     else if(MenuMod[id] == 0)
  669.     {
  670.         if(Key==6)
  671.         {
  672.             if(skinek[id]) skinek[id]=false;
  673.             else skinek[id]=true;
  674.             MenuMod[id] = 0;
  675.         }  
  676.         else
  677.             MenuMod[id] = Key;
  678.         Menu(id);
  679.         return PLUGIN_CONTINUE;
  680.     }
  681.     else if(MenuMod[id] == 1)
  682.     {
  683.         parse(Data[0], Data[2], 31, Data[3], 31);
  684.  
  685.         if(str_to_num(Data[3]) == 28)
  686.             UsingWeapon[0][id] = str_to_num(Data[2]);
  687.         else if(str_to_num(Data[3]) == 18)
  688.             UsingWeapon[1][id] = str_to_num(Data[2]);
  689.         else if(str_to_num(Data[3]) == 15)
  690.             UsingWeapon[2][id] = str_to_num(Data[2]);
  691.         else if(str_to_num(Data[3]) == 29)
  692.             UsingWeapon[3][id] = str_to_num(Data[2]);
  693.         else if(str_to_num(Data[3]) == 21)
  694.             UsingWeapon[4][id] = str_to_num(Data[2]);
  695.         else if(str_to_num(Data[3]) == 22)
  696.             UsingWeapon[5][id] = str_to_num(Data[2]);
  697.         else if(str_to_num(Data[3]) == 19)
  698.             UsingWeapon[6][id] = str_to_num(Data[2]);
  699.         else if(str_to_num(Data[3]) == 16)
  700.             UsingWeapon[7][id] = str_to_num(Data[2]);
  701.         else if(str_to_num(Data[3]) == 26)
  702.             UsingWeapon[8][id] = str_to_num(Data[2]);
  703.         return PLUGIN_CONTINUE;
  704.     }
  705.     else if(MenuMod[id] == 2)
  706.     {
  707.         if(Key == 1)
  708.         {
  709.             if(Chest[id] > 0 && pKey[id] > 0)
  710.             {
  711.                 Chest[id]--;
  712.                 pKey[id]--;
  713.                 ChestOpen(id);
  714.                 Menu(id);
  715.                 return PLUGIN_CONTINUE;
  716.             }
  717.         }
  718.         return PLUGIN_CONTINUE;
  719.     }
  720.     else if(MenuMod[id] == 3)
  721.     {
  722.         if(Key == -1)
  723.         {
  724.             MenuMod[id] = -1;
  725.             Menu(id);
  726.             return PLUGIN_CONTINUE;
  727.         }
  728.         else if(Key == 0)
  729.         {
  730.             if(inMarket[id])
  731.                 inMarket[id] = false;
  732.             else if(MarketPoints[id] > 0)
  733.             {
  734.                 get_user_name(id, Name, 31);
  735.                 if(WeaponinMarket[id] > 100)
  736.                     print_color(0, "!g%s!t %s!y kirakott egy !t%s!g %d!y Euroért!",Prefix, Name, (WeaponinMarket[id] == 101) ? "Ládát" : "Kulcsot", MarketPoints[id]);
  737.                 else
  738.                     print_color(0, "!g%s!t %s!y kirakott egy !t%s !y-t!g %d!y Euroért!",Prefix, Name, WeaponNames[WeaponinMarket[id]], MarketPoints[id]);
  739.                 inMarket[id] = true;
  740.             }
  741.             Menu(id);
  742.             return PLUGIN_CONTINUE;
  743.         }
  744.         else if(inMarket[Key] && Points[id] >= MarketPoints[Key])
  745.         {
  746.             get_user_name(Key, Name, 31);
  747.             get_user_name(id, mName, 31);
  748.             if(WeaponinMarket[Key] < 101)
  749.             {
  750.                 print_color(0, "!g%s!t %s!y vásárolt egy!t %s!y-t!g %d!y Euroért !t%s!y-tól/tõl!", Prefix, mName, WeaponNames[WeaponinMarket[Key]], MarketPoints[Key], Name);
  751.                 uWeapon[WeaponinMarket[Key]][id]++;
  752.                 uWeapon[WeaponinMarket[Key]][Key]--;
  753.             }
  754.             else if(WeaponinMarket[Key] == 101)
  755.             {
  756.                 print_color(0, "!g%s!t %s!y vásárolt egy!t ládát!g %d!y Euroért !t%s!y-tól/tõl!", Prefix, mName, MarketPoints[Key], Name);
  757.                 Chest[id]++;
  758.                 Chest[Key]--;
  759.             }
  760.             else if(WeaponinMarket[Key] == 102)
  761.             {
  762.                 print_color(0, "!g%s!t %s!y vásárolt egy!t kulcsot!g %d!y Euroért !t%s!y-tól/tõl!", Prefix, mName, MarketPoints[Key], Name);
  763.                 pKey[id]++;
  764.                 pKey[Key]--;
  765.             }
  766.             Points[Key] += MarketPoints[Key];
  767.             Points[id] -= MarketPoints[Key];
  768.             Save(Key);
  769.             Save(id);
  770.             inMarket[Key] = false;
  771.             MarketPoints[Key] = 0;
  772.             WeaponinMarket[Key] = 0;
  773.             MenuMod[id] = 0;
  774.         }
  775.         return PLUGIN_CONTINUE;
  776.     }
  777.     else if(MenuMod[id] == 5)
  778.     {
  779.         if(Key == -1)
  780.         {
  781.             aTarget[id] = 0;
  782.         }
  783.         if(Key == -2)
  784.         {
  785.             MenuMod[id] = -2;
  786.         }
  787.         if(Key == -3)
  788.         {
  789.             if(aThing[id] < 100)
  790.             {
  791.                 if(uWeapon[aThing[id]][id] > 0)
  792.                 {
  793.                     if(uWeapon[aThing[id]][id]<aPoints[id])
  794.                     {
  795.                         client_cmd(id, "messagemode Gift");
  796.                         print_color(id, "!g%s !yNincs !g%d !t%s!y fegyvered.", Prefix, aPoints[id], WeaponNames[aThing[id]]);
  797.                         return PLUGIN_CONTINUE;
  798.                     }
  799.                     uWeapon[aThing[id]][aTarget[id]]+=aPoints[id];
  800.                     uWeapon[aThing[id]][id]-=aPoints[id];
  801.                     new Name[32], Name2[32];
  802.                     get_user_name(id, Name, 31);
  803.                     get_user_name(aTarget[id], Name2, 31);
  804.                     print_color(id, "!g%s !yKüldtél !t%s!y-nak/nek !g%d !t%s!y-t", Prefix, Name2, aPoints[id], WeaponNames[aThing[id]]);
  805.                     print_color(aTarget[id], "!g%s !t%s !yküldött !g%d !t%s!y-t.", Prefix, Name, aPoints[id], WeaponNames[aThing[id]]);
  806.                     Save(aTarget[id]);
  807.                     Save(id);
  808.                     MenuMod[id] = 0;
  809.                     aThing[id] = 0;
  810.                     aTarget[id] = 0;
  811.                     aPoints[id] = 0;
  812.  
  813.                 }
  814.             }
  815.             else
  816.             {
  817.                 new Name[32], Name2[32];
  818.                 get_user_name(id, Name, 31);
  819.                 get_user_name(aTarget[id], Name2, 31);
  820.                 if(101 == aThing[id])
  821.                 {
  822.                     if(Chest[id]<aPoints[id])
  823.                     {
  824.                         client_cmd(id, "messagemode Gift");
  825.                         print_color(id, "!g%s !yNincs !g%d !tládád!y.", Prefix, aPoints[id]);
  826.                         return PLUGIN_CONTINUE;
  827.                     }
  828.                     Chest[aTarget[id]]+=aPoints[id];
  829.                     Chest[id]-=aPoints[id];
  830.                     print_color(id, "!g%s !yKüldtél !t%s!y-nak/nek!g %d!t Ládát!y.", Prefix, Name2, aPoints[id]);
  831.                     print_color(aTarget[id], "!g%s !t%s !yküldött!g %d!t Ládát!y.", Prefix, Name, aPoints[id]);
  832.                 }
  833.                 else if(102 == aThing[id])
  834.                 {
  835.                     if(pKey[id]<aPoints[id])
  836.                     {
  837.                         client_cmd(id, "messagemode Gift");
  838.                         print_color(id, "!g%s !yNincs !g%d!t kulcsod!y.", Prefix, aPoints[id]);
  839.                         return PLUGIN_CONTINUE;
  840.                     }
  841.                     pKey[aTarget[id]]+=aPoints[id];
  842.                     pKey[id]-=aPoints[id];
  843.                     print_color(id, "!g%s !yKüldtél !t%s!y-nak/nek!g %d!t Kulcsot!y.", Prefix, Name2, aPoints[id]);
  844.                     print_color(aTarget[id], "!g%s !t%s !yküldött!g %d!t Kulcsot!y.", Prefix, Name, aPoints[id]);
  845.                 }
  846.                 else if(103 == aThing[id])
  847.                 {
  848.                     if(Points[id]<aPoints[id])
  849.                     {
  850.                         client_cmd(id, "messagemode Gift");
  851.                         print_color(id, "!g%s !yNincs !g%d aranyad.", Prefix, aPoints[id]);
  852.                         return PLUGIN_CONTINUE;
  853.                     }
  854.                     Points[aTarget[id]] += aPoints[id];
  855.                     Points[id] -= aPoints[id];
  856.                     print_color(id, "!g%s !yKüldtél !t%s!y-nak/nek !g%d!t Eurot!y.", Prefix, Name2, aPoints[id]);
  857.                     print_color(aTarget[id], "!g%s !t%s !yküldött !g%d!t Eurot!y.", Prefix, Name, aPoints[id]);
  858.                 }
  859.                 Save(aTarget[id]);
  860.                 Save(id);
  861.                 MenuMod[id] = 0;
  862.                 aThing[id] = 0;
  863.                 aTarget[id] = 0;
  864.                 aPoints[id] = 0;
  865.             }
  866.         }
  867.         if(Key == -4)
  868.         {
  869.             client_cmd(id, "messagemode Gift");
  870.             return PLUGIN_CONTINUE;
  871.         }
  872.         if(Key > 0)
  873.             aTarget[id] = Key;
  874.         Menu(id);
  875.         return PLUGIN_CONTINUE;
  876.     }
  877.     MenuMod[id] = 0;
  878.     return PLUGIN_CONTINUE;
  879. }
  880. stock print_color(const id, const input[], any:...)
  881. {
  882.     new Count = 1, Players[32];
  883.     static Msg[191];
  884.     vformat(Msg, 190, input, 3);
  885.  
  886.     replace_all(Msg, 190, "!g", "^4");
  887.     replace_all(Msg, 190, "!y", "^1");
  888.     replace_all(Msg, 190, "!t", "^3");
  889.  
  890.     if(id) Players[0] = id; else get_players(Players, Count, "ch");
  891.     {
  892.         for (new i = 0; i < Count; i++)
  893.         {
  894.             if (is_user_connected(Players[i]))
  895.             {
  896.                 message_begin(MSG_ONE_UNRELIABLE, SayText, _, Players[i]);
  897.                 write_byte(Players[i]);
  898.                 write_string(Msg);
  899.                 message_end();
  900.             }
  901.         }
  902.     }
  903.     return PLUGIN_HANDLED;
  904. }
  905. public client_putinserver(id)
  906. {
  907.     Kills[id] = 0, Rang[id] = 0, Points[id] = 0, Choosen[id] = 0, pKey[id] = 0, Chest[id] = 0;
  908.     for(new i; i < AllWeapon; i++)
  909.         uWeapon[i][id] = 0;
  910.     Load(id);
  911.     Password[id] = "";
  912.     SavedPassword[id] = "";
  913.     Loged[id] = false;
  914. }
  915. public Load(id)
  916. {
  917.     if(!is_user_connected(id))
  918.         return PLUGIN_HANDLED;
  919.  
  920.     new pFile, Name[32];
  921.     pFile = fopen(SaveFile, "rt");
  922.     get_user_name(id, Name, 31);
  923.  
  924.     if(pFile)
  925.     {
  926.         new Line[1024];
  927.         new LineName[32];
  928.         new data[16];
  929.  
  930.         while(!feof(pFile))
  931.         {
  932.             fgets(pFile, Line, 1023);
  933.  
  934.             if(Line[0] == ';' || !strlen(Line))
  935.                 continue;
  936.  
  937.             strbreak(Line, LineName, 31, Line, 1023);
  938.  
  939.             if(equal(LineName, Name))
  940.             {
  941.                 strbreak(Line, data, 15, Line, 1023); Kills[id] = str_to_num(data);
  942.                 strbreak(Line, data, 15, Line, 1023); Points[id] = str_to_num(data);
  943.                 strbreak(Line, data, 15, Line, 1023); pKey[id] = str_to_num(data);
  944.                 strbreak(Line, data, 15, Line, 1023); Chest[id] = str_to_num(data);
  945.                 strbreak(Line, data, 15, Line, 1023); Rang[id] = str_to_num(data);
  946.                 for(new i; i < MAX; i++)
  947.                 {
  948.                     strbreak(Line, data, 15, Line, 1023);
  949.                     uWeapon[i][id] = str_to_num(data);
  950.                 }
  951.                 fclose(pFile);
  952.                 return PLUGIN_HANDLED;
  953.             }
  954.         }
  955.         fclose(pFile);
  956.     }
  957.     return PLUGIN_CONTINUE;
  958. }
  959. public Save(id)
  960. {
  961.     if(!is_user_connected(id))
  962.         return PLUGIN_HANDLED;
  963.  
  964.     new pFile, Name[32];
  965.     pFile = fopen(SaveFile, "rt");
  966.     get_user_name(id, Name, 31);
  967.  
  968.     if(pFile)
  969.     {
  970.         new Line[192], Lines;
  971.         new LineName[32], bool:Found;
  972.         new mLine[1024], LoadWeapon[1024], String[16];
  973.  
  974.         format(String, 15, "^"%i^" ", Kills[id]);
  975.         add(LoadWeapon, 1023, String);
  976.  
  977.         format(String, 15, "^"%i^" ", Points[id]);
  978.         add(LoadWeapon, 1023, String);
  979.  
  980.         format(String, 15, "^"%i^" ", pKey[id]);
  981.         add(LoadWeapon, 1023, String);
  982.  
  983.         format(String, 15, "^"%i^" ", Chest[id]);
  984.         add(LoadWeapon, 1023, String);
  985.  
  986.         format(String, 15, "^"%i^" ", Rang[id]);
  987.         add(LoadWeapon, 1023, String);
  988.  
  989.         for(new i; i < MAX; i++)
  990.         {
  991.             format(String, 15, "^"%i^" ", uWeapon[i][id]);
  992.             add(LoadWeapon, 1023, String);
  993.         }
  994.  
  995.         formatex(mLine, 1023, "^"%s^" %s", Name, LoadWeapon);
  996.         while(!feof(pFile))
  997.         {
  998.             fgets(pFile, Line, 191);
  999.  
  1000.             if(Line[0] == ';' || strlen(Line) < 2)
  1001.                 continue;
  1002.  
  1003.             parse(Line, LineName, 31);
  1004.  
  1005.             if(equal(LineName, Name) && !Found)
  1006.             {
  1007.                 write_file(SaveFile, mLine, Lines);
  1008.                 fclose(pFile);
  1009.                 Found = true;
  1010.                 return PLUGIN_HANDLED;
  1011.             }
  1012.  
  1013.             Lines++;
  1014.         }
  1015.  
  1016.         if(!Found)
  1017.         {
  1018.             write_file(SaveFile, mLine);
  1019.             fclose(pFile);
  1020.             return PLUGIN_HANDLED;
  1021.         }
  1022.         fclose(pFile);
  1023.     }
  1024.     return PLUGIN_CONTINUE;
  1025. }
  1026. public WeaponMenu(id)
  1027. {
  1028.     if(Choosen[id] >= 2)
  1029.         return PLUGIN_HANDLED;
  1030.     new String[128];
  1031.     format(String, 127, "\r%s\y Fegyvermenü", Prefix);
  1032.     new wMenu = menu_create(String, "wMenuHandler");
  1033.     new szid[10];
  1034.     if(Choosen[id] == 0)
  1035.     {
  1036.         for(new i=0; i < 6; i++)
  1037.         {
  1038.             num_to_str(i, szid, charsmax(szid));
  1039.             format(String, 127, "%s", fegyverek[i][uzi]);
  1040.             menu_additem(wMenu, String, szid);
  1041.         }
  1042.     }
  1043.     if(Choosen[id] == 1)
  1044.     {
  1045.         for(new i=6; i < 8; i++)
  1046.         {
  1047.             num_to_str(i, szid, charsmax(szid));
  1048.             format(String, 127, "%s", fegyverek[i][uzi]);
  1049.             menu_additem(wMenu, String, szid);
  1050.         }
  1051.     }
  1052.  
  1053.     menu_display(id, wMenu);
  1054.     return PLUGIN_CONTINUE;
  1055. }
  1056. public wMenuHandler(id, gMenu, item)
  1057. {  
  1058.     if(item == MENU_EXIT)
  1059.     {
  1060.         menu_destroy(gMenu);
  1061.         return;
  1062.     }
  1063.     new data[32], name[64];
  1064.     new access, callback;
  1065.     menu_item_getinfo(gMenu, item, access, data, charsmax(data), name, charsmax(name), callback);
  1066.  
  1067.     new szam = str_to_num(data);
  1068.     give_item(id, fegyverek[szam][nev]);
  1069.     cs_set_user_bpammo(id, fegyverek[szam][csw], fegyverek[szam][golyo]);
  1070.     Choosen[id]++;
  1071.  
  1072.     if(Choosen[id] >= 2)
  1073.         Grenades(id);
  1074.  
  1075.     WeaponMenu(id);
  1076. }
  1077. public RegMenu(id)
  1078. {
  1079.     new String[128], Name[32];
  1080.     if(Registered(id))
  1081.         format(String, 127, "\r%s\y Regisztrációs Menü^n\rStátusz: \dRegisztrálva^n\rPróbálkozások:\d %d/3", Prefix, probalkozasok[id]);
  1082.     else
  1083.         format(String, 127, "\r%s\y Regisztrációs Menü^n\rStátusz: \dNem regisztrált", Prefix);
  1084.     new rMenu = menu_create(String, "rMenuHandler");
  1085.     get_user_name(id, Name, 31);
  1086.  
  1087.     format(String, 127, "\wFelhasznaló:\d %s", Name);
  1088.     menu_additem(rMenu, String, "0");
  1089.  
  1090.     if(!Registered(id))
  1091.     {
  1092.         format(String, 127, "\wJelszó:\d %s^n", Password[id]);
  1093.         menu_additem(rMenu, String, "1");
  1094.  
  1095.         if(strlen(Password[id]) > 4)
  1096.         {
  1097.             format(String, 127, "Regisztrálok");
  1098.             menu_additem(rMenu, String, "2");
  1099.         }
  1100.         else
  1101.         {
  1102.             format(String, 127, "\dRegisztrálok");
  1103.             menu_additem(rMenu, String, "0");
  1104.         }
  1105.     }
  1106.     else
  1107.     {
  1108.         if(!Loged[id])
  1109.         {
  1110.             format(String, 127, "\wJelszó:\d %s^n", Password[id]);
  1111.             menu_additem(rMenu, String, "1");
  1112.  
  1113.             format(String, 127, "Bejelentkezés!");
  1114.             menu_additem(rMenu, String, "3");
  1115.         }
  1116.         else
  1117.         {
  1118.             format(String, 127, "Kijelentkezés!");
  1119.             menu_additem(rMenu, String, "-1");
  1120.         }
  1121.     }
  1122.  
  1123.     menu_display(id, rMenu);
  1124. }
  1125. public rMenuHandler(id, gMenu, item)
  1126. {  
  1127.     if(item == MENU_EXIT)
  1128.     {
  1129.         menu_destroy(gMenu);
  1130.         return;
  1131.     }
  1132.     new data[9], name[64], Key;
  1133.     new access, callback;
  1134.     menu_item_getinfo(gMenu, item, access, data, charsmax(data), name, charsmax(name), callback);
  1135.  
  1136.     Key = str_to_num(data);
  1137.  
  1138.     if(Key == -1)
  1139.         ToLogout(id);
  1140.     if(Key == 0)
  1141.         RegMenu(id);
  1142.     if(Key == 1)
  1143.     {
  1144.         client_cmd(id, "messagemode UserPassword");
  1145.         RegMenu(id);
  1146.     }
  1147.     if(Key == 2)
  1148.     {
  1149.         print_color(id, "!g%s!y Sikeres regisztráció! [Jelszavad: !t%s!y]", Prefix, Password[id]);
  1150.         Register(id, Password[id]);
  1151.         copy(SavedPassword[id], 31, Password[id]);
  1152.         Loged[id] = true;
  1153.         Menu(id);
  1154.     }
  1155.     if(Key == 3)
  1156.     {
  1157.         if(equal(SavedPassword[id], Password[id])) {
  1158.             Loged[id] = true;
  1159.             print_color(id, "!g%s!y Sikeresen beléptél!", Prefix);
  1160.             Menu(id);
  1161.         }
  1162.         else
  1163.         {
  1164.             probalkozasok[id]++;
  1165.             if(probalkozasok[id] >= 3)
  1166.             {
  1167.                 server_cmd("kick #%i ^"3x elrotottad a jelszot. Ezert kickelve lettel.^"", get_user_userid(id));
  1168.                 probalkozasok[id]=0;
  1169.                 return;
  1170.             }
  1171.             client_cmd(id, "messagemode UserPassword");
  1172.             print_color(id, "!g%s !yHibás jelszó. 3. sikertelen probálkozás utan kick jár. Probálkozások: %d/3", Prefix, probalkozasok[id]);
  1173.             RegMenu(id);
  1174.         }
  1175.     }
  1176. }
  1177. public ToLogout(id)
  1178. {
  1179.     if(Loged[id])
  1180.     {
  1181.         Loged[id] = false;
  1182.         Password[id] = "";
  1183.         print_color(id, "!g%s!y Sikeresen kiléptél!", Prefix);
  1184.     }
  1185. }
  1186. public PlayerPassword(id)
  1187. {
  1188.     new Data[32];
  1189.     read_args(Data, 31);
  1190.     remove_quotes(Data);
  1191.  
  1192.     if(strlen(Data) < 5)
  1193.     {
  1194.         print_color(id, "!g%s!y Túl rövid a jelszó!", Prefix);
  1195.         client_cmd(id, "messagemode UserPassword");
  1196.         return PLUGIN_HANDLED;
  1197.     }
  1198.  
  1199.     if(Loged[id])
  1200.         return PLUGIN_HANDLED;
  1201.  
  1202.     copy(Password[id], 31, Data);
  1203.     RegMenu(id);
  1204.     return PLUGIN_CONTINUE;
  1205. }
  1206.  
  1207. public ClientInfoChanged(id)
  1208.     set_task(1.0, "NameConrol",id);
  1209. public NameConrol(id){
  1210.     if(!is_user_connected(id))
  1211.         return PLUGIN_CONTINUE;
  1212.     new name[31];
  1213.     get_user_name(id, name, 30);
  1214.     new userid = get_user_userid(id);
  1215.     if (contain(name, "#Spec_Help_Text") != -1 || contain(name, "#Cstrike_Spetsnaz_Label") != -1 || contain(name, "#Buy") != -1 || contain(name, "#Cstrike_GIGN_Label") != -1 || contain(name, "#Spec_Duck") != -1)
  1216.     {
  1217.         server_cmd("kick #%d Ilyent nem szabad!",userid);
  1218.         return PLUGIN_HANDLED;
  1219.     }
  1220.     new Bnum = strlen(name);
  1221.     new i=0;
  1222.     new Nnum=0;
  1223.     while(i < Bnum)
  1224.     {
  1225.         if(name[i] == '1' || name[i] == '2' || name[i] == '3' || name[i] == '4' || name[i] == '5' || name[i] == '6' || name[i] == '7' || name[i] == '8' || name[i] == '9' || name[i] == '0')
  1226.             Nnum++;
  1227.         ++i;
  1228.     }
  1229.     if( Nnum >= 7)
  1230.     {
  1231.         client_cmd(id, "name ^"Hirdetes Tiltott!^"");
  1232.         client_cmd(id, "retry");
  1233.         return PLUGIN_CONTINUE;
  1234.     }
  1235.     return PLUGIN_CONTINUE;
  1236. }
  1237.  
  1238. public avoid_duplicated (msgId, msgDest, receiver)
  1239. {
  1240.     return PLUGIN_HANDLED;
  1241. }
  1242.  
  1243. public hook_say(id)
  1244. {
  1245.     read_args (message, 191);
  1246.     remove_quotes (message);
  1247.  
  1248.     new Bnum = strlen(message);
  1249.     new Nnum = 0;
  1250.     new i = 0;
  1251.     while(i < Bnum)
  1252.     {
  1253.         if(message[i] == '1' || message[i] == '2' || message[i] == '3' || message[i] == '4' || message[i] == '5' || message[i] == '6' || message[i] == '7' || message[i] == '8' || message[i] == '9' || message[i] == '0')
  1254.             Nnum++;
  1255.         ++i;
  1256.     }
  1257.     if( Nnum >= 7)
  1258.     {
  1259.         ColorChat(id, BLUE,"^3A szerveren tilos a hírdetés!");
  1260.         return PLUGIN_HANDLED;
  1261.     }
  1262.  
  1263.     if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
  1264.         return PLUGIN_CONTINUE;
  1265.  
  1266.  
  1267.     new name[192];
  1268.     name = message;
  1269.     if (contain(name, "#Spec_Help_Text") != -1 || contain(name, "#Cstrike_Spetsnaz_Label") != -1 || contain(name, "#Buy") != -1 || contain(name, "#Cstrike_GIGN_Label") != -1 || contain(name, "#Spec_Duck") != -1)
  1270.     {
  1271.         ColorChat(id, BLUE,"^3HAHAHA:)");
  1272.         return PLUGIN_HANDLED;
  1273.     }
  1274.     get_user_name (id, name, 31);
  1275.  
  1276.     new bool:admin = false;
  1277.  
  1278.     if (get_user_flags(id) & ADMINRANG)
  1279.         admin = true;
  1280.  
  1281.     new isAlive;
  1282.  
  1283.     if (is_user_alive (id))
  1284.         {
  1285.             isAlive = 1;
  1286.             alive = "^x01";
  1287.         }
  1288.     else
  1289.         {
  1290.             isAlive = 0;
  1291.             alive = "^x01*Halott*";
  1292.         }
  1293.  
  1294.     static color[10];
  1295.  
  1296.     if (admin)
  1297.     {
  1298.         get_user_team (id, color, 9);
  1299.         format (strName, 191, "%s^x04[Admin][%s]^x03%s", alive, Rangs[Rang[id]], name);
  1300.         format (strText, 191, "^x04%s", message);
  1301.     }
  1302.     else
  1303.     {
  1304.         get_user_team (id, color, 9);
  1305.         format (strName, 191, "%s^x04[%s]^x03%s", alive, Rangs[Rang[id]], name);
  1306.         format (strText, 191, "%s", message);
  1307.     }
  1308.  
  1309.     format (message, 191, "%s^x01 : %s", strName, strText);
  1310.  
  1311.     sendMessage (color, isAlive);
  1312.  
  1313.     return PLUGIN_CONTINUE;
  1314. }
  1315.  
  1316.  
  1317. public hook_teamsay(id)
  1318. {
  1319.     new playerTeam = get_user_team(id);
  1320.     new playerTeamName[19];
  1321.  
  1322.     switch (playerTeam)
  1323.     {
  1324.         case 1:
  1325.             copy (playerTeamName, 11, "*Te*");
  1326.         case 2:
  1327.             copy (playerTeamName, 18, "*Ct*");
  1328.         default:
  1329.             copy (playerTeamName, 9, "*Néző*");
  1330.     }
  1331.  
  1332.     read_args (message, 191);
  1333.     remove_quotes (message);
  1334.  
  1335.     new Bnum = strlen(message);
  1336.     new Nnum = 0;
  1337.     new i = 0;
  1338.     while(i < Bnum)
  1339.     {
  1340.         if(message[i] == '1' || message[i] == '2' || message[i] == '3' || message[i] == '4' || message[i] == '5' || message[i] == '6' || message[i] == '7' || message[i] == '8' || message[i] == '9' || message[i] == '0')
  1341.             Nnum++;
  1342.         ++i;
  1343.     }
  1344.     if( Nnum >= 7)
  1345.     {
  1346.         ColorChat(id, BLUE,"^3A szerveren tilos a hirdetes!");
  1347.         return PLUGIN_HANDLED;
  1348.     }
  1349.  
  1350.     if (message[0] == '@' || message[0] == '/' || message[0] == '!' || equal (message, ""))
  1351.         return PLUGIN_CONTINUE;
  1352.  
  1353.  
  1354.     new name[192];
  1355.     name = message;
  1356.     if (contain(name, "#Spec_Help_Text") != -1 || contain(name, "#Cstrike_Spetsnaz_Label") != -1 || contain(name, "#Buy") != -1 || contain(name, "#Cstrike_GIGN_Label") != -1 || contain(name, "#Spec_Duck") != -1)
  1357.     {
  1358.         ColorChat(id, BLUE,"^3HAHAHA:)");
  1359.         return PLUGIN_HANDLED;
  1360.     }
  1361.     get_user_name (id, name, 31);
  1362.  
  1363.     new bool:admin = false;
  1364.  
  1365.     if (get_user_flags(id) & ADMINRANG)
  1366.         admin = true;
  1367.  
  1368.  
  1369.     new isAlive;
  1370.  
  1371.     if (is_user_alive (id))
  1372.         {
  1373.             isAlive = 1;
  1374.             alive = "^x01";
  1375.         }
  1376.     else
  1377.         {
  1378.             isAlive = 0;
  1379.             alive = "^x01*Halott*";
  1380.         }
  1381.  
  1382.     static color[10];
  1383.  
  1384.     if (admin)
  1385.     {
  1386.         get_user_team (id, color, 9)    ;
  1387.         format (strName, 191, "%s(%s)^x04[Admin][%s]^x03%s", alive, playerTeamName, Rangs[Rang[id]], name);
  1388.         format (strText, 191, "^x04%s", message);
  1389.     }
  1390.     else
  1391.     {
  1392.         get_user_team (id, color, 9);
  1393.         format (strName, 191, "%s(%s)^x04[%s]^x03%s", alive, playerTeamName, Rangs[Rang[id]], name);
  1394.         format (strText, 191, "%s", message);
  1395.     }
  1396.  
  1397.     format (message, 191, "%s^x01 : %s", strName, strText);
  1398.  
  1399.     sendTeamMessage (color, isAlive, playerTeam);
  1400.  
  1401.     return PLUGIN_CONTINUE;
  1402. }
  1403.  
  1404. public sendMessage (color[], alive)
  1405. {
  1406.     new teamName[10];
  1407.  
  1408.     for (new player = 1; player < maxPlayers; player++)
  1409.     {
  1410.         if (!is_user_connected(player))
  1411.             continue;
  1412.         get_user_team (player, teamName, 9);
  1413.         changeTeamInfo (player, color);
  1414.         writeMessage (player, message);
  1415.         changeTeamInfo (player, teamName);
  1416.     }
  1417. }
  1418.  
  1419.  
  1420. public sendTeamMessage (color[], alive, playerTeam)
  1421. {
  1422.     new teamName[10];
  1423.  
  1424.     for (new player = 1; player < maxPlayers; player++)
  1425.     {
  1426.         if (!is_user_connected(player))
  1427.             continue;
  1428.  
  1429.         if (get_user_team(player) == playerTeam || get_user_flags(player) & ADMIN_BAN)
  1430.         {
  1431.             get_user_team (player, teamName, 9);
  1432.             changeTeamInfo (player, color);
  1433.             writeMessage (player, message);
  1434.             changeTeamInfo (player, teamName);
  1435.         }
  1436.     }
  1437. }
  1438.  
  1439.  
  1440. public changeTeamInfo (player, team[])
  1441. {
  1442.     message_begin (MSG_ONE, teamInfo, _, player);
  1443.     write_byte (player);
  1444.     write_string (team);
  1445.     message_end();
  1446. }
  1447.  
  1448.  
  1449. public writeMessage (player, message[])
  1450. {
  1451.     message_begin (MSG_ONE, SayText, {0, 0, 0}, player);
  1452.     write_byte (player);
  1453.     write_string (message);
  1454.     message_end ();
  1455. }
  1456.  
  1457. stock bool:ValidMdl(Mdl[])
  1458. {
  1459.     if(containi(Mdl, ".mdl") != -1)
  1460.     {
  1461.         return true;
  1462.     }
  1463.     return false;
  1464. }
  1465. stock bool:Registered(id)
  1466. {
  1467.     new pFile, Data[2][32], Line[64], Name[32];
  1468.     get_user_name(id, Name, 31);
  1469.     pFile = fopen(RegisterFile, "rt");
  1470.  
  1471.     while(!feof(pFile))
  1472.     {
  1473.         fgets(pFile, Line, 63);
  1474.  
  1475.         parse(Line, Data[0], 31, Data[1], 31);
  1476.  
  1477.         if(equal(Data[0], Name))
  1478.         {
  1479.             copy(SavedPassword[id], 31, Data[1]);
  1480.             return true;
  1481.         }
  1482.     }
  1483.  
  1484.     fclose(pFile);
  1485.  
  1486.     return false;
  1487. }
  1488. stock Register(id, const rSavedPassword[])
  1489. {
  1490.     new pFile, Line[64], Name[32];
  1491.     get_user_name(id, Name, 31);
  1492.     pFile = fopen(RegisterFile, "at+");
  1493.     format(Line, 63, "^"%s^" ^"%s^"", Name, rSavedPassword);
  1494.     write_file(RegisterFile, Line);
  1495.     fclose(pFile);
  1496. }
  1497. stock Grenades(id)
  1498. {
  1499.     give_item(id, "weapon_hegrenade");
  1500.     give_item(id, "weapon_smokegrenade");
  1501.     give_item(id, "weapon_flashbang");
  1502. }

_________________
Kép

Kép


A hozzászólást 1 alkalommal szerkesztették, utoljára nagyricsii35 2016.01.17. 10:57-kor.

Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: global offensive mentés
HozzászólásElküldve: 2016.01.17. 09:22 
Offline
Nagyúr
Avatar

Csatlakozott: 2014.04.10. 15:32
Hozzászólások: 776
Megköszönt másnak: 122 alkalommal
Megköszönték neki: 60 alkalommal
Kérd meg a plugin készítőjét, hogy csinálja meg.


  1. new const AUTHOR[] = "exodus";


-,-

_________________
Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: global offensive mentés
HozzászólásElküldve: 2016.01.17. 10:58 
Offline
Senior Tag
Avatar

Csatlakozott: 2015.04.10. 23:40
Hozzászólások: 283
Megköszönt másnak: 6 alkalommal
Megköszönték neki: 12 alkalommal
és arra a problémára nincs ötleted, hogy beírtam az alap skinekhez:

  1. "04" "models/rzglobal/alap/HE.mdl"
  2. "06" "models/rzglobal/alap/C4.mdl"
  3. "15" "models/rzglobal/alap/FAMAS.mdl"
  4. "16" "models/rzglobal/alap/USP.mdl"
  5. "18" "models/rzglobal/alap/AWP2.mdl"
  6. "19" "models/rzglobal/alap/MP5.mdl"
  7. "21" "models/rzglobal/alap/M3.mdl"
  8. "22" "models/rzglobal/alap/M4A1.mdl"
  9. "26" "models/rzglobal/alap/DEAGLE.mdl"
  10. "28" "models/rzglobal/alap/AK47.mdl"
  11. "29" "models/rzglobal/alap/KNIFE.mdl"
  12. "25" "models/rzglobal/alap/FLASH.mdl"
  13. "17" "models/rzglobal/alap/GLOCK.mdl"
  14. "14" "models/rzglobal/alap/GALIL.mdl"
  15. "30" "models/rzglobal/alap/P90.mdl"
  16. "3" "models/rzglobal/alap/SCOUT.mdl"
  17. "10" "models/rzglobal/alap/ELITE.mdl"
  18. "11" "models/rzglobal/alap/FIVESEVEN.mdl"
  19. "9" "models/rzglobal/alap/SMOKE.mdl"
  20. "1" "models/rzglobal/alap/P228.mdl"
  21. "5" "models/rzglobal/alap/XM1014.mdl"
  22. "7" "models/rzglobal/alap/MAC10.mdl"
  23. "8" "models/rzglobal/alap/AUG.mdl"
  24. "12" "models/rzglobal/alap/UMP45.mdl"
  25. "13" "models/rzglobal/alap/SG550.mdl"
  26. "20" "models/rzglobal/alap/M249.mdl"
  27. "23" "models/rzglobal/alap/TMP.mdl"
  28. "24" "models/rzglobal/alap/G3.mdl"
  29. "27" "models/rzglobal/alap/SG552.mdl"


viszont nem cseréli le a skineket csak amik alapból benntvoltak

_________________
Kép

Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: global offensive mentés
HozzászólásElküldve: 2016.01.17. 11:10 
Offline
Nagyúr
Avatar

Csatlakozott: 2014.04.10. 15:32
Hozzászólások: 776
Megköszönt másnak: 122 alkalommal
Megköszönték neki: 60 alkalommal
Nem értem,ha "te" készítetted a módot, akkor ilyen dolgok miért nem mennek?

_________________
Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: global offensive mentés
HozzászólásElküldve: 2016.01.17. 11:22 
Offline
Senior Tag
Avatar

Csatlakozott: 2015.04.10. 23:40
Hozzászólások: 283
Megköszönt másnak: 6 alkalommal
Megköszönték neki: 12 alkalommal
alfaanero írta:
Nem értem,ha "te" készítetted a módot, akkor ilyen dolgok miért nem mennek?


úristen ha valaki átírja már rosszul vagytok vagy mi?? -.-
nem lett kiadva az én nevemmel sehol...
nem lett feltöltve sehova a plugin nemtudom miért is vagy ezmiatt rosszul

_________________
Kép

Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: global offensive mentés
HozzászólásElküldve: 2016.01.17. 11:25 
Offline
Tiszteletbeli
Avatar

Csatlakozott: 2014.03.07. 14:55
Hozzászólások: 939
Megköszönt másnak: 38 alkalommal
Megköszönték neki: 95 alkalommal
most lehet befejezni aztán melegebb éghajlatra költözni.


erre a kommentre nem kérek választ

_________________
Hmm.
Kép


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: global offensive mentés
HozzászólásElküldve: 2016.01.17. 12:00 
Offline
Tiszteletbeli
Avatar

Csatlakozott: 2015.04.10. 19:49
Hozzászólások: 610
Megköszönt másnak: 53 alkalommal
Megköszönték neki: 147 alkalommal
Ugyan miért is lenne probléma, ha te átírod a készítő nevét... Elvégre csak több órányi / napi / heti munkája van az adott pluginban, amit ingyen megosztott, hogy aki nem képes magától megírni annak legyen valami lehetősége hasonló plugint használnia, mint ami nála megy, és nem is reklámozza magát / szervereit a pluginban, csak beleírta hogy az ő munkája.
( Az autódról se szeded le az emblémát, és írod rá a neved, h utána azzal menőzz, hogy te raktad össze a két kezeddel. )

Fájlba / nvaultba mentés felejthető ilyen modnál szerintem, főleg h go modban sok extra dologra is használható az sql, mennyi ilyen skin van a szerveren és különböző számítások, kinek van a legtöbb skinje stb...
Szóval a helyedben átírnám az egész mentést.

_________________
Néha itt, de többször nem.


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: global offensive mentés
HozzászólásElküldve: 2016.01.17. 13:20 
Offline
Beavatott
Avatar

Csatlakozott: 2016.01.05. 14:47
Hozzászólások: 68
Megköszönt másnak: 3 alkalommal
Megköszönték neki: 7 alkalommal
hasznald ezt meglehet hogy jo :)


Csatolmányok:
asd.sma [146.19 KiB]
Letöltve 59 alkalommal.
Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: global offensive mentés
HozzászólásElküldve: 2016.01.17. 13:32 
Offline
Fanatikus
Avatar

Csatlakozott: 2015.12.05. 20:51
Hozzászólások: 179
Megköszönt másnak: 7 alkalommal
Megköszönték neki: 12 alkalommal
Hungary írta:
hasznald ezt meglehet hogy jo :)

  1. register_plugin("Global Offensive Mod By:Toretto", "1.0", "Toretto")


ez is vicc :'D

_________________
.:[*|P|eac|E|*]:.


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: global offensive mentés
HozzászólásElküldve: 2016.01.17. 13:43 
Offline
Beavatott
Avatar

Csatlakozott: 2016.01.05. 14:47
Hozzászólások: 68
Megköszönt másnak: 3 alkalommal
Megköszönték neki: 7 alkalommal
Levii@Peace írta:
Hungary írta:
hasznald ezt meglehet hogy jo :)

  1. register_plugin("Global Offensive Mod By:Toretto", "1.0", "Toretto")


ez is vicc :'D

en is igy tanaltam :)

Edit: http://hlmod.hu/viewtopic.php?f=9&t=22665&hilit=global


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  [ 11 hozzászólás ]  Oldal 1 2 Következő


Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 62 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