Files
Client/GameTools/WORLDCREATOR/DlgWeatherColor.cpp
LGram16 dd97ddec92 Restructure repository to include all source folders
Move git root from Client/ to src/ to track all source code:
- Client: Game client source (moved to Client/Client/)
- Server: Game server source
- GameTools: Development tools
- CryptoSource: Encryption utilities
- database: Database scripts
- Script: Game scripts
- rylCoder_16.02.2008_src: Legacy coder tools
- GMFont, Game: Additional resources

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-29 20:17:20 +09:00

599 lines
30 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
// DlgWeatherColor.cpp : implementation file
//
#include "stdafx.h"
#include "worldcreator.h"
#include "DlgWeatherColor.h"
#include "SceneManager.h"
#include "MainFrm.h"
#include "WorldCreatorView.h"
#include ".\dlgweathercolor.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CDlgWeatherColor dialog
CDlgWeatherColor::CDlgWeatherColor(CWnd* pParent /*=NULL*/)
: CDialog(CDlgWeatherColor::IDD, pParent)
{
//{{AFX_DATA_INIT(CDlgWeatherColor)
m_fFlareSize = 0.0f;
m_fFogEnd = 0.0f;
m_fFogStart = 0.0f;
m_fSkyFogEnd = 0.0f;
m_fSunPos = 0.0f;
m_fSunSize = 0.0f;
m_fGlowSize = 0.0f;
m_fLightRange = 0.0f;
m_fLightRange = 1000.0f;
m_fGlowSize = 800.0f;
//}}AFX_DATA_INIT
}
void CDlgWeatherColor::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDlgWeatherColor)
DDX_Control(pDX, IDC_COLOR_CHARACTER, m_CharacterNightColor);
DDX_Control(pDX, IDC_COLOR_FURGRASS, m_FurGrassColor);
DDX_Control(pDX, IDC_COLOR_WATER, m_WaterColor);
DDX_Control(pDX, IDC_COLOR_TERRAINCOLOR, m_TerrainColor);
DDX_Control(pDX, IDC_COLOR_SPECULARREFLRECTIONRATE, m_SpecularReflectionRate);
DDX_Control(pDX, IDC_COLOR_GRASSAMBIENT, m_GrassColor);
DDX_Control(pDX, IDC_COLOR_GLARESKYUPPER, m_GlareSkyUpper);
DDX_Control(pDX, IDC_COLOR_GLARESKYLOWER, m_ClareSkyLowerColor);
DDX_Control(pDX, IDC_COLOR_CHARACTERAMBIENT, m_CharacterAmbientColor);
DDX_Control(pDX, IDC_COLOR_CHARACTERLIGHT, m_CharacterLightColor);
DDX_Control(pDX, IDC_COLOR_DETAILFIX, m_DetailFixColor);
DDX_Control(pDX, IDC_LIST_WEATHERTIMELIST, m_WeatherList);
DDX_Control(pDX, IDC_COLOR_SKYNEIGHBOR, m_SkyNeighborColor);
DDX_Control(pDX, IDC_COLOR_SKYCENTER, m_SkyCenterColor);
DDX_Control(pDX, IDC_COLOR_FOGCOLOR, m_FogColor);
DDX_Control(pDX, IDC_COLOR_LIGHTCOLOR, m_LightColor);
DDX_Control(pDX, IDC_COLOR_AMBIENTCOLOR, m_AmbientColor);
DDX_Control(pDX, IDC_COLOR_FOGLAYER1, m_CloudColor1);
DDX_Control(pDX, IDC_COLOR_FOGLAYER2, m_CloudColor2);
DDX_Control(pDX, IDC_COLOR_FOGLAYER3, m_CloudColor3);
DDX_Control(pDX, IDC_COLOR_FLARECOLOR, m_FlareColor);
DDX_Control(pDX, IDC_COLOR_OBJECTAMBIENT, m_ObjectAmbient);
DDX_Control(pDX, IDC_COLOR_CHARACTER,m_CharacterNightColor);
DDX_Text(pDX, IDC_EDIT_FLARESIZE, m_fFlareSize);
DDX_Text(pDX, IDC_EDIT_FOGEND, m_fFogEnd);
DDX_Text(pDX, IDC_EDIT_FOGSTART, m_fFogStart);
DDX_Text(pDX, IDC_EDIT_SKYFOGEND, m_fSkyFogEnd);
DDX_Text(pDX, IDC_EDIT_SUNPOS, m_fSunPos);
DDX_Text(pDX, IDC_EDIT_SUNSIZE, m_fSunSize);
DDX_Text(pDX, IDC_GLOWSIZE, m_fGlowSize);
DDX_Text(pDX, IDC_LIGHTSIZE, m_fLightRange);
//}}AFX_DATA_MAP
DDX_ColourPicker(pDX, IDC_COLOR_SKYNEIGHBOR, m_cSkyNeighborColor);
DDX_ColourPicker(pDX, IDC_COLOR_SKYCENTER, m_cSkyCenterColor);
DDX_ColourPicker(pDX, IDC_COLOR_FOGCOLOR, m_cFogColor);
DDX_ColourPicker(pDX, IDC_COLOR_LIGHTCOLOR, m_cLightColor);
DDX_ColourPicker(pDX, IDC_COLOR_AMBIENTCOLOR, m_cAmbientColor);
DDX_ColourPicker(pDX, IDC_COLOR_FOGLAYER1, m_cCloudColor1);
DDX_ColourPicker(pDX, IDC_COLOR_FOGLAYER2, m_cCloudColor2);
DDX_ColourPicker(pDX, IDC_COLOR_FOGLAYER3, m_cCloudColor3);
DDX_ColourPicker(pDX, IDC_COLOR_FLARECOLOR, m_cFlareColor);
DDX_ColourPicker(pDX, IDC_COLOR_OBJECTAMBIENT, m_cObjectAmbient);
DDX_ColourPicker(pDX, IDC_COLOR_DETAILFIX, m_cDetailFixColor);
DDX_ColourPicker(pDX,IDC_COLOR_SPECULARREFLRECTIONRATE, m_cSpecularReflectionRate);
DDX_ColourPicker(pDX,IDC_COLOR_GRASSAMBIENT, m_cGrass);
DDX_ColourPicker(pDX,IDC_COLOR_GLARESKYUPPER, m_cGlareSkyUpper);
DDX_ColourPicker(pDX,IDC_COLOR_GLARESKYLOWER, m_cClareSkyLower);
DDX_ColourPicker(pDX,IDC_COLOR_CHARACTERAMBIENT, m_cCharacterAmbient);
DDX_ColourPicker(pDX,IDC_COLOR_CHARACTERLIGHT, m_cCharacterLight);
DDX_ColourPicker(pDX,IDC_COLOR_TERRAINCOLOR,m_cTerrainColor);
DDX_ColourPicker(pDX,IDC_COLOR_FURGRASS,m_cFurGrassColor);
DDX_ColourPicker(pDX,IDC_COLOR_CHARACTER,m_cCharacterNColor);
}
BEGIN_MESSAGE_MAP(CDlgWeatherColor, CDialog)
//{{AFX_MSG_MAP(CDlgWeatherColor)
ON_LBN_DBLCLK(IDC_LIST_WEATHERTIMELIST, OnDblclkListWeathertimelist)
ON_BN_CLICKED(IDC_BUTTON_WEATHERCOLORSAVE, OnButtonWeathercolorsave)
ON_BN_CLICKED(IDC_BUTTON_WEATHERFILESAVE, OnButtonWeatherfilesave)
ON_WM_KEYDOWN()
//}}AFX_MSG_MAP
ON_LBN_SELCHANGE(IDC_LIST_WEATHERTIMELIST, OnLbnSelchangeListWeathertimelist)
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CDlgWeatherColor message handlers
BOOL CDlgWeatherColor::OnInitDialog()
{
CDialog::OnInitDialog();
for(int i=0;i<24;i++)
{
CString strTime;
strTime.Format("%d<><64>",i);
m_WeatherList.AddString(strTime);
}
m_WeatherList.AddString("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
OnDblclkListWeathertimelist();
// TODO: Add extra initialization here
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CDlgWeatherColor::OnDblclkListWeathertimelist()
{
// TODO: Add your control notification handler code here
int SelCur=m_WeatherList.GetCurSel();
if(SelCur==-1)
{
SelCur=0;
m_WeatherList.SetCurSel(0);
}
if(CSceneManager::m_WeatherManager.m_bSubTable)
{
int iSub = CSceneManager::m_WeatherManager.m_iSubCurrentIndex;
m_cSkyNeighborColor=RGB(CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_SkyNeighborColor[SelCur].r,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_SkyNeighborColor[SelCur].g,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_SkyNeighborColor[SelCur].b);
m_cSkyCenterColor=RGB(CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_SkyCenterColor[SelCur].r,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_SkyCenterColor[SelCur].g,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_SkyCenterColor[SelCur].b);
m_cFogColor=RGB(CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogColor[SelCur].r,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogColor[SelCur].g,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogColor[SelCur].b);
m_cLightColor=RGB(CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_LightColor[SelCur].r,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_LightColor[SelCur].g,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_LightColor[SelCur].b);
m_cAmbientColor=RGB(CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_AmbientColor[SelCur].r,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_AmbientColor[SelCur].g,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_AmbientColor[SelCur].b);
m_cCloudColor1=RGB(CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogLayer[SelCur][0].r,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogLayer[SelCur][0].g,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogLayer[SelCur][0].b);
m_cCloudColor2=RGB(CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogLayer[SelCur][1].r,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogLayer[SelCur][1].g,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogLayer[SelCur][1].b);
m_cCloudColor3=RGB(CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogLayer[SelCur][2].r,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogLayer[SelCur][2].g,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogLayer[SelCur][2].b);
m_cObjectAmbient=RGB(CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_ObjectAmbientColor[SelCur].r,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_ObjectAmbientColor[SelCur].g,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_ObjectAmbientColor[SelCur].b);
m_fFogStart=CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogRangeNear[SelCur];
m_fFogEnd=CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogRangeFar[SelCur];
m_fSkyFogEnd=CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_SkyFogFar[SelCur];
m_fSunPos=CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_SunPosition[SelCur];
m_cDetailFixColor = RGB(CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_DetailFixColor[SelCur].r,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_DetailFixColor[SelCur].g,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_DetailFixColor[SelCur].b);
m_cSpecularReflectionRate=RGB(CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_SpecularReflectionRate[SelCur].r,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_SpecularReflectionRate[SelCur].g,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_SpecularReflectionRate[SelCur].b);
m_cGrass=RGB(CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_GrassColor[SelCur].r,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_GrassColor[SelCur].g,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_GrassColor[SelCur].b);
m_cGlareSkyUpper=RGB(CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_GlareSkyUpper[SelCur].r,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_GlareSkyUpper[SelCur].g,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_GlareSkyUpper[SelCur].b);
m_cClareSkyLower=RGB(CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_GlareSkyLower[SelCur].r,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_GlareSkyLower[SelCur].g,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_GlareSkyLower[SelCur].b);
m_cCharacterAmbient=RGB(CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_CharacterAmbient[SelCur].r,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_CharacterAmbient[SelCur].g,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_CharacterAmbient[SelCur].b);
m_cCharacterLight=RGB(CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_CharacterLight[SelCur].r,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_CharacterLight[SelCur].g,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_CharacterLight[SelCur].b);
m_cTerrainColor=RGB(CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_TerrainColor[SelCur].r,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_TerrainColor[SelCur].g,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_TerrainColor[SelCur].b);
m_cWaterColor=RGB(CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_WaterColor[SelCur].r,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_WaterColor[SelCur].g,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_WaterColor[SelCur].b);
m_cFurGrassColor=RGB(CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FurGrassColor[SelCur].r,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FurGrassColor[SelCur].g,
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FurGrassColor[SelCur].b);
}
else
{
m_cSkyNeighborColor=RGB(CSceneManager::m_WeatherManager.m_SkyNeighborColor[SelCur].r,
CSceneManager::m_WeatherManager.m_SkyNeighborColor[SelCur].g,
CSceneManager::m_WeatherManager.m_SkyNeighborColor[SelCur].b);
m_cSkyCenterColor=RGB(CSceneManager::m_WeatherManager.m_SkyCenterColor[SelCur].r,
CSceneManager::m_WeatherManager.m_SkyCenterColor[SelCur].g,
CSceneManager::m_WeatherManager.m_SkyCenterColor[SelCur].b);
m_cFogColor=RGB(CSceneManager::m_WeatherManager.m_FogColor[SelCur].r,
CSceneManager::m_WeatherManager.m_FogColor[SelCur].g,
CSceneManager::m_WeatherManager.m_FogColor[SelCur].b);
m_cLightColor=RGB(CSceneManager::m_WeatherManager.m_LightColor[SelCur].r,
CSceneManager::m_WeatherManager.m_LightColor[SelCur].g,
CSceneManager::m_WeatherManager.m_LightColor[SelCur].b);
m_cAmbientColor=RGB(CSceneManager::m_WeatherManager.m_AmbientColor[SelCur].r,
CSceneManager::m_WeatherManager.m_AmbientColor[SelCur].g,
CSceneManager::m_WeatherManager.m_AmbientColor[SelCur].b);
m_cCloudColor1=RGB(CSceneManager::m_WeatherManager.m_FogLayer[SelCur][0].r,
CSceneManager::m_WeatherManager.m_FogLayer[SelCur][0].g,
CSceneManager::m_WeatherManager.m_FogLayer[SelCur][0].b);
m_cCloudColor2=RGB(CSceneManager::m_WeatherManager.m_FogLayer[SelCur][1].r,
CSceneManager::m_WeatherManager.m_FogLayer[SelCur][1].g,
CSceneManager::m_WeatherManager.m_FogLayer[SelCur][1].b);
m_cCloudColor3=RGB(CSceneManager::m_WeatherManager.m_FogLayer[SelCur][2].r,
CSceneManager::m_WeatherManager.m_FogLayer[SelCur][2].g,
CSceneManager::m_WeatherManager.m_FogLayer[SelCur][2].b);
m_cObjectAmbient=RGB(CSceneManager::m_WeatherManager.m_ObjectAmbientColor[SelCur].r,
CSceneManager::m_WeatherManager.m_ObjectAmbientColor[SelCur].g,
CSceneManager::m_WeatherManager.m_ObjectAmbientColor[SelCur].b);
m_fFogStart=CSceneManager::m_WeatherManager.m_FogRangeNear[SelCur];
m_fFogEnd=CSceneManager::m_WeatherManager.m_FogRangeFar[SelCur];
m_fSkyFogEnd=CSceneManager::m_WeatherManager.m_SkyFogFar[SelCur];
m_fSunPos=CSceneManager::m_WeatherManager.m_SunPosition[SelCur];
m_cDetailFixColor = RGB(CSceneManager::m_WeatherManager.m_DetailFixColor[SelCur].r,
CSceneManager::m_WeatherManager.m_DetailFixColor[SelCur].g,
CSceneManager::m_WeatherManager.m_DetailFixColor[SelCur].b);
m_cSpecularReflectionRate=RGB(CSceneManager::m_WeatherManager.m_SpecularReflectionRate[SelCur].r,
CSceneManager::m_WeatherManager.m_SpecularReflectionRate[SelCur].g,
CSceneManager::m_WeatherManager.m_SpecularReflectionRate[SelCur].b);
m_cGrass=RGB(CSceneManager::m_WeatherManager.m_GrassColor[SelCur].r,
CSceneManager::m_WeatherManager.m_GrassColor[SelCur].g,
CSceneManager::m_WeatherManager.m_GrassColor[SelCur].b);
m_cGlareSkyUpper=RGB(CSceneManager::m_WeatherManager.m_GlareSkyUpper[SelCur].r,
CSceneManager::m_WeatherManager.m_GlareSkyUpper[SelCur].g,
CSceneManager::m_WeatherManager.m_GlareSkyUpper[SelCur].b);
m_cClareSkyLower=RGB(CSceneManager::m_WeatherManager.m_GlareSkyLower[SelCur].r,
CSceneManager::m_WeatherManager.m_GlareSkyLower[SelCur].g,
CSceneManager::m_WeatherManager.m_GlareSkyLower[SelCur].b);
m_cCharacterAmbient=RGB(CSceneManager::m_WeatherManager.m_CharacterAmbient[SelCur].r,
CSceneManager::m_WeatherManager.m_CharacterAmbient[SelCur].g,
CSceneManager::m_WeatherManager.m_CharacterAmbient[SelCur].b);
m_cCharacterLight=RGB(CSceneManager::m_WeatherManager.m_CharacterLight[SelCur].r,
CSceneManager::m_WeatherManager.m_CharacterLight[SelCur].g,
CSceneManager::m_WeatherManager.m_CharacterLight[SelCur].b);
m_cTerrainColor=RGB(CSceneManager::m_WeatherManager.m_TerrainColor[SelCur].r,
CSceneManager::m_WeatherManager.m_TerrainColor[SelCur].g,
CSceneManager::m_WeatherManager.m_TerrainColor[SelCur].b);
m_cWaterColor=RGB(CSceneManager::m_WeatherManager.m_WaterColor[SelCur].r,
CSceneManager::m_WeatherManager.m_WaterColor[SelCur].g,
CSceneManager::m_WeatherManager.m_WaterColor[SelCur].b);
m_cFurGrassColor=RGB(CSceneManager::m_WeatherManager.m_FurGrassColor[SelCur].r,
CSceneManager::m_WeatherManager.m_FurGrassColor[SelCur].g,
CSceneManager::m_WeatherManager.m_FurGrassColor[SelCur].b);
}
m_fGlowSize = CSceneManager::m_fGlowPlaneRange;
m_fLightRange = CSceneManager::m_CharacterLight.Range;
m_cCharacterNColor = RGB(CSceneManager::m_CharacterLight.Diffuse.r * 255.0f,
CSceneManager::m_CharacterLight.Diffuse.g * 255.0f,
CSceneManager::m_CharacterLight.Diffuse.b * 255.0f);
/*
m_cDetailFixColor=RGB(CSectorScene::m_TerrainDetailFixColor.r,
CSectorScene::m_TerrainDetailFixColor.g,CSectorScene::m_TerrainDetailFixColor.b);
*/
CSceneManager::SetWeatherTime((float)SelCur);
CSceneManager::m_WeatherManager.SetWeather((float)SelCur,BaseGraphicsLayer::GetDevice());
CSceneManager::m_WeatherManager.m_CustomWaterColor=false;
if(SelCur==24)
CSceneManager::m_WeatherManager.m_CustomWaterColor=true;
else
CSceneManager::m_WeatherManager.m_CustomWaterColor=false;
CMainFrame *mf=(CMainFrame*)AfxGetApp()->m_pMainWnd;
if(mf)
((CWorldCreatorView*)mf->GetActiveView())->Render();
UpdateData(FALSE);
}
void CDlgWeatherColor::OnOK()
{
// TODO: Add extra validation here
CDialog::OnOK();
}
void CDlgWeatherColor::OnButtonWeathercolorsave()
{
// TODO: Add your control notification handler code here
UpdateData();
int SelCur=m_WeatherList.GetCurSel();
if(SelCur==-1)
return;
if(CSceneManager::m_WeatherManager.m_bSubTable)
{
int iSub = CSceneManager::m_WeatherManager.m_iSubCurrentIndex;
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_SkyNeighborColor[SelCur].r=GetRValue(m_cSkyNeighborColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_SkyNeighborColor[SelCur].g=GetGValue(m_cSkyNeighborColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_SkyNeighborColor[SelCur].b=GetBValue(m_cSkyNeighborColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_SkyCenterColor[SelCur].r=GetRValue(m_cSkyCenterColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_SkyCenterColor[SelCur].g=GetGValue(m_cSkyCenterColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_SkyCenterColor[SelCur].b=GetBValue(m_cSkyCenterColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogColor[SelCur].r=GetRValue(m_cFogColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogColor[SelCur].g=GetGValue(m_cFogColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogColor[SelCur].b=GetBValue(m_cFogColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_LightColor[SelCur].r=GetRValue(m_cLightColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_LightColor[SelCur].g=GetGValue(m_cLightColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_LightColor[SelCur].b=GetBValue(m_cLightColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_AmbientColor[SelCur].r=GetRValue(m_cAmbientColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_AmbientColor[SelCur].g=GetGValue(m_cAmbientColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_AmbientColor[SelCur].b=GetBValue(m_cAmbientColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogLayer[SelCur][0].r=GetRValue(m_cCloudColor1);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogLayer[SelCur][0].g=GetGValue(m_cCloudColor1);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogLayer[SelCur][0].b=GetBValue(m_cCloudColor1);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogLayer[SelCur][1].r=GetRValue(m_cCloudColor2);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogLayer[SelCur][1].g=GetGValue(m_cCloudColor2);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogLayer[SelCur][1].b=GetBValue(m_cCloudColor2);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogLayer[SelCur][2].r=GetRValue(m_cCloudColor3);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogLayer[SelCur][2].g=GetGValue(m_cCloudColor3);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogLayer[SelCur][2].b=GetBValue(m_cCloudColor3);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_ObjectAmbientColor[SelCur].r=GetRValue(m_cObjectAmbient);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_ObjectAmbientColor[SelCur].g=GetGValue(m_cObjectAmbient);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_ObjectAmbientColor[SelCur].b=GetBValue(m_cObjectAmbient);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogRangeNear[SelCur]=m_fFogStart;
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FogRangeFar[SelCur]=m_fFogEnd;
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_SkyFogFar[SelCur]=m_fSkyFogEnd;
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_SunPosition[SelCur]=m_fSunPos;
/*CSectorScene::m_TerrainDetailFixColor.r=GetRValue(m_cDetailFixColor);
CSectorScene::m_TerrainDetailFixColor.g=GetGValue(m_cDetailFixColor);
CSectorScene::m_TerrainDetailFixColor.b=GetBValue(m_cDetailFixColor);
*/
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_DetailFixColor[SelCur].r = GetRValue(m_cDetailFixColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_DetailFixColor[SelCur].g = GetGValue(m_cDetailFixColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_DetailFixColor[SelCur].b = GetBValue(m_cDetailFixColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_SpecularReflectionRate[SelCur].r=GetRValue(m_cSpecularReflectionRate);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_SpecularReflectionRate[SelCur].g=GetGValue(m_cSpecularReflectionRate);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_SpecularReflectionRate[SelCur].b=GetBValue(m_cSpecularReflectionRate);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_GrassColor[SelCur].r=GetRValue(m_cGrass);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_GrassColor[SelCur].g=GetGValue(m_cGrass);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_GrassColor[SelCur].b=GetBValue(m_cGrass);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_GlareSkyUpper[SelCur].r=GetRValue(m_cGlareSkyUpper);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_GlareSkyUpper[SelCur].g=GetGValue(m_cGlareSkyUpper);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_GlareSkyUpper[SelCur].b=GetBValue(m_cGlareSkyUpper);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_GlareSkyLower[SelCur].r=GetRValue(m_cClareSkyLower);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_GlareSkyLower[SelCur].g=GetGValue(m_cClareSkyLower);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_GlareSkyLower[SelCur].b=GetBValue(m_cClareSkyLower);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_CharacterAmbient[SelCur].r=GetRValue(m_cCharacterAmbient);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_CharacterAmbient[SelCur].g=GetGValue(m_cCharacterAmbient);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_CharacterAmbient[SelCur].b=GetBValue(m_cCharacterAmbient);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_CharacterLight[SelCur].r=GetRValue(m_cCharacterLight);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_CharacterLight[SelCur].g=GetGValue(m_cCharacterLight);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_CharacterLight[SelCur].b=GetBValue(m_cCharacterLight);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_TerrainColor[SelCur].r=GetRValue(m_cTerrainColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_TerrainColor[SelCur].g=GetGValue(m_cTerrainColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_TerrainColor[SelCur].b=GetBValue(m_cTerrainColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_WaterColor[SelCur].r=GetRValue(m_cWaterColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_WaterColor[SelCur].g=GetGValue(m_cWaterColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_WaterColor[SelCur].b=GetBValue(m_cWaterColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FurGrassColor[SelCur].r=GetRValue(m_cFurGrassColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FurGrassColor[SelCur].g=GetGValue(m_cFurGrassColor);
CSceneManager::m_WeatherManager.m_pSubWeatherTable[iSub].m_FurGrassColor[SelCur].b=GetBValue(m_cFurGrassColor);
}
else
{
CSceneManager::m_WeatherManager.m_SkyNeighborColor[SelCur].r=GetRValue(m_cSkyNeighborColor);
CSceneManager::m_WeatherManager.m_SkyNeighborColor[SelCur].g=GetGValue(m_cSkyNeighborColor);
CSceneManager::m_WeatherManager.m_SkyNeighborColor[SelCur].b=GetBValue(m_cSkyNeighborColor);
CSceneManager::m_WeatherManager.m_SkyCenterColor[SelCur].r=GetRValue(m_cSkyCenterColor);
CSceneManager::m_WeatherManager.m_SkyCenterColor[SelCur].g=GetGValue(m_cSkyCenterColor);
CSceneManager::m_WeatherManager.m_SkyCenterColor[SelCur].b=GetBValue(m_cSkyCenterColor);
CSceneManager::m_WeatherManager.m_FogColor[SelCur].r=GetRValue(m_cFogColor);
CSceneManager::m_WeatherManager.m_FogColor[SelCur].g=GetGValue(m_cFogColor);
CSceneManager::m_WeatherManager.m_FogColor[SelCur].b=GetBValue(m_cFogColor);
CSceneManager::m_WeatherManager.m_LightColor[SelCur].r=GetRValue(m_cLightColor);
CSceneManager::m_WeatherManager.m_LightColor[SelCur].g=GetGValue(m_cLightColor);
CSceneManager::m_WeatherManager.m_LightColor[SelCur].b=GetBValue(m_cLightColor);
CSceneManager::m_WeatherManager.m_AmbientColor[SelCur].r=GetRValue(m_cAmbientColor);
CSceneManager::m_WeatherManager.m_AmbientColor[SelCur].g=GetGValue(m_cAmbientColor);
CSceneManager::m_WeatherManager.m_AmbientColor[SelCur].b=GetBValue(m_cAmbientColor);
CSceneManager::m_WeatherManager.m_FogLayer[SelCur][0].r=GetRValue(m_cCloudColor1);
CSceneManager::m_WeatherManager.m_FogLayer[SelCur][0].g=GetGValue(m_cCloudColor1);
CSceneManager::m_WeatherManager.m_FogLayer[SelCur][0].b=GetBValue(m_cCloudColor1);
CSceneManager::m_WeatherManager.m_FogLayer[SelCur][1].r=GetRValue(m_cCloudColor2);
CSceneManager::m_WeatherManager.m_FogLayer[SelCur][1].g=GetGValue(m_cCloudColor2);
CSceneManager::m_WeatherManager.m_FogLayer[SelCur][1].b=GetBValue(m_cCloudColor2);
CSceneManager::m_WeatherManager.m_FogLayer[SelCur][2].r=GetRValue(m_cCloudColor3);
CSceneManager::m_WeatherManager.m_FogLayer[SelCur][2].g=GetGValue(m_cCloudColor3);
CSceneManager::m_WeatherManager.m_FogLayer[SelCur][2].b=GetBValue(m_cCloudColor3);
CSceneManager::m_WeatherManager.m_ObjectAmbientColor[SelCur].r=GetRValue(m_cObjectAmbient);
CSceneManager::m_WeatherManager.m_ObjectAmbientColor[SelCur].g=GetGValue(m_cObjectAmbient);
CSceneManager::m_WeatherManager.m_ObjectAmbientColor[SelCur].b=GetBValue(m_cObjectAmbient);
CSceneManager::m_WeatherManager.m_FogRangeNear[SelCur]=m_fFogStart;
CSceneManager::m_WeatherManager.m_FogRangeFar[SelCur]=m_fFogEnd;
CSceneManager::m_WeatherManager.m_SkyFogFar[SelCur]=m_fSkyFogEnd;
CSceneManager::m_WeatherManager.m_SunPosition[SelCur]=m_fSunPos;
/*CSectorScene::m_TerrainDetailFixColor.r=GetRValue(m_cDetailFixColor);
CSectorScene::m_TerrainDetailFixColor.g=GetGValue(m_cDetailFixColor);
CSectorScene::m_TerrainDetailFixColor.b=GetBValue(m_cDetailFixColor);
*/
CSceneManager::m_WeatherManager.m_DetailFixColor[SelCur].r = GetRValue(m_cDetailFixColor);
CSceneManager::m_WeatherManager.m_DetailFixColor[SelCur].g = GetGValue(m_cDetailFixColor);
CSceneManager::m_WeatherManager.m_DetailFixColor[SelCur].b = GetBValue(m_cDetailFixColor);
CSceneManager::m_WeatherManager.m_SpecularReflectionRate[SelCur].r=GetRValue(m_cSpecularReflectionRate);
CSceneManager::m_WeatherManager.m_SpecularReflectionRate[SelCur].g=GetGValue(m_cSpecularReflectionRate);
CSceneManager::m_WeatherManager.m_SpecularReflectionRate[SelCur].b=GetBValue(m_cSpecularReflectionRate);
CSceneManager::m_WeatherManager.m_GrassColor[SelCur].r=GetRValue(m_cGrass);
CSceneManager::m_WeatherManager.m_GrassColor[SelCur].g=GetGValue(m_cGrass);
CSceneManager::m_WeatherManager.m_GrassColor[SelCur].b=GetBValue(m_cGrass);
CSceneManager::m_WeatherManager.m_GlareSkyUpper[SelCur].r=GetRValue(m_cGlareSkyUpper);
CSceneManager::m_WeatherManager.m_GlareSkyUpper[SelCur].g=GetGValue(m_cGlareSkyUpper);
CSceneManager::m_WeatherManager.m_GlareSkyUpper[SelCur].b=GetBValue(m_cGlareSkyUpper);
CSceneManager::m_WeatherManager.m_GlareSkyLower[SelCur].r=GetRValue(m_cClareSkyLower);
CSceneManager::m_WeatherManager.m_GlareSkyLower[SelCur].g=GetGValue(m_cClareSkyLower);
CSceneManager::m_WeatherManager.m_GlareSkyLower[SelCur].b=GetBValue(m_cClareSkyLower);
CSceneManager::m_WeatherManager.m_CharacterAmbient[SelCur].r=GetRValue(m_cCharacterAmbient);
CSceneManager::m_WeatherManager.m_CharacterAmbient[SelCur].g=GetGValue(m_cCharacterAmbient);
CSceneManager::m_WeatherManager.m_CharacterAmbient[SelCur].b=GetBValue(m_cCharacterAmbient);
CSceneManager::m_WeatherManager.m_CharacterLight[SelCur].r=GetRValue(m_cCharacterLight);
CSceneManager::m_WeatherManager.m_CharacterLight[SelCur].g=GetGValue(m_cCharacterLight);
CSceneManager::m_WeatherManager.m_CharacterLight[SelCur].b=GetBValue(m_cCharacterLight);
CSceneManager::m_WeatherManager.m_TerrainColor[SelCur].r=GetRValue(m_cTerrainColor);
CSceneManager::m_WeatherManager.m_TerrainColor[SelCur].g=GetGValue(m_cTerrainColor);
CSceneManager::m_WeatherManager.m_TerrainColor[SelCur].b=GetBValue(m_cTerrainColor);
CSceneManager::m_WeatherManager.m_WaterColor[SelCur].r=GetRValue(m_cWaterColor);
CSceneManager::m_WeatherManager.m_WaterColor[SelCur].g=GetGValue(m_cWaterColor);
CSceneManager::m_WeatherManager.m_WaterColor[SelCur].b=GetBValue(m_cWaterColor);
CSceneManager::m_WeatherManager.m_FurGrassColor[SelCur].r=GetRValue(m_cFurGrassColor);
CSceneManager::m_WeatherManager.m_FurGrassColor[SelCur].g=GetGValue(m_cFurGrassColor);
CSceneManager::m_WeatherManager.m_FurGrassColor[SelCur].b=GetBValue(m_cFurGrassColor);
}
// <20><><EFBFBD><EFBFBD> light setting
CSceneManager::m_CharacterLight.Diffuse.r = GetRValue(m_cCharacterNColor) / 255.0f;
CSceneManager::m_CharacterLight.Diffuse.g = GetGValue(m_cCharacterNColor) / 255.0f;
CSceneManager::m_CharacterLight.Diffuse.b = GetBValue(m_cCharacterNColor) / 255.0f;
CSceneManager::m_CharacterLight.Range = m_fLightRange;
CSceneManager::m_fGlowPlaneRange = m_fGlowSize;
}
void CDlgWeatherColor::OnButtonWeatherfilesave()
{
// TODO: Add your control notification handler code here
if(CSceneManager::m_WeatherManager.m_bSubTable)
{
int iSub = CSceneManager::m_WeatherManager.m_iSubCurrentIndex;
CSceneManager::m_WeatherManager.SaveSub();
}
else
CSceneManager::m_WeatherManager.Save();
}
void CDlgWeatherColor::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags)
{
// TODO: Add your message handler code here and/or call default
if(nChar==VK_RETURN)
{
CMainFrame *mf=(CMainFrame*)AfxGetApp()->m_pMainWnd;
if(mf)
((CWorldCreatorView*)mf->GetActiveView())->Render();
}
CDialog::OnKeyDown(nChar, nRepCnt, nFlags);
}
void CDlgWeatherColor::OnLbnSelchangeListWeathertimelist()
{
// TODO: <20><><EFBFBD><20><>Ʈ<EFBFBD><C6AE> <20>˸<EFBFBD> ó<><C3B3><EFBFBD><EFBFBD> <20>ڵ带 <20>߰<EFBFBD><DFB0>մϴ<D5B4>.
}