📄 itemmap.cpp
字号:
////////////////////////////////////////////////////////////////////////////////// Filename : ItemMap.h// Written by : 辫己刮// Description : // 努扼捞攫飘俊辑 啊廉柯 家飘等 酒捞袍狼 甘捞促.////////////////////////////////////////////////////////////////////////////////#include "ItemMap.h"#include "Inventory.h"#include "Item.h"#define TWO_BY_TWO_PACKING_SIZE 12////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////ItemMap::ItemMap() throw(){ __BEGIN_TRY m_Num2x2 = 0; m_Num2x2Temp = 0; __END_CATCH}////////////////////////////////////////////////////////////// 酒捞袍 按眉 磊眉甫 瘤快扁甫 盔窍瘤 臼绰促搁,// 馆靛矫 clearAll()甫 龋免茄 饶俊 何甫 巴.////////////////////////////////////////////////////////////ItemMap::~ItemMap() throw(){ __BEGIN_TRY clear(); __END_CATCH}////////////////////////////////////////////////////////////// 氢惑等 沥纺阑 困秦 荤侩窍绰 2x2 酒捞袍狼 肮荐 技泼////////////////////////////////////////////////////////////void ItemMap::set2x2(int n) throw(){ __BEGIN_TRY // 2x2 酒捞袍捞 3俺啊 乐阑 版快, // 快急 鉴困啊 力老 臭促. 弊贰辑 3俺 窜困肺 // 函荐 蔼阑 技泼秦霖促. m_Num2x2 = n; m_Num2x2Temp = (n/3)*3; __END_CATCH}////////////////////////////////////////////////////////////// 酒捞袍阑 甘俊促 歹茄促.////////////////////////////////////////////////////////////bool ItemMap::addItem(Item* pItem) throw(){ __BEGIN_TRY ulonglong key = getKey(pItem); ITEM_MAP::const_iterator itr = find(key); if (itr == end()) // 绝栏搁 眠啊茄促. { insert(ITEM_MAP::value_type(key, pItem)); return true; } return false; __END_CATCH}////////////////////////////////////////////////////////////// 酒捞袍阑 沥纺窍扁 困茄 虐甫 父电促.//// key绰 8 byte捞绊 惑困byte何磐..//// 4 Byte : gridWidth* gridHeight// 4 Byte : ObjectID//// 肺 钎泅等促.////////////////////////////////////////////////////////////ulonglong ItemMap::getKey(Item* pItem) throw(){ __BEGIN_TRY ObjectID_t objectID = pItem->getObjectID(); int gridWidth = pItem->getVolumeWidth(); int gridHeight = pItem->getVolumeHeight(); int gridSize = gridWidth* gridHeight; // 2x2 酒捞袍阑 东户栏肺 快急鉴困甫 力老 臭霸 秦霖促. if (gridSize == 4) { if (m_Num2x2Temp > 0) { m_Num2x2Temp--; gridSize = TWO_BY_TWO_PACKING_SIZE; } } gridSize = 0xFF - gridSize; ulonglong key = gridSize; key = (key << 32) | objectID; return key; __END_CATCH}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -