Здравствуйте. Мне нужна разминка на ножах, не ограниченная по времени, которая закончится после взрыва/обезвреживания бомбы или после победы одной из команд и, чтобы после всего этого произошёл рестарт. Прочее: * В начале разминки нужно HUD сообщение сверху по центру экрана переливающееся с белого в зелёный цвет: KNIFE! KNIFE! KNIFE!. * В конце разминки нужно HUD сообщение сверху по центру экрана переливающееся с белого в зелёный цвет: GO! GO! GO!. Также хотелось бы 5 сообщений в чат: * В Начале разминки: !n[!gWarmUP!n] !tKNIFE! KNIFE! KNIFE! * В Конце разминки: !n[!gWarmUP!n] !tGO! GO! GO! *** Интервал выведения сообщений в чат: 0,5 секунд. Естественно нужна полная блокировка любого оружие кроме: ножа и бомбы. + Авто-отключение плагина на картах: 35hp_, awp_, aim_, fy_, 1hp_. + Чтобы плагин начинал работать при онлайне не ниже 4-х человек. + Каждый игрок во время разминки может зайти в игру в любое время. + Хотелось бы ещё пару CVAR'ов: - 1. kr_bomb "1/0" - Возможность ставить бомбу. - 2. kr_restart "1/2/3" - Кол-во рестартов после разминки.
Я такой плагин не видел, есть похожий, knife round, только после него рестарт не происходит, получается эта разминка вместо пистолетки, а это не то что мне нужно.
Вообще вот код knife round'а: Спойлер #include new const PLUGIN[] = "Knife Round" new const VERSION[] = "1.6b" new const AUTHOR[] = "HardY" new const g_HudMsgStart[] = "KNIFE! KNIFE! KNIFE!" new const g_HudMsgEnd[] = "GO! GO! GO!" new bool:g_IsKnifeRound new bool:g_IsCommencing new g_Mode, p_Mode new g_Timer, p_Timer new g_SyncMsgObj public plugin_init() { register_plugin(PLUGIN, VERSION, AUTHOR) register_event("TextMsg", "evGameCommencing", "a", "2=#Game_Commencing") register_event("CurWeapon", "evCurWeapon", "be", "1=1", "2!29") register_event("HLTV", "evNewRound", "a", "1=0", "2=0") register_logevent("evStartRound", 2, "1=Round_Start") register_logevent("evRestartRound", 2, "1&Restart_Round_") g_Mode = register_cvar("kr_mode", "1") g_Timer = register_cvar("kr_timer", "0") g_SyncMsgObj = CreateHudSyncObj() } public plugin_cfg() { p_Mode = get_pcvar_num(g_Mode) p_Timer = get_pcvar_num(g_Timer) } public evGameCommencing() { g_IsCommencing = true } public evNewRound() { if(!g_IsKnifeRound) return if(task_exists(348916)) remove_task(348916) set_hudmessage(0, 225, 0, -1.0, 0.30, 2, 2.0, 6.0, _, _, -1) ShowSyncHudMsg(0, g_SyncMsgObj, g_HudMsgEnd) g_IsCommencing = false g_IsKnifeRound = false pause("ad") } public evStartRound() { if (!g_IsCommencing) return g_IsKnifeRound = true if (p_Timer >= 30) set_task(float(p_Timer), "evNewRound", 348916) set_hudmessage(0, 225, 0, -1.0, 0.30, 2, 2.0, 6.0, _, _, -1) ShowSyncHudMsg(0, g_SyncMsgObj, g_HudMsgStart) } public client_spawn(id) { if (!g_IsCommencing) return force_knife(id) } public evRestartRound() { if (!g_IsKnifeRound) return g_IsKnifeRound = false } public evCurWeapon(id) { if (!g_IsCommencing) return static weapon weapon = get_user_weapon(id) switch(p_Mode) { case 1: if (weapon == CSW_C4) return case 2: if (weapon == CSW_HEGRENADE || weapon == CSW_FLASHBANG || weapon == CSW_SMOKEGRENADE) return case 3: if (weapon == CSW_C4 || weapon == CSW_HEGRENADE || weapon == CSW_FLASHBANG || weapon == CSW_SMOKEGRENADE) return } force_knife(id) } force_knife(id) { engclient_cmd(id, "weapon_knife") } Только в нём рестарта и того что я ещё выше написал тоже нету...