This commit is contained in:
小疯 2022-09-04 00:06:13 +08:00
parent 9f55b5edb1
commit feef73d53f
2 changed files with 24 additions and 55 deletions

View File

@ -210,33 +210,6 @@ ENUM_PACK_RET_TYPE CDispatch::UseEquipmentMoveItem(CUser* user, PacketBuf* pBuf)
} }
} }
/*
*/
//if (!item_citem->is_stackable() || (equipment_citem->GetItemType() != 20))
//{
// LOG("citem->is_stackable() || (citem->GetItemType() : error \n");
// pUser->SendCmdErrorPacket(205, 209);
// return 0;
//}
/*
[DNF_PROJECT] Recv() class:1 id:2000 len:21 packet_data :01 D0 07 15 00 00 00 36 E2 41 37 12 00 09 00 AD 6B 00 00 03 00
[DNF_PROJECT] UseEquipmentMoveItem :01 D0 07 15 00 00 00 36 E2 41 37 12 00 09 00 AD 6B 00 00 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
[DNF_PROJECT] UseEquipmentMoveItem [ equipment_pos:9 equipment_id:27565 item_pos:3 item_id:2660238 ]
[DNF_PROJECT] Data: equipment_citem->GetItemType=0 item_citem->is_stackable=1 item_citem->GetItemType=11
*/
/* /*
Call (2000) Call (2000)
Call (,2) Call (,2)
@ -244,10 +217,6 @@ ENUM_PACK_RET_TYPE CDispatch::UseEquipmentMoveItem(CUser* user, PacketBuf* pBuf)
Call (,2) Call (,2)
Call () Call ()
*/ */
return PAK_OK; return PAK_OK;
} }
@ -271,14 +240,14 @@ ENUM_PACK_RET_TYPE CDispatch::Dispatcher_ModItemAttr_dispatch_sig(Dispatcher_Mod
user->SendCmdErrorPacket(84, 4); user->SendCmdErrorPacket(84, 4);
return PAK_IGNORE; return PAK_IGNORE;
} }
CItem* equipment_item = CDataManager::G_CDataManager()->find_item(equipment_id); CEquipItem* equipment_item = (CEquipItem*)CDataManager::G_CDataManager()->find_item(equipment_id);
if (!equipment_item) if (!equipment_item)
{ {
user->SendCmdErrorPacket(84, 4); user->SendCmdErrorPacket(84, 4);
return PAK_IGNORE; return PAK_IGNORE;
} }
int equipment_Type = ((CEquipItem*)equipment_item)->GetItemType(); int equipment_Type = equipment_item->GetItemType();
if (equipment_Type <= 9 || equipment_Type > 21 || equipment_Type == 11) if (equipment_Type <= 9 || equipment_Type > 21 || equipment_Type == 11)
{ {

View File

@ -349,25 +349,7 @@ public:
}; };
class CStackableItem class CItem
{
public:
//获取消耗品类型
int GetItemType()
{
typedef int (*__func)(void* a1);
return ((__func)base::CStackableItem::GetItemType)(this);
}
//获取徽章支持的镶嵌槽类型
int getJewelTargetSocket()
{
typedef int (*__func)(CStackableItem* a1);
return ((__func)base::CStackableItem::getJewelTargetSocket)(this);
}
};
class CItem : public CStackableItem
{ {
public: public:
@ -567,7 +549,25 @@ public:
private: private:
}; };
class CEquipItem class CStackableItem : public CItem
{
public:
//获取消耗品类型
int GetItemType()
{
typedef int (*__func)(void* a1);
return ((__func)base::CStackableItem::GetItemType)(this);
}
//获取徽章支持的镶嵌槽类型
int getJewelTargetSocket()
{
typedef int (*__func)(CStackableItem* a1);
return ((__func)base::CStackableItem::getJewelTargetSocket)(this);
}
};
class CEquipItem : public CItem
{ {
public: public:
int GetItemType() int GetItemType()