Dabar yra 2019 Geg 20 04:54




 Puslapis 11 [ 1 pranešimas ] 
Autorius Žinutė
 Pranešimo tema: isejus is buy zone meniu blokuojamas
Žinutės numeris: #1  StandartinėParašytas: 2019 Geg 14 21:55 
Moderatorius
Vartotojo avataras

Užsiregistravo: 2012 Rgp 03 01:12
Pranešimai: 4482
Karma: 126

Miestas: Vilnius
Sveiki, gal kas galite padeti susitvarkyti meniu kad isejus zaidejui is buy zonos blokuotu ta meniu (ISJUNGIA)

kazkip turbut su sitais tai daroma

  1. register_event("StatusIcon", "Event_StatusIcon_Show_buyzone", "be", "1=1", "2=buyzone");
  2. register_event("StatusIcon", "StatusIcon_buyzone_OFF", "be", "1=0", "2=buyzone");
  3. register_event( "StatusIcon", "CloseOpenedMenu", "b", "1=0", "2=buyzone" )


vip meniu sma

  1. #include <amxmodx>
  2. #include <reapi>
  3. #include <vip_system>
  4.  
  5. #define ADMIN_LOADER
  6.  
  7. #pragma semicolon 1
  8. new const MenuKey = (1<<0)|(1<<1)|(1<<2)|(1<<3)|(1<<4)|(1<<5)|(1<<6)|(1<<9);
  9.  
  10. enum _:cvars {
  11.     AUTO_MENU,
  12.     GIVE_ITEMS,
  13.     WEAPONSRND,
  14.     AWPM249RND,
  15.     SHOP,
  16.     SHOP_RND
  17. };
  18.  
  19. new iPistol[MAX_CLIENTS+1], bool:g_bUsePistol, bool:g_bUseWeapon[MAX_CLIENTS+1];
  20.  
  21. static sItems[10];
  22. new pCvar[cvars], pCvarCfg[cvars];
  23. new g_iRound;
  24.  
  25. public plugin_init() {
  26.     register_plugin("[ReVIP] Menu", VIP_SYSTEM_VERSION, "pUzzlik");
  27.     register_dictionary("vip_system.txt");
  28.  
  29.     //    auto open vip menu 1 - on, 0 - off
  30.     pCvar[AUTO_MENU] = register_cvar("open_menu_spawn", "0");
  31.     /*
  32.         flags items
  33.         a - armor
  34.         d - defuse
  35.         f - flashbang
  36.         h - hegranade
  37.         p - pistol
  38.         s - smoke
  39.     */
  40.     pCvar[GIVE_ITEMS] = register_cvar("give_items", "adfhps");
  41.     //    which is available with a round primary weapons
  42.     pCvar[WEAPONSRND] = register_cvar("primary_weapons_rnd", "2");
  43.     //    which is available with a round primary weapons
  44.     pCvar[AWPM249RND] = register_cvar("heavy_weapons_rnd", "4");
  45.     //    if you want to use a custom shop, (1 - enable)
  46.     pCvar[SHOP] = register_cvar("use_custom_shop", "1");
  47.     //    with round displayed shop menu
  48.     pCvar[SHOP_RND] = register_cvar("custom_shop_block_rnd", "2");
  49.  
  50.     register_clcmd("vipmenu", "ShowMenu");
  51.     register_clcmd("say /vipmenu", "ShowMenu");
  52.     register_clcmd("say_team /vipmenu", "ShowMenu");
  53.  
  54.     register_clcmd("say", "hook_say");
  55.     register_clcmd("say_team", "hook_say");
  56.  
  57.     register_menucmd(register_menuid("Vip Menu"), MenuKey, "MenuHandler");
  58. }
  59.  
  60. public plugin_cfg() {
  61.     get_pcvar_string(pCvar[GIVE_ITEMS],sItems,charsmax(sItems)); trim(sItems);
  62.     pCvarCfg[WEAPONSRND] = get_pcvar_num(pCvar[WEAPONSRND]);
  63.     pCvarCfg[AWPM249RND] = get_pcvar_num(pCvar[AWPM249RND]);
  64.     pCvarCfg[AUTO_MENU] = get_pcvar_num(pCvar[AUTO_MENU]);
  65.     pCvarCfg[SHOP] = get_pcvar_num(pCvar[SHOP]);
  66.     pCvarCfg[SHOP_RND] = get_pcvar_num(pCvar[SHOP_RND]);
  67. }
  68.  
  69. public vip_core_restart_round(round) {
  70.     arrayset(g_bUseWeapon, false, sizeof(g_bUseWeapon));
  71.     g_iRound = round;
  72. }
  73.  
  74. public vip_core_player_spawn(const id) {
  75.     if(core_is_bonus_spawn(id)) {
  76.         for(new i, str_len = strlen(sItems); i < str_len ; i++) {
  77.             switch(sItems[i]){
  78.                 case 'a': rg_set_user_armor(id, 100, ARMOR_VESTHELM);
  79.                 case 'd': {
  80.                     new TeamName:team = get_member(id, m_iTeam);
  81.                     if(team == TEAM_CT) rg_give_defusekit (id, true);
  82.                 }
  83.                 case 'f': {
  84.                     rg_give_item(id, "weapon_flashbang", GT_APPEND);
  85.                     rg_give_item(id, "weapon_flashbang", GT_APPEND);
  86.                 }
  87.                 case 'h': rg_give_item(id, "weapon_hegrenade", GT_APPEND);
  88.                 case 'p': {
  89.                     switch(iPistol[id]) {
  90.                         case 0: { rg_give_item(id, "weapon_deagle", GT_REPLACE); rg_set_user_bpammo(id, WEAPON_DEAGLE, 35); }
  91.                         case 1: { rg_give_item(id, "weapon_usp", GT_REPLACE); rg_set_user_bpammo(id, WEAPON_USP, 100); }
  92.                         case 2: { rg_give_item(id, "weapon_glock18", GT_REPLACE); rg_set_user_bpammo(id, WEAPON_GLOCK18, 120); }
  93.                     }
  94.                     g_bUsePistol = true;
  95.                 }
  96.                 case 's': rg_give_item(id, "weapon_smokegrenade", GT_APPEND);
  97.             }
  98.         }
  99.  
  100.         if(pCvarCfg[AUTO_MENU] && g_iRound >= pCvarCfg[WEAPONSRND]) ShowMenu(id);
  101.     }
  102. }
  103.  
  104. public hook_say(id) {
  105.     static szMsg[32]; read_args(szMsg, charsmax(szMsg)); remove_quotes(szMsg);
  106.     static const szChoosedWP[][] = { "/ak47", "/m4a1", "/famas", "/awp", "/b51" };
  107.  
  108.     for(new a; a < sizeof szChoosedWP; a++) {
  109.         if(!strcmp(szMsg, szChoosedWP[a])) {
  110.             if(!core_is_allow_use(id)) break;
  111.             return MenuHandler(id, a);
  112.         }
  113.     }
  114.     return PLUGIN_CONTINUE;
  115. }
  116.  
  117. public ShowMenu(id) {
  118.     if(!core_is_allow_use(id)) return PLUGIN_HANDLED;
  119.  
  120.     new szMenu[512], key; key = MENU_KEY_0;
  121.     new iLen, szName[16]; get_entvar(id, var_netname, szName, charsmax(szName));
  122.    
  123.     iLen = formatex(szMenu, charsmax(szMenu), "\r%L \w[\d%L\w]^n\w%L^n", LANG_SERVER, "MENU_NAME", LANG_SERVER, "NAME_SERVER", LANG_SERVER, "WELCOME", szName);
  124.  
  125.     #if defined ADMIN_LOADER
  126.         new exp = admin_expired(id);
  127.         if(exp > 0) {
  128.             new sys = get_systime();
  129.             if((exp - sys) / 86400 > 0)    iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\ywill expired: \w%d d.!^n^n", (exp - sys) / 86400);
  130.         } else if(exp == 0) iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "%L^n^n", LANG_SERVER, "VIP_EXPIRED_PRMANENT");
  131.     #else
  132.         iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "^n");
  133.     #endif
  134.  
  135.     new szUseWpn[2]; formatex(szUseWpn, charsmax(szUseWpn), "%s", g_bUseWeapon[id] ? "d" : "w");
  136.  
  137.     if(g_iRound < pCvarCfg[WEAPONSRND])
  138.         iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r1. \d%L \r%L^n\r2. \d%L \r%L^n\r3. \d%L \r%L^n", LANG_SERVER, "AK47", LANG_SERVER, "ROUND", g_iRound, pCvarCfg[WEAPONSRND], LANG_SERVER, "M4A1", LANG_SERVER, "ROUND", g_iRound, pCvarCfg[WEAPONSRND], LANG_SERVER, "FAMAS", LANG_SERVER, "ROUND", g_iRound, pCvarCfg[WEAPONSRND]);
  139.     else {
  140.         key |= MENU_KEY_1|MENU_KEY_2|MENU_KEY_3;
  141.         iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r1. \%s%L^n\r2. \%s%L^n\r3. \%s%L^n", szUseWpn, LANG_SERVER, "AK47", szUseWpn, LANG_SERVER, "M4A1", szUseWpn, LANG_SERVER, "FAMAS");
  142.     }
  143.  
  144.     if(g_iRound < pCvarCfg[AWPM249RND])
  145.         iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r4. \d%L \r%L^n\r5. \d%L \r%L^n^n", LANG_SERVER, "AWP", LANG_SERVER, "ROUND", g_iRound, pCvarCfg[AWPM249RND], LANG_SERVER, "GALIL", LANG_SERVER, "ROUND", g_iRound, pCvarCfg[AWPM249RND]);
  146.     else {
  147.         key |= MENU_KEY_4|MENU_KEY_5;
  148.         iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r4. \%s%L^n\r5. \%s%L^n^n", szUseWpn, LANG_SERVER, "AWP", szUseWpn, LANG_SERVER, "GALIL");
  149.     }
  150.  
  151.     if(g_bUsePistol) {
  152.         key |= MENU_KEY_6;
  153.         iLen += formatex(szMenu[iLen], charsmax(szMenu) - iLen, "\r6. %L \r[\w%s\r]^n", LANG_SERVER, "PISTOL", iPistol[id] == 0 ? "Deagle" : iPistol[id] == 1 ? "USP" : "Glock");
  154.     }
  155.     formatex(szMenu[iLen], charsmax(szMenu) - iLen, "^n\r0. %L", LANG_SERVER, "EXIT");
  156.  
  157.     set_member(id, m_iMenu, Menu_OFF);
  158.     return show_menu(id, key, szMenu, -1, "Vip Menu");
  159. }
  160.  
  161. public MenuHandler(id, key) {
  162.     if(key <= 4) {
  163.         /***    Защита от дурака    ***/
  164.         if(g_iRound < pCvarCfg[WEAPONSRND]) return client_print_color(id, 0, "%L %L", LANG_SERVER, "CHAT_TAG", LANG_SERVER, "PISTOLS_ROUND");
  165.         /***    End        ***/
  166.         if(g_bUseWeapon[id]) return client_print_color(id, 0, "%L %L", LANG_SERVER, "CHAT_TAG", LANG_SERVER, "ALREDY_WEAPON_RND");
  167.         g_bUseWeapon[id] = true;
  168.        
  169.         static const szChoosedBP[] = { 90, 90, 90, 30, 90 };
  170.         static const szChoosedWP[][] = { "weapon_ak47", "weapon_m4a1", "weapon_famas", "weapon_awp", "weapon_galil" };
  171.        
  172.         return rg_give_items(id, szChoosedWP[key], szChoosedBP[key]);
  173.     }
  174.     else if (key == 5) GivePistol(id);
  175.     return PLUGIN_HANDLED;
  176. }
  177.  
  178. public GivePistol(id) {
  179.     iPistol[id] >= 2 ? (iPistol[id] = 0) : iPistol[id]++;
  180.     ShowMenu(id);
  181.     return PLUGIN_HANDLED;
  182. }
  183.  
  184. stock rg_give_items(id, currWeaponName[], ammoAmount) {
  185.     rg_drop_items_by_slot(id, PRIMARY_WEAPON_SLOT);
  186.  
  187.     rg_give_item(id, currWeaponName, GT_APPEND);
  188.     rg_set_user_bpammo(id, rg_get_weapon_info(currWeaponName, WI_ID), ammoAmount);
  189.  
  190.     engclient_cmd(id, currWeaponName);
  191.     return PLUGIN_HANDLED;
  192. }


Prikabinti failai:
re_vipmenu.sma [7.85 KiB]
Atsisiųsta 2 kartus(ų)

_________________
Paveikslėlis
Paveikslėlis
Paveikslėlis
Atsijungęs
 Aprašymas  
 
Rodyti paskutinius pranešimus:  Rūšiuoti pagal  
 Puslapis 11 [ 1 pranešimas ] 


Dabar prisijungę

Vartotojai naršantys šį forumą: Registruotų vartotojų nėra ir 5 svečių


Jūs negalite kurti naujų temų šiame forume
Jūs negalite atsakinėti į temas šiame forume
Jūs negalite redaguoti savo pranešimų šiame forume
Jūs negalite trinti savo pranešimų šiame forume
Jūs negalite prikabinti failų šiame forume

Ieškoti:
Pereiti į:  

cron