Hello, thank you for sharing,
But fog didn't work for me.(40250 base)
I also applied the following extra changes[merge](source: Link, I don't know author, sorry about that, If this post is wrong please delete it)(Maybe this steps not official. IDK.)
-->>> MapManager.cpp > AddFunction (defines Modified)
#ifdef __BL_FOG_FIX__
void CMapManager::SetEnvironmentFog(bool flag)
{
if (mc_pcurEnvironmentData)
{
mc_pcurEnvironmentData->bFogEnable = flag;
ResetEnvironmentDataPtr(mc_pcurEnvironmentData);
}
}
#endif
-->>> MapManager.h >
-> Find:
void BlendEnvironmentData(const TEnvironmentData * c_pEnvironmentData, int iTransitionTime)
-> Add:
#ifdef __BL_FOG_FIX__
void SetEnvironmentFog(bool flag);
#endif
-->>> MapType.h > Replace (def Modified)
-> Find:
BOOL bFogEnable;
-> Replace:
#ifdef __BL_FOG_FIX__
mutable BOOL bFogEnable;
#else
BOOL bFogEnable;
#endif
-->>> PythonBackgroundModule.cpp:
in #if defined(__BL_FOG_FIX__) area:
-> Add:
PyObject* backgroundSetEnvironmentFog(PyObject* poSelf, PyObject* poArgs)
{
bool bFlag;
if (!PyTuple_GetBoolean(poArgs, 0, &bFlag))
return Py_BadArgument();
CPythonBackground& rkBG = CPythonBackground::Instance();
rkBG.SetEnvironmentFog(bFlag);
return Py_BuildNone();
}
in initBackground -> #if defined(__BL_FOG_FIX__) area:
-> Add:
{ "SetEnvironmentFog", backgroundSetEnvironmentFog, METH_VARARGS },
-->>> in game.py:
-> Find:
self.currentCubeNPC = 0
-> Add:
if app.__BL_FOG_FIX__:
if background.GetFogMode():
background.SetEnvironmentFog(True)
else:
background.SetEnvironmentFog(False)
--> in uiSystemOption.py:
-> Find:
background.SetFogMode(True)
-> Add above:
background.SetEnvironmentFog(True)
-> Find:
background.SetFogMode(False)
-> Add above:
background.SetEnvironmentFog(False)
Additional step for "Official Environment Effect Options" system: (If you don't apply it, fog will not be applied after the day mode changes.)
-->>> in uiSystemOption.py
--> Find in "def __DayMode_OnCompleteChangeToLight(self)" --> "background.ChangeEnvironmentData(0)" :
--> Add:
if app.__BL_FOG_FIX__:
background.SetEnvironmentFog(background.GetFogMode())
--> Find in "def __DayMode_OnCompleteChangeToDark(self)" --> "background.ChangeEnvironmentData(1)" :
--> Add:
if app.__BL_FOG_FIX__:
background.SetEnvironmentFog(background.GetFogMode())
Now, fog works for me.
Thank you.