#Stalk15 :
Можно ли сделать так, чтоб функция проверяла не тоько два Антирада, но и еще две Водки и Батон?Если можно, то как?
Хочу развить ответ камрада erlik.
Сподвигнутый не совсем верным вызовом функции, предложенным Germess, я решил сделать подобный вы**50016ea8aab1bb10eeba**n do
if type(arg) ~= 'number' then
if type(arg[i+1]) == 'number' then
num = arg[i+1]
else
num = 1
end
if not have_n_antirad(arg,num) then
return false
end
end
end
return true
end[/code]
И вызываем эту функцию :
[code]have_nabor("antirad",2,"bread","vodka",2)[/code]
В аргументах этого вызова можно писать итемсы и их количество хоть до посинения.
Другими словами при необходимости проверить нужный набор достаточно вызвать
[code]have_nabor(нужные секции и количество. если предмет один, то единицу можно не писать)[/code]
отредактировал(а) Gun12: 24-04-2010 23:32 GMT3 час. Не стань номинантом премии Дарвина.
Как сделать что бы на Радаре, Припяти и ЧАЭС была такая же погода как на остальных локациях? А то у меня на этих локациях на постой пасмурно, а на Радаре, ко всему прочему, ночью, почему то, светло.
Я – хозяин своей судьбы, но только судьба знает, где закончится мой путь.
Carbonат скорости, судя по всему, ещё нет. Узнать подробнее можешь здесь: Тема #9288. TheDoktor, есть несколько способов, например, так:
В файле game_maps_single.ltx есть список уровней и их настройки:
Кордон
[l01_escape]
texture = map\map_escape
bound_rect = -317.164, -633.718, 404.880, 811.627
global_rect = 355.0,2011.0,576.0,2453.000000 weathers = default
music_tracks = l01_escape_musics
Выделенное отвечает за погоду. Можно просто поменять weathers = radar на weathers = default, а можно саму погоду radar изменить нужным образом.
weathers = radar - означает, что будет использована погода radar из файла environment.ltx секции [weathers].
Секция выглядит так:
[weathers]
...
radar = sect_radar
...
radar = sect_radar - означает, что для погоды radar будет использована настройка погоды sect_radar. sect_radar нужно искать в файлах, которые указаны в этом же файле, в данном случае:
#include "weather_radar.ltx"
В файле weather_radar.ltx находим секцию [sect_radar]. Ниже этой секции идут ссылки на настройки погоды по времени:
[sect_radar]
...
12:00:00 = radar_12
...
12:00:00 = radar_12 - означает, что для времени 12:00:00 будут использованы настройки погоды из секции radar_12. Эта секция есть в этом же файле.
Это - часть цепочки взаимосвязи настроек погоды - что откуда берётся и к чему ведёт.
Gun12
Хороший код.:-cool) Стоит положить в Обобщение знаний - чтобы не пропало.
Жаль только что некоторые юзеры думают, что у них все работает и так - в обход законов lua :-)
snake 666
если в файле bind_stalker у тебя действительно не более 450-500 строк - и строчки 614 не существует(если же существует - загляни в нее) - есть вероятность что сказывается несовместимость файлов игры и патча.
Когда часть файлов с одного патча, а часть с другого - начинаются такие глюки когда в логе указываются несуществующие строчки.
Знаю по своему опыту - пришлось как то с пятого уйти обратно на четвертый из-за того моя разработка на пятом даже не загружалась. А все из-за того было что файл bind_stalker был с четвертого патча - прочие же файлы были вообще не из игры (с моими скриптами)- и никак не могли влиять на вылет.
Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
erlik,Struck. Спасибо что оценили.
Но я почему-то уверен, что некоторые (тупо скопировав код) будут кричать что не работает.
Нужно, наверное, разжевать как это дело располагать в файлах. И как вызвать из другого файла.
Может кому не лень и положит в "Обобщение знаний". Мне точно лень.
АнархОПанк ну скажи тогда где писали,просто мне срочно нужна эта логика,и даже если писали то это была логика охранника а мне нужна логика снайпера,так чтобы он мог убить с одного выстрела в голову.
Люди, как заставить стрелять оружие, только если в сумке есть предмет?
Сразу скажу - это обойма.
А полная задумка такова:
если в сумке обойма нужного типа, то оружие стреляет, если нет - нет и стрельбы (с сообщением)
при зарядке оружия - отнимается одна обойма
при разрядке - добавляется в инвентарь снова
при расстреливании обоймы, она выкидывается в мир (ее снова можно будет подобрать)
неписи (а на них этот скрипт, скорее всего, тоже будет распространяться - они не смогут стрелять) будут подбирать обоймы "с пола" (есть же мод подбирания оружия, модифицировать его. Кстати, как он зовется и где его скачать - ссылку)
Пока все, можно будет это осуществить?
Зачем доказывать кому-то, что ты настоящий мужик? Лучше потратьте это время на добрые дела!
У меня есть самый простенький скрипт на спавн НПС. Там у меня спавнятся мои уникумы. Так вот в че**50016ea8aab1bb10eeba**ate("esc_ohr",vector():set(-218.20,-20.2,-145.63),35362,47) -- охранник 1
alife():create("esc_ohr_two",vector():set(-220.20,-20.4,-145.68),35362,47) -- охранник [/code]
и как мне их заставить спавниться именно на кордоне? можно ли юзать так?:
[code]function bind_stalker()
if level.name() == "l01_escape" then
spawn()
------------
function spawn()
alife():create("esc_ohr",vector():set(-218.20,-20.2,-145.63),35362,47)
alife():create("esc_ohr_two",vector():set(-220.20,-20.4,-145.68),35362,47)[/code]
но наверно если делать как написано выше, то непися будут спавниться каждый раз при заходе на кордон?
добавлено спустя 1 минуту
vhodnoylogin и еще, если надо ф-ю чтоб непися подбирали вещи, то кусай АМК. Отдельно не качается.
отредактировал(а) АнархОПанк: 25-04-2010 17:03 GMT3 час.
Из-за чего игра может не читать мой скрипт файл?
Вроде бы всё как надо, но оба раза игра мои скрипт файлы игнорировала.
Первый раз копировал игровой и вычищал (было давно). Второй раз делал собственный (было не так давно).
Однако же когда я в первый раз засунул в escape_dialog.script (благо функция была небольшая) всё заработало. Сейчас же засунуть в уже существующий скрипт файл не получится, слишком много строчек (порядка 1000).
Это может быть из-за комментариев?
З.Ы. Первый раз делал на 4 патче, даже без комментариев не работало, второй раз делал на 6 патче, комменты не убирал.
АнархОПанк
Чтобы спавнились на определённой локации нужно знать левел и гейм вертексы этой локации.
Вертексы - это некие зоны на "карте", привязанные к определённым локациям.
АнархОПанк Вот один способ:
В файле info_portions.xm**50016ea8aab1bb10eeba**slinger
[/code]
И добавить вызов своей функции в таком виде:
[code]имя_файла.имя_функции[/code]
Допустим нам нужно в файле spawn.script вызвать функцию esc_npc(). Запись будет выглядеть так:
[code]spawn.esc_npc[/code]
А после вставки так:
[code] storyline_eliminate_gunslinger spawn.esc_npc [/code]
FLIKER
Логично, что amk_anoms.script. Только без знания скриптов это не адаптировать, поверь. АнархОПанк
Есть файл db.script, и функция add_actor(obj) в нём. Для спавна при старте и делай вызов в ней. Проверку только на поршень не забудь, а то ведь функция вызывается каждый раз при создании актора.
отредактировал(а) Futura: 25-04-2010 18:47 GMT3 час.
Максим Р. Спасибо, воспользывался первым. А смотри, я поменял значение "weathers = radar" на "weathers = default", теперь я ведь могу удалить скрипты с одноименными названиями (я имею ввиду "weathers = radar", на пример) ? Ну, что бы мод не захламлять.
Я – хозяин своей судьбы, но только судьба знает, где закончится мой путь.
Эта тема закрыта, публикация новых сообщений недоступна.
Продолжая пользоваться сайтом, вы соглашаетесь с использованием файлов cookie. Страницы сайта могут содержать информацию, запрещенную для просмотра посетителям младше 18 лет. Авторское право на серию игр «S.T.A.L.K.E.R» и используемые в ней материалы принадлежит GSC Game World.