Господа! Кто нибудь юзал в арме 3 эту команду с успехом?
Если да, поделитесь опытом. Мне эта команда уже весь плешь проела. А мне надо данный тип объектов спавнить кодом, а не из редактора.
Отправлено 07 May 2014 - 20:18
Господа! Кто нибудь юзал в арме 3 эту команду с успехом?
Если да, поделитесь опытом. Мне эта команда уже весь плешь проела. А мне надо данный тип объектов спавнить кодом, а не из редактора.
Отправлено 07 May 2014 - 21:24
Команда устарела. Она не нужна.
пользуйтесь фреймворком модулей
P.S. А чем не устраивает способ помещения модуля в редакторе?
Сообщение отредактировал Avi: 07 May 2014 - 21:30
Отправлено 07 May 2014 - 21:53
P.S. А чем не устраивает способ помещения модуля в редакторе?
Если коротко, применение этого способа убивает на корню мою философию универсальных решений, то есть, придётся под каждую карту кидать эти модули в редакторе, а я просто фанат динамических решений)
Отправлено 07 May 2014 - 22:04
пользуйтесь фреймворком модулей https://community.bi...o.com/wiki/Arma_3_Module_Framework
Да и тут я уже был, и модуль "Site_Civilian" BISовский уже привёл во вполне рабочее состояние для мультика. А теперь внимание! И как мне это дело инициализировать кодом, отспавнив сам модуль.
Отправлено 07 May 2014 - 22:32
На первый взгляд вот эта ересь:
_lg = "Site_BLUFOR" createVehicle (position player);
сработала. Только пока не придумал как это проверить. Заспавню-ка минное поле...
Отправлено 07 May 2014 - 22:53
Avi,
Дело в том что в моём случае результатом должно быть вот что, после спавна модуля он должен попадать в результат команды allSites, и тут просто спавном не отделаешься, нужна ещё правильная инициализация.
А без инициализации его , модуля, как бы и нет. А если забить на это, то придётся менять BISовский код более радикально, А вот это меня совсем не греет. Я то точу тему именно под то что будет когда то в арме по дефолту.
Отправлено 07 May 2014 - 22:56
Ну я не представляю, как его инициализировать, если не в отдоне...
А с отдонами я вообще не связывался. Не люблю их ещё больше, чем переводы, LOL : )
Отправлено 07 May 2014 - 23:02
_lg = "Site_BLUFOR" createVehicle (position player);
И это тоже не будет иметь эффекта) Я уже пробовал. Нужна инициализация модуля, потому что все модули инициализируются оптом
Ну я не представляю, как его инициализировать, если не в отдоне...
А с отдонами я вообще не связывался. Не люблю их ещё больше, чем переводы, LOL : )
Да вот и думаю как), папку modules в функциях уже почти наизусть выучил)
Да и аддон тут не в помощь.
Сообщение отредактировал SteelRat: 07 May 2014 - 23:03
Отправлено 08 May 2014 - 11:15
И это тоже не будет иметь эффекта) Я уже пробовал.
Было бы удивительно, если бы оно имело эффект. Я вообще удивился, что оно выполнило эту команду.
Скорее всего, как и все модули, оно выполняет скрипт типа такого:
init = "if (isNil 'BIS_initSitesRunning') then {BIS_initSitesRunning = TRUE; ['[SITES] Modules config init'] call BIS_fnc_logFormat; if (isServer) then {execVM '\A3\modules_f\sites\init_core.sqf'} else {execVM '\A3\modules_f\sites\init_client.sqf'}}";
И сайты - это логика, логика отличается тем, что это специальная "сущность", которая позволяет выполнять код, который находится в её строке инициализации.
И этот инит запускается у каждого игрока, который джойнится. Запуск логики и создание "сущности" LOGIC можешь глянуть в уроках про добавление неполного магазина.
Я не знаю как получше изучить модули или конкретно сайты, кроме как изучить определение их конфига и скрипты ,которые они вызывают.
Кью посоветовал в качестве примера поизучать как эти вещи сделаны в отдоне AllInArma
Для загрузки требуется регистрация и ожидание в течение нескольких минут.
Сообщение отредактировал Avi: 08 May 2014 - 11:17
Отправлено 08 May 2014 - 17:49
Скорее всего, как и все модули, оно выполняет скрипт типа такого: init = "if (isNil 'BIS_initSitesRunning') then {BIS_initSitesRunning = TRUE; ['[SITES] Modules config init'] call BIS_fnc_logFormat; if (isServer) then {execVM '\A3\modules_f\sites\init_core.sqf'} else {execVM '\A3\modules_f\sites\init_client.sqf'}}";
Дело вот в чём, эта инициализация всего лишь инициализирует исполнения кода принадлежащего модулю. А сам модуль при спавне требует инициализации, такой инициализации которая происходит при старте миссии. Вот эта байда у меня пока и не получается.
Отправлено 08 May 2014 - 23:26
Вот эта байда у меня пока и не получается.
А какой, конкретно, модуль нужен? может на него забить большой и толстый (как у меня)? и сделать эту задачу в лоб?
Отправлено 09 May 2014 - 01:31
А какой, конкретно, модуль нужен? может на него забить большой и толстый (как у меня)? и сделать эту задачу в лоб?
Да в принципе у меня появилась идея как вставить этой теме по самые гланды), и радикально ни чего не меняя. Буду пробовать.
При спавне сайтов в процессе миссии проблема возникает из за того что вся логика в коде этого типа модулей завязана на команду allSites. В принципе это и есть тот самый гемморой, если эти модули спавнить а не ставить в редакторе. То есть если в процессе исполнения миссии отспавнить сайт, то этот модуль активирует определённую для этого типа логику, и это сразу же вызовет ошибку. И вот по чему, движку собственно до лампочки на то что мы только что отспавнили модуль Site, он просто не в танке, а логика модуля во первых же строках своего письма вызывает команду allSites, а в возвращенном результате естественно фиг с маслом), в результате ошибка.
И что мы в результате имеем:
Вариант первый: Как то изъе...ся, и инициализировать модуль как положено
Вариант второй, который я и попытаюсь провернуть: Просто нае..ать весь код в этих модулях. Единственное придётся заменить команду allSites на другой вариант, но это проще). Суть вот в чём, подсунуть коду в модулях не ссылки на сайты, а дать ссылки на сами объeкты Logic, к которым я и прикручу необходимые параметры для функционирования логики. И это похоже самый дешёвый способ). Просто заменив команду на выражение которое соберёт все объекты Logic в переменную в которой должны находиться сайты. Минимум редактирования BISовщины и радужные перспективы)
Отправлено 09 May 2014 - 04:14
Да в принципе у меня появилась идея как вставить этой теме по самые гланды)
О да! Сунул) по самые помидоры) Получился второй вариант.