Перейти к содержанию

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

 
 

 

Вопрос: Можно ли вызвать определённую функцию во время проигрывания анимации оружия, например, когда ГГ достает оружие ( ak74_draw, например)? 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Подскажите пожалуйства как сделать на локации горещий костер.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Daniil1989 Если тебе нужно именно объект костёр и сделать его горящим, то через SDK

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
2 часа назад, Grade сказал:

Daniil1989 Если тебе нужно именно объект костёр и сделать его горящим, то через SDK

Да у меня в СДК есть локация на ней есть костер только не горещий, я хочу сделать его горещим

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Daniil1989 Самый простой вариант - удали свой костёр и добавь на его место группу. Посмотри в ютубе как работать с группами в SDK. Там достаточно уроков )))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Grade для этого нужно полностью компилить локацию? Или можно make game, и компил батниками... 


IMG-37f2f96c0f50da877397935e4895dd7a-V.j

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

TMM team Grade  Почему нельзя просто добавить аномалию campfire на место костра?! И костёр будет гореть

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

Мне 14 лет. Программирую на C++ и Lua. Опытный в моддинге.
Мой мод Clear Sky: Reload

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Добро. Есть возможность более глобально влиять на то, как используют фонарик НПС? Кажется, где-то видел, что можно в скрипте общей логики прописать условие, например, если НПС в определённой зоне, то они всегда будут держать фонарь включённым.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Есть функционал самих зон. Схема sr_light. Логика вешается на нужный рестриктор, в котором нужно включать свет.

[logic]
active = sr_light

[sr_light]
light_on = true

Далее уже это всё дополняется всякими условиями выхода из схемы, чтобы, к примеру, свет включали в этой зоне только в определенный момент и т.д.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
В 29.08.2021 в 14:22, Xenomorphom сказал:

 

Вопрос: Можно ли вызвать определённую функцию во время проигрывания анимации оружия, например, когда ГГ достает оружие ( ak74_draw, например)? 

Если нужно вызывать функцию когда проигрывает конкретная анимация, то это нужно править в движке...
Иначе можно обойти скриптами, предлагаю так:
bShowed = false
if db.actor:active_item() and db.actor:active_item():section() == "wpn_ak74" then
if not bShowed then
bShowed = true
..вызов функции..
end
else
bShowed = false
end


Дополнено 6 минуты спустя
9 часов назад, Neptun сказал:

Добро. Есть возможность более глобально влиять на то, как используют фонарик НПС? Кажется, где-то видел, что можно в скрипте общей логики прописать условие, например, если НПС в определённой зоне, то они всегда будут держать фонарь включённым.

в xr_effects, функция set_torch_state (передаётся секция НПС, и булеан).
if нпс в какой-то скриптовой зоне then
local npc = секция нпс
xr_effects.set_torch_state(nil,nil,{npc,true})
get_story_object(npc):object("device_torch"):torch:enable_torch(true)
end
Можно запихнуть в апдейт в xr_motivator

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

Мне 14 лет. Программирую на C++ и Lua. Опытный в моддинге.
Мой мод Clear Sky: Reload

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Можно ли именно как-нибудь скриптом сменить иконку ГГ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
7 часов назад, Paradox27kms сказал:

Можно ли именно как-нибудь скриптом сменить иконку ГГ?

Если оригинальный движок, то нет. В некоторых модах (OpenXray, CoC) есть эта функция, set_character_icon. Но можно скриптово подменить иконку (наложение новой иконки на старую), предлагаю такой алгоритм:
1. Если ГГ открыл инвентарь, то
Иначе
Скрыть новую иконку
2. Добавить UI диалог к рендеру (чтобы курсор автоматически не появлялся)
3.  Получить string новой иконки
4.  Показать иконку
(

self.icon = "icon"

InitStatic(icon)
)

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

Мне 14 лет. Программирую на C++ и Lua. Опытный в моддинге.
Мой мод Clear Sky: Reload

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
3 часа назад, liner сказал:

Если оригинальный движок, то нет

Можно костылем подменивать профиль. Тогда иконка по идее поменяется нормально. Но это костыль.


6 ГБ ОЗУ DDR3 1152 мГц (Разносорт)

Процессор Intel Xeon E5420 4/4 2.7 ГГц (OC)

Видеокарта Gigabyte GeForce GT 240 512 МБ GDDR5 (Samsung) DirectX v10.1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Народ! Существует ли природе мод. исправляющий анимации детекторов в руках? Что то гугл ничего не находит, или я искатель хреновый..(((
Имеется ввиду не анимация картинки на экране детектора, а именно анимация рук, на данный момент, любой детектор в руках на оригинале ЗП статичен. хоть идёт Гг хоть стоит, хоть бежит...


иконка3.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
3 минуты назад, Policai сказал:

Гг хоть стоит, хоть бежит...

Вроде в SWM 2.1 были анимации для пыс детекторов новые (На бег). Хранятся они в анимациях рук hpsa. 

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

6 ГБ ОЗУ DDR3 1152 мГц (Разносорт)

Процессор Intel Xeon E5420 4/4 2.7 ГГц (OC)

Видеокарта Gigabyte GeForce GT 240 512 МБ GDDR5 (Samsung) DirectX v10.1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
1 час назад, Hozar_2002 сказал:

Вроде в SWM 2.1 были анимации для пыс детекторов новые (На бег)

Там на движке завязано много..(((  Я пробовал оттуда брать анимацию болта при беге... Перетащил анимку. и конфиги... Всё работает, но болт при броске просто исчезает... После этого оттуда брать опасаюсь...


иконка3.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Policai может быть это моушен марки просто пропали при переносе?


STCOP engine discord: https://discord.gg/MVu2FzyJV5
Boomsticks & Sharpsticks: https://discord.gg/vThnFWrbaA

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Policai Анимация бега это просто анимация бега. Она не имеет отношения к броску.


i-love-kfc одобряет: Shadow of Chernobyl Gunslinger Addon

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
6 минут назад, i-love-kfc сказал:

Анимация бега это просто анимация бега. Она не имеет отношения к броску.

Занимался давненько этим, не получилось и плюнул,  сейчас попробовал по новой разобраться. то же самое... Анимацию закидываю и болт пропадает при броске... Но разобрался почему, нельзя трогать файл анимаций болта dev_hand_bolt_hud_animation, а я добавлял анимацию в него, Добавил анимацию в другой файл, в бинокль, для пробы. всё заработало нормально... 


Дополнено 22 минуты спустя
2 часа назад, Hozar_2002 сказал:

SWM 2.1 были анимации

Спасибо Антон, нашёл, выдернул, подправил под себя конфиги, всё работает отлично...


иконка3.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Пытаюсь реализовать смену имени ГГ. Брал пример из сетевой игры.

Следовательно вот сам скелет оригинального меню:

Спойлер

--------------------------------------------------------------------------------
-- Created: 13.05.2009 ---------------------------------------------------------
-- Description:    local network login page ---------------------------------------
-- Author: Alexander Maniluk ---------------------------------------------------
-- Mail: loopzilla@gsc-game.kiev.ua --------------------------------------------
-- (c)GSC Game World 2009 ------------------------------------------------------
--------------------------------------------------------------------------------

class "localnet_page" (CUIScriptWnd)
function localnet_page:__init() super()
   self:InitControls()
   self:InitCallbacks()
end

function localnet_page:InitControls()
    local xml = CScriptXmlInit()
    xml:ParseFile("ui_mm_mp_localnet.xml")

    self:SetWndRect(Frect():set(0,0,1024,768))
    self:Enable(true)
    xml:InitStatic("background", self)

    local button = nil
    
    button = xml:Init3tButton("button_login", self)
    self:Register(button, "btn_login")
    self.btn_login = button

    button = xml:Init3tButton("button_cancel", self)
    self:Register(button, "btn_cancel")
    self.btn_cancel = button
--------------------------------------------------------------------------------
    self.login_page = CUIWindow()
    xml:InitWindow("login_page", 0, self.login_page)
    self.login_page:SetAutoDelete(true)
    self:AttachChild(self.login_page)
    
    xml:InitWindow("login_page", 0, self.login_page)
    self.lp_header_login = xml:InitTextWnd("login_page:cap_header_login", self.login_page)

    xml:InitTextWnd("login_page:cap_nickname", self.login_page)
    self.lp_nickname = xml:InitEditBox("login_page:edit_nickname", self.login_page)
    self:Register(self.lp_nickname, "lp_edit_nickname")
    
    self.gs_login_message_box = CUIMessageBoxEx()
    self:Register(self.gs_login_message_box, "gs_message_box")

    button = xml:InitCheck("login_page:check_remember_me", self.login_page)
    self:Register(button, "lp_check_remember_me")
    self.lp_check_remember_me = button
    self.lp_nickname:CaptureFocus(true)
end

function localnet_page:InitCallbacks()
    self:AddCallback("btn_login", ui_events.BUTTON_CLICKED, self.OnBtnLogin, self)
    self:AddCallback("btn_cancel", ui_events.BUTTON_CLICKED, self.OnBtnCancel, self)
    self:AddCallback("lp_check_remember_me", ui_events.BUTTON_CLICKED, self.OnBtnRememberMe, self)
    
    self:AddCallback("lp_edit_nickname", ui_events.EDIT_TEXT_COMMIT, self.OnEditLPNicknameChanged, self)
    self:AddCallback("gs_message_box", ui_events.MESSAGE_BOX_OK_CLICKED, self.OnMsgOk, self)
end

function localnet_page:OnBtnLogin()
    self.owner.l_mgr:login_offline(self.lp_nickname:GetText(), login_operation_cb(self, self.LoginOperationResult))
end

function localnet_page:LoginOperationResult(profile, descr)
    if(profile==nil) then
        self.gs_login_message_box:InitMessageBox("message_box_gs_result")
        self.gs_login_message_box:SetText(descr)
        self.gs_login_message_box:ShowDialog(true)
    else
        self.owner.gs_profile = profile
        
        self.owner.shniaga:SetPage(CUIMMShniaga.epi_main, "ui_mm_main.xml", "menu_main_logout")
        self.owner.shniaga:ShowPage(CUIMMShniaga.epi_main)
        
        if(self.lp_check_remember_me:GetCheck()) then
            self.owner.l_mgr:save_nick_to_registry(profile:unique_nick())
        end
        self:HideDialog()
        self.owner:ShowDialog(true)
        self.owner:Show(true)
        self.owner:OnButton_multiplayer_clicked()
    end
end

function localnet_page:OnMsgOk()
end

function localnet_page:OnBtnCancel()
    self:HideDialog()
    self.owner:ShowDialog(true)
    self.owner:Show(true)
end

function localnet_page:OnBtnRememberMe()
    self.owner.l_mgr:save_remember_me_to_registry(self.lp_check_remember_me:GetCheck())
end

function localnet_page:OnEditLPNicknameChanged()
    self:OnBtnLogin()
end

function localnet_page:OnKeyboard(dik, keyboard_action)
    CUIScriptWnd.OnKeyboard(self,dik,keyboard_action)

    local bind = dik_to_bind(dik)
    local console = get_console()

    if keyboard_action == ui_events.WINDOW_KEY_PRESSED then
        if dik == DIK_keys.DIK_ESCAPE then
            self:OnBtnCancel()
        end
    end
    
    return true
end

Ниже выложил скрин тестового портирования в сингл (если честно не знаю должно ли по идее работать в сингле) но ловлю данный вылет при попытке сменить имя

Спойлер

Expression    : !m_error_code
Function      : raii_guard::~raii_guard
File          : D:\prog_repository\sources\trunk\xrServerEntities\script_storage.cpp
Line          : 748
Description   : ... - call of pripyat\gamedata\scripts\ui_mm_buy.script:152: attempt to index field 'owner' (a nil value)

 

ss_user_09-03-21_23-12-19_(mainmenu).jpg

ss_user_09-03-21_23-12-39_(jupiter_underground).jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Всем привет! появилась острая необходимость создания новых нпс, вопрос следующий: Могу я по реальным размерам смоделировать тело нпс или СТАЛКЕР работает со своими?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 
15 минут назад, ScarletFox сказал:

или СТАЛКЕР работает со своими?

Со своими. Возми для образца ориг. модели.


EaRLNb6.gif
AMD FX-8370 (8 X 4.35GHz); RAM 16Gb; MSI GTX 1070 (8Gb).
Windows -10 PRO (х64)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Как исправить кракозябры в компоненте список (listbox) в GUI? P.S они отображаются только если текст на русском языке.

 

ss_user_09-04-21_16-24-03_(jupiter_underground).jpg

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

добрый вечер. Есть ли функция или способ удалить труппы определенного сквада в нужный момент?  


Фак анриал энджане! Олл май хоумес юзе юнити!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
 

Paradox27kms Долго объяснять. Легче будет если ты сам посмотришь, как устроены оригинальные титры. Расположение: gamedata\configs\ui\ui_credits_base.xml и gamedata\configs\text\rus\ui_st_credits.xml

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

294404326_-1.png.b174b8675b96f1eea9aed038584779b1.png

                    Паблик ВК       

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

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

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

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