• Страница 1 из 1
  • 1
Форум » Counter-Strike 1.6 » Сервер Counter-Strike 1.6 » Помощь по скриптингу » Ограчение в меню.
Ограчение в меню.
Дата: Четверг, 09.08.2018, 11:15 | Сообщение # 1
Дух ( Новичок )
Offline
  • hennessy
  • Репутация: 0
  • Сообщений:3
  • Пользователь
Добрый день. Подскажите пожалуйста, как сделать так, чтобы предмет из меню админа можно было брать только при определенном количестве зомби? Заранее спасибо!

Код
#include <amxmodx>
#include <amxmisc>
#include <hamsandwich>
#include <fakemeta>
#include <fun>
#include <zombieplague>

new g_item1[33], g_item2[33], g_item3[33], g_item4[33], g_item5[33], g_item6[33], g_item7[33]

native give_plasma(id)
native give_thanatos7(id)
native give_awp_elf(id)

const KEYSMENU = MENU_KEY_1|MENU_KEY_2|MENU_KEY_3|MENU_KEY_4|MENU_KEY_5|MENU_KEY_6|MENU_KEY_7|MENU_KEY_8|MENU_KEY_9|MENU_KEY_0

public plugin_init()
{
   register_plugin   (" [ZP]Boss menu", "1.1" , "1" )
   register_menu("X Menu", KEYSMENU, "menu_main")   
   register_clcmd("/gl_menu", "gl_menu")
   
   register_logevent("fw_new_round", 2, "1=Round_Start")
}

public gl_menu(id)
{
   static menu[512], userflags
   new len
   userflags = get_user_flags(id)
   
   if(userflags & ADMIN_CHAT) 
   {
      len += formatex( menu[ len ] , charsmax( menu ) - len , "\r[\yZM\r] \wСоздатель меню^n\r[\yZM\r] \dZM^n^n" )
      
      if(g_item1 [id]== 0)
         len += formatex(menu [len], charsmax(menu) - len , "\dПрикольные плюшки:^n\r[\y1\r] \wВзять броню \r[+300]^n" )
      else len += formatex(menu [len], charsmax(menu) - len , "\dПрикольные плюшки:^n\r[\y1\r] \dВзять броню \r[+300]^n" )
      
      if(g_item2 [id]== 0)
         len += formatex(menu [len], charsmax(menu) - len , "\r[\y2\r] \wВзять жизни \r[+300]^n" )
      else len += formatex(menu [len], charsmax(menu) - len , "\r[\y2\r] \dВзять жизни \r[+300]^n" )
      
      if(g_item3 [id]== 0)
         len += formatex(menu [len], charsmax(menu) - len , "\r[\y3\r] \wВзять кредиты \r[+9999]^n^n" )
      else len += formatex(menu [len], charsmax(menu) - len , "\r[\y3\r] \dВзять кредиты \r[+9999]^n^n" )
      
      len += formatex(menu [len], charsmax(menu) - len , "\dСоздатель оружие:^n" )

      if(g_item4 [id]== 0)
         len += formatex(menu [len], charsmax(menu) - len , "\r[\y4\r] \wВзять \yPlasma^n" )
      else len += formatex(menu [len], charsmax(menu) - len , "\r[\y4\r] \dВзять \yPlasma^n" )
      
      if(g_item5 [id]== 0)
         len += formatex(menu [len], charsmax(menu) - len , "\r[\y5\r] \wВзять \yThanatos7^n" )
      else len += formatex(menu [len], charsmax(menu) - len , "\r[\y5\r] \dВзять \yThanatos7^n" )
      
      if(g_item6 [id]== 0)
         len += formatex(menu [len], charsmax(menu) - len , "\r[\y6\r] \wВзять \yAWP ELF^n" )
      else len += formatex(menu [len], charsmax(menu) - len , "\r[\y6\r] \dВзять \yAWP ELF^n" )
      
      len += formatex(menu [len], charsmax(menu) - len , "^n\r[\y0\r]\w Выход" )
   }
   
   else 
   {
      len += formatex( menu[ len ] , charsmax( menu ) - len , "\r[\yZM\r] \wСоздатель меню^n\r[\yZM\r] \dZM^n\dПрикольные вещи:^n^n" )
      
      len += formatex(menu [len], charsmax(menu) - len , "\r[\y1\r] \dВзять броню \r[+300]^n" )
      
      len += formatex(menu [len], charsmax(menu) - len , "\r[\y2\r] \dВзять жизни \r[+300]^n" )
      
      len += formatex(menu [len], charsmax(menu) - len , "\r[\y3\r] \dВзять зефирки \r[+9999]^n^n" )
      
      len += formatex(menu [len], charsmax(menu) - len , "\dСоздатель оружие:^n" )

      len += formatex(menu [len], charsmax(menu) - len , "\r[\y4\r] \dВзять \yPlasma^n" )
      
      len += formatex(menu [len], charsmax(menu) - len , "\r[\y5\r] \dВзять \yThanatos7^n" )
      
      len += formatex(menu [len], charsmax(menu) - len , "\r[\y6\r] \dВзять \yAWP Elf^n" )

      len += formatex(menu [len], charsmax(menu) - len , "^n\r[\y0\r]\w Выход^n" )
      
      len += formatex(menu [len], charsmax(menu) - len,"^n\r[\yZM\r] \wВы не \y[\rСоздатель\y] \wигрок!")
   }
      
   set_pdata_int(id , 205 , 0 )
   show_menu(id, KEYSMENU , menu , -1 , "X Menu" )
}

public menu_main(id,key)
{
   if (!is_user_connected(id))
   return PLUGIN_HANDLED;   
   
   static userflags
   userflags = get_user_flags(id)
   
   if(!(userflags & ADMIN_CHAT))
   {
      ChatColor(id, "!y[!gZM!y]!y Вы не !tСоздатель !yигрок. Приобрести можно в !tВК: !gvk.com/")
      return 1
   }
   else if(!is_user_alive(id))
   {
      ChatColor(id, "!y[!gZM!y]!y Недоступно для мертвых.")
      return 1
   }
   
   switch (key)
   {
      case 0:
      {
         if(!is_user_connected(id))
            return PLUGIN_HANDLED;
         else if(zp_get_user_zombie(id) || zp_get_user_survivor(id))
         {
            ChatColor(id, "!y[!gZM!y]!y Доступно только !tЛюдям!y.")
            return PLUGIN_HANDLED;
         }
         else if(g_item1 [id]== 0)
         {
            g_item1 [id]= 1;
            set_pev(id, pev_armorvalue, pev(id, pev_armorvalue) + 300.0);
            gl_menu(id)
         }
         else
         {
            ChatColor(id, "!y[!gZM!y]!y Можно брать только раз за раунд.");
            return PLUGIN_HANDLED;
         }
      }
      case 1:
      {
         if(!is_user_connected(id))
            return PLUGIN_HANDLED;
         else if(zp_get_user_zombie(id) || zp_get_user_survivor(id))
         {
            ChatColor(id, "!y[!gZM!y]!y Доступно только !tЛюдям!y.")
            return PLUGIN_HANDLED;
         }   
         else if(g_item2 [id]== 0)
         {
            g_item2 [id]= 1;
            set_pev(id, pev_health, pev(id, pev_health) + 300.0);
            gl_menu(id)
         }
         else
         {
            ChatColor(id, "!y[!gZM!y]!y Можно брать только раз за раунд.");
            return PLUGIN_HANDLED;
         }
      }
      case 2:
      {
         if(!is_user_connected(id))
            return PLUGIN_HANDLED;
         else if(zp_get_user_zombie(id) || zp_get_user_survivor(id))
         {
            ChatColor(id, "!y[!gZM!y]!y Доступно только !tЛюдям!y.")
            return PLUGIN_HANDLED;
         }   
         else if(g_item3 [id]== 0)
         {
            g_item3 [id]= 1;
            zp_set_user_ammo_packs(id, zp_get_user_ammo_packs(id) + 9999);
            gl_menu(id)
         }
         else
         {
            ChatColor(id, "!y[!gZM!y]!y Можно брать только раз за раунд.");
            return PLUGIN_HANDLED;
         }
      }
      case 3:
      {
         if(!is_user_connected(id))
            return PLUGIN_HANDLED;
         else if(zp_get_user_zombie(id) || zp_get_user_survivor(id))
         {
            ChatColor(id, "!y[!gZM!y]!y Доступно только !tЛюдям!y.")
            return PLUGIN_HANDLED;
         }   
         else if(g_item4 [id]== 0)
         {
            g_item4 [id]= 1;
            give_plasma(id);
         }
         else
         {
            ChatColor(id, "!y[!gZM!y]!y Можно брать только раз за раунд.");
            return PLUGIN_HANDLED;
         }
      }
      case 4:
      {
         if(!is_user_connected(id))
            return PLUGIN_HANDLED;
         else if(zp_get_user_zombie(id) || zp_get_user_survivor(id))
         {
            ChatColor(id, "!y[!gZM!y]!y Доступно только !tЛюдям!y.")
            return PLUGIN_HANDLED;
         }   
         else if(g_item5 [id]== 0)
         {
            g_item5 [id]= 1;
            give_thanatos7(id);
         }
         else
         {
            ChatColor(id, "!y[!gZM!y]!y Можно брать только раз за раунд.");
            return PLUGIN_HANDLED;
         }
      }
      case 5:
      {
         if(!is_user_connected(id))
            return PLUGIN_HANDLED;
         else if(zp_get_user_zombie(id) || zp_get_user_survivor(id))
         {
            ChatColor(id, "!y[!gZM!y]!y Доступно только !tЛюдям!y.")
            return PLUGIN_HANDLED;
         }   
         else if(g_item6 [id]== 0)
         {
            g_item6 [id]= 1;
            give_awp_elf(id);
         }
         else
         {
            ChatColor(id, "!y[!gZM!y]!y Можно брать только раз за раунд.");
            return PLUGIN_HANDLED;
         }
      }   
   }
   
   return PLUGIN_HANDLED;
}

public fw_new_round(id)
{
   for(new id = 0; id < 33; id++)
   {
      if(g_item1 [id]> 0)
      {
         g_item1 [id]-= 1
      }
      if(g_item2 [id]> 0)
      {
         g_item2 [id]-= 1
      }
      if(g_item3 [id]> 0)
      {
         g_item3 [id]-= 1
      }
      if(g_item4 [id]> 0)
      {
         g_item4 [id]-= 1
      }
      if(g_item5 [id]> 0)
      {
         g_item5 [id]-= 1
      }
      if(g_item6 [id]> 0)
      {
         g_item6 [id]-= 1
      }
      if(g_item7 [id]> 0)
      {
         g_item7 [id]-= 1
      }
   }
}

stock ChatColor(const id, const input[], any:...)
{
   new count = 1, players[32]
   static msg[191]
   vformat(msg, 190, input, 3)

   replace_all(msg, 190, "!g", "^4")
   replace_all(msg, 190, "!y", "^1")
   replace_all(msg, 190, "!t", "^3")

   if (id) players[0] = id; else get_players(players, count, "ch")
   {
      for (new i = 0; i < count; i++)
      {
         if (is_user_connected(players[i]))
         {
            message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
            write_byte(players[i]);
            write_string(msg);
            message_end();
         }
      }
   }
}
Сообщение отредактировал hennessy - Четверг, 09.08.2018, 11:18
Дата: Четверг, 09.08.2018, 12:35 | Сообщение # 2
Местный
Offline
  • sllool
  • Репутация: 7
  • Сообщений:78
  • Изгнанный
Надо ставить счетчик фрагов get_user_frags
Дата: Четверг, 09.08.2018, 13:08 | Сообщение # 3
Дух ( Новичок )
Offline
  • hennessy
  • Репутация: 0
  • Сообщений:3
  • Пользователь
Зачем счётчик фрагов, если нужно, чтобы предмет брался при определённом кол-ве зомби в раунде?
Сообщение отредактировал hennessy - Четверг, 09.08.2018, 13:10
Дата: Четверг, 09.08.2018, 13:18 | Сообщение # 4
Скриптер
Мастер
Offline
  • Quin
  • Репутация: 56
  • Сообщений:121
  • Разработчик
  • Статус пользователя
Код
if ( zp_get_zombie_count() >= кол-во зомби )
{
}
Дата: Четверг, 09.08.2018, 13:28 | Сообщение # 5
Дух ( Новичок )
Offline
  • hennessy
  • Репутация: 0
  • Сообщений:3
  • Пользователь
Спасибо.
Форум » Counter-Strike 1.6 » Сервер Counter-Strike 1.6 » Помощь по скриптингу » Ограчение в меню.
  • Страница 1 из 1
  • 1
Поиск:
(threadpage)