Jump to content

Recommended Posts

AndreySol    148

@Libery, сделать проверки на соответствие предмета тем, что нельзя трансферить:

db.actor:iterate_inventory(function (actor, item)

    if item:clsid() ~= clsid.obj_bolt and item:clsid() ~= clsid.device_pda then -- пример для болта и ПДА
         actor:transfer_item(item, box)

    end

Кроме ф-ции iterate_inventory есть еще одна, которая перебирает предметы инвентаря, пропуская содержимое скрытых слотов. Если ее использовать, то болт и ПДА уже не будут попадать в ф-цию обработки.

Share this post


Link to post
Share on other sites
Libery    0

@AndreySol,  Не получается, может функция не подойдет для этого ну то есть не правильно составлена. Вот весь код

Скрытый текст

local act = db.actor
local box_1 = 0

function spawn_box_1(obj)
    if obj:section() == "reset_system" then
    local act_pos = act:position()
    local box = alife():create( "active_box", vector():set( (act_pos.x + 1), (act_pos.y), (act_pos.z + 1) ),
    act:level_vertex_id(), act:game_vertex_id() )
    level.client_spawn_manager():add(box.id, -1, transfer_out)
    level.map_add_object_spot_ser(box.id, "actor_reset_mapspot", "%c[white]Сброшенные вещи")
end
end

function transfer_out(id, obj)
    box_1 = id
    items_out(box_1)
end

function items_out(box_id)
    local box = level.object_by_id(box_id)
    db.actor:iterate_inventory(function (actor, item)
    actor:transfer_item(item, box)
end,
    db.actor)
end

 

и вот это тоже ни как

 

else
    news_manager.send_tip(db.actor, "Нельзя больше ничего выкинуть из рюкзака!", nil, "inv_icon")
end
end

Edited by Libery

Share this post


Link to post
Share on other sites
mole venomous    105
9 часов назад, Libery сказал:

Не получается

Я бы посоветовал применить рекомендацию, которую дал @AndreySol и протестить на самом простеньком и безобидном коде, что бы понять на практике самому, "как надо, что бы работало".

Edited by mole venomous
  • Thanks 1
  • Согласен 2

Share this post


Link to post
Share on other sites
Libery    0

@mole venomous, Я просто работал в сфере оружия, брони, текстур и т.п но ни разу не копался в скриптах. Так что в этой области я не очень и может где-то что то упускаю, но в принципе ловлю все на ходу НО опыт на этом конечно сказываешься в области скриптов. Я конечно не считаю что человек не знавший что, куда вставлять а значит пишет бред, он же не взял это с книжки, может где то подсмотрел или кто то подсказал. Да я соглашусь надо учить LUA Но например, тебе нужно сделать фишку но нет времени над этим думать. Это если учесть то что ты например работаешь один. Я думаю для этого и создана эта тема, ведь не каждому дано за пять минут сделать то, что некоторые люди делают Годами. Поэтому я считаю им не составляет проблем что то подсказать. Я вот например если вижу вопрос в своей сфере, то да почему бы и не ответить что бы человек не мучился. Ну у каждого своё мнение. Это все зависит от опыта.

Edited by Libery

Share this post


Link to post
Share on other sites
AndreySol    148

@Libery

Тема создана, естественно, для помощи в скриптовании, но все же не для заказов и их реализации. Никому не интересно писать Ваш мод за Вас.

  • Согласен 4

Share this post


Link to post
Share on other sites
mole venomous    105
10 минут назад, Libery сказал:

что бы человек не мучился

Я не просто так посоветовал попробовать самому применить на практике, взяв за основу простой скрипт. На практике понимаешь, что делаешь. Это в дальнейшем пригодится, это личный опыт.

  • Согласен 4

Share this post


Link to post
Share on other sites
Libery    0

Согласен, но я думаю иначе. Моды это как хобби тебя не должны заставлять это делать или отвечать на те или иные вопросы. Тебе должно хотеться этим заниматься ещё и ещё. Ну это мое мнение и я буду передерживаться им!

Share this post


Link to post
Share on other sites
mole venomous    105
5 минут назад, Libery сказал:

Моды это как хобби

Если меня сейчас поволочёт, модераторы переместят к чертям это.  Я думаю, с моддингом и спортом можно провести параллели. Это как хобби, к этому есть привыкание. Застойное состояние снижает интерес, а успехи вдохновляют ещё больше. Понятно, что во всём сам не разберёшься. Тебя подталкивают, а дальше сам. В итоге ты благодарен за помощь, но успех вдвойне приятен, потому что "дальше сам".

Тебе вот такое посоветовали

Скрытый текст

if item:clsid() ~= clsid.obj_bolt and item:clsid() ~= clsid.device_pda then -- пример для болта и ПДА
         actor:transfer_item(item, box)

    end

А следующий твой пост без этого. Выходит, ты не использовал? Как тогда оно будет работать?

  • Согласен 2

Share this post


Link to post
Share on other sites
Libery    0

Пробывал, спасибо конечно я учту.

Share this post


Link to post
Share on other sites
Zander_driver    5,338
Цитата

Моды это как хобби

Почему "как". Моддинг, это хобби и есть.

Вот только, похоже кому-то надо вспомнить, что такое "хобби". Это когда человек делает то, что ему интересно, сам. Находит информацию, иногда труднодоступную. Находит ресурсы, иногда не просто добываемые. И делает собственными руками, то что ему хочется.

Что такое в данном контексте этот форум. Место обмена информацией. Кому-то нужна инфа - здесь он ее получает. Это не стол заказов, сюда не надо приходить с заявлениями "сделайте мне".

Только что, Libery сказал:

тебя не должны заставлять это делать или отвечать на те или иные вопросы.

А кто заставляет?

Если не хочешь делать то что делаешь - ну, не делай. Но ты же пришел с вопросами "как сделать" - и в ответах будут рекомендации, что делать. Сам же об этом спрашивал.

На вопросы тоже можно не отвечать. Можно сказать просто, что мол, я

Только что, Libery сказал:

Пробывал

Но вот не получилось, а почему, где, что не получилось - я вам не расскажу, логов никаких не дам, код не покажу, не хочу отвечать на ваши вопросы дурацкие.

Ну не хочешь - не рассказывай это все. Никто же не заставляет. Просто задумайся, а как тогда форумчане должны догадаться, чем тебе помочь? Ясновидящие в дефиците. Где у тебя не-получилось и почему, мы не знаем.

Ты когда такси вызываешь, к примеру. Тебя тоже заставляют говорить, куда ехать, а ты не хочешь? А так хотелось бы просто сесть и сказать таксисту "вези меня!", не говоря, куда. Он же отвезет конечно, да? у него работа такая.

  • Like 3
  • Согласен 3

08.01.2012 в 03:30, xStream сказал:

Те, у кого свои руки есть, копипастить это не будут, проще свое написать, которое тоже велосипедное, но более понятное автору.

 

Share this post


Link to post
Share on other sites

Здрасьте.

 

ЧН 1.5.10, расстановка меток NPC в [sim_squad_generic.script].

 

Задача: скрыть метки отрядов противника при переключении статуса нейтрал/враг.

Решение: добавить проверку по имени метки – if not string.find(spot, "enemy") …

Результат: метка обстрелянного отряда скрывается, но метки соседних отрядов остаются видимыми (и желтыми), хотя участники этих отрядов уже активно стреляют по ГГ.

В указанном скрипте есть проверка "при наличии лидера отряда проверять отношение ГГ к нему". Отряд не был обстрелян, лидер у него точно есть и, судя по метке, остался нейтральным, но атакует как свидетель нападения.

 

Как принудительно сделать такой отряд враждебным, чтобы скрыть метку?

Share this post


Link to post
Share on other sites
Kirgudu    673

@Norman Eisenherz, game_relations.set_squad_goodwill(squad_id, "enemy").

И вообще, стоит поизучать этот модуль и его применение в других скриптах и логике.

Share this post


Link to post
Share on other sites
_Sk8_AsTeR_    43

Подскажите пожалуйста, как в ОГСР  ВНЕ диалога проверить наличие итема у НПС?

Share this post


Link to post
Share on other sites

@Kirgudu Как определить, что отряд стал враждебным и, возможно, уже начал стрелять по ГГ, оставаясь при этом на нейтральном отношении? Какой параметр отряда меняется, когда отряд становится свидетелем нападения?

Share this post


Link to post
Share on other sites
Kirgudu    673

@Norman Eisenherz, достаточно определить, что командир отряда стал враждебным, ведь метка отряда вешается на него.
См. commander:general_goodwill(db.actor) в модуле sim_squad_generic.script (commander определяется там же) и дальнейшее использование этого показателя. При определённых его значениях можно вызывать self:hide() / self:show(), что приведёт к нужному результату.

Edited by Kirgudu
была ошибка в названии метода

Share this post


Link to post
Share on other sites

Вот именно там и смотрю, и именно эта проверка при явном наличии командиров выдает для соседних отрядов отношение "нейтрал".

Share this post


Link to post
Share on other sites
 BFG    7,094

Всем здравия. Имеется вопросик : можно ли нанести хит НПСу находясь оффлайн от него. Например на другой локе. СИД у НПСа есть.

Пробовал так, но не сработало, только находясь в зоне алайфа убивает.

function hit (actor, npc)
    local source = nil
    local sim = alife ()
    if sim then
       local se_obj = sim:story_object (9450573052- СИД)  
       if se_obj then
          source = level_object_by_id(se_obj.id)
       end
    end
    if source == nil then
        return
    end
    local h = hit ()
    h.power = 2000
    h.direction = vector():set( 1, 0, 0 )
    h.impulse = 60
    h.draftsman = source
      h.type = hit.fire_wound
    source:hit (h)
end

 

Есть ли вообще такой способ ? Гугл читал, форумы курил. Не нашёл ничего.

Спасибо.


"Кругом зомби.....у меня кончаются патроны...."

Share this post


Link to post
Share on other sites
AndreySol    148

@BFG

Хит возможен только по клиентскому объекту, а в оффлайне его нет. Пробуй через установку health в 0.

Добавлено  BFG,

Хмммм... мдааа. Спасибо большое за идею и за новые познания.

  • Thanks 1
  • Like 2

Share this post


Link to post
Share on other sites
_Sk8_AsTeR_    43

Доброго времени! 

Есть ли способ проверить, что ГГ из текущего активного оружия прямо сейчас целится правой кнопкой мыши?

Edited by _Sk8_AsTeR_

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

AMK-Team.ru

×
×
  • Create New...