• Страница 1 из 1
  • 1
Создание Маски HUDа.Подробное описание...
Лектор777@Дата: Среда, 25.12.2013, 17:41 | Сообщение # 1

Модератор

Сообщений: 19
Репутация: 3

Статус:
Здесь подробно объясню, как создавать худ маски под каждый костюм.
Функция довольно таки проста:
Создаем в gamedata/scripts/ script документ с названием xr_mask
Не знаете как сделать script документ? Все очень просто:
Создаем текстовый блокнот.Открываем его,нажимаем
 Файл/Сохранить как/ Вместо Тип файла ставим Все файлы.А на имя файла пишем xr_mask.script

Дальше:
Открываем файл bind_stalker.script и находим примерно в середине писаки с названием
function actor_binder:update(delta)
object_binder.update(self, delta)
Между ними пишем xr_mask.hud_gas
Закрываем.

Потом:
Открываем созданный документ,пишем туда эту функцию:
function hud_gas()
local slot_stalker = db.actor:item_in_slot(6)
local object_1 = db.actor:object("stalker_outfit")
local slot_killer = db.actor:item_in_slot(6)
local object_2 = db.actor:object("killer_outfit")
if slot_stalker and slot_stalker:section() == "stalker_outfit" and object_1 ~= nil or
slot_killer and slot_killer:section() == "killer_outfit" and object_2 ~= nil then
local hud = get_hud()
local custom_static = hud:GetCustomStatic("hud_gas")
if custom_static == nil then
hud:AddCustomStatic("hud_gas", true)
end
else
local hud = get_hud()
local custom_static = hud:GetCustomStatic("hud_gas")
if custom_static ~= nil then
hud:RemoveCustomStatic("hud_gas", false)
end
end
end


Но это только на костюм Наемника и сталкера.
Теперь заходим в gamedata/config/ui/ui_custom_msgs и пишем

<hud_gas x="0" y="0" width="1024" height="768" stretch="1">
<texture>hud\hud_gaz</texture>
</hud_gas>

Дальше текстуры.
Заходим в gamedata\textures\ui, находим файл с названием ui_mainmenu.dds. Копируем его, заходим в gamedata\textures\hud вставляем его и переминуем в hud_gas.dds Открываем программой Paint.net 3.5.11,Стираем все внутри, и рисуем подходящую для вас маску.

Можно тестить.
СТОП!А как же сделать под каждый костюм свой худ?Задались таким вопросом.Функция такая.
Открываем файл bind_stalker.script

Там где написали xr_mask.hud_gas нажимаем Enter и пишем вот так:
xr_mask1.hud_gas1
Это для того чтобы не было конфликта из-за одинаковых названий.
Создаем документ xr_mask1.script
Там пишем так

function hud_gas1()
local slot_stalker = db.actor:item_in_slot(6)
local object_1 = db.actor:object("monolit_outfit")
local slot_killer = db.actor:item_in_slot(6)
local object_2 = db.actor:object("dolg_outfit")
if slot_stalker and slot_stalker:section() == "monolit_outfit" and object_1 ~= nil or
slot_killer and slot_killer:section() == "dolg_outfit" and object_2 ~= nil then
local hud = get_hud()
local custom_static = hud:GetCustomStatic("hud_gas1")
if custom_static == nil then
hud:AddCustomStatic("hud_gas1", true)
end
else
local hud = get_hud()
local custom_static = hud:GetCustomStatic("hud_gas1")
if custom_static ~= nil then
hud:RemoveCustomStatic("hud_gas1", false)
end
end
end

Опять же открываем gamedata/config/ui/ui_custom_msgs

<hud_gas1 x="0" y="0" width="1024" height="768" stretch="1">
<texture>hud\hud_gaz</texture>
</hud_gas1>

Теперь у нас уже для костюма Долга и Монолита.Если хотите уже другие маски,то создаем в textures/hud/ текстурку с названием hud_new(можно любое название галвное на англ.языке)

В это случае вместо
<hud_gas1 x="0" y="0" width="1024" height="768" stretch="1">
<texture>hud\hud_gaz</texture>
</hud_gas1>

Пишем

<hud_gas1 x="0" y="0" width="1024" height="768" stretch="1">
<texture>hud\hud_new</texture>
</hud_gas1>

ВНИМАНИЕ!Чтобы сделать под каждый костюм нужно будет создавать новые документы с названием xr_mask и любое число.И писать уже в bind_stalker  xr_mask(ваше число без пробелов).hud_gas2 И т.д. Потом же опять прописывать в xr_mask Новые названия костюмов и вместо hud_gas1 писать hud_gas2.Таким темпом делаем для каждого костюма свой.

Там под все костюмы кроме модификатов

На этом урок завершен.Спасибо Синему за то что написал про эту функцию.Без него уж никак))))Удачи в модостроении сталкеры!!!
ЛеонардДата: Воскресенье, 23.03.2014, 15:08 | Сообщение # 2

Странник

Сообщений: 19
Репутация: 18

Статус:
спс очень помог
  • Страница 1 из 1
  • 1
Поиск:
Посетители дня
Посетители:

Главная | Форум | Файлы | Статьи | Галерея

   |