constexpr auto MSG_PremiumFireWork_Opcode = 0x3CA;
struct MSG_PremiumFireWork
{
PacketHeader Header;
int conn;
int Motion;
char Parm[16];
};
if (Volatile == 19)
{
MSG_UseItem3* pUseItem = reinterpret_cast<MSG_UseItem3*>(pMsg);
MSG_PremiumFireWork stFireWork{};
memset(&stFireWork, 0, sizeof(MSG_PremiumFireWork));
stFireWork.Header.Size = sizeof(MSG_PremiumFireWork);
stFireWork.Header.ID = conn;
stFireWork.Header.Type = MSG_PremiumFireWork_Opcode;
stFireWork.conn = conn;
stFireWork.Motion = 100;
memcpy(stFireWork.Parm, pUseItem->Parm, sizeof(stFireWork.Parm));
GridMulticast(pMob[conn].TargetX, pMob[conn].TargetY, (MSG_STANDARD*)&stFireWork, 0);
if (Amount > 1)
BASE_SetItemAmount(Item, Amount - 1);
else
memset(Item, 0, sizeof(STRUCT_ITEM));
return;
}