Heute Release ich das Fashion Combine System, für die Leute die der RoC Source nicht vertrauen oder sie gar aus irgendeinem Grund nicht nutzen möchten.
Es ist viel Code & ich habe ihn getestet, es lässt sich 1A compilen.
Nun wäre es doch so einfach alles zu C&P'en
- Die Ressourcen müsst ihr euch selber besorgen, da ich euch bestimmt nicht alles "in den Allerwertesten schiebe".
Habt ihr die Ressourcen erfolgreich geaddet sollte das Fashion Combine System problemlos laufen.
Vorab die Credits:
Etioom (90%)
Monster (10%)
Fragen bitte hier stellen, aber bitte nicht bei jedem kleinen Syntax oder Define Fehler <.<
Naja genug der Worte, hier der Versprochene Release:
----------------------------------------------------------------------------------------------------------------------------
randomoption.h
unter:
PHP Code:
public:
bool IsCheckedSafeFlag( __int64 n64RandomeOption );
void SetSafeFlag( __int64* pn64RandomOption );
void ResetSafeFlag( __int64* pn64RandomOption );
// mulcom END100405 °¢¼º º¸È£ÀÇ µÎ·ç¸¶¸®
PHP Code:
#ifdef __FASHION_COMBINE
public:
int MergeRandomOption( CItemElem* pItemElemMain, CItemElem* pItemElemDestroy, int nMaxCombinedSize = 3 );
#endif // __FASHION_COMBINE
randomoption.cpp
unter die Funktion:
PHP Code:
bool CRandomOptionProperty::IsCheckedSafeFlag( __int64 n64RandomeOption )
PHP Code:
#ifdef __FASHION_COMBINE
int CRandomOptionProperty::MergeRandomOption( CItemElem* pItemElemMain, CItemElem* pItemElemDestroy, int nMaxCombinedSize )
{
int nMainSize = g_xRandomOptionProperty->GetRandomOptionSize( pItemElemMain->GetRandomOptItemId() );
int nDestroySize = g_xRandomOptionProperty->GetRandomOptionSize( pItemElemDestroy->GetRandomOptItemId() );
if( nMainSize + nDestroySize > nMaxCombinedSize )
return 1;
for( int i = 0; i < nDestroySize; i++ )
{
int nDst, nAdj;
if( g_xRandomOptionProperty->GetParam( pItemElemDestroy->GetRandomOptItemId(), i, &nDst, &nAdj ) )
g_xRandomOptionProperty->SetParam( pItemElemMain->GetRandomOptItemIdPtr(), nDst, nAdj );
}
return 0;
}
#endif // __FASHION_COMBINE
MsgHdr.h
vor den SNAPSHOTS das:
PHP Code:
#ifdef __FASHION_COMBINE
#define PACKETTYPE_COMBINE_FASHION (DWORD)0x88100299
#endif // __FASHION_COMBINE
DPSrvr.h
unter:
PHP Code:
#ifdef __GUILD_HOUSE_MIDDLE
void OnGuildHouseTenderMainWnd( CAr & ar, DPID dpidCache, DPID dpidUser, LPBYTE, u_long );
void OnGuildHouseTenderInfoWnd( CAr & ar, DPID dpidCache, DPID dpidUser, LPBYTE, u_long );
void OnGuildHouseTenderJoin( CAr & ar, DPID dpidCache, DPID dpidUser, LPBYTE, u_long );
#endif // __GUILD_HOUSE_MIDDLE
PHP Code:
#ifdef __FASHION_COMBINE
void OnFashionCombine( CAr & ar, DPID dpidCache, DPID dpidUser, LPBYTE, u_long );
#endif // __FASHION_COMBINE
DPSrvr.cpp
unter:
PHP Code:
#ifdef __GUILD_HOUSE_MIDDLE
ON_MSG( PACKETTYPE_GUILDHOUSE_TENDER_MAINWND, OnGuildHouseTenderMainWnd );
ON_MSG( PACKETTYPE_GUILDHOUSE_TENDER_INFOWND, OnGuildHouseTenderInfoWnd );
ON_MSG( PACKETTYPE_GUILDHOUSE_TENDER_JOIN, OnGuildHouseTenderJoin );
#endif // __GUILD_HOUSE_MIDDLE
PHP Code:
#ifdef __FASHION_COMBINE
ON_MSG( PACKETTYPE_COMBINE_FASHION, OnFashionCombine );
#endif // __FASHION_COMBINE
Ganz am Ende das:
PHP Code:
#ifdef __FASHION_COMBINE
void CDPSrvr::OnFashionCombine( CAr & ar, DPID dpidCache, DPID dpidUser, LPBYTE, u_long )
{
CUser* pUser = g_UserMng.GetUser( dpidCache, dpidUser );
if( IsValidObj( pUser ) )
{
DWORD dwItem = NULL_ID;
CItemElem* pItemElem[8];
for( int i = 0; i < 8; i++ )
{
ar >> dwItem;
pItemElem[i] = pUser->m_Inventory.GetAtId( dwItem );
if( !IsUsableItem( pItemElem[i]))
return;
}
if( xRandom( 10000 ) < 10000 )
{
int nResult = 0;
nResult = g_xRandomOptionProperty->MergeRandomOption( pItemElem[0], pItemElem[1] );
nResult += g_xRandomOptionProperty->MergeRandomOption( pItemElem[2], pItemElem[3] );
nResult += g_xRandomOptionProperty->MergeRandomOption( pItemElem[4], pItemElem[5] );
nResult += g_xRandomOptionProperty->MergeRandomOption( pItemElem[6], pItemElem[7] );
if( nResult > 0 )
{
Error( "packet editor detected. tried to combine more then 3 awakening on one item. User: %s", pUser->GetName() );
}
for( int i = 1; i < 8; i += 2 )
{
pUser->UpdateItem( (BYTE)pItemElem[i]->m_dwObjId, UI_NUM, 0 );
}
for( int i = 0; i < 8; i += 2 )
{
pUser->UpdateItemEx( (BYTE)( pItemElem[i]->m_dwObjId ), UI_RANDOMOPTITEMID, pItemElem[i]->GetRandomOptItemId() );
}
pUser->AddDefinedText( TID_COSTUME_COSTUMEMIXCOMPLETE );
}else
{
pUser->AddPlaySound( SND_INF_UPGRADEFAIL );
if( pUser->IsMode( TRANSPARENT_MODE ) == 0 )
g_UserMng.AddCreateSfxObj( (CMover *)pUser, XI_INT_FAIL, pUser->GetPos().x, pUser->GetPos().y, pUser->GetPos().z );
if( pUser->HasBuff( BUFF_ITEM, II_SYS_SYS_SCR_COSTUMEDEFENDER ) )
{
pUser->RemoveBuff( BUFF_ITEM , II_SYS_SYS_SCR_COSTUMEDEFENDER );
pUser->AddDefinedText( TID_MMI_COSTUME_SAFEMIXITEM03 );
}else
{
pUser->AddDefinedText( TID_MMI_COSTUME_COSTUMEMIXFAILED );
for( int i = 0; i < 8; i++ )
{
pUser->UpdateItem( (BYTE)pItemElem[i]->m_dwObjId, UI_NUM, 0 );
}
}
}
}
}
#endif // __FASHION_COMBINE
WndField.h
unter die Funktion:
PHP Code:
class CWndCampusSeveranceConfirm : public CWndNeuz
PHP Code:
#ifdef __FASHION_COMBINE
class CWndFashionCombine : public CWndNeuz
{
public:
CItemElem* m_pItemElem[12];
CTexture* m_pTexture[12];
public:
CWndFashionCombine();
virtual ~CWndFashionCombine();
virtual void OnDraw( C2DRender* p2DRender );
virtual void OnInitialUpdate();
virtual BOOL Initialize( CWndBase* pWndParent = NULL, DWORD nType = MB_OK );
virtual BOOL OnChildNotify( UINT message, UINT nID, LRESULT* pLResult );
virtual BOOL OnCommand( UINT nID, DWORD dwMessage, CWndBase* pWndBase );
virtual void OnSize( UINT nType, int cx, int cy );
virtual BOOL OnDropIcon( LPSHORTCUT pShortcut, CPoint point );
};
#endif // __FASHION_COMBINE
WndField.cpp
unter:
PHP Code:
#include "wndwebbox.h"
PHP Code:
#ifdef __FASHION_COMBINE
#include "randomoption.h"
#endif // __FASHION_COMBINE
PHP Code:
#ifdef __FASHION_COMBINE
CWndFashionCombine::CWndFashionCombine()
{
for( int i = 0; i < 12; i++ )
{
m_pItemElem[i] = NULL;
m_pTexture[i] = NULL;
//ZeroMemory( m_pItemElem[i], sizeof( m_pItemElem ));
//ZeroMemory( m_pTexture[i], sizeof( m_pTexture ));
}
}
CWndFashionCombine::~CWndFashionCombine()
{
for( int i = 0; i < 8; i++ )
{
if( m_pItemElem[i] != NULL )
{
if( !g_pPlayer->m_vtInfo.IsTrading( m_pItemElem[i] ))
m_pItemElem[i]->SetExtra(0);
}
}
}
void CWndFashionCombine::OnDraw( C2DRender* p2DRender )
{
LPWNDCTRL wndCtrl[12];
wndCtrl[0] = GetWndCtrl( WIDC_ST_HAT_A );
wndCtrl[1] = GetWndCtrl( WIDC_ST_CLOTH_A );
wndCtrl[2] = GetWndCtrl( WIDC_ST_GLOVE_A );
wndCtrl[3] = GetWndCtrl( WIDC_ST_SHOES_A );
wndCtrl[4] = GetWndCtrl( WIDC_ST_HAT_B );
wndCtrl[5] = GetWndCtrl( WIDC_ST_CLOTH_B );
wndCtrl[6] = GetWndCtrl( WIDC_ST_GLOVE_B );
wndCtrl[7] = GetWndCtrl( WIDC_ST_SHOES_B );
wndCtrl[8] = GetWndCtrl( WIDC_ST_RESULT_HAT );
wndCtrl[9] = GetWndCtrl( WIDC_ST_RESULT_CLOTH );
wndCtrl[10]= GetWndCtrl( WIDC_ST_RESULT_GLOVE );
wndCtrl[11]= GetWndCtrl( WIDC_ST_RESULT_SHOES );
for( int i = 0; i < 12; i++ )
{
if( m_pItemElem[i] != NULL && m_pTexture[i] != NULL )
{
m_pTexture[i]->Render( p2DRender, CPoint( wndCtrl[i]->rect.left, wndCtrl[i]->rect.top));
}
}
}
void CWndFashionCombine::OnInitialUpdate()
{
CWndNeuz::OnInitialUpdate();
CWndButton* pButton = (CWndButton*)GetDlgItem(WIDC_BT_START);
pButton->EnableWindow(FALSE);
MoveParentCenter();
}
BOOL CWndFashionCombine::Initialize( CWndBase* pWndParent, DWORD /*dwWndId*/ )
{
return CWndNeuz::InitDialog( g_Neuz.GetSafeHwnd(), APP_COSTUME_MIXMENU, 0, CPoint( 0, 0 ), pWndParent );
}
BOOL CWndFashionCombine::OnCommand( UINT nID, DWORD dwMessage, CWndBase* pWndBase )
{
return CWndNeuz::OnCommand( nID, dwMessage, pWndBase );
}
void CWndFashionCombine::OnSize( UINT nType, int cx, int cy )
{
CWndNeuz::OnSize( nType, cx, cy );
}
BOOL CWndFashionCombine::OnDropIcon( LPSHORTCUT pShortcut, CPoint point )
{
CRect rect[8];
LPWNDCTRL wndCtrl[8];
wndCtrl[0] = GetWndCtrl( WIDC_ST_HAT_A );
wndCtrl[1] = GetWndCtrl( WIDC_ST_CLOTH_A );
wndCtrl[2] = GetWndCtrl( WIDC_ST_GLOVE_A );
wndCtrl[3] = GetWndCtrl( WIDC_ST_SHOES_A );
wndCtrl[4] = GetWndCtrl( WIDC_ST_HAT_B );
wndCtrl[5] = GetWndCtrl( WIDC_ST_CLOTH_B );
wndCtrl[6] = GetWndCtrl( WIDC_ST_GLOVE_B );
wndCtrl[7] = GetWndCtrl( WIDC_ST_SHOES_B );
BOOL bUpdate = FALSE;
for( int i = 0; i < 8; i++ )
{
rect[i] = wndCtrl[i]->rect;
if( rect[i].PtInRect( point ))
{
CItemElem* pTempElem;
pTempElem = (CItemElem*) g_pPlayer->GetItemId( pShortcut->m_dwId );
if( pTempElem != NULL )
{
if( 0 < CRandomOptionProperty::GetInstance()->GetRandomOptionSize( pTempElem->GetRandomOptItemId() ))
{
ItemProp* pItemProp = pTempElem->GetProp();
if(( i == 0 || i == 4 ) && ( pItemProp->dwItemKind3 == IK3_HAT ))
{
if( i == 0 )
{
if( m_pItemElem[4] != NULL )
{
int nSize = 0;
nSize += g_xRandomOptionProperty->GetRandomOptionSize( pTempElem->GetRandomOptItemId() );
nSize += g_xRandomOptionProperty->GetRandomOptionSize( m_pItemElem[4]->GetRandomOptItemId() );
if( nSize > 3 )
{
g_WndMng.OpenMessageBox( "oversize" );
return TRUE;
}else
{
bUpdate = TRUE;
}
}
if(m_pItemElem[i] != NULL)
m_pItemElem[i]->SetExtra(0);
m_pItemElem[i] = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
m_pTexture[i] = CWndBase::m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, MakePath( DIR_ITEM, pItemProp->szIcon), 0xffff00ff );
m_pItemElem[i]->SetExtra(m_pItemElem[i]->GetExtra()+1);
if( bUpdate == TRUE )
{
m_pItemElem[8] = m_pItemElem[0];
m_pTexture[8] = m_pTexture[0];
// g_xRandomOptionProperty->MergeRandomOption( m_pItemElem[8], m_pItemElem[4] );
}
}
if( i == 4 )
{
if( m_pItemElem[0] != NULL )
{
int nSize = 0;
nSize += g_xRandomOptionProperty->GetRandomOptionSize( pTempElem->GetRandomOptItemId() );
nSize += g_xRandomOptionProperty->GetRandomOptionSize( m_pItemElem[0]->GetRandomOptItemId() );
if( nSize > 3 )
{
g_WndMng.OpenMessageBox( "oversize" );
return TRUE;
}else
{
bUpdate = TRUE;
}
}
if(m_pItemElem[i] != NULL)
m_pItemElem[i]->SetExtra(0);
m_pItemElem[i] = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
m_pTexture[i] = CWndBase::m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, MakePath( DIR_ITEM, pItemProp->szIcon), 0xffff00ff );
m_pItemElem[i]->SetExtra(m_pItemElem[i]->GetExtra()+1);
if( bUpdate == TRUE )
{
m_pItemElem[8] = m_pItemElem[0];
m_pTexture[8] = m_pTexture[0];
// g_xRandomOptionProperty->MergeRandomOption( m_pItemElem[8], m_pItemElem[4] );
}
}
}else
if(( i == 1 || i == 5 ) && ( pItemProp->dwItemKind3 == IK3_CLOTH ))
{
if( i == 1 )
{
if( m_pItemElem[5] != NULL )
{
int nSize = 0;
nSize += g_xRandomOptionProperty->GetRandomOptionSize( pTempElem->GetRandomOptItemId() );
nSize += g_xRandomOptionProperty->GetRandomOptionSize( m_pItemElem[5]->GetRandomOptItemId() );
if( nSize > 3 )
{
g_WndMng.OpenMessageBox( "oversize" );
return TRUE;
}else
{
bUpdate = TRUE;
}
}
if(m_pItemElem[i] != NULL)
m_pItemElem[i]->SetExtra(0);
m_pItemElem[i] = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
m_pTexture[i] = CWndBase::m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, MakePath( DIR_ITEM, pItemProp->szIcon), 0xffff00ff );
m_pItemElem[i]->SetExtra(m_pItemElem[i]->GetExtra()+1);
if( bUpdate == TRUE )
{
m_pItemElem[9] = m_pItemElem[1];
m_pTexture[9] = m_pTexture[1];
// g_xRandomOptionProperty->MergeRandomOption( m_pItemElem[9], m_pItemElem[5] );
}
}
if( i == 5 )
{
if( m_pItemElem[1] != NULL )
{
int nSize = 0;
nSize += g_xRandomOptionProperty->GetRandomOptionSize( pTempElem->GetRandomOptItemId() );
nSize += g_xRandomOptionProperty->GetRandomOptionSize( m_pItemElem[1]->GetRandomOptItemId() );
if( nSize > 3 )
{
g_WndMng.OpenMessageBox( "oversize" );
return TRUE;
}else
{
bUpdate = TRUE;
}
}
if(m_pItemElem[i] != NULL)
m_pItemElem[i]->SetExtra(0);
m_pItemElem[i] = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
m_pTexture[i] = CWndBase::m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, MakePath( DIR_ITEM, pItemProp->szIcon), 0xffff00ff );
m_pItemElem[i]->SetExtra(m_pItemElem[i]->GetExtra()+1);
if( bUpdate == TRUE )
{
m_pItemElem[9] = m_pItemElem[1];
m_pTexture[9] = m_pTexture[1];
//g_xRandomOptionProperty->MergeRandomOption( m_pItemElem[9], m_pItemElem[5] );
}
}
}else
if(( i == 2 || i == 6 ) && ( pItemProp->dwItemKind3 == IK3_GLOVE ))
{
if( i == 2 )
{
if( m_pItemElem[6] != NULL )
{
int nSize = 0;
nSize += g_xRandomOptionProperty->GetRandomOptionSize( pTempElem->GetRandomOptItemId() );
nSize += g_xRandomOptionProperty->GetRandomOptionSize( m_pItemElem[6]->GetRandomOptItemId() );
if( nSize > 3 )
{
g_WndMng.OpenMessageBox( "oversize" );
return TRUE;
}else
{
bUpdate = TRUE;
}
}
if(m_pItemElem[i] != NULL)
m_pItemElem[i]->SetExtra(0);
m_pItemElem[i] = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
m_pTexture[i] = CWndBase::m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, MakePath( DIR_ITEM, pItemProp->szIcon), 0xffff00ff );
m_pItemElem[i]->SetExtra(m_pItemElem[i]->GetExtra()+1);
if( bUpdate == TRUE )
{
m_pItemElem[10] = m_pItemElem[2];
m_pTexture[10] = m_pTexture[2];
// g_xRandomOptionProperty->MergeRandomOption( m_pItemElem[10], m_pItemElem[6] );
}
}
if( i == 6 )
{
if( m_pItemElem[2] != NULL )
{
int nSize = 0;
nSize += g_xRandomOptionProperty->GetRandomOptionSize( pTempElem->GetRandomOptItemId() );
nSize += g_xRandomOptionProperty->GetRandomOptionSize( m_pItemElem[2]->GetRandomOptItemId() );
if( nSize > 3 )
{
g_WndMng.OpenMessageBox( "oversize" );
return TRUE;
}else
{
bUpdate = TRUE;
}
}
if(m_pItemElem[i] != NULL)
m_pItemElem[i]->SetExtra(0);
m_pItemElem[i] = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
m_pTexture[i] = CWndBase::m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, MakePath( DIR_ITEM, pItemProp->szIcon), 0xffff00ff );
m_pItemElem[i]->SetExtra(m_pItemElem[i]->GetExtra()+1);
if( bUpdate == TRUE )
{
m_pItemElem[10] = m_pItemElem[2];
m_pTexture[10] = m_pTexture[2];
// g_xRandomOptionProperty->MergeRandomOption( m_pItemElem[10], m_pItemElem[6] );
}
}
}else
if(( i == 3 || i == 7 ) && ( pItemProp->dwItemKind3 == IK3_SHOES ))
{
if( i == 3 )
{
if( m_pItemElem[7] != NULL )
{
int nSize = 0;
nSize += g_xRandomOptionProperty->GetRandomOptionSize( pTempElem->GetRandomOptItemId() );
nSize += g_xRandomOptionProperty->GetRandomOptionSize( m_pItemElem[7]->GetRandomOptItemId() );
if( nSize > 3 )
{
g_WndMng.OpenMessageBox( "oversize" );
return TRUE;
}else
{
bUpdate = TRUE;
}
}
if(m_pItemElem[i] != NULL)
m_pItemElem[i]->SetExtra(0);
m_pItemElem[i] = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
m_pTexture[i] = CWndBase::m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, MakePath( DIR_ITEM, pItemProp->szIcon), 0xffff00ff );
m_pItemElem[i]->SetExtra(m_pItemElem[i]->GetExtra()+1);
if( bUpdate == TRUE )
{
m_pItemElem[11] = m_pItemElem[3];
m_pTexture[11] = m_pTexture[3];
// g_xRandomOptionProperty->MergeRandomOption( m_pItemElem[11], m_pItemElem[7] );
}
}
if( i == 7 )
{
if( m_pItemElem[3] != NULL )
{
int nSize = 0;
nSize += g_xRandomOptionProperty->GetRandomOptionSize( pTempElem->GetRandomOptItemId() );
nSize += g_xRandomOptionProperty->GetRandomOptionSize( m_pItemElem[3]->GetRandomOptItemId() );
if( nSize > 3 )
{
g_WndMng.OpenMessageBox( "oversize" );
return TRUE;
}else
{
bUpdate = TRUE;
}
}
if(m_pItemElem[i] != NULL)
m_pItemElem[i]->SetExtra(0);
m_pItemElem[i] = (CItemElem*)g_pPlayer->GetItemId( pShortcut->m_dwId );
m_pTexture[i] = CWndBase::m_textureMng.AddTexture( g_Neuz.m_pd3dDevice, MakePath( DIR_ITEM, pItemProp->szIcon), 0xffff00ff );
m_pItemElem[i]->SetExtra(m_pItemElem[i]->GetExtra()+1);
if( bUpdate == TRUE )
{
m_pItemElem[11] = m_pItemElem[3];
m_pTexture[11] = m_pTexture[3];
// g_xRandomOptionProperty->MergeRandomOption( m_pItemElem[11], m_pItemElem[7] );
}
}
}else
{
g_WndMng.OpenMessageBox( prj.GetText( TID_COSTUME_REGISTERNOTSLOT ) );
// wrong tab
}
}else
{
g_WndMng.OpenMessageBox( prj.GetText( TID_COSTUME_REGISTERNOTSLOT ) );
// not blessed
}
}
}
}
int nCheck = 0;
for( int i = 0; i < 8; i++ )
{
if( m_pItemElem[i] != NULL )
nCheck++;
}
if( 8 <= nCheck )
{
CWndButton* pButton = (CWndButton*)GetDlgItem(WIDC_BT_START);
pButton->EnableWindow(TRUE);
}
return TRUE;
}
BOOL CWndFashionCombine::OnChildNotify( UINT message, UINT nID, LRESULT* pLResult )
{
switch( nID )
{
case WIDC_BUTTON1:
{
g_DPlay.SendCombineFashion(
m_pItemElem[0]->m_dwObjId, m_pItemElem[4]->m_dwObjId,
m_pItemElem[1]->m_dwObjId, m_pItemElem[5]->m_dwObjId,
m_pItemElem[2]->m_dwObjId, m_pItemElem[6]->m_dwObjId,
m_pItemElem[3]->m_dwObjId, m_pItemElem[7]->m_dwObjId
);
Destroy();
break;
}
case WIDC_BUTTON2:
{
Destroy();
break;
}
}
return CWndNeuz::OnChildNotify( message, nID, pLResult );
}
#endif // __FASHION_COMBINE
WndWorld.cpp
unter:
PHP Code:
case MMI_REMOVE_CAMPUS:
{
if( g_WndMng.m_pWndCampusSeveranceConfirm )
SAFE_DELETE( g_WndMng.m_pWndCampusSeveranceConfirm );
g_WndMng.m_pWndCampusSeveranceConfirm = new CWndCampusSeveranceConfirm( pFocusMover->m_idPlayer, pFocusMover->GetName() );
g_WndMng.m_pWndCampusSeveranceConfirm->Initialize( NULL );
break;
}
#endif // __CAMPUS
PHP Code:
#ifdef __FASHION_COMBINE
case MMI_COSTUMEMIX01:
{
SAFE_DELETE( g_WndMng.m_pWndFashionCombine );
g_WndMng.m_pWndFashionCombine = new CWndFashionCombine;
g_WndMng.m_pWndFashionCombine->Initialize();
}
break;
#endif // __FASHION_COMBINE
WndManager.h
unter:
PHP Code:
#ifdef __GUILD_HOUSE_MIDDLE
CWndGuildHouseBid* m_pWndGHBid;
#endif //__GUILD_HOUSE_MIDDLE
PHP Code:
#ifdef __FASHION_COMBINE
CWndFashionCombine* m_pWndFashionCombine;
#endif // __FASHION_COMBINE
WndManager.cpp
unter:
PHP Code:
#ifdef __GUILD_HOUSE_MIDDLE
else if( m_pWndGHBid == pWndChild )
{
SAFE_DELETE( m_pWndGHBid );
pWndChild = NULL;
}
#endif //__GUILD_HOUSE_MIDDLE
PHP Code:
#ifdef __FASHION_COMBINE
else if(m_pWndFashionCombine == pWndChild)
{
SAFE_DELETE( m_pWndFashionCombine );
pWndChild = NULL;
}
#endif // __FASHION_COMBINE
DPClient.h
unter:
PHP Code:
#ifdef __GUILD_HOUSE_MIDDLE
private:
void OnGuildHouseTenderMainWnd( CAr & ar );
void OnGuildHouseTenderInfoWnd( CAr & ar );
void OnGuildHouseTenderResult( CAr & ar );
public:
void SendGuildHouseTenderMainWnd( DWORD dwGHType, OBJID objNpcId );
void SendGuildHouseTenderInfoWnd( OBJID objGHId );
void SendGuildHouseTenderJoin( OBJID objGHId, int nTenderPerin, int nTenderPenya );
#endif // __GUILD_HOUSE_MIDDLE
PHP Code:
#ifdef __FASHION_COMBINE
void SendCombineFashion( DWORD dwItem1,DWORD dwItem2,DWORD dwItem3,DWORD dwItem4,DWORD dwItem5,DWORD dwItem6,DWORD dwItem7,DWORD dwItem8 );
#endif // __FASHION_COMBINE
DPClient.cpp
unter:
PHP Code:
void CDPClient::SendGuildHouseTenderJoin( OBJID objGHId, int nTenderPerin, int nTenderPenya )
{
BEFORESENDSOLE( ar, PACKETTYPE_GUILDHOUSE_TENDER_JOIN, DPID_UNKNOWN );
ar << objGHId << nTenderPerin << nTenderPenya;
SEND( ar, this, DPID_SERVERPLAYER );
}
#endif // __GUILD_HOUSE_MIDDLE
PHP Code:
#ifdef __FASHION_COMBINE
void CDPClient::SendCombineFashion( DWORD dwItem1,DWORD dwItem2,DWORD dwItem3,DWORD dwItem4,DWORD dwItem5,DWORD dwItem6,DWORD dwItem7,DWORD dwItem8 )
{
BEFORESENDSOLE( ar, PACKETTYPE_COMBINE_FASHION, DPID_UNKNOWN );
ar << dwItem1 << dwItem2 << dwItem3 << dwItem4 << dwItem5 << dwItem6 << dwItem7 << dwItem8;
SEND( ar, this, DPID_SERVERPLAYER );
}
#endif // __FASHION_COMBINE
Nun addet ihr bei allen VersionCommon.h das:
PHP Code:
#define __FASHION_COMBINE
Wenn ihr alles richtig gemacht habt und die Ressourcen geaddet habt sollten es Fehlerfrei Compilen & Linken.
~Monster






