Quote:
Originally Posted by iSynaptic
Thats not possible without rewriting some other systems as well. The Pet System for example also uses the "expired" flag for pets that are dead and it would be a bad desicion to simply remove every expired item by default. There are may also other systems which use expired items in a important way - didnt researched it much.
|
I see
I want to know how can I fix cannot equip expired item because its not working on me they can still wear it :(
Can you take alook here if this is correct or not :3 and also the auto remove item is only working on fashion part its not working on weapons please help me :handsdown:
Code:
void CDPClient::OnJoin( CAr & ar )
{
CNetwork::GetInstance().OnEvent( CACHE_ACK_JOIN );
// ata2k - (2)시간 해제
g_Neuz.m_dwTimeOutDis = 0xffffffff;
CWndBase* pWndBase = g_WndMng.GetWndBase( APP_SELECT_CHAR );
if( pWndBase )
( (CWndSelectChar*)pWndBase )->Destroy();
g_WndMng.CloseMessageBox();
fJoin = TRUE;
OnSnapshot( ar );
fJoin = FALSE;
CMover* pMover = CMover::GetActiveMover();
if( pMover )
{
time_t tNULL = time_null();
for( int i = 0; i < pMover->m_Inventory.GetMax(); i++ )
{
CItemElem* pItemElem = pMover->m_Inventory.GetAtId( i );
if( pItemElem && pItemElem->m_dwKeepTime )
{
char lpString[260] = { 0, };
ItemProp* pItemProp = pItemElem->GetProp();
if( pItemElem->IsFlag( CItemElem::expired ) )
{
sprintf( lpString, prj.GetText( TID_GAME_ENDUSE ), pItemProp->szName );
g_WndMng.PutString( lpString, NULL, prj.GetTextColor( TID_GAME_ENDUSE ) );
SendDoEquip( pItemElem, pItemProp->dwParts );
}
else
{
time_t t = pItemElem->m_dwKeepTime - tNULL;
if( t > 0 )
{
CTimeSpan time( t );
if( time.GetDays() )
{
sprintf( lpString, prj.GetText( TID_GAME_DAYUSE ), pItemProp->szName, static_cast<int>(time.GetDays() + 1) );
g_WndMng.PutString( lpString, NULL, prj.GetTextColor( TID_GAME_DAYUSE ) );
}
else
{
sprintf( lpString, prj.GetText( TID_GAME_TIMEUSE ), pItemProp->szName, time.GetHours() + 1 );
g_WndMng.PutString( lpString, NULL, prj.GetTextColor( TID_GAME_TIMEUSE ) );
}
}
else
{
sprintf( lpString, prj.GetText( TID_GAME_TIMEUSE ), pItemProp->szName, 0 );
g_WndMng.PutString( lpString, NULL, prj.GetTextColor( TID_GAME_TIMEUSE ) );
}
}
}
}
}
#ifdef __GAME_GRADE_SYSTEM
g_Neuz.m_dwTimeGameGradeMarkRendering = g_tmCurrent + SEC( CNeuzApp::GAME_GRADE_MARK_RENDERING_INTERVAL_SECOND );
#endif // __GAME_GRADE_SYSTEM
}