Опять я приперся с своими замечаниями и со своей версией ))
Так если ололо и URL обновления не планируется, зачем добавлять вообще все это? Вырезал, хотя вполне возможно что это и можно оставить...
Первая эпичная ошибка, которую заметил народ - в архиве ты папку назвал [include] - видимо пересидел с тоталкоммандером...
Во-вторых, я НИ В ОДНОМ МЕСТЕ где ты используешь CPrintToChatAll не нашел тегов MoreColors, а в функции SpawnBlocks() ты даже сам же заменяешь цвета, но при этом все равно используешь функцию CPrintToChatAll. В итоге вообще безболезненно можно заменить CPrintToChatAll на PrintToChatAll, удалить #include <morecolors> и плагин облегчится на несколько килобайт.
----------------------------------------------------------------------------------------------------------------
Задумываясь над оптимизацией плагина, я подумал - а почему бы не разделить плагин на два - ядро и настройки? Потому что после начальной установки (которой может и не быть, если установка ограждений либо взята уже готовая, либо сделана при помощи хаммера) функции установки становятся не нужны.
Полное разделение пока не сделал, да и пока еще не до конца представил, как бы его сделать, но уже сделал вариант ядра плагина.
Принцип такой: Ставим обычную версию, настраиваем, потом удаляем плагин Blocker_passes.smx и ставим этот (blocker_passes_core.smx). В этом плагине нет никаких возможностей сохранения или изменения преград из игры, из конфигов остались sm_bp_enable, sm_bp_anonce, sm_bp_amode, sm_bp_minplayer, sm_bp_onlyct. Так же он не подгружает props_menu.txt, в общем чистый функцинал блокировки, в нем нет morecolors и вообще поддержки кастомных цветов текста, то есть "Text" в конфиге карты должен иметь голый текст, например "Проходы на Б заблокированы!", отсутствует изменение sv_tags.
В планах попробовать написать отдельно управляющий плагин, который можно будет загружать при настройке и выгружать после нее, и организовать между ними взаимодействие
Кстати, SDKHooks для этой версии плагина не требуется