[Feature Request] Наследование прав
Проблема
Если модулей, как и групп, набирается приличное количество - конфиг с группами разрастается до неприличных размеров.
Вариант решения
Добавить возможность указать в настройках группы, что все привилегии должны быть наследованы от уже имеющейся группы.
Для этого добавить ключ аля #extends.
Так же было бы неплохо добавить возможность добавлять несколько групп в наследуемые, но это уже либо перечислять их названия через ; (что некрасиво само по себе выглядит), либо добавить возможность объявлять несколько #extends (требуется перенос с KeyValues на SMCParser).
Пример конфига с этим ключом:
"VIP_GROUPS"
{
"Generic" // for sell
{
"TauntEm_AllTaunts" "1" // все насмешки
"TF2_KillStreaks" "1" // возможность юзать киллстрик
"CCC" "1" // кастом чат колорс
"TF2_DistortedHalloweenVoice" "1" // искажённый хэллоуинский голос
"TF2_HalloweenFootprints" "1" // следы от ног
"TF2_VSH_DontBeHale" "1" // возможность не быть боссом
"AustraliumWeapons" "1" // возможность изменять окраску оружия в золотое, если поддерживается оружием
"GoldStatues" "1" // превращать трупы в золотые статуи
}
"Developer" // reserved for Kruzya accounts. NO ONE SHOULD BE GIVEN THIS GROUP!
{
"#extends" "Generic" // наследовать все права от Generic
"Dispenser_Metal" "1" // ТЕСТОВАЯ ФИЧА: блокировка возможности п**дить металл другими инженерами из раздатчика
"Dispenser_Ammo" "1" // ТЕСТОВАЯ ФИЧА: блокировка возможности брать патроны из раздатчика
"Dispenser_Heal" "1" // ТЕСТОВАЯ ФИЧА: блокировка возможности получать лечение от раздатчика
}
}
Пользователь с группой Developer получает доступ ко всем функциям группы Generic + свои уникальные.
Отличная идея. Реализую в следующей версии.