Модератор форума: Slon |
Форум » РЕДАКТОР - ArmA 2 » Скрипты » Вопросы по скриптописанию (Тонкости написания скриптов) |
Вопросы по скриптописанию |
› Вторник
› 28.12.2010
› 20:22
› Сообщение #
не верная постановка вопроса.
IF и SwiTch - разное назначение IF _ работает с диапозоном значений и одной проверкой перекрывает всё if (_a <= 15) then {этот блок если истина} else {этот блок если лож}; SwiTch - вибирает блок для точного результата Switch (typeOf _x) do { один SwiTch вместо кучи IF |
› Пятница
› 31.12.2010
› 12:27
› Сообщение #
Привет, помогите с небольшим скриптом.
Мне нужно присоединить несколько солдат к одному. Я решил делать это с помощью триггера и скрипта. В ините будущему командиру пишу: Code [Com_1, TriggerGroup1] exec "Group.sqs" Com_1 Имя будущего командира TriggerGroup1 Триггер в котором стоят подчиненные В скрипте пишу: Code GroupList = list _this select 1 GroupList Join _this select 0 Ничего не происходит, а когда прописываю имена в скрипте - все работает. Что надо прописать, чтобы он брал объекты из массива в exec |
› Пятница
› 31.12.2010
› 12:51
› Сообщение #
DICS,
иногда части строки нужно выделять скобками. интерпретатор не очень мощный и сбивается. уверен, так работать будет. GroupList = list (_this select 1) GroupList Join (_this select 0) |
› Суббота
› 01.01.2011
› 11:41
› Сообщение #
Slon, я где-то видел скрипт, при активации которого через триггер бойцы начинали искать дом (бункер), который следовало занять. Но вроде у него была проблема, скрипт действовал в районе 400 метров, а далее глючил.
Этот скрипт меня натолкнул на мысль - возможно ли сделать скрипт, который бы работал подобно маяку - при вхождении в зону его действия группа бы занимала места (случайным образом). Либо (ещё вариант) от группы бы отвязывался юнит и занимал место (Х)? |
› Суббота
› 01.01.2011
› 12:11
› Сообщение #
маяком может быть поинт установленный в районе который нужно осмотреть, из него запускается скрипт.
скрипт сделает список окружающих зданий командой _ms = nearestObjects [player, ["house"], 200]; из списка нужно выделить здания с поверхностями для ботов командой if ((building buildingPos 0) distance [0,0,0] > 1) и послать туда бота пройти все точки. Code _ps = []; _a = 0; While { _ps = building buildingPos _a; _ps distance [0,0,0] > 1 } do { _un Move _ps; WaitUntil {_un distance _ps < 2}; _a = _a + 1; }; ну и конечно надо контроль обнаружения противника, вызов поткрепления и тд. |
› Суббота
› 01.01.2011
› 15:22
› Сообщение #
|
› Суббота
› 01.01.2011
› 16:34
› Сообщение #
1: С тригером это сделать сложней, для начала срабатывание тригера.
настроенный на "Присутствие" стороны и условием по умолчанию (this) после срабатывания, необходимо очистить зону от присутствия для повторного срабатывания. значит такой вариант неподходит. вариант срабатывания на изменение кол-ва присутствующих, понадобится переменная для запоминания количества. amount = 0; - объявляется зарание. условие count thisList != amount активация, если кол-во изменилось. if (count thisList > amount) then {действие если больше} else {действие если меньше}; amount = count thisList такой вариант неудачен если неизменится кол-во но изменится состав (один ушол другой пришол) str (count thisList) != amount if .......; amount = str (count thisList) 2: Теперь когда каждого бота послали по маршруту, надо проследить чтобы небыло повторных посылов. Bot_mov = []; Code { if !(_x in Bot_mov) then { as = _x execVM "File.sqf"; Bot_mov set [count Bot_mov, _x] }; } forEach thisList; |
› Суббота
› 01.01.2011
› 17:34
› Сообщение #
Slon, большое спасибо!
прошу пока не выкладывать инфу, а то я не успеваю ) Quote (Slon) 2: Теперь когда каждого бота послали по маршруту этот момент постараюсь сделать в автомате - любой бот попавший в зону действия триггера (у здания) рандомно будет исполтзовать его позицию. Постараюсь из OFP DR открыть подобный скрипт касаюшийся посадки в свободную технику. |
› Среда
› 05.01.2011
› 04:21
› Сообщение #
Здраствуйте, интересует такой вопрос.
В чем польза в АrmA2OP про пунтик строительства. В редакторе тыкал. Но денег там 0. Объясните? Явно тут пахнет скриптом) |
› Среда
› 05.01.2011
› 16:30
› Сообщение #
|
› Среда
› 05.01.2011
› 21:45
› Сообщение #
DICS,
два создаёш, два и получается, если сохраняеш в одной переменной оба то удалится только последний. |
› Четверг
› 06.01.2011
› 05:57
› Сообщение #
|
› Четверг
› 06.01.2011
› 07:56
› Сообщение #
нет. бота нельзя отсоединить в никуда, только присоединить к другой группе.
|
› Воскресенье
› 09.01.2011
› 01:55
› Сообщение #
Слон объясни популярно, что и где именно надо добавить вот в этом скрипте пож. помоги:
Gr0 = createGroup West; Vzvod0 = ["MVD_Soldier_MG","RU_Soldier_Medic"]; Vzvod1 = ["MVD_Soldier_AT","RU_Soldier_Sniper","RU_Soldier_AR"]; Mesto1 = getPos Player; |
› Воскресенье
› 09.01.2011
› 02:02
› Сообщение #
для отряда игрока это ненужно, вполне достаточно
{uni = group player createUnit [_x, getPos player, [], 0, "FORM"]} forEach ["MVD_Soldier_AT","RU_Soldier_Sniper","RU_Soldier_AR"] скопируй строку, вставь в активацию тригера и смотри |
| |||
Чат сайта |