Перейти к контенту

Рекомендуемые сообщения

eye_fov

eye_fov - это угол обзора, eye_range - дистанция обнаружения. Так в том то и вопрос, что дистанция обнаружения работает всегда, то есть независимо от угла обзора, даже если пробовать в полуприсяде подойти со спины к враждебному НПС, то он с этой дистанции обнаружения разворачивается и сразу атакует. Или может я что-то неправильно понимаю?

Изменено пользователем Серый Волк
Ссылка на комментарий

 

 

даже если пробовать в полуприсяде подойти со спины к враждебному НПС, то он с этой дистанции обнаружения разворачивается и сразу атакует
Откуда такие выводы ? В конфигах этот параметр варьируется от 60 до 150, так по твоему получается, что подойдя на 60м к неписю со спины он тебя сразу увидит и атакует ? Вот у меня, получается подобраться к неписям со спины на 15...10м. И не забывай, что кроме зрения у неписей есть еще и слух... А еще есть настройки денжеров, которыми можно вполне добиться достаточного для сюжета стелса...
Ссылка на комментарий

 

 

А еще есть настройки денжеров
а вот с этого момента можно поподробней, пжслста... что это и где искать?

 

 

неписей есть еще и слух... А еще есть настройки денжеров
а вот с этого момента можно поподробнее, пжлста, что это и где искать?
Ссылка на комментарий

Всем привет. Вопрос: где можно найти, как описана система таскания трупов? Еще интересно, что таскание работает только с сочетанием Шаг(Shift) + Использовать(F). Я так понимаю это в движке все? 

Ссылка на комментарий

 

 

 Я так понимаю это в движке все?

Да. Единственное, что вынесено в конфиги, это возможность таскания объекта: наличие визуала таскаемого предмета в секции [ph_capture_visuals].

  • Спасибо 1
Ссылка на комментарий

У меня такой вопрос, для чего задумывался массив db.info_restr? Что он делает сейчас - понятно (ага, sr_danger&sr_territory рыдают), но это в корне не вяжется с его описанием от разрабов (в самих файлах). Возможно кто-то знает секрет. Пока мое предположение такое: разрабы задумывали и неписей гонять по локациям (без потери самих неписей) и выдавать им нужные инфопорции в определенных рестрикторах. Возможно я опять думаю антипартийно, но в итоге мне кажется, что меня обвинят в том что я слишком много всего зарезал, и не потому, что я зарезал нужное, а потому, что зарезал рабочее, но, черт возьми, никто же за 9 лет и не пользовался.

 

В общем тут вопрос такой больше философский, я прошу привести реальный пример из практики где это хотя бы раз когда-то использовалось (и, самое главное, оправданно), также, если такого не найдется, то я прошу каждого попытаться придумать теоретический пример где бы это было оправданно использовано, в противном случае не вижу причин оставлять это в скриптах, по мне так это очередной рудиментарный хлам, почему я считаю, что он рудиментарный - я объяснить смогу.

 

Итак, у кого есть желание побеседовать - давайте побеседуем, а пока я помещаю это все в список "под нож".

  • Согласен 1
Ссылка на комментарий

Здравствуйте. Как правильно выдать инфопоршень при использовании предмета в инвентаре (например, хавки)? Пробовал сделать так:

 

function use_n()
if db.actor then
if db.actor:eat(db.actor:object("секция предмета")) then
db.actor:give_info_portion("поршень")
end
end
end

 

не работает. Предмет уже при взятии в инвентарь тут же исчезает, поршня нет. Что нужно изменить?

New Anomalies 1.1 ☢☢☢ "Смерть-лампа" ☢☢☢ Дисраптор

Русификатор для игры Vendetta: Curse of Raven's Cry

Ссылка на комментарий

@Jekyll, и чего ты ожидал? Нужно добавить коллбеки на юз предметов.

Почитай эту статейку. И делай вместо саундов выдачу поршня.

  • Спасибо 1

Ранее был известен под ником BoBaH_671.

Ссылка на комментарий

"Как правильно" - главное, это ПРИНЦИПИАЛЬНО ничего не читать. Тем более на том форуме, где задается вопрос. А то вдруг там ответ в том же разделе имеется - даже целая тема.

 

Ага, в свете наличия специальных тем - это тоже важно: писать в любую другую, но только не в ту, которой вопрос касается.

  • Согласен 1
Ссылка на комментарий

Помогите пожалуйста, не могу понять как правильно использовать console:get_float

 

    local console = get_console()

    local val = {0.00,0.00,0.00}
    val = console:get_float("r__detail_density")
    if val[3] ~= 0.00 then
        local text = "gogogo"    
        news_manager.send_tip(db.actor, text, 0, "trader", 20000)
    end

 

 

 

float get_console_float(CConsole* c, LPCSTR cmd)
{
float min = 0.0f, max = 0.0f;
float val = c->GetFloat ( cmd, min, max );
return val;
}

 

 

float CConsole::GetFloat( LPCSTR cmd, float& min, float& max ) const
{
min = 0.0f;
max = 0.0f;
IConsole_Command* cc = GetCommand(cmd);
CCC_Float* cf = dynamic_cast(cc);
if ( cf )
{
cf->GetBounds(min, max);
return cf->GetValue();
}
return 0.0f;
}

*>

Изменено пользователем tatarinrafa
Ссылка на комментарий

@FonSwong,

1. Никак. Если только подогнать звук под время анимации.

2. Нет.

 

@tatarinrafa, get_console():get_float() возвращает число с плавающей точкой, т.е. val у тебя станет числом, а ты с ним пытаешься обращаться как с массивом.

Изменено пользователем naxac

Аддон для ОП-2.09.2: Яндекс/Google/GitHub

naxac.gif

Ссылка на комментарий
Никак. Если только подогнать звук под время анимации.

как это никак, если можно поставить "пустую" текстуру, и когда нужно, подменять текстуру анимацией и одновременно включать звук

Осталось только найти исходники, где это уже делали, подмену текстур, например как в этих видео:

https://youtu.be/aTP3K2-9WqE 

https://youtu.be/4SWunMOnnpM 

https://youtu.be/zbJ5chuGQok 

https://youtu.be/DIEWiwe7-sw 

Изменено пользователем FonSwong
Ссылка на комментарий

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

В подписи к видео написано, что для смены текстуры прицела используется Луа-перехватчик от Alpet - для изменения адреса в памяти.

Изменено пользователем naxac
  • Нравится 1

Аддон для ОП-2.09.2: Яндекс/Google/GitHub

naxac.gif

Ссылка на комментарий

 

 

возможно ли получить значение общего количества патронов в инвентаре?

Если ты имеешь в виду движковую ф-цию, которая вернет тебе искомую цифру - такой нет.

Скриптом получить искомую цифру - без проблем, довольно примитивная ф-ция получится.

Ссылка на комментарий

@Sla-Sla,

function get_ammo_size(obj)

local pk = net_packet()

obj:STATE_Write(pk)

pk:r_seek(pk:w_tell()-2)

return pk:r_u16() -- ammo_left

end

 

function ammo_count(section)

local n = 0

local sobj

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

if item:section() == section then

sobj = alife():object( item:id() )

if sobj then n = n + get_ammo_size(sobj) end

end

end, db.actor)

return n

end

 

Изменено пользователем naxac

Аддон для ОП-2.09.2: Яндекс/Google/GitHub

naxac.gif

Ссылка на комментарий

@naxac,

Expression : fatal error

Function : CScriptEngine::lua_error
File : ..\xrServerEntities\script_engine.cpp
Line : 193
Description :
Arguments : LUA error: (null)

stack trace:

0023:0093717F xrCore.dll, xrDebug::fatal()
0023:09906558 xrGame.dll, CDialogHolder::UseIndicators()

 

Ссылка на комментарий

Создайте аккаунт или авторизуйтесь, чтобы оставить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

Создать аккаунт

Зарегистрировать новый аккаунт в нашем сообществе. Это несложно!

Зарегистрировать новый аккаунт

Войти

Есть аккаунт? Войти.

Войти
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...