Nightmode off[help]

Начинающий
Статус
Оффлайн
Регистрация
12 Июл 2017
Сообщения
140
Реакции[?]
25
Поинты[?]
0
Кароче мне нужно в инсомнии(JesusCry) сделать возвращение из найтмода. Как я понял единственный способ - это считать значения на данный момент, и создать функцию, с заменой обратно, но я не очень понимаю как. Вот код функции NightMode.

Код:
void NightMode(CPlayer* me, CUserCmd* cmd)
    {
        {
            static bool bPerformed = false, bLastSetting;
            ConVar* r_drawspecificstaticprop = Interface.CVar->FindVar("r_drawspecificstaticprop");
            SpoofedConvar* r_drawspecificstaticprop_s = new SpoofedConvar(r_drawspecificstaticprop);
            r_drawspecificstaticprop_s->SetInt(0);
            if (!bPerformed)
            {
                for (MaterialHandle_t i = Interface.MatSystem->FirstMaterial(); i != Interface.MatSystem->InvalidMaterial(); i = Interface.MatSystem->NextMaterial(i))
                {
                    IMaterial *pMaterial = Interface.MatSystem->GetMaterial(i);

                    if (!pMaterial)
                        continue;

                    if (strstr(pMaterial->GetTextureGroupName(), "World")) {
                        pMaterial->ColorModulate(0.035, 0.035, 0.035);
                    }
                    if (strstr(pMaterial->GetTextureGroupName(), "StaticProp")) {
                        pMaterial->ColorModulate(0.12, 0.12, 0.12);
                    }
                    if (strstr(pMaterial->GetTextureGroupName(), "Model")) {
                        pMaterial->ColorModulate(0.40, 0.40, 0.40);
                    }
                    bPerformed = true;
                }
            }
            if (bLastSetting != bLastSetting) {
                bLastSetting = bLastSetting;
                bPerformed = false;
            }
        }
    }
 
Начинающий
Статус
Оффлайн
Регистрация
12 Июл 2017
Сообщения
140
Реакции[?]
25
Поинты[?]
0
делай
Код:
pMaterial->ColorModulate(1, 1, 1);
если выключено
Код:
void NightModeOff(CPlayer* me, CUserCmd* cmd)
    {
        {
            static bool bPerformed = false, bLastSetting;
            ConVar* r_drawspecificstaticprop = Interface.CVar->FindVar("r_drawspecificstaticprop");
            SpoofedConvar* r_drawspecificstaticprop_s = new SpoofedConvar(r_drawspecificstaticprop);
            r_drawspecificstaticprop_s->SetInt(0);
            if (!bPerformed)
            {
                for (MaterialHandle_t i = Interface.MatSystem->FirstMaterial(); i != Interface.MatSystem->InvalidMaterial(); i = Interface.MatSystem->NextMaterial(i))
                {
                    IMaterial *pMaterial = Interface.MatSystem->GetMaterial(i);

                    pMaterial->ColorModulate(1, 1, 1);
                }
            }
            if (bLastSetting != bLastSetting) {
                bLastSetting = bLastSetting;
                bPerformed = false;
            }
        }
    }
Так?)
 
Начинающий
Статус
Оффлайн
Регистрация
12 Июл 2017
Сообщения
140
Реакции[?]
25
Поинты[?]
0
Сверху Снизу