diff --git a/Source/msg.cpp b/Source/msg.cpp index 7d3c35c7b..4b043efb5 100644 --- a/Source/msg.cpp +++ b/Source/msg.cpp @@ -957,6 +957,21 @@ void NetSendCmdDamage(BOOL bHiPri, BYTE bPlr, DWORD dwDam) NetSendLoPri((BYTE *)&cmd, sizeof(cmd)); } +#ifdef HELLFIRE +void NetSendCmdMonDmg(BOOL bHiPri, WORD wMon, DWORD dwDam) +{ + TCmdMonDamage cmd; + + cmd.bCmd = CMD_MONSTDAMAGE; + cmd.wMon = wMon; + cmd.dwDam = dwDam; + if (bHiPri) + NetSendHiPri((BYTE *)&cmd, sizeof(cmd)); + else + NetSendLoPri((BYTE *)&cmd, sizeof(cmd)); +} +#endif + void NetSendCmdString(int pmask, const char *pszStr) { int dwStrLen; diff --git a/Source/msg.h b/Source/msg.h index 902b4b20b..877a7dbae 100644 --- a/Source/msg.h +++ b/Source/msg.h @@ -50,6 +50,9 @@ void NetSendCmdChItem(BOOL bHiPri, BYTE bLoc); void NetSendCmdDelItem(BOOL bHiPri, BYTE bLoc); void NetSendCmdDItem(BOOL bHiPri, int ii); void NetSendCmdDamage(BOOL bHiPri, BYTE bPlr, DWORD dwDam); +#ifdef HELLFIRE +void NetSendCmdMonDmg(BOOL bHiPri, WORD bMon, DWORD dwDam); +#endif void NetSendCmdString(int pmask, const char *pszStr); void RemovePlrPortal(int pnum); DWORD ParseCmd(int pnum, TCmd *pCmd); diff --git a/structs.h b/structs.h index bbe56d320..e7f9dd561 100644 --- a/structs.h +++ b/structs.h @@ -876,6 +876,14 @@ typedef struct TCmdDamage { DWORD dwDam; } TCmdDamage; +#ifdef HELLFIRE +typedef struct TCmdMonDamage { + BYTE bCmd; + WORD wMon; + DWORD dwDam; +} TCmdMonDamage; +#endif + typedef struct TCmdPlrInfoHdr { BYTE bCmd; WORD wOffset;