SoC. Создаем худ маски — различия между версиями — S.T.A.L.K.E.R. Inside Wiki

SoC. Создаем худ маски — различия между версиями

Материал из S.T.A.L.K.E.R. Inside Wiki

Перейти к: навигация, поиск
Строка 77: Строка 77:
  
 
Теперь заходим в '''gamedata\textures\ui''', находим файл с названием '''ui_mainmenu.dds'''.
 
Теперь заходим в '''gamedata\textures\ui''', находим файл с названием '''ui_mainmenu.dds'''.
Копируем его, заходим в '''gamedata\textures\hud''' вставляем его и переминуем в '''hud_gas'''.
+
Копируем его, заходим в '''gamedata\textures\hud''' вставляем его и переминуем в '''hud_gas.dds'''
Открываем программой '''Adobe Photoshop''' и рисуем подходящую для вас маску
+
Открываем программой '''Adobe Photoshop''' и рисуем подходящую для вас маску.
Вот и все! Начинаем новую игру ищем костюм сталкера или наемника, надеваем и видим вашу текстуру.
+
 
 +
Вот и все! Начинаем новую игру, ищем костюм сталкера или наемника, надеваем и видим вашу текстуру.
 
'''Всем респект'''
 
'''Всем респект'''
  
 
===Автор: Weanchester===
 
===Автор: Weanchester===

Версия 11:21, 28 мая 2011

Теория

Мне кажется многие задавались вопросом "Как же создать худ маски"? Немного пораздумав, я создал функцию, которая крепит текстуру к определенному костюму.

Опытным модмейкерам может показаться моя функция усложненной, но главное, что все работает и не вылетает!

Практика

Работа со скриптами

Первым делом в директории gamedata\scripts создайте файл с названием xr_mask.script Открываем его и пишем:

function hud_gas()
   local slot = db.actor:item_in_slot(6)
   local object = db.actor:object("stalker_outfit") and db.actor:object("killer_outfit")
       if slot ~= nil and object ~= 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")
                end
        end
end

Теперь поясню:

function hud_gas() -- функция
   local slot = db.actor:item_in_slot(6) -- переменная - слот костюмов
   local object = db.actor:object("stalker_outfit") and db.actor:object("killer_outfit") -- переменная объектов, если именно этот костюм одет, запускаем текстуру
       if slot ~= nil and object ~= nil then -- соединяем переменную - слот костюмов и переменную объектов
                local hud = get_hud() -- переменная худа
                local custom_static = hud:GetCustomStatic("hud_gas") -- переменная худа в XML - описателе
                if custom_static == nil then -- проверяем переменную худа в XML - описателе
                        hud:AddCustomStatic("hud_gas", true) -- тоже самое переменная худа в XML - описателе и ниже тому подобное
                end
        else
                local hud = get_hud()
                local custom_static = hud:GetCustomStatic("hud_gas")
                if custom_static ~= nil then
                        hud:RemoveCustomStatic("hud_gas")
                end
        end
end

Теперь зайдем в bind_stalker.script, который находится в gamedata\scripts, найдем функцию: function actor_binder:update(delta) и после пишем: xr_mask.hud_gas() в итоге:

function actor_binder:update(delta)
        xr_mask.hud_gas()
	object_binder.update(self, delta)
        local time = time_global()
        game_stats.update (delta, self.object)

Работа с XML - описателем

Итак, заходим в директорию gamedata\config\ui, находим файл с названием ui_custom_msgs, открываем его и в самом конце перед строкой: </header> пишем:

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

Теперь поясню:

<hud_gas x="0" y="0" width="1024" height="768" stretch="1">
    <texture>hud\hud_gas</texture> -- текстура маски. Посмотрите внимательно в скрипте мы указывали '''hud_gas'''
  </hud_gas>

Текстура

Теперь заходим в gamedata\textures\ui, находим файл с названием ui_mainmenu.dds. Копируем его, заходим в gamedata\textures\hud вставляем его и переминуем в hud_gas.dds Открываем программой Adobe Photoshop и рисуем подходящую для вас маску.

Вот и все! Начинаем новую игру, ищем костюм сталкера или наемника, надеваем и видим вашу текстуру. Всем респект

Автор: Weanchester

Другие места
LANGUAGE