• Страница 1 из 1
  • 1
Форум » Мастерская » В помощь картоделу » Скрипты » FaceControl
FaceControl
Difo
Суббота, 09.05.2020, 15:49
1
Онлайн
Администрация
Актуальная версия: v0.3 (--.09.2020)
Ссылка на загрузку <- тут пока лежит v0.2

Зачем?
Если картодел считает, что негры в армии РФ/белые пираты Сомали/тактические наушники во Вьетнаме нарушают атмосферу на его миссии, то он может воспользоваться этим скриптом и проконтролировать используемые игроками лица и маски.

Как использовать?
Перенести папку "functions" из архива в миссию, затем создать в корне файл "initPlayerLocal.sqf", и написать в него следующую строку:
Код
[] call compile preprocessFileLineNumbers "functions\FaceControl\fc_main.sqf";

Далее идем в папку со скриптом и видим там 4 файла:
available_faces.sqf
available_goggles.sqf
fc_main.sqf
fc_setIdentity.sqf


Необходимо заполнить файлы available_faces.sqf и available_goggles.sqf.
В первом файле перечисляются списки лиц и он уже готов к использованию, так как все имеющиеся в ванильной игре лица сгруппированы, и картоделу нет острой необходимости делать собственные.

Файл available_goggles.sqf содержит списки доступных очков и заполняется аналогично available_faces.sqf, исходя из личных требований картодела.

Для примера заполню его таким образом:
Код
goggles_vanilla_blufor_list = [
   "G_Lowprofile",
   "G_Combat",
   "G_Combat_Goggles_tna_F"
];
goggles_vanilla_opfor_list = [
   "G_Balaclava_combat",
   "G_Balaclava_oli",
   "G_Balaclava_lowprofile",
   "G_Balaclava_blk",
   "G_Bandanna_tan",
   "G_Bandanna_khk",
   "G_Bandanna_aviator",
   "G_Bandanna_beast",
   "G_Bandanna_tan",
   "G_Bandanna_oli",
   "G_Bandanna_shades",
   "G_Bandanna_blk",
   "G_Bandanna_sport"
];
goggles_vanilla_additional_list = [
   "G_Aviator",
   "G_Spectacles",
   "G_Spectacles_Tinted",
   "G_Shades_Black",
   "G_Shades_Red",
   "G_Shades_Blue"
];
goggles_vanilla_blufor_list - защитные очки
goggles_vanilla_opfor_list - банданы и балаклавы
goggles_vanilla_additional_list - очки

Далее открываем fc_main.sqf и находим там такие строки:
Код
_available_faces_west = [];
_available_faces_east = [];
_available_faces_resistance = [];
_available_faces_civilian = [];

_available_goggles_west = [];
_available_goggles_east = [];
_available_goggles_resistance = [];
_available_goggles_civilian = [];

_default_goggles_west = [];
_default_goggles_east = [];
_default_goggles_resistance = [];
_default_goggles_civilian = [];
_available_faces_... - здесь перечисляются все списки с разрешенными к использованию лицами для каждой стороны. Если лицо не соответствует указанному фильтру, то оно случайным образом заменяется на любое другое, указанное в привязанных списках.
_available_goggles_... - здесь перечисляются все списки с разрешенными к использованию очками для каждой стороны. Если очки не соответствует указанному фильтру, то в зависимости от значения в _default_goggles_... будут удалены или заменены на разрешенные.
_default_goggles_... - здесь перечисляются все списки или класс-неймы очков, которые будут выданы игроку, если выбранные им в настройке профиля не соответствуют фильтру.

Теперь для примера:
Код
_available_faces_west = faces_american;
_available_faces_east = faces_white_general;
_available_faces_resistance = faces_general + faces_general_camo;
_available_faces_civilian = [];

_available_goggles_west = goggles_vanilla_blufor_list;
_available_goggles_east = [""] + goggles_vanilla_opfor_list + goggles_vanilla_additional_list;
_available_goggles_resistance = goggles_vanilla_blufor_list + goggles_vanilla_opfor_list + goggles_vanilla_additional_list;
_available_goggles_civilian = [""];

_default_goggles_west  = ["G_Lowprofile"];
_default_goggles_east = [""] + goggles_vanilla_opfor_list;
_default_goggles_resistance = [];
_default_goggles_civilian = [];
_available_faces_...
У синей и красной стороны все достаточно просто.
У зеленой стороны похожая ситуация, но с комбинированием двух списков. faces_general комбинирует все доступные лица в один список, и может использоваться для того чтобы не ограничивать игроков в самовыражении, но ограничить использование скрытых лиц, установленных с помощью редактирование конфига(например лицо Миллера из компании, которое некорректно отображается со шлемами).
Пустые квадратные скобки у гражданских означают, что для этой стороны никаких проверок не выполняется и эта сторона может использовать любые лица.
_available_goggles_...
Синей стороне задан опять один список. В этом случае, если у игрока очки на соответствуют фильтру или у него их вообще нет, то в зависимости от значений в _default_goggles_west, они будут удалены или заменены на другие.
Игрокам красной стороны разрешено носить очки из двух списков, пустые скобки ([""]) означают, что если игрок не выбрал в настройках профиля никаких очков, то и на миссии он так же может быть без них.
У зеленой стороны скомбинировано несколько списков, механика остается та же что у синей стороны.
Гражданским запрещено носить какие либо очки или маски.
Если указать какой-то стороне пустые квадратные скобки, то как и в случае с лицами, никаких проверок проводится не будет.
_default_goggles_...
Если очки бойца синей стороны не соответствуют фильтру, то ему будут выданы строго указанные в квадратных скобках. При необходимости можно указать несколько через запятую:
Код
_default_goggles_west = ["G_Combat", "G_Combat_Goggles_tna_F"];
Красная сторона имеет схожий с фильтром список, но без использования goggles_vanilla_additional_list. Если пролистать вверх, то видно, что в этом списке перечислены очки, имеющие цветовой фильтр. Игрок вряд ли обрадуется такому визуальному эффекту и просто выбросит такие очки. Поэтому если он сам решил поставить себе такие очки в профиле, то мы его осуждать за это не будем, но другим игрокам их выдавать тоже не станем.
Пустые скобки для зеленой стороны означают, что все очки, не соответствующие фильтру, будут просто удаляться.
Если при отключенной проверке в _available_goggles_... указать очки в _default_goggles_..., то очки из последнего будут выданы, если у игрока ничего не выбрано в настройках профиля.

ТУТ ПОЗЖЕ БУДУТ ОПИСАНЫ ДОПОЛНИТЕЛЬНЫЕ ПАРАМЕТРЫ

Пятьдесят оттенков зеленого
 
Форум » Мастерская » В помощь картоделу » Скрипты » FaceControl
  • Страница 1 из 1
  • 1
Поиск:


Правила чата
Мини-чат
+Мини-чат
0