Подскажите,как сделать,чтобы предмет можно было использовать. То есть он лежит на земле,а принаведении и нажатии определенной клавиши,выводится меню со своим содержимым.
#Сталкер43 :
Подскажите,как сделать,чтобы предмет можно было использовать. То есть он лежит на земле,а принаведении и нажатии определенной клавиши,выводится меню со своим содержимым.
У предмета (физический обьект) должна быть в кастом дате логика ph_idle
Cмотри логику монолита (исполнителя жеаний).
Artos ну что у тебя за привычка сразу обвинять в криворукости? Блин, ну вроде ж всё доступно объяснил. Q8-| Значит так. Неделю назад заходил в мод, всё было норм, я в нём никакие диалоги и инфопоршни не трогал, вообще ничего такого глобального не делал кроме как новое оружие добавлял. Далее вчера захожу, начинаю игру и сразу по окончании разговора с Сидором получаю вылет. На последней строчке диалога. Ma$ter
сразу по окончании разговора с Сидором получаю вылет. На последней строчке диалога.
Я – хозяин своей судьбы, но только судьба знает, где закончится мой путь.
SkyLoader да не трогал я эти инфопоршни. А эскэйп диалог я пробовал вообще из геймдаты убрать, ноль эффекта. Единственное что сделал глобальное, заменил пиратку версии 1.0004 на лицензию версии 1.0006. Может из-за этого? Сейвы, главное, старые грузятся, которые я делал после того как получал оружие у Волка.
Я – хозяин своей судьбы, но только судьба знает, где закончится мой путь.
Я не обвиняю, а констатирую реалии. И вообще-то немного ошибся, дело не столь в криворукости, а еще и ... Если после подзатыльника, ты до сих пор не понял, что никого не волнует, что ты "вчера ..." иль "неделю назад", что на какой-то последней строке какого-то диалога где-то как-то вылетает, то прямолинейность извилин уже мешает. &P
Пустопорожнее уже в пятый раз переливаешь.
Приведи коды, которые добавил - и тогда кто-нибудь (если еще не надоело) поможет твои косяки разбирать. Без этого - ты еще на пару страниц флуда насобираешь.
Stalk15
Вот это:
local FreedomerId = xr_logic.pstor_retrieve(db.actor, "RadarFreedomerId", 0)
тебе вернет идентификатор == 0, т.е. актора!
А значит сразу ты получишь тут:
local Npc = level.object_by_id(FreedomerId) --/< 0
- клиентский объект актора ( db.actor => Npc ).
Сделай проверку идентификатора на ~= 0 перед получением юзердаты - и получишь желаемое.
... типа: local Npc = FreedomerId ~= 0 and level.object_by_id(FreedomerId)
Artos я блин два раза повторил такой маловажный для тебя факт, что пиратка была на 1.0004, а лицуха на 1.0006. И ещё спросил, не может ли это создать такой вылет. Вместо того что бы внимательней прочитать , просишь у меня то, чего я не делал. Priboj37 cпасибо! Наконец то вместо трёпа ни о чём услышал слова истины. Но я уже сам разобрался. Установил для пробы пиратку с патчем 1.0004 и проверил, всё норм.
Я – хозяин своей судьбы, но только судьба знает, где закончится мой путь.
Когда не хаватает знаний - толдычить можешь до бесконечности.
Просьб же со своей стороны что-то не заметил, в отличии от твоих хелпов и "поможите!" :prankster:
Priboj37
При смене патча 4 <~> 6/5 изменяется формат диалогов и(!) ошибки сэйвов/кодов вылезают а) или сразу, или б) при попытке открыть диалог. Если диалог начат - патчи НЕ виноваты в его прерывании.
Это нужно умудриться добавить всего лишь ружО, чтобы игра перестала признавать иной патч, а тем более лицуху (по дефолту не кастрированный перепак).
А в АМК для совместимости всего лишь требуется поправить именно три 'диалоговых' файлика, в которых диалоги формируются. И любой игрок, не говоря о мододелах, уже три года знает, что при смене патча требуется адаптировать любой мод (за исключением одного мода ...).
KESEnchiK
А почему тебе не посмотреть как уходит Волк с Кордона на Склады? Посмотри его логику и делай по подобию.
В простейшем случае: сделай две секции (копии с разными именами) и по событию - удаляй 1-го и спавни 2-го. Или, заспавнив где нужно обоих, переключением их он-офф-он-лайн (как Волк и Фанат) можешь поиграться.
Вот в файле из народной солянки(амк_аномс.Скрипт) есть такие строчки, это для спауна артефактов.
А кто нибудь может подробно обьяснить что там к чему.?
arttStAl
(для справки) Этот код исходно взят из NLC5.
1-ая таблица: Таблица соответствий (присвоение) имен принятых переменных и секций артефактов, по которым далее в кодах эти арты будут спавнится.
2-ая таблица: Таблица для рандомного спавна артефактов по локациям.
В начале:
l01_escape(локация) = { 2(минимальное кол-во),4(максимальное кол-во),{ ... - т.е. для конкретной локации Кордон для всех артов задается вероятность спавна от 2 до 4 штук (суммарное кол-во).
далее:
...),{balb_1=26(%,вероятность спавна арта1), balb_2=0(%,вероятность спавна арта2), ... и т.д.
Т.е. для того же Кордона из 100% для каждого типа артефакта (из таблицы 1) задана вероятность в процентах заспавниться.
Обязательное условие(!) - сумма вероятностей для всех типов артов (26+0+0+25+...) обязана быть равна 100(!).
Artos А присваивать имя артефакту можно любое вот например balb_1 = "af_payk", можно вместо balb_1 написать арт1, и дальше в секциях соответственно арт1 .?
Artos я тебе уже говорил и ещё раз скажу. Если нечего сказать по теме, кроме язвительных высказываний, лучше промолчи. И, кстати, вот в этом ты облажался:
При смене патча 4 <~> 6/5 изменяется формат диалогов и(!) ошибки сэйвов/кодов вылезают а) или сразу, или б) при попытке открыть диалог. Если диалог начат - патчи НЕ виноваты в его прерывании.
Лицуха на 1.0004 патче с модом работает отлично. Вылет пропал, как его не было. Artos
Топик еще много твоего мусора может вместить ...
Ты забыл только сказать, кто провоцирует на флуд.
отредактировал(а) TheDoktor: 08-02-2011 18:09 GMT3 час.
Я – хозяин своей судьбы, но только судьба знает, где закончится мой путь.
arttStAl
Именовать ты конечно можешь как тебе заблагорассудится, но(!):
а) с соблюдением правил наименования и синтаксиса в LUA. Русские символы (как и некоторые другие) - запрещены!
Вообще то, стараются давать имена все же как-то осмысленно.
balb_N - это от 'zone_mbald_s' или 'zone_mosquito_bald', т.е. типы артов порожденные аномалией. Если в кодах есть привязки тип арта <=> тип аномалии, то по именам проще отслеживать соответствие.
б) имена переменных естественно должны далее в кодах соответсвовать задуманному, т.е. переименовал в одном месте - переименовывай и далее везде, где эта переменная используется. Хотя скорее всего эти имена переменных служат для выборки чисел (вероятностей) и секций в одной из функций.
в) (уточнение) присваиваешь не артефакту, а переменной, которая будет хранить имя секции некоторого артефакта. TheDoktor
Ты еще не угомонился ... флудераст ты наш, облажавшийся на элементарщине.
(эт я ласково, а не в обиду) :-)
Топик еще много твоего мусора может вместить ...
Artos А может тогда распишишь как в аномалию спаунить, там вроде полегче, но хотелось бы со всеми нюансами, ну типа того как ты расписал про спаун в скрипте?
П.С Artos Огромное спасибо за пояснения про спаун, огромное!!!
arttStAl
Ты уже начал задавать вопросы, ответы на которые и сам можешь легко найти, подумав или почитав ФАК'и, и которые мне не интересны.
Для спавна артефакта (это обычный объект) требуются только нужная секция и координаты. Хочешь в аномалию - берешь координаты от нужной аномалии, типа для онлайновой:
alife():create( sSectionAf, oAnom:position(), oAnom:level_vertex_id(), oAnom:game_vertex_id())
Где брать аномалии - в скрипте, который ты поминал в первом посте, должна быть таблица имеющихся аномалий на локации.
SkyLoader
Добавил
active=nil - всё равно вылетает.
Но стоит заблокировать custom_daya,тогда всё работает.
Может надо как-нибудь по другому логику писать?
Вот на данный момент стоит такая логика:
[logic]
active=nil
on_death = death
[death]
on_info = %+bandit_reider_1_dead%
добавлено спустя 21 секунд
Если что то все поршни прописаны в info_portions
отредактировал(а) ДатчикХабара: 08-02-2011 20:03 GMT3 час.
А мену кто нить подскажет? Ну не работают у меня гулаги с псевдособаками. А на болоте вылеты происходят, там только функции спавна спасут, мне ведь еще там миссии делать, а хде для них место будет если все занято будет мутанами.
Эта тема закрыта, публикация новых сообщений недоступна.
Продолжая пользоваться сайтом, вы соглашаетесь с использованием файлов cookie. Страницы сайта могут содержать информацию, запрещенную для просмотра посетителям младше 18 лет. Авторское право на серию игр «S.T.A.L.K.E.R» и используемые в ней материалы принадлежит GSC Game World.