мне нужны некоторые советы, как лучше сделать такую сцену?
"военный сидит на коленях. вокруг него стоят наемники. один из них в экзе. экз стоит "над душой" и держит на мушке голову военного. проходит звуковой диалог между экзом и воякером. затем идет выстрел и военный мрет."
как сделать, чтоб военного замочили не сразу? именно наемник? именно после диалога?
Я, наконец то, справился с задачей! Сделал таки отдельных монстров живучей! Спасибо всем кто помог, но получилось только сложа всё воедино. Сделал так. (если кому интересно) На примере кабана.
Помогите разобраться пожалуйста. Как правельно прописать table.insert(ids, objbomb.id)?
Вот в таком случае:
local ids = {}
function test1_1()
local x = -189
local y = -20
local z = -140
local gv = 62345
local lv = 56
local objbomb = alife():create("bomba",vector():set(x,y,z),gv,lv)
ids = objbomb.id
table.insert(ids, objbomb.id)
end
function test1_2()
local x = -189
local y = -20
local z = -145
local gv = 62345
local lv = 56
local objbomb = alife():create("bomba",vector():set(x,y,z),gv,lv)
ids = objbomb.id
table.insert(ids, objbomb.id)
end
function test1_3()
local x = -185
local y = -20
local z = -140
local gv = 62345
local lv = 56
local objbomb = alife():create("bomba",vector():set(x,y,z),gv,lv)
ids = objbomb.id
table.insert(ids, objbomb.id)
end
function detonator()
for k,v in pairs(ids) do
local boom_obj = level.object_by_id(v)
pos = boom_obj:position()
local h = hit()
h.direction = vector():set(0,0,0)
h.impulse = 10
h.draftsman = boom_obj
h.power = 10
h.type = hit.fire_wound
boom_obj:hit(h)
end
end
--\ функции сохранения значений переменных
function save_variable(p)
p:w_u16(ids)
end
function load_variable(r)
ids = r:r_u16()
end
Все функции вызываются через диалог. Но при попытке заспавнить бомбу получаю вылет:
karavan
А зачем тебе ids = objbomb.id в каждой функции? У тебя же ids - таблица, а у тебя получается, что table.insert ты делаешь для id. Убери везде ids = objbomb.id.
добавлено спустя 3 минут
И по-моему сохранять таблицу через пакет ненадо, да и w_u16 предназначен ведь для чисел, а ты так таблицу пытаешься сохранить.
отредактировал(а) Futura: 29-04-2010 21:04 GMT3 час.
musnuk ну смотри, есть же логика, к примеру как в Припяти, отряд сталков стоит по кругу, и в центре командир, произносит определенную фразу, играет поршень, дается задание. А в логике сталкера, можно прописать любую анимку, любое условие. Создавай уникальных НПС, делай им логику, какую хошь, спавни, и они будут жить по твоей логике. ТАк же ты их отпустить можешь, т.е убьют военного, и разойдутся
karavan а в чем вообще смысл использования тобой пакетов? Просто для чего либо "неконкретного" всегда лчше использовать псторы, т.к. десяток другой апдейтер сильно не перегрузят
karavan , ещё что интересно.
Ты вертексы видать поленился снимать для каждой координаты?
Между первыми и вторыми координатами разница по оси Z 5 метров. И это при длине LV ячейки 0.7 метра. То же cамое и меж
отредактировал(а) Gun12: 29-04-2010 22:29 GMT3 час. Не стань номинантом премии Дарвина.
Задавая вопрос потрудись чтобы он был понятен другим.
И непонятно, почему вопрос адресован именно мне (? я в этом топике оч. не часто бываю) и чего же ты ждешь? Готового кода или типа: "Пиши на LUA."? karavan
Прими за правило перепроверять наличие объекта и при создании и при использовании, а то 'глюки' могут замучить.
function test1_1()
local pos = vector():set(-189,-20,-140)
local gv = 62345
local lv = 56
local objbomb = alife():create("bomba",pos,gv,lv) --ids = objbomb.id--/ ошибка! if objbomb then
table.insert(ids, objbomb.id) end
end
function detonator()
for k,v in pairs(ids) do
local boom_obj = level.object_by_id(v) if boom_obj then pos = boom_obj:position()--/ а это зачем?
local h = hit()
h.direction = vector():set(0,0,0)
h.impulse = 10
h.draftsman = boom_obj
h.power = 10
h.type = hit.fire_wound
boom_obj:hit(h) end
end
end
P.S. да и применение метода 'pairs' (с использованием key,value) для перебора одномерной таблицы сомнителен ... Для подобного штатно предусмотрен 'for i=1, #ids do ... end'
function detonator() local count = #ids
if count > 0 then
for i=1, count do
local boom_obj = level.object_by_id(ids[ i ]) if boom_obj then
local h = hit()
h.direction = vector():set(0,0,0)
h.impulse = 10
h.draftsman = boom_obj
h.power = 10
h.type = hit.fire_wound
boom_obj:hit(h) end
end end
end
Друзья!!!
Благодарю за помощь и пояснения. Без вашей помощи мне сложно разобраться, поскольку table.insert(ids, objbomb.id) я использовал впервые не понимая как он работает. Да и еще в добавок попытался копи-пастом быстро создать функции для теста. Еще раз спасибо. :-) :ye)
добавлено спустя 3 минут
TheDoktor В файле inventory_new.xml
уменьшай значение по оси Х вот в этом теге помойму
TheDoktor
Я по характеру очень 'неудобный' (это мягко говоря) человек - могу разжевать до состояния пюре и в ротик положить, а могу и ... полуответами помучить. Все зависит и от настроения и от того кто и как задает вопросы (делай выводы).
Даю еще подсказку: приемник ищи по:
section_name = physic_object
name = trader_pribor_0002 karavan
Вот потому то и стОит сначала понять, а потом использовать по мере необходимости.
Как работает 'table.insert' (это втроенная функция LUA) порой необязательно (хотя бывают ситуации и желательно), а 'вот когда и как' применять - обязательно.
В твоем случае можно и не применять было, а обойтись: idx[objbomb.id] = true (двумерный массив), вот тогда было бы обязательно использование 'for k,v in pairs do' при переборе (но уже с 'k' в качестве ID).
Artos Я не разу не вскрывал аль спаун, но шкурой чувствую что запись из него.
Я по характеру очень 'неудобный' (это мягко говоря) человек - могу разжевать до состояния пюре и в ротик положить, а могу и ... полуответами помучить. Все зависит и от настроения и от того кто и как задает вопросы (делай выводы).
Ты намекаешь что я юзер, ну и ладно! Но... в моем моде нашли только один вылет, а в твоём... Если ты делаешь мод, закончи его, проверь полностью, а потом выкладывай.
Я – хозяин своей судьбы, но только судьба знает, где закончится мой путь.
... а могу и ... полуответами помучить...(делай выводы).
предназначалась тебе для того, что бы ознакомился (в любом из редакторов) с кнопкой "Поиск"
Ты даже не подозреваешь сколько ответов прийдут сами собой.
Человек пытается (хотя я и скептически отношусь к этому) как-то расшевелить Вас, заставить думать, анализировать - приучить к самостоятельности.
Я не разу не вскрывал аль спаун...
.............
Но... в моем моде нашли только один вылет, а в твоём... Если ты делаешь мод, закончи его, проверь полностью, а потом выкладывай.
Зря ты так говоришь.
Я промолчу, послушаю что на это другие скажут.
Особонно Artos , если захочет ответить что-то вообще.
Потому что твои слова больше похожи на ... ладно, подожду
Да, чуть не забыл. Почитай :
«Имхо».
ИМХО - от английского IMHO (In my humble opinion), что переводится как: По моему скромному мнению.
Так же имеет остроумный Русский вариант перевода: Имею Мнение Хрен Оспоришь.
«Олбанский».
Ироничная форма преднамеренного неправильного писания Русского языка с учётом некоторых правил специфичной орфографии.
«Кг/Ам»
КГ/АМ (аббревиатура «креатив - говно, автор - мудак») — крайне низкая оценка поста и клеймение его автора.
«З.Ы» оно же «P.S»
Надпись в конце речи, обозначающая краткое дополнение к заключению.
Она же «Пост скриптум».
«+1»
Обозначение того, что еще один человек присоединился к вашему мнению.
Так же может обозначать повышение репутации или хвалу.
«rulezz»
Rulezzz - искаженное rules – "правит" или "лидирует". В Русский язык перекочевало в качестве слова «рулит», «рульно» и т. п.
«2 ник»
Если пишут вот так:
2 seldes, ты кросафчег.
Это значит что писали мне. 2 (to - к, для), то есть: Для селдеса, ты кросафчег.
«оффтоп»
Не в тему. когда тема посвящена играм, а вы обсуждаете законность аборта. В общем, когда не в тему разговор. Это некрасиво и осуждается.
«оверквот»
Злоупотребление цитированием. Есть кнопка - Quote (Цитата).
«флуд»
Мусорные сообщения, или сообщения, не несущие какой-либо полезной нарузки. Например:
Жжош, чувак!
Ну вы блин даете.
А я круче всех!
ЫЫЫыыыыыы!!!!!!!
«флейм»
— (огонь, пламя) — обмен сообщениями в интернет-форумах и чатах, представляющий собой словесную войну, нередко уже не имеющую отношения к первоначальной причине спора. Сообщения флейма содержат личные оскорбления, и зачастую направлены на дальнейшее разжигание ссоры. Иногда применяется в контексте троллинга, но чаще флейм вспыхивает просто из-за обиды на виртуального собеседника.
Наиболее частые причины флейма:
1. Дружеские насмешки, которые без интонации и выражения лица говорящего могут восприниматься как оскорбительные.
2. Резкие высказывания в адрес "посторонних объектов" (игр, корпораций, спортивных команд, программ, фильмов, артистов), которые хотя и не являются нападками на личность собеседника, но могут приниматься им близко к сердцу.
3. Критика или насмешка по поводу высказывания, если она не сопровождается выдвижением антитезиса.
4. Некоторые полемические приемы (например, искажение мысли собеседника путем доведения ее до абсурда).
5. Фразы "свысока", вызванные ошибочным определением возраста или квалификации собеседника.
6. Шутливые высказывания, которые могут восприниматься как лживые или глупые без интонации и выражения лица говорящего.
Наиболее часто во флейме участвуют подростки, но во многих странах (в том числе на постсоветском пространстве) флейм вызывается даже высокообразованными людьми, так как в этих странах искусство ведения дискуссии не входило в систему высшего образования. При этом вместо приемов дискуссии по неведению могут применяться приемы политической полемики, хотя их предназначение - дискредитация политического противника как лидера.
Раздел - это часть форума. Например "Новости о Сталкере", "Общение", и так далее.
Топик - это сетевой синоним слова "тема", применительно к форумам. В ходу оба варианта.
Сабж - от английского subject - пришло из FIDO. Означает тему. При этом имеет смысловую ссылку на тему. То есть, если тема называется "холодное пиво", но предложение вида "хочу выпить много сабжа" следует читать и понимать как "хочу выпить много холодного пива".
Пост - это сообщение в теме/топике.
Администратор - это есмь человек наделенный максимальными привелегиями на конкретном ресурсе.
Модератор - это есмь человек, наделенный доверием общественности, и следящий за порядком на ресурсе. Любые споры с модератором категорически запрещены, и могут быть лишь в личной почте, то есть минуя публичную стадию.
Рулесы - от английского rules - правила. Прямой сетевой синоним слова "правила". Правила везде разные, но всегда работает простая схема:
1. Модератор всегда прав.
2. Если есть ещё вопросы - см. пункт №1.
Капс - это есть написание предложений в верхнем регистре. НАПРИМЕР ВОТ ТАК. Во всех существующих в последние тридцать лет сетях это считается ором. При чём грубым ором. Писать такие предложение следует категорически аккуратно и осторожно, чтобы никого не оскорбить своим криком.
FAQ - frequently asked questions, "часто задаваемые вопросы" - название тематических справочников, составленных по принципу "вопрос - ответ". Как правило в таких справочниках содержится максимальное количество ответов по традиционным ответам. В любом случае, если у вас есть какие-то вопросы, то в начале ОБЯЗАТЕЛЬНО следует пролистать фак на предмет наличия ответов.
Некрофил - человек, отписывающийся в старых забытых (как бы мёртвых) темах.
Троллинг (от англ. trolling — ловля рыбы на блесну) — постинг заведомо провокационных сообщений, с целью вызова волны флуда, флейма, оффтопа, получения негативной реакции пользователей
Struck, а стандартная схема [sr_timer] для декриментирующего таймера не подходит?
отредактировал(а) Gun12: 30-04-2010 10:20 GMT3 час. Не стань номинантом премии Дарвина.
В моем посте не было никаких намеков, относительно тебя.
Но судя по твоей 'обиде', ты считаешь себя 'матерым' модером, а тебя тут чуть ли не 'поучают' (из-за твоих же 'юзерских'(!) вопросов) ...
После этого поста, без всяких намеков, говорю: TheDoktor => FullIgnore
В отличии от тебя, я себя сам считаю Юзером, хотя и обнаглевшим и сунувшим нос в коды, дабы подстроить игру под себя, и НЕ 'делающим мод', а делающим изменения в кодах/игре.
Ну и пиписьками с тобою меряться не намерен (у кого больше ... и кого кривее ...). Вот только 'выкладывать иль нет' и когда - решать не тебе, тем более твой IQ не различает 'готовый продукт' от 'полуфабриката'.
На твоем бы месте, я подобную поделку и не выкладывал бы и не называл 'моею'. Не по причине плохая/хорошая, а и не' нать' енто мне (звездиться, тем более подобной мелочовкой) и потуги по правке цифирек (а как и каких подсмотрев у других) выдавать за 'проделанную мною работу'.
Artos Даю еще подсказку: приемник ищи по:
section_name = physic_object
name = trader_pribor_0002
Небольшое уточнение - данная логика используется модами на основе NLC (для приемника у Сидора)
В оригинале же - музыка у Сидоровича в каморке играет в статик звуках.
Artos И тебе привет...
отредактировал(а) Сяк-Бусек: 30-04-2010 11:05 GMT3 час.
К сожалению ... как многосмысленность (неоднозначность) вопросов, так и ответов приводит и к недопонималками и к разным трактовкам.
Прямой вопрос был о звуке в каморе, и ни слова не упомянут ни мод, ни иное.
Судя по тому, что автор вопроса писал ранее, он ковыряется в "своем моде", в котором уверен есть и сторонние коды из других модов (и не суть сколько/каких).
Т.к. мне известны только случаи, которые и дал в своем ответе, не посчитав нужным уточнять о чем конкретно вопрошает автор вопроса.
Вторичный же вопрос касался именно логики приемника и ее поиска , и так же был дан однозначный ответ о приемнике. Подразумевая конечно, что: в оригинале логика его пуста, в остальных случаях именно там, и автор вынужден будет посмотреть куда же и/или как ее нужно будет прописывать, раз задался подобным вопросом.
Уже говорил, цель моих ответов в овновном расшевелить желание и поизучать и понять, а не дать готовенькое.
Я не утверждал, что я "крутой модер". Я пока с огромным скрипом учусь. Да я не знаю некоторых, для вас элементарных, вещей. Да у меня мод этакий франкенштейн, я это не скрываю, так же как не присваиваю себе чужие идеи. Я "собрал" мод под себя с упором на реализм, выложил у себя в журнале, а люди заинтересовались, поиграли и сказали чего ещё надо сделать, какие ошибки исправить. И я сейчас стараюсь это сделать, а то что мне не понятно, спрашиваю на этом топике. По моему, его для этого и создали. Вот эта фраза мне лично немного обидна:
от того кто и как задает вопросы (делай выводы).
С уважением надо к людям относиться, В конце концов если вопрос для тебя кажится тупым, не отвечай на него и все.
Я – хозяин своей судьбы, но только судьба знает, где закончится мой путь.
Gun12
про схему sr_timer я и подзабыл...но если нужен вывод значений таймера именно в свой статик, то все равно скрипт ему понадобится.
вот так это по "человечески" выглядит -- выводит обр**50016ea8aab1bb10eeba**3600000)
local minutes = math.floor(global/60000 - hours*60)
local seconds = math.floor(global/1000 - hours*3600 - minutes*60)
str= string.format("%02d:%02d:%02d",hours,minutes,seconds)
return str
end
[/code]
Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
Небольшой вопрос. Ввел в игру новую гранату для подствольника, прописал в мультиплеере присвоил новому оружию, прописал в мп_аммо... Но в мультиплеере в подствольник вставляется только одна граната. Остальные сколько бы их нет тупо лежат в инвентаре и в худе не отображаются. Работает только одна граната находящаяся в подствольнике при покупке оружия. В чем беда? :blink
Журнал
- модель M79
- модель HK SL-8
- модель Milkor m32 WIP
blackraven6
Нужно быть телепатом, чтобы отвечать на подобные вопросы. Раз не работает - что-то не так сделал/не доделал, тем более сам о невидимости в каком-то худе пишешь. А 'что' - без 'вижу коды' кроме тебя никто не скажет, только погадалки возможны.
И не связывался бы ты с 'новыми' гранатами, т.к. особенности движка, хоть и не всегда, но дают фатальные сбои именно из-за 'новых' гранат. TheDoktor
Уважение непростое понятие и на стОит тут демагогией заниматься.
Уважение не бывает просто так и одинаковое. Нередко его и теряют.
О каком уважении можно говорить тому, кто не удосуживается потрудиться над поиском ответов на простейшие вопросы и ратуя о том, что топик и предназначен для вопросов - засоряет его различным "почемучками"? В таких случаях и уважение к такому "почемучке" соответствующее (как к малолетнему).
О каком уважении идет разговор, если забросав простейшими вопросами и пособирав всевозможных ответов, не понимая что/к чему и почему, методом тыка достиг некоего сомнительного результата и тут же возвещающего: "Наконец усилил некоторых монстров." А может стОит 'уважить' соавторов "своего" усиления, хотя бы помянув топик где мозгов поднабрался?!
О каком уважении можно говорить тому, кто "СВОЙ мод" (даже не потрудившись хотя бы частично указать авторов(!) практически всего в моде), сравнивает с другим(и)? Лень указывать источник - косвенный плагиат.
...
Замечу, ни какого неуважении не было ни в одном моем слове, а вот о недостатке 'уважения' (как к взрослому и как к модмейкеру) я и давал понять. На что имею и право и имел желание.
(сорри, что обещал игнорировать, но не сдержался ...)
Эта тема закрыта, публикация новых сообщений недоступна.
Продолжая пользоваться сайтом, вы соглашаетесь с использованием файлов cookie. Страницы сайта могут содержать информацию, запрещенную для просмотра посетителям младше 18 лет. Авторское право на серию игр «S.T.A.L.K.E.R» и используемые в ней материалы принадлежит GSC Game World.