Модератор форума: GUNNER161, Panikaha |
Форум » РЕДАКТОР - ArmA 3 » Вопрос - ответ » Тема для небольших вопросов по Arma 3 (взаимопомощь в режиме вопрос-ответ) |
Тема для небольших вопросов по Arma 3 |
› Вторник
› 16.06.2015
› 14:55
› Сообщение #
Вероятно - текст на Кирилице надо сохранить в кодировке UTF-8
|
› Вторник
› 16.06.2015
› 15:05
› Сообщение #
|
› Вторник
› 16.06.2015
› 17:03
› Сообщение #
значит файл Stringtable не там лежит. его место положение критично
https://community.bistudio.com/wiki/CSV_File_Format_-_Stringtables |
› Четверг
› 18.06.2015
› 21:35
› Сообщение #
Slon, с текстом порядок. Не отображается только картинка-превью миссий в кампании. Хотя все сделал по работающим образцам. Картинка самой кампании отображается.
Добавлено (16.06.2015, 19:17) --------------------------------------------- Все, разобрался полностью и со всем. Добавлено (18.06.2015, 21:35) --------------------------------------------- Есть группа group2 которой вейпойнтами задан маршрут. Надо, чтобы группа прекратила движение и перешла к обороне, если ее численность ниже 5. В тригере в условиях активации задано (count units group2) < 5; Что надо написать при активации? Пытался удалить все вейпойнты командой deleteWaypoint [group2, 1]; deleteWaypoint [group2, 2]; deleteWaypoint [group2, 3]; deleteWaypoint [group2, 4]; но они не удаляются. Сообщение отредактировал adw8613 - Четверг, 18.06.2015, 21:41
|
› Четверг
› 18.06.2015
› 22:50
› Сообщение #
Все вейпы вроде как удаляются через
deleteWaypoint [_group, all]; либо while {(count (waypoints _group)) > 0} do { deleteWaypoint ((waypoints _group) select 0); }; Можно попробовать задать в этот момент новый ВП типа "HOLD" или "GUARD" с неким радиусом от командира группы _wp =_group addWaypoint [position (leader _group), 5]; и если я правильно думаю, что текущий всегда имеет индекс 1, [_group, 1] setWaypointType "HOLD"; есно, локальные имена нужно заменить. Может пригодиться на случай, если потом группа все же продолжит маршрут Сообщение отредактировал andrucio - Четверг, 18.06.2015, 22:52
|
› Четверг
› 18.06.2015
› 23:21
› Сообщение #
Условие поинта нужно другое, которое можно отключить внешним воздействием.
Просто глобальная переменная, и записать её условием во всех поинтах. А вот в Активации каждого поинта проверка состава группы и по необходимости блокировка поинтов. пример. переменная Point_Grp_1; инициация переменной (файл init.sqf) Point_Grp_1 = true; активация поинтов (можно вынести в отдельный файл) if ((count units _this) < 5) then { Point_Grp_1 = false; // Блокируем маршрут _gr = group _this; // определяем Группу _pn = currentWaypoint _gr; // определяем номер текущего поинта [_gr, _pn] setWaypointType "GUARD"; // Меняем настройки поинта ................ итд. _gr setCurrentWaypoint [_gr, _pn]; //повторная активация поинта чтобы активировать новые настройки }; |
› Пятница
› 19.06.2015
› 12:10
› Сообщение #
Команда в этом формате не работает. Заметил, что клятые БИСы все поменяли и то, что было нормально для А2, в А3 уже не катит. Slon, не совсем понял. Point_Grp_1 = true; - пишем в ините миссии Это в скрипте или по активации в каждом пойнте: if ((count units _this) < 5) then { Point_Grp_1 = false; // Блокируем маршрут _gr = group _this; // определяем Группу _pn = currentWaypoint _gr; // определяем номер текущего поинта [_gr, _pn] setWaypointType "GUARD"; // Меняем настройки поинта ................ итд. _gr setCurrentWaypoint [_gr, _pn]; //повторная активация поинта чтобы активировать новые настройки }; Запускать скрипт при достижении отрядом каждой точки маршрута? Или без скрипта прописывать это в поле активации каждой точки маршрута? Я правильно понял? |
› Пятница
› 19.06.2015
› 12:55
› Сообщение #
Цитата Point_Grp_1 = true; - пишем в ините миссии Писать в тех поинтах на которых допускается переход в оборону по причине уменьшения кол-ва солдат. текс писался для файла, вызывающая строка as = this execVM "file.sqf" можно записать прямо в поле активации, но заменить в скрипте _this на this в поинте this - это лидер группы |
› Пятница
› 19.06.2015
› 13:26
› Сообщение #
|
› Суббота
› 20.06.2015
› 13:58
› Сообщение #
А если критичное уменьшение колва солдат произойдет между поинтами? все равно до следующего побегут
Разве что параллельным потоком отслеживать, и в нем же описывать нужные действия |
› Суббота
› 20.06.2015
› 14:36
› Сообщение #
Это не критично. В миссии это выглядит так: действуют два отряда. Когда численность второго отряда снижается до 4-х человек, идет радиосообщение, что мол понесли потери, наступать не можем, занимаем оборону. Когда численность отряда игрока снижается до 3-х человек, идет радиосообщение от имени игрока, что задачу надо выполнить не смотря на потери и к отряду игрока присоединяются остатки второго отряда. Когда численность нового отряда снижается до 3-х человек, идет сообщение, что задача не выполнена из-за больших потерь и миссия начинается заново.
|
› Воскресенье
› 21.06.2015
› 19:44
› Сообщение #
Сделал скрипт перевооружения https://yadi.sk/d/rIcVM5VZhP7zW. Скрипт находится в папке rearm, указываю этот скрипт в ините у солдата : [This]exec "rearm\palyer2". Игра видит скрипт, но солдат не перевооружается, то есть снаряжение не меняется. В чем может быть ошибка?
Добавлено (21.06.2015, 19:43) Добавлено (21.06.2015, 19:44) |
› Воскресенье
› 21.06.2015
› 19:47
› Сообщение #
Kazachok,
_unit = _this Select 0 removeAllWeapons this; Дальше продолжать? |
› Воскресенье
› 21.06.2015
› 21:44
› Сообщение #
andrucio, продолжайте, не такой уж я и монстр в скриптах
Добавлено (21.06.2015, 21:44) |
› Воскресенье
› 21.06.2015
› 23:57
› Сообщение #
Kazachok, ничего монструозного в этом нет, только внимательность.. особенно касается операций копипаста (в частности, сделанного в Арсенале).
_unit = _this Select 0 - переменная для передаваемого объекта определена, хорошо. А дальше removeAllWeapons this; - используется неопределенное this. Почему? (уж тогда _this.. но отладчик ругаться будет). Все следующие действия надо проводить именно с переменной _unit, то есть this заменить на _unit.. здесь и далее. вероятно скрипт был написан для размещения в ините объекта.(с) Slon Сообщение отредактировал andrucio - Воскресенье, 21.06.2015, 23:59
|
| |||
Чат сайта |