block load
{
   es_xmexec ../addons/eventscripts/props_mod/props.cfg

   keygroupremove p_baz
   es_xkeygroupcreate p_baz

   es_xset e 0
   es_exists e saycommand server_var(p_menu)
   ifx false(e) do
   {
      es_regsaycmd server_var(p_menu) props_mod/vuzov_menu
   }
   es_exists e clientcommand server_var(p_menu)
   ifx false(e) do
   {
      es_regclientcmd server_var(p_menu) props_mod/vuzov_menu
   }
   es_exists e clientcommand server_var(p_del)
   ifx false(e) do
   {
      es_regclientcmd server_var(p_del) props_mod/say_del
   }
   es_xexists e script popup
   ifx false(e) do
   {
      es_xload popup
   }

   popup create pmenu1
   popup create pmenu2
   popup create pmenu3                                       // by Schmidt
   popup create pmenu4
   popup create pmenu5

   popup addline pmenu1 "Props Меню [стр 1]"
   popup addline pmenu1 " "
   popup addline pmenu1 "->1. Маленькая коробка"
   popup addline pmenu1 "->2. Большая коробка"
   popup addline pmenu1 "->3. Бочка пропана"
   popup addline pmenu1 "->4. Белый стол"
   popup addline pmenu1 "->5. Автомат с водой"
   popup addline pmenu1 "->6. Камень"
   popup addline pmenu1 "->7. Ящик с фруктами"
   popup addline pmenu1 "->8. Фонтан"
   popup addline pmenu1 " "
   popup addline pmenu1 "->9. >> Дальше >>"
   popup addline pmenu1 " "
   popup addline pmenu1 "->0. Выход"

   popup addline pmenu2 "Props Меню [стр 2]"
   popup addline pmenu2 " "
   popup addline pmenu2 "->1. Красная лампа"
   popup addline pmenu2 "->2. Диван"
   popup addline pmenu2 "->3. Фонарный столб"
   popup addline pmenu2 "->4. Танк"
   popup addline pmenu2 "->5. Пачка денег"
   popup addline pmenu2 "->6. Белая машина"
   popup addline pmenu2 "->7. Лестница"
   popup addline pmenu2 "->8. Дрова"
   popup addline pmenu2 " "
   popup addline pmenu2 "->9. << Назад <<"
   popup addline pmenu2 " "
   popup addline pmenu2 "->0. Выход"

   popup addline pmenu3 "Counter-Terrorists обязан:"
   popup addline pmenu3 " "
   popup addline pmenu3 "- Построить себе сооружение, в котором"
   popup addline pmenu3 "будет отбиваться от T (должен быть вход/выход)"
   popup addline pmenu3 " "
   popup addline pmenu3 "- Стрелять в T можно только тогда,"
   popup addline pmenu3 "когда он находится в зоне сооружения"
   popup addline pmenu3 " "
   popup addline pmenu3 "- Запрещено ломать чужие сооружения,"
   popup addline pmenu3 "застраивать Респ врага, вылазить из нычки"
   popup addline pmenu3 " "
   popup addline pmenu3 "x. Назад"

   popup addline pmenu4 "Terrorists обязан:"
   popup addline pmenu4 " "
   popup addline pmenu4 "- Искать и убивать СТ"
   popup addline pmenu4 " "
   popup addline pmenu4 "x. Назад"

   popup addline pmenu5 "Главное Меню"
   popup addline pmenu5 " "
   popup addline pmenu5 "->1. Правила для T"
   popup addline pmenu5 "->2. Правила для CT"
   popup addline pmenu5 " "
   popup addline pmenu5 "3. Props Меню"
   popup addline pmenu5 " "
   popup addline pmenu5 "0. Выход"

   popup menuselect pmenu1 props_mod/pmenu1
   popup menuselect pmenu2 props_mod/pmenu2
   popup menuselect pmenu3 props_mod/pmenu3
   popup menuselect pmenu4 props_mod/pmenu4
   popup menuselect pmenu5 props_mod/pmenu5

   es_xset p_x 0
   es_xset p_nick 0
   es_xset p_dead 0
   es_xset p_team 0
   es_xset p_f 0
   es_xset p_id 0
   es_xset p_get 0
   es_xset p_ms1 0
   es_xset p_ms2 0
   es_xformatv p_ms1 "#lightgreenProps Меню: #green%1, #lightgreenудаление предмета: #green%2" p_menu p_del
   es_xformatv p_ms2 "#lightgreenВпишите в консоль: [#default bind x %1 #lightgreen] и на '#defaultX#lightgreen' удаляйте предметы" p_del
}

block pmenu1
{
   ifx true(p_go) do
   {
      if (server_var(_popup_choice) in "12345678") do
      {
         es_getplayerprop p_dead server_var(_popup_userid) "CCSPlayer.baseclass.pl.deadflag"
         ifx false(p_dead) do
         {
            es_getplayerprop p_team server_var(_popup_userid) "CBaseEntity.m_iTeamNum"
            if (server_var(p_team) = 3) do
            {
               if (server_var(p_x) < server_var(p_limit)) do
               {
                  es popup send pmenu1 server_var(_popup_userid)
                  if (server_var(p_msg_create) = 1) then es_xgetplayername p_nick server_var(_popup_userid)
                  es_xmath p_x + 1
                  if (server_var(p_muz_create) != 0) then es_xplaysound server_var(_popup_userid) server_var(p_muz_create) 1

                  /////////////////////

                  if (server_var(_popup_choice) = 1) do
                  {
                     es_prop_dynamic_create server_var(_popup_userid) props/cs_militia/crate_extrasmallmill
                     es_keycreate p_baz server_var(eventscripts_lastgive)
                     ifx true(p_msg_create) do
                     {
                        es_xformatv p_f "#lightgreen[Строители] #green%1 #lightgreenсоздал маленькую коробку" p_nick
                        es_msg #multi server_var(p_f)
                     }
                  }
                  if (server_var(_popup_choice) = 2) do
                  {
                     es_prop_dynamic_create server_var(_popup_userid) props/cs_militia/crate_extralargemill
                     es_keycreate p_baz server_var(eventscripts_lastgive)
                     ifx true(p_msg_create) do
                     {
                        es_xformatv p_f "#lightgreen[Строители] #green%1 #lightgreenсоздал большую коробку" p_nick
                        es_msg #multi server_var(p_f)
                     }
                  }
                  if (server_var(_popup_choice) = 3) do
                  {
                     es_prop_dynamic_create server_var(_popup_userid) props/de_train/Processor_NoBase
                     es_keycreate p_baz server_var(eventscripts_lastgive)
                     ifx true(p_msg_create) do
                     {
                        es_xformatv p_f "#lightgreen[Строители] #green%1 #lightgreenсоздал бочку пропана" p_nick
                        es_msg #multi server_var(p_f)
                     }
                  }
                  if (server_var(_popup_choice) = 4) do
                  {
                     es_prop_dynamic_create server_var(_popup_userid) props/cs_militia/table_kitchen
                     es_keycreate p_baz server_var(eventscripts_lastgive)
                     ifx true(p_msg_create) do
                     {
                        es_xformatv p_f "#lightgreen[Строители] #green%1 #lightgreenсоздал стол" p_nick
                        es_msg #multi server_var(p_f)
                     }
                  }
                  if (server_var(_popup_choice) = 5) do
                  {
                     es_prop_dynamic_create server_var(_popup_userid) props/cs_office/vending_machine
                     es_keycreate p_baz server_var(eventscripts_lastgive)
                     ifx true(p_msg_create) do
                     {
                        es_xformatv p_f "#lightgreen[Строители] #green%1 #lightgreenсоздал автомат с водой" p_nick
                        es_msg #multi server_var(p_f)
                     }
                  }
                  if (server_var(_popup_choice) = 6) do
                  {
                     es_prop_dynamic_create server_var(_popup_userid) props/de_inferno/de_inferno_boulder_01
                     es_keycreate p_baz server_var(eventscripts_lastgive)
                     ifx true(p_msg_create) do
                     {
                        es_xformatv p_f "#lightgreen[Строители] #green%1 #lightgreenсоздал камень" p_nick
                        es_msg #multi server_var(p_f)
                     }
                  }
                  if (server_var(_popup_choice) = 7) do
                  {
                     es_prop_dynamic_create server_var(_popup_userid) props/cs_militia/food_stack
                     es_keycreate p_baz server_var(eventscripts_lastgive)
                     ifx true(p_msg_create) do
                     {
                        es_xformatv p_f "#lightgreen[Строители] #green%1 #lightgreenсоздал ящик с фруктами" p_nick
                        es_msg #multi server_var(p_f)
                     }
                  }
                  if (server_var(_popup_choice) = 8) do
                  {
                     es_prop_dynamic_create server_var(_popup_userid) props/de_inferno/fountain
                     es_keycreate p_baz server_var(eventscripts_lastgive)
                     ifx true(p_msg_create) do
                     {
                        es_xformatv p_f "#lightgreen[Строители] #green%1 #lightgreenсоздал фонтан" p_nick
                        es_msg #multi server_var(p_f)
                     }
                  }
               }
               else do
               {
                  es_tell server_var(_popup_userid) "Простите, достигнут лимит предметов!"
                  es popup send server_var(_popup_name) server_var(_popup_userid)
               }
            }
            else es_xtell server_var(_popup_userid) "Вы должны быть в команде Контр-Террористов!"
         }
         else es_xtell server_var(_popup_userid) "Вы должны быть живы!"
      }
      if (server_var(_popup_choice) = 9) then popup send pmenu2 server_var(_popup_userid)
   }
   else es_xtell server_var(_popup_userid) "Сейчас строить запрещено!"
}

block pmenu2
{
   ifx true(p_go) do
   {
      if (server_var(_popup_choice) in "12345678") do
      {
         es_getplayerprop p_dead server_var(_popup_userid) "CCSPlayer.baseclass.pl.deadflag"
         ifx false(p_dead) do
         {
            es_getplayerprop p_team server_var(_popup_userid) "CBaseEntity.m_iTeamNum"
            if (server_var(p_team) = 3) do
            {
               if (server_var(p_x) < server_var(p_limit)) do
               {
                  es popup send pmenu2 server_var(_popup_userid)
                  if (server_var(p_msg_create) = 1) then es_xgetplayername p_nick server_var(_popup_userid)
                  es_xmath p_x + 1
                  if (server_var(p_muz_create) != 0) then es_xplaysound server_var(_popup_userid) server_var(p_muz_create) 1

                  /////////////////////

                  if (server_var(_popup_choice) = 1) do
                  {
                     es_prop_dynamic_create server_var(_popup_userid) props/de_nuke/emergency_lighta
                     es_keycreate p_baz server_var(eventscripts_lastgive)
                     ifx true(p_msg_create) do
                     {
                        es_xformatv p_f "#lightgreen[Строители] #green%1 #lightgreenсоздал красную лампу" p_nick
                        es_msg #multi server_var(p_f)
                     }
                  }
                  if (server_var(_popup_choice) = 2) do
                  {
                     es_prop_dynamic_create server_var(_popup_userid) props/cs_militia/couch
                     es_keycreate p_baz server_var(eventscripts_lastgive)
                     ifx true(p_msg_create) do
                     {
                        es_xformatv p_f "#lightgreen[Строители] #green%1 #lightgreenсоздал диван" p_nick
                        es_msg #multi server_var(p_f)
                     }
                  }
                  if (server_var(_popup_choice) = 3) do
                  {
                     es_prop_dynamic_create server_var(_popup_userid) props_c17/lamppost03a_off
                     es_keycreate p_baz server_var(eventscripts_lastgive)
                     ifx true(p_msg_create) do
                     {
                        es_xformatv p_f "#lightgreen[Строители] #green%1 #lightgreenсоздал фонарный столб" p_nick
                        es_msg #multi server_var(p_f)
                     }
                  }
                  if (server_var(_popup_choice) = 4) do
                  {
                     es_prop_dynamic_create server_var(_popup_userid) props_vehicles/apc001
                     es_keycreate p_baz server_var(eventscripts_lastgive)
                     ifx true(p_msg_create) do
                     {
                        es_xformatv p_f "#lightgreen[Строители] #green%1 #lightgreenсоздал танк" p_nick
                        es_msg #multi server_var(p_f)
                     }
                  }
                  if (server_var(_popup_choice) = 5) do
                  {
                     es_prop_dynamic_create server_var(_popup_userid) props/cs_assault/moneypallet
                     es_keycreate p_baz server_var(eventscripts_lastgive)
                     ifx true(p_msg_create) do
                     {
                        es_xformatv p_f "#lightgreen[Строители] #green%1 #lightgreenсоздал пачку денег" p_nick
                        es_msg #multi server_var(p_f)
                     }
                  }
                  if (server_var(_popup_choice) = 6) do
                  {
                     es_prop_dynamic_create server_var(_popup_userid) props/cs_militia/car_militia
                     es_keycreate p_baz server_var(eventscripts_lastgive)
                     ifx true(p_msg_create) do
                     {
                        es_xformatv p_f "#lightgreen[Строители] #green%1 #lightgreenсоздал белую машину" p_nick
                        es_msg #multi server_var(p_f)
                     }
                  }
                  if (server_var(_popup_choice) = 7) do
                  {
                     es_prop_dynamic_create server_var(_popup_userid) props_industrial/bridge_deck
                     es_keycreate p_baz server_var(eventscripts_lastgive)
                     ifx true(p_msg_create) do
                     {
                        es_xformatv p_f "#lightgreen[Строители] #green%1 #lightgreenсоздал лестницу" p_nick
                        es_msg #multi server_var(p_f)
                     }
                  }
                  if (server_var(_popup_choice) = 8) do
                  {
                     es_prop_dynamic_create server_var(_popup_userid) props/cs_militia/logpile2
                     es_keycreate p_baz server_var(eventscripts_lastgive)
                     ifx true(p_msg_create) do
                     {
                        es_xformatv p_f "#lightgreen[Строители] #green%1 #lightgreenсоздал дрова" p_nick
                        es_msg #multi server_var(p_f)
                     }
                  }
               }
               else do
               {
                  es_tell server_var(_popup_userid) "Простите, достигнут лимит предметов!"
                  es popup send server_var(_popup_name) server_var(_popup_userid)
               }
            }
            else es_xtell server_var(_popup_userid) "Вы должны быть в команде Контр-Террористов!"
         }
         else es_xtell server_var(_popup_userid) "Вы должны быть живы!"
      }
      if (server_var(_popup_choice) = 9) then popup send pmenu1 server_var(_popup_userid)
   }
   else es_xtell server_var(_popup_userid) "Сейчас строить запрещено!"
}

block pmenu3
{
   es popup send pmenu5 server_var(_popup_userid)
   es_playsound server_var(_popup_userid) server_var(p_muz_create) 1
}

block pmenu4
{
   es popup send pmenu5 server_var(_popup_userid)
   es_playsound server_var(_popup_userid) server_var(p_muz_create) 1
}

block pmenu5
{
   if (server_var(_popup_choice) = 1) then popup send pmenu4 server_var(_popup_userid)
   if (server_var(_popup_choice) = 2) then popup send pmenu3 server_var(_popup_userid)
   if (server_var(_popup_choice) = 3) do
   {
      ifx true(p_go) do
      {
         es popup send pmenu1 server_var(_popup_userid)
      }
      else es_xtell server_var(_popup_userid) "Сейчас строить запрещено!"
   }
   if (server_var(_popup_choice) in "456789") then popup send pmenu5 server_var(_popup_userid)
   es_playsound server_var(_popup_userid) server_var(p_muz_create) 1
}

/////////////////////

event round_start
{
   es_xset p_x 0
   es_xset p_go 1
   es_set p_sec server_var(p_sec_ct)
   es_centermsg server_var(p_sec)
   es_xdelayed 1 es_xdoblock props_mod/timer
}

event round_end
{
   es_xset p_go 0
   ifx true(p_team_swap) do
   {
      if (event_var(winner) in "23") do
      {
         es_xgetplayercount p_team 2
         ifx true(p_team) do
         {
            es_xgetplayercount p_team 3
            ifx true(p_team) do
            {
               es_xcreateplayerlist users
               es_xkeygroupfilter users not teamid 1
               es_xforeachkey s in users "es_xdoblock props_mod/swap_team"
               es_xkeygroupdelete users
            }
         }
      }
   }
   es_xkeygroupdelete p_baz
   es_xkeygroupcreate p_baz
}

block swap_team
{
   es_sexec server_var(s) menuselect 0
   es_getplayerteam p_team server_var(s)
   es_changeteam server_var(s) 1
   if (server_var(p_team) = 2) then es_xchangeteam server_var(s) 3
   if (server_var(p_team) = 3) then es_xchangeteam server_var(s) 2
}

block timer
{
   ifx true(p_go) do
   {
      es_xmath p_sec - 1
      if (server_var(p_sec) > 0) do
      {
         es_centermsg server_var(p_sec)
         es_xdelayed 1 es_xdoblock props_mod/timer
      }
      else do
      {
         es_xset p_go 0
         es_xcreateplayerlist pl
         es_xkeygroupfilter pl only isdead 0
         es_xforeachkey p in pl "es_setplayerprop server_var(p) CBasePlayer.m_lifeState 512;if (server_var(p_typ_freez) = 1) then playerset freeze server_var(p) 0"
         es_xkeygroupdelete pl
         es_xmsg #green "Бессмертие отключено! Строить запрещено! Поехали!"
      }
   }
}

event player_spawn
{
   if (event_var(es_userteam) = 2) do
   {
      es playerset cash event_var(userid) server_var(p_cash_t)
      es_delayed 0 es_xsetplayerprop event_var(userid) "CBasePlayer.m_lifeState" 0
      if (server_var(p_typ_freez) = 1) then playerset freeze event_var(userid) 1
   }
   if (event_var(es_userteam) = 3) do
   {
      es_delayed .5 es_xsexec event_var(userid) say server_var(p_menu)
      if (server_var(p_buy_ct) = 0) then playerset cash event_var(userid) 0
      es playerget weaponindex p_get event_var(userid) weapon_usp
      es_remove server_var(p_get)
      es_delayed 0 es_xgive event_var(userid) server_var(p_gun_ct)
      es_delayed 0 es_xsetplayerprop event_var(userid) "CBasePlayer.m_lifeState" 0
      ifx true(p_msg_ct_spawn) do
      {
         es_delayed 1 es_xtell event_var(userid) #multi server_var(p_ms1)
         es_delayed 1 es_xtell event_var(userid) #multi server_var(p_ms2)
      }
   }
}

block vuzov_menu
{
   es_xgetcmduserid p_id
   es_getplayerprop p_team server_var(p_id) "CBaseEntity.m_iTeamNum"
   if (server_var(p_team) = 3) do
   {
      es_getplayerprop p_dead server_var(p_id) "CCSPlayer.baseclass.pl.deadflag"
      ifx false(p_dead) do
      {
         es_sexec server_var(p_id) menuselect 0
         es_delayed 0.01 popup send pmenu5 server_var(p_id)
      }
      else es_xtell server_var(_popup_userid) "Вы должны быть живы!"
   }
   else es_xtell server_var(_popup_userid) "Вы должны быть в команде Контр-Террористов!"
}

// PROP DELETE

block say_del
{
   es_xgetcmduserid p_id
   es_getplayerprop p_team server_var(p_id) "CBaseEntity.m_iTeamNum"
   if (server_var(p_team) = 3) do
   {
      es_getplayerprop p_dead server_var(p_id) "CCSPlayer.baseclass.pl.deadflag"
      ifx false(p_dead) do
      {
         es_entsetname server_var(p_id) xprop
         es_xforeachkey k in p_baz "es_xdoblock props_mod/prop_del"
      }
      else es_xtell server_var(_popup_userid) "Вы должны быть живы!"
   }
   else es_xtell server_var(_popup_userid) "Вы должны быть в команде Контр-Террористов!"
}

block prop_del
{
   es_entitygetvalue p_get server_var(k) targetname
   if (server_var(p_get) = xprop) do
   {
      es_remove server_var(k)
      es_keydelete p_baz server_var(k)
      es_xmath p_x - 1
   }
}

block unload
{
   es_unregsaycmd server_var(p_menu)
   es_unregclientcmd server_var(p_menu)
   es_unregclientcmd server_var(p_del)
   es_xkeygroupdelete p_baz
   popup delete pmenu1
   popup delete pmenu2
   popup delete pmenu3
   popup delete pmenu4
   popup delete pmenu5
}
