|
|
Модератор форума: Slon |
Форум РЕДАКТОР - ArmA 2 Operation Arrowhead Скрипты Скрипт передачи действия от игрока к игроку через курсор (Предача действия через скрипт в Dayz Epoch [Help!]) |
Скрипт передачи действия от игрока к игроку через курсор |
› Среда
› 03.02.2016
› 20:28
› Сообщение #
Всем привет, если что я новенький на этом форуме и в скриптах мало что смыслю, но пытаюсь разобраться) Так вот , ребят помогите написать скрипт для передачи действия (addaction) от игрока другому игроку через CursorTarget или TargetName (вариант для игрока, не для админа сервера через миссию) Я там уже немного покопался и вот что получилось:
TargetName = "%nickname%"; vnltr = format [ "if (name player == ""%1"") then {(vehicle player) addAction ['Test action', 'acttest.sqf'];};", TargetName ]; player setVehicleInit vnltr; processInitCommands; clearVehicleInit player; hint "Done!"; vnltr = nil; TargetName = nil; Не знаю насколько криво, но оно работает), но вот проблемка... это работает только на простых серверах армы, а на серверах DayZ Epoch не хочет, говорят это из за вот этих команд: player setVehicleInit vnltr;processInitCommands;clearVehicleInit player; Есть ли другой способ написания аналогичного скрипта, но с ,так сказать, заменой этого сегмента (может и на более громоздкий, сойдет любой) на другой? (ну или вообще скрипта полностью если такое возможно ) Надеюсь на вашу помощь). Заранее спасибо). |
› Среда
› 03.02.2016
› 20:39
› Сообщение #
VnL, CursorTarget - это я знаю,
а что за зверь TargetName ? ну а взаимодействие скриптов игроков можно делать по этой схеме http://arma.at.ua/forum/28-1473-23004-16-1239258352 |
› Среда
› 03.02.2016
› 20:46
› Сообщение #
Slon, А можеш ,если не сложно, хотя бы немного шаблончик набросать? Просто ,как я уже говорил, я еще оч мало чего понимаю , котелок пока не варит, но хоть пойму от чего толкаться в дальнейшем познании скриптинга хех)
|
› Среда
› 03.02.2016
› 21:02
› Сообщение #
собственно экшен можно назначить в начале игры и вставить в него условие видимости.
player addAction ['Test action', 'acttest.sqf', 0, 1, true, true, 'Условие'] - в качестве передачи сообщений между игроками лучше использовать setVariable, getVariable https://community.bistudio.com/wiki/setVariable _ms = LK getVariable "Data_Name"; _name = name CursorTarget; if !(_name in _ms) then { // проверка повторного клика. _ms set [count _ms, _name]; LK setVariable [ "Data_Name", _ms, true]; }; - а в качестве условия, - наличие Ника игрока в setVariable 'name Player in (LK getVariable "Data_Name")' зы LK - это объект Логика с именем LK |
› Среда
› 03.02.2016
› 21:16
› Сообщение #
Slon, Извини если начинаю доставать ноо... можеш пояснить как понять в "начале игры" если я являюсь обычным игроком который заходит на сервер не во время начала миссии/игры , т. е. мне придется ждать рестарта чтобы исполнить скрипт или я совсем уж ,хех, валенок и чего то совсем не понимаю)?
|
› Среда
› 03.02.2016
› 21:23
› Сообщение #
Начало миссии - это старт Сервера.
Начало игры для игрока - момент входа. при этом Автоматически запускается файл - init.sqf в нём и проводятся стартовые установки для игры. https://community.bistudio.com/wiki/Event_Scripts |
› Среда
› 03.02.2016
› 21:32
› Сообщение #
Slon, Ага, а если данный файл для меня недоступен, т. е. я не имею доступа к миссии, т. е. как говорил ранее обычный игрок с удаленным исполнением скриптов (нуу например со старым добрым Script executer'ом)?
|
› Среда
› 03.02.2016
› 21:37
› Сообщение #
Файлы находящиеся в папке миссии ( в PBO файле миссии) Доступны всем.
|
› Среда
› 03.02.2016
› 21:40
› Сообщение #
Но ведь сервер, при каждом заходе на него обновляет эту PBO если она не соответствует (т е если я даже изменю его он всёравно станет прежним)
|
› Среда
› 03.02.2016
› 21:51
› Сообщение #
PBO это файл миссии, изменить его невозможно. Редактор работает с Исходником ввиде папки с файлами, с последующим запаковкой в PBO файл
http://arma.at.ua/forum/46-5573-1 При выборе миссии игроком - сервер закачивает ему файл (pbo) миссии. Для игрока игра начинается с запуска файла init.sqf, и не важно когда он зашол и в каторый раз. Текущие данные Игры находятся в Оперативной памяти и синхронизируются Сервером с игроками реалтайм. |
› Четверг
› 04.02.2016
› 07:13
› Сообщение #
[10] Slon [Вчера, 21:51]PBO это файл миссии, изменить его невозможно.
Кстати можно , есть хитрый способ но его благодаря мне и пофиксили на серверах с be |
| |||
| |||
Чат сайта |