📄 item.cpp
字号:
// Item.cpp: implementation of the CItem class.
//
//////////////////////////////////////////////////////////////////////
#include "stdafx.h"
#include "Item.h"
#include "ItemManager.h"
#include "ObjectManager.h"
#include "QuickItem.h"
#include "GameIn.h"
#include "./Interface/cFont.h"
#include "QuickDialog.h"
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
CItem::CItem(ITEMBASE* pInfo)
{
m_type = WT_ITEM;
m_bAdded = FALSE;
memcpy(&m_ItemBaseInfo,pInfo,sizeof(ITEMBASE));
m_pLinkItem = NULL;
m_LinkPos = 0;
}
CItem::~CItem()
{
}
eITEM_KINDBIT CItem::GetItemKind()
{
ITEM_INFO * pInfo = ITEMMGR->GetItemInfo(m_ItemBaseInfo.wIconIdx);
ASSERT(pInfo); //KES 040512
if(pInfo)
return (eITEM_KINDBIT)pInfo->ItemKind;
return (eITEM_KINDBIT)0;
}
const ITEM_INFO* CItem::GetItemInfo()
{
ITEM_INFO * pInfo = ITEMMGR->GetItemInfo(m_ItemBaseInfo.wIconIdx);
ASSERT(pInfo);
if(pInfo)
ASSERT(pInfo->ItemIdx == m_ItemBaseInfo.wIconIdx);
return pInfo;
}
void CItem::SetItemBaseInfo( ITEMBASE * itemInfo )
{
memcpy( &m_ItemBaseInfo, itemInfo, sizeof( ITEMBASE ) );
}
void CItem::Render()
{
if( !m_bActive ) return;
cIcon::Render();
if( ITEMMGR->IsDupItem(m_ItemBaseInfo.wIconIdx) )// && m_ItemBaseInfo.Durability >= 1 )
{
static char nums[3];
wsprintf(nums,"%2d", m_ItemBaseInfo.Durability);
RECT rect={(LONG)m_absPos.x+27, (LONG)m_absPos.y+29, 1,1};
CFONT_OBJ->RenderFont(0,nums,strlen(nums),&rect,RGBA_MERGE(m_dwImageRGB, m_alpha * m_dwOptionAlpha / 100 )); // color hard coding : taiyo
}
}
void CItem::SetLock( BOOL bLock )
{
cIcon::SetLock( bLock );
SetMovable( !bLock );
//酒捞袍 荤侩档 陛瘤
}
BOOL CItem::CanMoveToDialog( cDialog* ptargetdlg )
{
if( GetItemKind() == eQUEST_ITEM_EQUIP )
{
int type = ptargetdlg->GetType();
switch( type )
{
case WT_STREETSTALLDIALOG:
case WT_DEALDIALOG:
case WT_MUGONGSURYUNDIALOG:
case WT_MUNPAWAREHOUSEDLG:
case WT_QUESTTOTALDIALOG:
return FALSE;
}
}
return TRUE;
}
BOOL CItem::CanDelete()
{
if( GetItemKind() == eQUEST_ITEM_EQUIP )
return FALSE;
return TRUE;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -