Files
Client/GameTools/WORLDCREATOR/DlgLightLoad.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

172 lines
4.6 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.
// DlgLightLoad.cpp : implementation file
//
#include "stdafx.h"
#include "worldcreator.h"
#include "DlgLightLoad.h"
#include "SceneManager.h"
#include ".\dlglightload.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CDlgLightLoad dialog
CDlgLightLoad::CDlgLightLoad(CWnd* pParent /*=NULL*/)
: CDialog(CDlgLightLoad::IDD, pParent)
{
//{{AFX_DATA_INIT(CDlgLightLoad)
m_bObjectName = FALSE;
m_strLightname = _T("");
m_fLightRange = 0.0f;
m_bExtLight = TRUE;
m_iLightSamples = 10;
m_iShadowSamples = 10;
m_ShadowFactors = 0.995f;
m_iAmbient = 16;
m_strEffect = _T("");
m_fExpose = 0.01f;
//}}AFX_DATA_INIT
m_cLightColor=0xffffffff;
m_bEditMode=false;
}
void CDlgLightLoad::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDlgLightLoad)
DDX_Control(pDX, IDC_CRL_LIGHTCOLOR, m_LightColor);
DDX_Check(pDX, IDC_CHECK_OBJECTFILENAME, m_bObjectName);
DDX_Text(pDX, IDC_EDIT_LIGHTNAME, m_strLightname);
DDX_Text(pDX, IDC_EDIT_LIGHTRANGE, m_fLightRange);
DDX_Check(pDX, IDC_CHECKEXT, m_bExtLight);
DDX_Text(pDX, IDC_LIGHTSAMPLES, m_iLightSamples);
DDX_Text(pDX, IDC_SHADOWSAMPLES, m_iShadowSamples);
DDX_Text(pDX, IDC_SHADOWFACTOR, m_ShadowFactors);
DDX_Text(pDX, IDC_AMBIENT, m_iAmbient);
DDX_Text(pDX, IDC_EDIT1, m_strEffect);
DDX_Text(pDX, IDC_EXPOSE, m_fExpose);
//}}AFX_DATA_MAP
DDX_ColourPicker(pDX, IDC_CRL_LIGHTCOLOR, m_cLightColor);
}
BEGIN_MESSAGE_MAP(CDlgLightLoad, CDialog)
//{{AFX_MSG_MAP(CDlgLightLoad)
ON_BN_CLICKED(IDC_CHECK_OBJECTFILENAME, OnCheckObjectfilename)
ON_BN_CLICKED(IDC_CHECKEXT, OnCheckext)
ON_BN_CLICKED(IDC_ESFBUTTON, OnEsfbutton)
//}}AFX_MSG_MAP
ON_EN_CHANGE(IDC_LIGHTSAMPLES, OnEnChangeLightsamples)
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CDlgLightLoad message handlers
void CDlgLightLoad::OnCheckObjectfilename()
{
// TODO: Add your control notification handler code here
UpdateData();
CWnd* forrename=GetDlgItem(IDC_CHECK_OBJECTFILENAME);
if(m_bObjectName)
{
CString strFilter = R3SFILE;
CFileDialog filedia(TRUE,LIGHTOBJECTPATH,NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,strFilter,this);
filedia.m_ofn.lpstrInitialDir=LIGHTOBJECTPATH;
filedia.DoModal();
CString filename=filedia.GetFileName();
if(filename!="")
{
forrename->SetWindowText(filename.LockBuffer());
m_strObjectFilename=filename;
}
else
{
m_bObjectName=FALSE;
}
}
else
{
forrename->SetWindowText("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>");
}
UpdateData(FALSE);
}
void CDlgLightLoad::OnOK()
{
// TODO: Add extra validation here
UpdateData(TRUE);
if(m_bExtLight == FALSE)
{
if(m_bEditMode)
{
if(m_fLightRange==0.0f)
AfxMessageBox("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0.0m <20>Դϴ<D4B4>.");
else
{
vector3 vecAddLightPos=CSceneManager::m_pBspScene->m_HouseObject->m_pBspObject->m_EditLightList[CSceneManager::m_pBspScene->m_HouseObject->m_pBspObject->m_SelectLight].m_vecLightPos;
CSceneManager::m_pBspScene->m_HouseObject->m_pBspObject->DeleteLight();
color AddColor;
AddColor.a=0xff;
AddColor.r=GetRValue(m_cLightColor);
AddColor.g=GetGValue(m_cLightColor);
AddColor.b=GetBValue(m_cLightColor);
CSceneManager::m_pBspScene->m_HouseObject->m_pBspObject->AddLight(vecAddLightPos,m_fLightRange,AddColor);
CSceneManager::m_pBspScene->m_HouseObject->m_pBspObject->m_SelectLight=CSceneManager::m_pBspScene->m_HouseObject->m_pBspObject->m_EditLightList.num-1;
}
return;
}
if(m_strObjectFilename=="")
{
AfxMessageBox("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD><EFBFBD><EFBFBD≯<EFBFBD><CCB8><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>ϼ<EFBFBD><CFBC><EFBFBD>");
return;
}
if(m_fLightRange==0.0f)
{
AfxMessageBox("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʈ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0.0m <20>Դϴ<D4B4>.");
return;
}
if(m_strLightname=="")
{
m_strLightname=m_strObjectFilename;
}
}
CDialog::OnOK();
}
void CDlgLightLoad::OnCheckext()
{
// TODO: Add your control notification handler code here
m_bExtLight = (m_bExtLight == TRUE) ? FALSE : TRUE;
UpdateData(FALSE);
}
void CDlgLightLoad::OnEsfbutton()
{
// TODO: Add your control notification handler code here
char str[] = "Esf <20><><EFBFBD><EFBFBD>(*.Esf) |*.Esf| <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>(*.*)|*.*||";
CString strFilter = str;
CFileDialog filedia(TRUE,NULL,NULL,OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,strFilter,this);
filedia.DoModal();
m_strEffect = filedia.GetFileName();
UpdateData(FALSE);
}
void CDlgLightLoad::OnEnChangeLightsamples()
{
// TODO: RICHEDIT <20><>Ʈ<EFBFBD><C6AE><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><> <20><>Ʈ<EFBFBD><C6AE><EFBFBD><EFBFBD>
// CDialog::<3A><><EFBFBD><EFBFBD>ũ<EFBFBD><C5A9> OR <20><><EFBFBD><EFBFBD><EFBFBD>Ͽ<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> ENM_CHANGE <20>÷<EFBFBD><C3B7>׸<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>Ͽ<EFBFBD>
// CRichEditCtrl().SetEventMask()<29><> ȣ<><C8A3><EFBFBD>ϵ<EFBFBD><CFB5><EFBFBD> OnInitDialog() <20>Լ<EFBFBD><D4BC><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
// <20><> <20>˸<EFBFBD><CBB8><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ʽ<EFBFBD><CABD>ϴ<EFBFBD>.
// TODO: <20><><EFBFBD><20><>Ʈ<EFBFBD><C6AE> <20>˸<EFBFBD> ó<><C3B3><EFBFBD><EFBFBD> <20>ڵ带 <20>߰<EFBFBD><DFB0>մϴ<D5B4>.
}