⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 serverdlg.cpp

📁 决战帝王1.5武神降临对喜爱决战的玩家共享研究用
💻 CPP
📖 第 1 页 / 共 5 页
字号:
	}
	g_arLevelUpTable.RemoveAll();

	// Store Table Array Delete ...
	for(i = 0; i < g_arStore.GetSize(); i++)
	{
		if(g_arStore[i]) 
		{
			delete g_arStore[i];
		}
	}
	g_arStore.RemoveAll();

	// Psi Store Table Array Delete ...
	for(i = 0; i < g_arPsiStore.GetSize(); i++)
	{
		if(g_arPsiStore[i]) 
		{
			delete g_arPsiStore[i];
		}
	}
	g_arPsiStore.RemoveAll();

	for(i = 0; i < g_arEBodyStore.GetSize(); i++)
	{
		if(g_arEBodyStore[i]) 
		{
			delete g_arEBodyStore[i];
		}
	}
	g_arEBodyStore.RemoveAll();
	
	for(i = 0; i < g_arMapTable.GetSize(); i++)
	{
		if(g_arMapTable[i]) 
		{
			delete g_arMapTable[i];
		}
	}
	g_arMapTable.RemoveAll();
	
	// PA, MA Level Up Table Array Delete ...
	for(i = 0; i < g_arPAMAExp.GetSize(); i++)
	{
		if(g_arPAMAExp[i]) 
		{
			delete g_arPAMAExp[i];
		}
	}
	g_arPAMAExp.RemoveAll();

	// ServerInfo array Delete ...
	for(i = 0; i < g_server.GetSize(); i++)
	{
		if(g_server[i])
		{
			delete g_server[i];
		}
	}
	g_server.RemoveAll();

	// ZoneInfo (TownPotal) Zone array Delete...
	for(i = 0; i < g_TownPotal.GetSize(); i++)
	{
		if(g_TownPotal[i])
		{
			delete g_TownPotal[i];
		}
	}
	g_TownPotal.RemoveAll();

	for(i = 0; i < g_RandomTownPotal.GetSize(); i++)
	{
		if(g_RandomTownPotal[i])
		{
			delete g_RandomTownPotal[i];
		}
	}
	g_RandomTownPotal.RemoveAll();
	
	// Wheather Zone array Delete...
	for(i = 0; i < g_WeatherZone.GetSize(); i++)
	{
		if(g_WeatherZone[i])
		{
			delete g_WeatherZone[i];
		}
	}
	g_WeatherZone.RemoveAll();

	// Map(Zone) Array Delete...
	for(i = 0; i < g_zone.GetSize(); i++)
	{
		if(g_zone[i])
		{			
			for(x = 0; x < g_zone[i]->m_sizeMap.cx; x++)
			{
				for(y = 0; y < g_zone[i]->m_sizeMap.cy; y++)
				{
					if(g_zone[i]->m_pMap[x][y].m_Item.GetSize() > 0)
					{
						for(j = 0; j < g_zone[i]->m_pMap[x][y].m_Item.GetSize(); j++)
						{
							if(g_zone[i]->m_pMap[x][y].m_Item[j]) delete g_zone[i]->m_pMap[x][y].m_Item[j];
						}
					}
				}
			}
			delete g_zone[i];
		}
	}
	g_zone.RemoveAll();

	// Cell Array Delete...
	for(i = 0; i < g_cell.GetSize(); i++)
	{
		if(g_cell[i])
		{
			delete g_cell[i];
		}
	}
	g_cell.RemoveAll();

	// Event Array Delete
	for(i = 0; i < g_event.GetSize(); i++)
	{
		if(g_event[i])
		{
			delete g_event[i];
		}
	}
	g_event.RemoveAll();

	// NpcTable Array Delete
	for(i = 0; i < g_arNpcTable.GetSize(); i++)
	{
		if(g_arNpcTable[i])
		{
			delete g_arNpcTable[i];
		}
	}
	g_arNpcTable.RemoveAll();

	// CityNpcTable Array Delete
	for(i = 0; i < g_arCityNpcTable.GetSize(); i++)
	{
		if(g_arCityNpcTable[i])
		{
			delete g_arCityNpcTable[i];
		}
	}
	g_arCityNpcTable.RemoveAll();
	
	// NpcThread Array Delete
	for(i = 0; i < g_arNpcThread.GetSize(); i++)
	{
		if(g_arNpcThread[i]) 
		{
			delete g_arNpcThread[i];
			g_arNpcThread[i] = NULL;
		}
	}
	g_arNpcThread.RemoveAll();

	// DNTable Array Delete
	for(i = 0; i < g_arDNTable.GetSize(); i++)
	{
		if(g_arDNTable[i])
		{
			delete g_arDNTable[i];
		}
	}
	g_arDNTable.RemoveAll();
	
	// User Status Ablility Array Delete
	for(i = 0; i < g_arRecoverTable.GetSize(); i++)
	{
		if(g_arRecoverTable[i])
		{
			delete g_arRecoverTable[i];
		}
	}
	g_arRecoverTable.RemoveAll();

	// User Status Ablility Rate Array Delete
	for(i = 0; i < g_arRecoverRateTable.GetSize(); i++)
	{
		if(g_arRecoverRateTable[i])
		{
			delete g_arRecoverRateTable[i];
		}
	}
	g_arRecoverRateTable.RemoveAll();

	// NpcThread Array Delete
	for(i = 0; i < g_arEventNpcThread.GetSize(); i++)
	{
		if(g_arEventNpcThread[i]) 
		{
			delete g_arEventNpcThread[i];
			g_arEventNpcThread[i] = NULL;
		}
	}
	g_arEventNpcThread.RemoveAll();

	for( i = 0; i < g_arGuildData.GetSize(); i++)
	{
		if( g_arGuildData[i] )
		{
/*			for(j = 0; j < g_arGuildData[i]->m_arUser.GetSize(); j++)
			{
				if(g_arGuildData[i]->m_arUser[j]) delete g_arGuildData[i]->m_arUser[j];
			}

			g_arGuildData[i]->m_arUser.RemoveAll();
*/
			delete g_arGuildData[i];
		}
	}

	g_arGuildData.RemoveAll();

	for(i = 0; i < g_arGuildHouseWar.GetSize(); i++)
	{
		if(g_arGuildHouseWar[i]) 
		{
			delete g_arGuildHouseWar[i];
			g_arGuildHouseWar[i] = NULL;
		}
	}

	g_arGuildHouseWar.RemoveAll();

	for(i = 0; i < g_arVirtualRoom.GetSize(); i++)
	{
		if(g_arVirtualRoom[i]) 
		{
			delete g_arVirtualRoom[i];
			g_arVirtualRoom[i] = NULL;
		}
	}

	g_arVirtualRoom.RemoveAll();

	for(i = 0; i < g_arGuildHouse.GetSize(); i++)
	{
		if(g_arGuildHouse[i]) 
		{
			delete g_arGuildHouse[i];
			g_arGuildHouse[i] = NULL;
		}
	}

	g_arGuildHouse.RemoveAll();

	for(i = 0; i < g_arUserLevel.GetSize(); i++)
	{
		if(g_arUserLevel[i]) 
		{
			delete g_arUserLevel[i];
			g_arUserLevel[i] = NULL;
		}
	}

	g_arUserLevel.RemoveAll();

	for(i = 0; i < g_arNpcSayEventTable.GetSize(); i++)
	{
		if(g_arNpcSayEventTable[i]) 
		{
			delete g_arNpcSayEventTable[i];
			g_arNpcSayEventTable[i] = NULL;
		}
	}

	g_arNpcSayEventTable.RemoveAll();

	for(i = 0; i < g_arEventItemTable.GetSize(); i++)
	{
		if(g_arEventItemTable[i]) 
		{
			delete g_arEventItemTable[i];
			g_arEventItemTable[i] = NULL;
		}
	}
	g_arEventItemTable.RemoveAll();

	for(i = 0; i < g_arAddEventItemTable.GetSize(); i++)
	{
		if(g_arAddEventItemTable[i]) 
		{
			delete g_arAddEventItemTable[i];
			g_arAddEventItemTable[i] = NULL;
		}
	}
	g_arAddEventItemTable.RemoveAll();

	for(i = 0; i < g_arEventItemNew.GetSize(); i++)
	{
		if(g_arEventItemNew[i]) 
		{
			delete g_arEventItemNew[i];
			g_arEventItemNew[i] = NULL;
		}
	}
	g_arEventItemNew.RemoveAll();

	for(i = 0; i < g_arGuildFortress.GetSize(); i++)
	{
		if(g_arGuildFortress[i]) 
		{
			delete g_arGuildFortress[i];
			g_arGuildFortress[i] = NULL;
		}
	}
	g_arGuildFortress.RemoveAll();

	// MonsterPsi Array
	for(i = 0; i < g_arMonsterPsi.GetSize(); i++)
	{
		if(g_arMonsterPsi[i])
		{
			delete g_arMonsterPsi[i];
		}
	}
	g_arMonsterPsi.RemoveAll();

	// Dressing Array
	for(i = 0; i < g_arDressingData.GetSize(); i++)
	{
		if(g_arDressingData[i])
		{
			delete g_arDressingData[i];
		}
	}
	g_arDressingData.RemoveAll();

	for( i = 0; i < g_arMyServer.GetSize(); i++ )
	{
		if( g_arMyServer[i] )
		{
			delete g_arMyServer[i];
		}
	}
	g_arMyServer.RemoveAll();

	if( g_pEventBlock )
	{
		for( i = 0; i < g_pEventBlock->m_arBuyBlock.GetSize(); i++ )
		{
			if(g_pEventBlock->m_arBuyBlock[i]) delete g_pEventBlock->m_arBuyBlock[i];
		}

		for( i = 0; i < g_pEventBlock->m_arCureBlock.GetSize(); i++ )
		{
			if(g_pEventBlock->m_arCureBlock[i]) delete g_pEventBlock->m_arCureBlock[i];
		}

		for( i = 0; i < g_pEventBlock->m_arRepaireBlock.GetSize(); i++ )
		{
			if(g_pEventBlock->m_arRepaireBlock[i]) delete g_pEventBlock->m_arRepaireBlock[i];
		}

		for( i = 0; i < g_pEventBlock->m_arSellBlock.GetSize(); i++ )
		{
			if(g_pEventBlock->m_arSellBlock[i]) delete g_pEventBlock->m_arSellBlock[i];
		}

		for( i = 0; i < g_pEventBlock->m_arTelBlock.GetSize(); i++ )
		{
			if(g_pEventBlock->m_arTelBlock[i]) delete g_pEventBlock->m_arTelBlock[i];
		}

		delete g_pEventBlock;

		g_pEventBlock = NULL;
	}

	// 辑滚 立加 府家胶 瘤快扁...
	if ( g_pSQM )
		delete g_pSQM;
	g_pSQM = NULL;

	// 荤侩磊 立加 府家胶 瘤快扁...
	if ( g_pUQM )
		delete g_pUQM;
	g_pUQM = NULL;

	// 辑摹 备炼 瘤快扁...
	if ( g_pUserList )
		delete g_pUserList;
	g_pUserList = NULL;

	// 农府萍拿 技记 瘤快扁...
//	for ( i = 0; i < AUTOMATA_THREAD+1; i++ )
//	{
//		DeleteCriticalSection(&m_CS_ReceiveData[i]);
//	}

	DeleteCriticalSection(&m_CS_FileWrite);
	DeleteCriticalSection(&m_CS_LoginData);
	DeleteCriticalSection(&m_CS_LogoutData);
	DeleteCriticalSection(&m_CS_SqlDataProcess);
	DeleteCriticalSection(&m_CS_SqlData);
	DeleteCriticalSection(&m_CS_EventItemLogFileWrite);

	// Fortress Packet CRT
	DeleteCriticalSection(&m_CS_FortressData);
	return CDialog::DestroyWindow();
}

////////////////////////////////////////////////////////////////////////
//	牢郸胶 沥焊甫 焊牢促.
//
void CServerDlg::SetIndexText(int nIndex)
{
	CString szTemp = _T("");
	szTemp.Format(_T("Index: %d"), nIndex);
	m_staticIndex.SetWindowText(szTemp);
}

/////////////////////////////////////////////////////////////////////////
//	Listen Port 沥焊甫 焊牢促.
//
void CServerDlg::SetPortText(int nPort)
{
	CString szTemp = _T("");
	szTemp.Format(_T("Port: %d"), nPort);
	m_staticPort.SetWindowText(szTemp);
}

/////////////////////////////////////////////////////////////////////////
//	Zone 沥焊甫 焊牢促.
//
void CServerDlg::SetZoneText(CString szList)
{
	CString szTemp = _T("Zone: ");
	szTemp += szList;
	m_staticZone.SetWindowText(szTemp);
}

/////////////////////////////////////////////////////////////////////////
//	NPC Item Table 阑 佬绰促.
//
BOOL CServerDlg::GetNpcItemTable()
{
	CNpcItemSet NpcItemSet;
	CDBVariant varValue;
	int nRowCount = 0;
	int i;
	int nItem = 0;

	try
	{
		if(NpcItemSet.IsOpen()) NpcItemSet.Close();

		NpcItemSet.m_strSort = _T("sIndex");

		if(!NpcItemSet.Open())
		{
			AfxMessageBox(_T("MONSTER ITEM DB Open Fail!"));
			return FALSE;
		}

		if(NpcItemSet.IsBOF()) 
		{
			AfxMessageBox(_T("MONSTER ITEM DB Empty!"));
			return FALSE;
		}

		while(!NpcItemSet.IsEOF())
		{
			nRowCount++;
			NpcItemSet.MoveNext();
		}

		g_NpcItem.m_nField = NpcItemSet.m_nFields;
		g_NpcItem.m_nRow = nRowCount;

		if(nRowCount == 0) return FALSE;

		g_NpcItem.m_ppItem = new int* [g_NpcItem.m_nField];
		for(i = 0; i < g_NpcItem.m_nField; i++)
		{
			g_NpcItem.m_ppItem[i] = new int[g_NpcItem.m_nRow];
		}

		NpcItemSet.MoveFirst();

		nRowCount = 0;
		while(!NpcItemSet.IsEOF())
		{
			for(i = 0; i < g_NpcItem.m_nField; i++)
			{
				NpcItemSet.GetFieldValue(i, varValue, SQL_C_SSHORT);
				nItem = varValue.m_iVal;
				g_NpcItem.m_ppItem[i][nRowCount] = varValue.m_iVal;
			}
			nRowCount++;
			NpcItemSet.MoveNext();
		}
	}
	catch(CMemoryException * e)
	{
		e->ReportError();
		e->Delete();

		return FALSE;
	}
	catch(CDBException* e)
	{
		e->ReportError();
		e->Delete();

		return FALSE;
	}

	return TRUE;
}
//////////////////////////////////////////////////////////////////////////
//	NPC Chat Table Data 甫 佬绰促.
//
BOOL CServerDlg::GetNpcChatTable()
{
	int i = 1;
	BOOL bQuerySuccess = FALSE;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -