|
|
Модератор форума: GUNNER161, Panikaha |
Форум РЕДАКТОР - ArmA 3 Скрипты скрипт бесконечной стрельбы для ИИ и игрока |
скрипт бесконечной стрельбы для ИИ и игрока |
› Четверг
› 14.03.2019
› 08:12
› Сообщение #
Добрый день, хочу попросить помощи, есть такая команда, которую я вставляю в инит пулемета(например) для того, чтобы он "бесконечно стрелял"
Код this addEventHandler ["fired",{(vehicle (_this select 0)) setvehicleammo 1;}]; Но когда в нем сидит бот, то все хорошо, а нужно эту строку сделать функцией или не знаю как правильно это называется, вообщем чтобы "если игрок сел за этот пулемет, то данная функция не работала бы" и пулемет был с обычным бк, а если бот захватил пулумет снова, то ему вернуть "бесконечную" стрельбу. и так постоянно. В нашей миссии просто есть возможность захватывать статику у ботов и они тоже могут ее перезахватить. Но изначально за ней сидят только боты. Но у ботов быстро кончается бк, но и не хотелось бы игрокам "дарить халяву")) Пулемет респиться через скрипт как объект Код private["_obj","_objpos","_dir","_gunner"]; _objpos = _position vectoradd [-0.105957,-0.183716,0.0648341]; _obj = createVehicle [a3e_arr_MortarSite select(floor(random(count(a3e_arr_MortarSite)))), _objpos, [], 0, "NONE"]; _gunner = [_obj,A3E_VAR_Side_Opfor] spawn A3E_fnc_AddStaticGunner; a3e_var_artillery_units pushBack _obj; _dir = 180.555;_obj setdir _dir;_obj setpos _objpos; _obj addEventHandler ["fired",{(vehicle (_this select 0)) setvehicleammo 1;}]; a3e_arr_MortarSite (сюда потом подставляется просто класснейм пулемета)
www.armatop.info - Территория боевых действий
www.arma3realwar.ru |
› Четверг
› 14.03.2019
› 17:46
› Сообщение #
_obj addEventHandler ["fired",{ if ! (isPlayer (gunner(_this select 0))) then { (_this select 0) setvehicleammo 1;}; }];
https://community.bistudio.com/wiki/!_a https://community.bistudio.com/wiki/isPlayer https://community.bistudio.com/wiki/gunner https://community.bistudio.com/wiki/if |
› Пятница
› 15.03.2019
› 12:23
› Сообщение #
Спасибо большое Добавлено (22.03.2019, 15:43) Код if (lifeState player == "INCAPACITATED") AND !("FirstAidKit" in items player) AND ([b]транспорт игрока уничтожен[/b]) then {moveOut player;}; Добавлено (22.03.2019, 15:44) Код if (lifeState player == "INCAPACITATED") AND !("FirstAidKit" in items player) AND (транспорт игрока уничтожен) then {moveOut player;}; простите нельзя править сообщения
www.armatop.info - Территория боевых действий
www.arma3realwar.ru |
› Пятница
› 22.03.2019
› 16:50
› Сообщение #
moveOut - для трупа не работает.
https://community.bistudio.com/wiki/moveOut используй setPos https://community.bistudio.com/wiki/setPos транспорт игрока уничтожен - not alive vehicle Player |
› Пятница
› 22.03.2019
› 17:31
› Сообщение #
Спасибо. про moveout работает, т к это не труп, а живой в "бессознанке" .Все равно спасибо большое, учту про "трупы"
www.armatop.info - Территория боевых действий
www.arma3realwar.ru |
› Среда
› 08.01.2020
› 11:12
› Сообщение #
В прошлый раз не там задал вопрос. А как бойцу за которого я играю увеличить броню? Другими словами чтоб ботам для моего уничтожения нужно было потратить больше пуль. Есть скрипт?
|
› Среда
› 08.01.2020
› 14:43
› Сообщение #
93689,
Почитай может разберёшся https://community.bistudio.com/wiki/Arma_3_Soldier_Protection |
› Среда
› 08.01.2020
› 16:25
› Сообщение #
Нет. Это мне не понять. А можете написать пример како нибудь по проще чтоб у моего бойца броня была просто по лучше? Чтоб не с одной пули меня можно было убить?
|
› Вторник
› 05.01.2021
› 20:41
› Сообщение #
93689, В инитиализацию юнита прописываем:
Код this addEventHandler ["HandleDamage", { params ["_unit", "_selection", "_damage"]; _coef = 100; _damage = _damage / _coef; _damage; }]; Где _coef - это значение, на которое будет делиться урон. Если _coef = 2, наносимый урон будет вдвое слабее. |
| |||
| |||
Чат сайта |