Ejemplo n.º 1
0
BRRESULT MMatchCharBRInfo::CheckBattleTimeReward(unsigned long int nTick, MMatchBRDescription* pDesc)
{
	unsigned long int nAddedTime = nTick - GetLastCheckTime();
	if (nAddedTime > CYCLE_CHAR_BATTLE_TIME_CHECK) 
	{
		SetLastCheckTime(nTick);
		m_nBattleTime += nAddedTime;

		if( pDesc->GetRewardkillCount() > m_nKillCount ) 							return BRRESULT_NO_REWARD;
		if( pDesc->GetRewardMinutePeriod() * MINUTE_PERIOD_UNIT > m_nBattleTime )	return BRRESULT_NO_REWARD;

		if( pDesc->GetRewardCount() == 0 )					return BRRESULT_DO_REWARD;
		else if( m_nRewardCount < pDesc->GetRewardCount() ) return BRRESULT_DO_REWARD;
		else												return BRRESULT_RESET_INFO;
	}

	return BRRESULT_NO_REWARD;
}
Ejemplo n.º 2
0
void CItem::Render()
{
	if( !m_bActive )
	{
		return;
	}
	if( m_ItemBaseInfo.nSealed == eITEM_TYPE_SEAL )
	{
		cDialog::Render();

		m_SealImage.RenderSprite( NULL, NULL, 0, &m_absPos, 
									RGBA_MERGE(0xffffff, 255));
		
		/*RECT rect={(LONG)m_absPos.x, (LONG)m_absPos.y+12, 1,1};
		CFONT_OBJ->RenderFont(0,"[봉인]", strlen("[봉인]"),&rect,RGBA_MAKE(250,250,128,255));*/
	}
	// 071124 LYW --- Item : 봉인 해제 아이템 시간 툴팁 처리.
	else if( m_ItemBaseInfo.nSealed == eITEM_TYPE_UNSEAL )
	{
		cIcon::Render();

		DWORD dwElapsedMill	= gCurTime -m_ItemBaseInfo.LastCheckTime ;
		DWORD dwElapsedSecond = dwElapsedMill / 1000 ;

		SetLastCheckTime(gCurTime - ( dwElapsedMill - dwElapsedSecond * 1000 )) ;

		if( GetItemBaseInfo().nRemainSecond > (int)dwElapsedSecond )
		{
			int nRemainTime = GetItemBaseInfo().nRemainSecond - (int)dwElapsedSecond ;
			SetRemainTime(nRemainTime) ;
		}
		else
		{
			SetRemainTime(0) ;
		}
	}
	else
	{
		cIcon::Render();
	}

	if( m_Param == 1 )
	{
		m_LockImage.RenderSprite( NULL, NULL, 0, &m_absPos, 
			RGBA_MERGE(0xffffff, m_alpha * m_dwOptionAlpha / 100));
	}

	if( m_bZeroCount )
	{
		m_ZeroImage.RenderSprite( NULL, NULL, 0, &m_absPos, 
									RGBA_MERGE(0xffffff, 200 * m_dwOptionAlpha / 100));
	}

	if( mIsVisibleDurability &&
		ITEMMGR->IsDupItem(m_ItemBaseInfo.wIconIdx) )
	{
		static char nums[3];
		wsprintf(nums,"%2d", m_ItemBaseInfo.Durability);
		//RECT rect={(LONG)m_absPos.x+23, (LONG)m_absPos.y+25, 1,1};
		//CFONT_OBJ->RenderFont(0,nums,strlen(nums),&rect,RGBA_MERGE(m_dwImageRGB, m_alpha * m_dwOptionAlpha / 100 ));		// color hard coding : taiyo 
		RECT rect ;

		rect.top = (LONG)m_absPos.y+24 ;
		rect.right = 1 ;
		rect.bottom = 1 ;

		if( m_ItemBaseInfo.Durability > 99 )
		{
			rect.left = (LONG)m_absPos.x+16 ;
			
		}
		else
		{
			rect.left = (LONG)m_absPos.x+22 ;
		}
		CFONT_OBJ->RenderFontShadow(0, 1, nums,strlen(nums),&rect,RGBA_MERGE(m_dwImageRGB, m_alpha * m_dwOptionAlpha / 100 ));		// color hard coding : taiyo 
	}
}