Распростроненные вопросы
- Как заставить AI кинуть гранату:
UNIT fire ["Throw", "GRENADE"],
где UNIT - название солдата, GRENADE - название гранаты или флареса.
Направление броска пока не определено.
- Как посадить солдата на вышку (точно также можно ставить любой предмет поверх другого, прописывается в строке Initialization):
this setPos [getPos this select 0, getPos this select 1, (getPos this select 2) + 0.5]; this setunitpos "UP";
Что это означает? Мы устанавливаем координаты для юнита. Пеервые два берутся такими же (getPos this select 0, getPos this select 1),
они выбираются методом select из массива трехмерных координат [X,Y,Z]. А третья координата (высота) подстраивается под высоту вышки (в данном случае 0.5), ее можно менять в зависимости от объекта.
Ну а в конце мы просим солдата встать (setunitpos "UP").
- Как сделать так, чтобы триггер срабатывал на определенный юнит.
Легко, и причем даже без скрипта. Создайтке Триггер. Создайте Юнит. Кликните на пункте меню GROUPS и перетащите курсор от Триггера к Юниту. Вот и все!
- Как заставить реагировать Триггер на несколько юнитов.
Рассмотрим пример для двух юнитов:
Вместо указания ключевого слова this в поле условия Триггера пропишите следующее:
TRIGGER distance UNIT1 <50 AND TRIGGER distance UNIT2 <50
где TRIGGER - имя Триггера, а UNIT1 и UNIT2 - имена юнитов. 50 - это расстояние, на котором будет срабатывать Триггер.
- заставить танк выстрелить.
Пример с М60:
_tank fire ["gun105", "shell105", shell105"]
Примечания:
- нужно около 15 секунд для первого выстрела, но далее будет стрелять быстрее;
- в группе будет стрелять только лидер;
- используйте для тестирования команду "dowatch"(dotarget) для прицеливания танка.
- Как сделать взрыв?
Просто.
snar = "tipsnarada" camcreate [x,y,z] или
snar = "tipsnarada" camcreate getpos Unit (можно геймложик или еще что угодно)
Типы снарядов
- Bullet12_7 - крупнокалиберная пуля от танка;
- Bullet7_6 - малокалиберная пуля от танка;
- Bullet4x23 - снаряд Шилки;
- Bullet30 - крупнокалиберный пулемёт от АН-1 или Ми-24;
- Flare
- FlareGreen
- FlareRed
- FlareYellow - разные осветительные ракеты;
- MortarShell - мина к миномёту;
- Shell73
- Shell120
- Shell125 - фугасные танковые снаряды (разный калибр);
- Heat73
- Heat120
- Heat125 - обычные танковые снаряды (тоже разный калибр);
- Grenade - граната к подствольнику
- RPG - граната РПГ;
- AT3 - управляемая ракета БМП;
- AT6 - управляемая ракета Ми-24;
- Maverick - ракета А-10 "Маверик»;
- Hellfire - TOW от UH-60 (не уверен, но мощность та же);
- HellfireLauncherCobra - TOW от АН-1;
- HellfireLauncherApach - TOW от Апачи;
- Zuni - аналог ракеты 57мм;
- Rocket57 - неуправляемая ракета 57мм.
Но еще легче сделать так:
Ставишь триггер (х=0,у=0),называешь допустим VZRIV и в ините прописываешь:
ex = "mortarshell" camcreate getpos VZRIV ; ex setPos [getPos ex select 0, getPos ex select 1, (getPos ex select 2) +20];
+20 - это высота на которой изначально будет находится снаряд.
- Как бить кулаком?
Удары кулаком и прикладом:
action ["STROKEFIST"]
action ["STROKEGUN"]
В инициализации солдата,например НАТО,пишете
init="this removemagazines ""M16""; this removemagazines ""HandGrenade""; this addweapon ""StrokeGun""; this addmagazine ""StrokeGun""; this addweapon ""StrokeFist""; this addmagazine ""StrokeFist""";
И заместо стрельбы бьёт прикладом или кулаком.
Присылайте свои вопросы мне, буду здесь размещать