Модератор форума: Slon |
Форум РЕДАКТОР - ArmA 2 Operation Arrowhead Вопрос - ответ Как на сервере ArmA 2 выбирать конкретного игрока? (Как на сервере ArmA 2 выбирать конкретного игрока?) |
Как на сервере ArmA 2 выбирать конкретного игрока? |
› Пятница
› 31.07.2015
› 12:52
› Сообщение #
Здраствуйте. Ситуация такая: на сервере есть функция эвакуации по радио (тригер с активацией по радио а в нициализации вызывается скрипт: as = [] execVM "teleport.sqf";) но когда любой из игроков её вызывает то на базу отправляются все игроки которые на серве а не конкретно тот кто вызвал .
Поэтому у меня вопрос как на сервере ArmA 2 выбирать конкретного игрока который вызвал скрипт? (Причем ники изначально не известны , просто случайные люди играют) вот текст скрипта "teleport.sqf" _player = player; _player setpos (getmarkerpos "mark"); hint format ["%1 эвакуирован на базу", name _player]; |
› Пятница
› 31.07.2015
› 13:34
› Сообщение #
в этом и проблема. такой тригер срабатывает сразу у всех
вызывать файл нужно добавленым Экшеном https://community.bistudio.com/wiki/addAction player addAction ["Эвакуация", "as = [] execVM ""teleport.sqf"" "]; - пара кавычек в этом месте обязательна. |
› Пятница
› 31.07.2015
› 14:46
› Сообщение #
выдаёт это при попытке эвакуироватся: Script as = [] execVM "teleport.sqf" not found , хотя скрипт лежит в папке с миссией (проверял в редакторе) .
и ещё, сам скрипт телепорта надо редактировать как-то или если эта строка заработает то и так пользоватся им смогут все на сервере только для себя? |
› Пятница
› 31.07.2015
› 17:37
› Сообщение #
в реакторе работает вроде , в сети пока нету возможности проверить . но возник небольшой нюанс , эта надпись "Эвакуация" постоянно появляется в центре экрана если проходишь мимо каких то действий (мимо техники в которую можно сесть, мимо трупов которые можно обыскать и тд) , можно ли как-то сделать что-бы она была в списке с боку когда крутишь колесиком мыши но не выскакивала в центр экрана сама постоянно?
|
› Пятница
› 31.07.2015
› 18:21
› Сообщение #
можно, надо добавить в строку соответствующие параметры. в описании команды они указаны
впрочем мне не трудно player addAction ["Эвакуация", "teleport.sqf",1,0,false,true] если не понравится есть ещё один вариант. посложней. http://arma.at.ua/forum/76-9638-1 |
› Суббота
› 01.08.2015
› 13:44
› Сообщение #
благодарю , теперь не появляется без вызова , чуть позже на неделе проверю в сети . а на щет того сайта я английский очень плохо знаю поэтому не разобрать всё
Добавлено (01.08.2015, 13:44) |
› Суббота
› 01.08.2015
› 14:15
› Сообщение #
Экшен добавляется телу, и исчезает вместе с телом. Новому телу надо заново экшен вешать
Самое простое это делать триггером, Условие - alive Player - срабатывает в момент входа в игру и в момент возрождения. |
› Суббота
› 01.08.2015
› 15:53
› Сообщение #
Работает . Пока тема жива хочу ещё вопрос задать. Такая идея: едут гражданские на машине и некоторые из них вооружены (прописано оружие в инициализации) , вооружены в основном пистолетами . и я хочу что-бы если их не трогать то они проезжают и всё а если остановить и убить хотя-бы одного или просто не давать проезжать долго то они становились враждебными по отношению ко всей фракции за которую играет игрок и те у кого оружие открывали огонь на поражение . С первым вариантом всё хорошо , проезжают без проблем , а вот второй не знаю как реализовать , пробовал прописывать им тригером: civilian setFriend [west,0]; при условии убиства одного из них , но они всё равно не хотят стрелять , вроде даже достают оружие и целятся (иногда даже стреляют пару раз) но потом убирают оружие и снова бегают с голоми руками , как сделать что-бы стреляли?
|
› Суббота
› 01.08.2015
› 16:02
› Сообщение #
setFriend - работает Только в начале игры. верней даже Перед загрузкой карты.
Нужно группе ботов поднять настроение командами https://community.bistudio.com/wiki/setCombatMode https://community.bistudio.com/wiki/setBehaviour и желательно раздать цели команой https://community.bistudio.com/wiki/doTarget ну можно ещё устроить беспорядочную стрельбу раздавая Рандомно команду https://community.bistudio.com/wiki/fire |
› Суббота
› 01.08.2015
› 18:43
› Сообщение #
можешь пример скинуть на пару строк что-бы можно было менять отношение групировок друг к другу активируя скрипт с этими строками тригером так что-бы после активации гражданские сразу открывали огонь если видят кого-то из моей фракции (так же как синие когда видят красных)? а то на том сайте по англиски всё , я его плохо знаю да и с примером понятнее.
а если прописать setFriend в скрипте и потом активировать этот скрипт тригером то не сработает всё равно? я в вейпоинте прописывал "открыть огонь" но они всё равно не стреляют почти , причем даже оружие в руки не берут , иногда бывает так что начинается анимация доставания оружия но завершается сразу и он продолжает с пустыми руками бегать даже если видит врагов . Добавлено (01.08.2015, 18:27) Добавлено (01.08.2015, 18:43) |
› Суббота
› 01.08.2015
› 18:45
› Сообщение #
если прописать setFriend в скрипте и потом активировать этот скрипт тригером то не сработает всё равно? Враждебность можно "включить", если в нужный момент приписать юнита в группу стороны, изначально враждебной игроку (через join) Ставишь на карте красного юнита-полковника, в инит ему пишешь Enemy_gr = group this; deletevehicle this Команда для цивилов: {[_x] join Enemy_gr} foreach (имя_группы_цивилов) Сообщение отредактировал andrucio - Суббота, 01.08.2015, 18:46
|
› Суббота
› 01.08.2015
› 19:23
› Сообщение #
а имя группы и имя командира группы это одно и тоже или имя группы как то по другому задается?
|
› Суббота
› 01.08.2015
› 19:54
› Сообщение #
Разные вещи.
Имя юнита (командира) пишется в соотв. поле. Имя группы задается командой (см выше) |
› Суббота
› 01.08.2015
› 20:13
› Сообщение #
тоесть командиру группы граждан надо в инициализации написать что-то вроде: Enemy_gr1 = group this , что-бы потом было что подставлять в имя_группы_цивилов ?
|
| |||
Чат сайта |