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

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

Вот сделал наконец-то.

https://yadi.sk/d/YjjIPWQ6ohABe

rev239

* Расширенный хит-колбек (№186) для наследников объекта CEntity (Сталкеры, Актор, Монстры, машины, вертолёты).
Передаётся в упакованной форме тип хита и номер кости.
* При переходе в онлайн condition объекта не устанавливается принудительно в 1.0.
 

(с) НаноБот 12.02.2016

 

Сделано в виде  отдельного колбека, объектам наследникам от CEntity, какие это конкретные тип объектов, смотрите исходники, в общем, это сталкеры, актор, все монстры (включая ворон), кары, вертолёты, и ещё какие то. Надо исходники проработать системой Doxygen как билд 1935 для ясности наследования.

Изменено пользователем НаноБот
  • Спасибо 2
  • Нравится 1
  • Полезно 1

...в конце концов, важен лишь, машинный код.

СТАЛКЕР только для ПК!

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

Вопрос к тем, кто пользуется level.send_event_key_press(dik) / level.send_event_key_hold(dik) / level.send_event_key_release(dik).

Исх.данные: ТЧ 1.0006 - ХЕ (с гитхаба - last commit 26_Dec_2015 )

 

Хочу сделать, чтобы при нажатии на клавишу приближения/прицеливания из бинокля/оружия НЕ нужно было саму эту клавишу держать нажатой.

Например: нажал один раз - прицелился из оружия, нажал еще раз - оружие в исходное положение.

 

local zoom_wpn = false

-- Коллбэк на нажатие клавиши. --
function on_key(key, bind)

-- тут проверка - что в руках? оружие/бинокль или что-то другое. --

-- после проверки: --
    if bind == key_bindings.kWPN_ZOOM then
        if not zoom_wpn then
            zoom_wpn = true
            level.send_event_key_press(DIK_keys.MOUSE_2)
            level.send_event_key_hold(DIK_keys.MOUSE_2)
        else
            zoom_wpn = false
            level.send_event_key_release(DIK_keys.MOUSE_2)
        end
    end
end

 

 

 

Но, я что-то делаю не правильно и у меня этот код не работает.

Коллбэк на нажатие работает без проблем (проверено). Сама "имитация" нажатия не фурычит (у меня).

Если кто знает в чем дело - подскажите, плз.

 

Или может фишку с приближением/прицеливанием по нажатию один раз на клавишу - уже реализовали по-другому?

Заранее признателен ответившим.

Изменено пользователем Shkiper2012
Ссылка на комментарий
@Shkiper2012, наверно, лучше фиксирование зума в каллбэке на отпускание клавиши делать, а обратный процесс - на нажатие.

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

naxac.gif

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

@Shkiper2012, да, действительно. Видимо,из-за движковой обработки.

Получилось только с перебиндиванием клавишь сделать.

  • Согласен 1

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

naxac.gif

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

  Обращение к тем, кто развивает проект ХЕ.

 

Небольшие хотелки/пожелалки для [ТЧ 1.0006]:

-- 1 -- Можно ли сделать правку на отключение авто-перезарядки оружия.

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

 

-- 2 -- При проигрывании анмации перезарядки с помощью "play_hud_animation" у оружия на классе "РПГ7", если у ГГ нет в инвентаре заряда для этого оружия - анимация проигрывается без изображения этого заряда. То есть, как будто ГГ заряжает РПГ невидимым зарядом.

Будет замечательно, если это можно поправить.

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

Всем привет, коллеги!

Обозначилась такая проблема. На наземной локации есть подземелья. Сетка проложена везде. Сетка без ошибок. Графпойнты везде расставлены. Верхние ноды не имеют связи с нижними 100%. Но при сэйв/лоаде неписи, находящиеся на локации вверху (на земле), иногда проваливаются в подземелья. Потом они спокойно идут на ту точку, откуда "упали". Такое же было замечено в х16 в главном многоэтажном зале.

В теме по SDK было выдвинуто предположение, что в движке объектам назначаются ноды, лежащие ниже объекта. Если позиция объекта окажется ниже координаты ноды, то назначится нижележащая нода.

Отсюда к вам, уважаемые, вопрос - можно ли добавить правку в движок, чтобы задавал не нижележащую ноду, а ближайшую по высоте. Или при расчете ноды дать больший "допуск" по высоте?

 

Платформа ТЧ 1.006 с x-ray extensions.

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

Дополнительная проверка показала, что в сейв ложатся левел- и гейм-вертексы нижнего уровня, а координаты верхнего. Выходит, "падение" происходит еще до или в сам момент сохранения.

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

В расширения ещё никто не добавил юниформ скрин резолюшен? Очень нужно, но сам не могу допереть как сделать. Буду премного благодарен.

 

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

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

Всем доброго дня!

Пишу сюда, может не для меня одного этот вопрос актуален...

Есть жгучее желание  и потребность подключить к модернизированному движку в его текущей редакции библиотеки расширений LUA (io, os, package,XML...) и библиотеки OGSE, но знаний и понимания не хватает. Разместил библиотеки Lua_extensions и OGSE у себя и честно пытался в _g.script инициализировать их по образу и подобию. Мои танцы с бубном вокруг этой темы в лучшем варианте закончились примерно так:

 

file: .
file: ..
file: LuaXML_lib.dll
--try to load LuaXML_lib.dll
fname: LuaXML_lib
~~ loaded
file: ogse.dll
--try to load ogse.dll
fname: ogse
!! error, msg : error loading module 'ogse' (Не найдена указанная процедура.

)
file: xp
Starting engine...

 

Чтобы дальше не заниматься шаманством, прошу людей сведущих дать развернутые инструкции по подключению этих библиотек и оформлению "шапки" _g.script.

Заранее благодарен.

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

@boryan67, попробуй Луа-фикс от RvP - он совмещается с XE без проблем. И все эти пространства имен там есть. Хотя, про xml не в курсе...

 

 

У меня такой вопрос. Что за элемент возвращает функция level.get_target_element()? Я так понимаю, это элемент геомертии? И как тогда можно получить его игровые координаты?

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

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

naxac.gif

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

Координаты вертексов в ТЧ можно получить, в ЗП я решил что это не к чему и вырезал, там сразу можно получить нормаль и некоторую информация по элементу геометрии.

Вот пример вычисления нормали методами XRay-Extensions.

function normal_triangle(element)	-- нормаль треугольника
	local n = vector()
	local a = level.get_tri_vertex1(element)
	local b = level.get_tri_vertex2(element)
	local c = level.get_tri_vertex3(element)
	n.x = ((b.z-a.z)*(c.y-a.y))-((b.y-a.y)*(c.z-a.z))
	n.y = ((b.x-a.x)*(c.z-a.z))-((b.z-a.z)*(c.x-a.x))
	n.z = ((b.y-a.y)*(c.x-a.x))-((b.x-a.x)*(c.y-a.y))
	return n:normalize()
end 

 

 

  • Спасибо 2
  • Нравится 1

...в конце концов, важен лишь, машинный код.

СТАЛКЕР только для ПК!

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

@KD87, например для скриптовых пуль(снарядов), эффекты отражения там, например луча ЛЦУ, или ещё чего.

...в конце концов, важен лишь, машинный код.

СТАЛКЕР только для ПК!

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

Когда ты держишь ствол от бедра и поворачиваешь камеру в разные стороны, то ствол не стоит не месте ,а "гуляет". При повороте камеры в режиме прицеливания ствол статичен полностью, а я хочу добиться того же гуляния ствола. Помогайте...

Добавлено warwer,

Пункт правил 2.1.2 - даблпостинг. Устное предупреждение.

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

У меня тут в одной теме на форуме возник спор, если можно это так назвать. Дело вот в чём: я считаю, что на шестом патче без x-ray extensions шейдер самосвечения (selflight) на худе оружия работать не будет. Но некоторые утверждают обратное, поэтому решил обратиться к экспертам за официальным заключением. Исходя их документации к x-ray extensions и собственным наблюдениям считаю, что без правок ничего светиться не будет, но некоторые утверждают обратное.

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

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

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

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

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

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

Войти

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

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

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