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>
This commit is contained in:
143
GameTools/WORLDCREATOR/PageSectorMesh.cpp
Normal file
143
GameTools/WORLDCREATOR/PageSectorMesh.cpp
Normal file
@@ -0,0 +1,143 @@
|
||||
// PageSectorMesh.cpp : implementation file
|
||||
//
|
||||
|
||||
#include "stdafx.h"
|
||||
#include "worldcreator.h"
|
||||
#include "PageSectorMesh.h"
|
||||
#include "SceneManager.h"
|
||||
|
||||
#ifdef _DEBUG
|
||||
#define new DEBUG_NEW
|
||||
#undef THIS_FILE
|
||||
static char THIS_FILE[] = __FILE__;
|
||||
#endif
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CPageSectorMesh property page
|
||||
|
||||
IMPLEMENT_DYNCREATE(CPageSectorMesh, CPropertyPage)
|
||||
|
||||
CPageSectorMesh::CPageSectorMesh() : CPropertyPage(CPageSectorMesh::IDD)
|
||||
{
|
||||
//{{AFX_DATA_INIT(CPageSectorMesh)
|
||||
// NOTE: the ClassWizard will add member initialization here
|
||||
//}}AFX_DATA_INIT
|
||||
}
|
||||
|
||||
CPageSectorMesh::~CPageSectorMesh()
|
||||
{
|
||||
}
|
||||
|
||||
void CPageSectorMesh::DoDataExchange(CDataExchange* pDX)
|
||||
{
|
||||
CPropertyPage::DoDataExchange(pDX);
|
||||
//{{AFX_DATA_MAP(CPageSectorMesh)
|
||||
DDX_Control(pDX, IDC_LIST_SECTORMESH, m_R3SInfoList);
|
||||
//}}AFX_DATA_MAP
|
||||
}
|
||||
|
||||
|
||||
BEGIN_MESSAGE_MAP(CPageSectorMesh, CPropertyPage)
|
||||
//{{AFX_MSG_MAP(CPageSectorMesh)
|
||||
ON_BN_CLICKED(IDC_BUTTON_VIEWTEXTURE, OnButtonViewtexture)
|
||||
ON_BN_CLICKED(IDC_BUTTON_TEXTURECOPY, OnButtonTexturecopy)
|
||||
//}}AFX_MSG_MAP
|
||||
END_MESSAGE_MAP()
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
// CPageSectorMesh message handlers
|
||||
|
||||
BOOL CPageSectorMesh::OnInitDialog()
|
||||
{
|
||||
CPropertyPage::OnInitDialog();
|
||||
|
||||
// TODO: Add extra initialization here
|
||||
DWORD dwStyle;
|
||||
dwStyle=m_R3SInfoList.SendMessage(LVM_GETEXTENDEDLISTVIEWSTYLE, 0 ,0);
|
||||
dwStyle |= LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES ;
|
||||
m_R3SInfoList.SendMessage( LVM_SETEXTENDEDLISTVIEWSTYLE, 0,dwStyle );
|
||||
|
||||
m_R3SInfoList.InsertColumn(0,"R3S<EFBFBD≯<EFBFBD>",LVCFMT_LEFT,140);
|
||||
m_R3SInfoList.InsertColumn(1,"Texture<EFBFBD≯<EFBFBD>",LVCFMT_LEFT,300);
|
||||
|
||||
return TRUE; // return TRUE unless you set the focus to a control
|
||||
// EXCEPTION: OCX Property Pages should return FALSE
|
||||
}
|
||||
|
||||
void CPageSectorMesh::OnButtonViewtexture()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
|
||||
m_R3SInfoList.DeleteAllItems();
|
||||
|
||||
m_nCount=0;
|
||||
if(CSceneManager::m_PickHouseScene && CSceneManager::m_PickObjectScene==NULL)
|
||||
{
|
||||
if(CSceneManager::m_PickHouseScene->m_HouseObject->m_pOutHouseObject)
|
||||
ListMeshTexturePrint(CSceneManager::m_PickHouseScene->m_HouseObject->m_pOutHouseObject);
|
||||
if(CSceneManager::m_PickHouseScene->m_HouseObject->m_pMedHouseObject)
|
||||
ListMeshTexturePrint(CSceneManager::m_PickHouseScene->m_HouseObject->m_pMedHouseObject);
|
||||
if(CSceneManager::m_PickHouseScene->m_HouseObject->m_pInHouseObject)
|
||||
ListMeshTexturePrint(CSceneManager::m_PickHouseScene->m_HouseObject->m_pInHouseObject);
|
||||
if(CSceneManager::m_PickHouseScene->m_HouseObject->m_pLodHouseObject)
|
||||
ListMeshTexturePrint(CSceneManager::m_PickHouseScene->m_HouseObject->m_pLodHouseObject);
|
||||
|
||||
}
|
||||
else if(CSceneManager::m_PickObjectScene)
|
||||
{
|
||||
ListMeshTexturePrint(CSceneManager::m_PickObjectScene->m_pObject);
|
||||
}
|
||||
}
|
||||
|
||||
void CPageSectorMesh::ListMeshTexturePrint(CMeshObject *pMesh)
|
||||
{
|
||||
for(int i=0;i<pMesh->m_pMat.num;i++)
|
||||
{
|
||||
m_R3SInfoList.InsertItem(m_nCount,pMesh->m_strMeshName);
|
||||
m_R3SInfoList.SetItemText(m_nCount,1,pMesh->m_pMat[i]->m_strName);
|
||||
m_nCount++;
|
||||
}
|
||||
}
|
||||
|
||||
void CPageSectorMesh::OnButtonTexturecopy()
|
||||
{
|
||||
// TODO: Add your control notification handler code here
|
||||
|
||||
if(CSceneManager::m_PickHouseScene && CSceneManager::m_PickObjectScene==NULL)
|
||||
{
|
||||
if(CSceneManager::m_PickHouseScene->m_HouseObject->m_pOutHouseObject)
|
||||
CopyTextureFile(CSceneManager::m_PickHouseScene->m_HouseObject->m_pOutHouseObject);
|
||||
if(CSceneManager::m_PickHouseScene->m_HouseObject->m_pMedHouseObject)
|
||||
CopyTextureFile(CSceneManager::m_PickHouseScene->m_HouseObject->m_pMedHouseObject);
|
||||
if(CSceneManager::m_PickHouseScene->m_HouseObject->m_pInHouseObject)
|
||||
CopyTextureFile(CSceneManager::m_PickHouseScene->m_HouseObject->m_pInHouseObject);
|
||||
if(CSceneManager::m_PickHouseScene->m_HouseObject->m_pLodHouseObject)
|
||||
CopyTextureFile(CSceneManager::m_PickHouseScene->m_HouseObject->m_pLodHouseObject);
|
||||
|
||||
}
|
||||
else if(CSceneManager::m_PickObjectScene)
|
||||
{
|
||||
CopyTextureFile(CSceneManager::m_PickObjectScene->m_pObject);
|
||||
}
|
||||
}
|
||||
|
||||
void CPageSectorMesh::CopyTextureFile(CMeshObject *pMesh)
|
||||
{
|
||||
CString strFileSrc,strFileTar;
|
||||
|
||||
char strTextureName[256];
|
||||
|
||||
for(int i=0;i<pMesh->m_pMat.num;i++)
|
||||
{
|
||||
strcpy(strTextureName,pMesh->m_pMat[i]->m_strName);
|
||||
|
||||
int lens=strlen(strTextureName);
|
||||
strTextureName[lens-1]='s';
|
||||
strTextureName[lens-2]='d';
|
||||
strTextureName[lens-3]='d';
|
||||
|
||||
strFileSrc.Format("%s\\%s",OBJECTTEXTUREPATH,strTextureName);
|
||||
strFileTar.Format("c:\\TextureTest\\%s",strTextureName);
|
||||
CopyFile(strFileSrc,strFileTar,FALSE);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user