mirror of
https://github.com/jmarshall23/Hellfire.git
synced 2026-08-11 23:40:51 +02:00
Initial commit.
This commit is contained in:
@@ -0,0 +1,260 @@
|
||||
//******************************************************************
|
||||
// msg.h
|
||||
//******************************************************************
|
||||
|
||||
enum {
|
||||
CMD_STAND = 0,
|
||||
CMD_WALKXY,
|
||||
CMD_ACK_PLRINFO,
|
||||
CMD_ADDSTR,
|
||||
CMD_ADDMAG,
|
||||
CMD_ADDDEX,
|
||||
CMD_ADDVIT,
|
||||
CMD_SBSPELL,
|
||||
CMD_GETITEM,
|
||||
CMD_AGETITEM,
|
||||
CMD_PUTITEM,
|
||||
CMD_RESPAWNITEM,
|
||||
CMD_ATTACKXY,
|
||||
CMD_RATTACKXY,
|
||||
CMD_SPELLXY,
|
||||
CMD_TSPELLXY,
|
||||
CMD_OPOBJXY,
|
||||
CMD_DISARMXY,
|
||||
CMD_ATTACKID,
|
||||
CMD_ATTACKPID,
|
||||
CMD_RATTACKID,
|
||||
CMD_RATTACKPID,
|
||||
CMD_SPELLID,
|
||||
CMD_SPELLPID,
|
||||
CMD_TSPELLID,
|
||||
CMD_TSPELLPID,
|
||||
CMD_RESURRECT,
|
||||
CMD_OPOBJT,
|
||||
CMD_KNOCKBACK,
|
||||
CMD_TALKXY,
|
||||
CMD_NEWLVL,
|
||||
CMD_WARP,
|
||||
CMD_CHEAT_EXPERIENCE,
|
||||
CMD_CHEAT_SPELL_LEVEL,
|
||||
CMD_DEBUG,
|
||||
CMD_SYNCDATA,
|
||||
CMD_MONSTDEATH,
|
||||
CMD_MONSTDAMAGE,
|
||||
CMD_PLRDEAD,
|
||||
CMD_REQUESTGITEM,
|
||||
CMD_REQUESTAGITEM,
|
||||
CMD_GOTOGETITEM,
|
||||
CMD_GOTOAGETITEM,
|
||||
CMD_OPENDOOR,
|
||||
CMD_CLOSEDOOR,
|
||||
CMD_OPERATEOBJ,
|
||||
CMD_PLROPOBJ,
|
||||
CMD_BREAKOBJ,
|
||||
CMD_CHANGEPLRITEMS,
|
||||
CMD_DELPLRITEMS,
|
||||
CMD_PLRDAMAGE,
|
||||
CMD_PLRLEVEL,
|
||||
CMD_DROPITEM,
|
||||
CMD_PLAYER_JOINLEVEL,
|
||||
CMD_SEND_PLRINFO,
|
||||
CMD_SATTACKXY,
|
||||
CMD_ACTIVATEPORTAL,
|
||||
CMD_DEACTIVATEPORTAL,
|
||||
CMD_DLEVEL_0,
|
||||
CMD_DLEVEL_1,
|
||||
CMD_DLEVEL_2,
|
||||
CMD_DLEVEL_3,
|
||||
CMD_DLEVEL_4,
|
||||
CMD_DLEVEL_5,
|
||||
CMD_DLEVEL_6,
|
||||
CMD_DLEVEL_7,
|
||||
CMD_DLEVEL_8,
|
||||
CMD_DLEVEL_9,
|
||||
CMD_DLEVEL_10,
|
||||
CMD_DLEVEL_11,
|
||||
CMD_DLEVEL_12,
|
||||
CMD_DLEVEL_13,
|
||||
CMD_DLEVEL_14,
|
||||
CMD_DLEVEL_15,
|
||||
CMD_DLEVEL_16,
|
||||
CMD_DLEVEL_17,
|
||||
CMD_DLEVEL_18,
|
||||
CMD_DLEVEL_19,
|
||||
CMD_DLEVEL_20,
|
||||
CMD_DLEVEL_21,
|
||||
CMD_DLEVEL_22,
|
||||
CMD_DLEVEL_23,
|
||||
CMD_DLEVEL_24,
|
||||
CMD_DLEVEL_JUNK,
|
||||
CMD_DLEVEL_END,
|
||||
CMD_HEALOTHER,
|
||||
CMD_STRING,
|
||||
CMD_SETSTR,
|
||||
CMD_SETMAG,
|
||||
CMD_SETDEX,
|
||||
CMD_SETVIT,
|
||||
CMD_RETOWN,
|
||||
CMD_SPELLXYD,
|
||||
CMD_ITEMEXTRA,
|
||||
CMD_SYNCPUTITEM,
|
||||
CMD_KILLGOLEM,
|
||||
CMD_SYNCQUEST,
|
||||
CMD_ENDSHIELD,
|
||||
CMD_AWAKEGOLEM,
|
||||
CMD_ENDREFLECT,
|
||||
CMD_OPEN_NAKRUL,
|
||||
CMD_OPEN_NEST,
|
||||
CMD_OPEN_CRYPT,
|
||||
|
||||
// thse are commands which are never sent
|
||||
FAKE_CMD_SETID,
|
||||
FAKE_CMD_DROPID,
|
||||
NUM_CMDS
|
||||
};
|
||||
|
||||
|
||||
//******************************************************************
|
||||
// net commands
|
||||
//******************************************************************
|
||||
#pragma pack(push,1)
|
||||
typedef struct TCmd {
|
||||
BYTE bCmd;
|
||||
} TCmd;
|
||||
void NetSendCmd(BOOL bHiPri,BYTE bCmd);
|
||||
|
||||
void NetSendCmdLoc(BOOL bHiPri,BYTE bCmd,BYTE x,BYTE y);
|
||||
void NetSendCmdLocParam1(BOOL bHiPri,BYTE bCmd,BYTE x,BYTE y,WORD wParam1);
|
||||
void NetSendCmdLocParam2(BOOL bHiPri,BYTE bCmd,BYTE x,BYTE y,WORD wParam1,WORD wParam2);
|
||||
void NetSendCmdLocParam3(BOOL bHiPri,BYTE bCmd,BYTE x,BYTE y,WORD wParam1,WORD wParam2,WORD wParam3);
|
||||
|
||||
void NetSendCmdParam1(BOOL bHiPri,BYTE bCmd,WORD wParam1);
|
||||
void NetSendCmdParam2(BOOL bHiPri,BYTE bCmd,WORD wParam1,WORD wParam2);
|
||||
void NetSendCmdParam3(BOOL bHiPri,BYTE bCmd,WORD wParam1,WORD wParam2, WORD wParam3 );
|
||||
|
||||
void NetSendCmdQuest(BOOL bHiPri,BYTE q);
|
||||
|
||||
void NetSendCmdGItem(BOOL bHiPri,BYTE bCmd,BYTE mast,BYTE pnum,BYTE bCursitem);
|
||||
void NetSendCmdPItem(BOOL bHiPri,BYTE bCmd,BYTE x,BYTE y);
|
||||
void NetSendCmdDItem(BOOL bHiPri,int ii);
|
||||
void NetSendCmdChItem(BOOL bHiPri,BYTE bLoc);
|
||||
void NetSendCmdDelItem(BOOL bHiPri,BYTE bLoc);
|
||||
|
||||
void NetSendCmdDamage(BOOL bHiPri,BYTE bPlr,DWORD dwDam);
|
||||
void NetSendCmdMonstDamage(BOOL bHiPri,WORD bMonst,DWORD dwDam);
|
||||
|
||||
typedef struct TCmdPlrInfoHdr {
|
||||
BYTE bCmd;
|
||||
WORD wOffset;
|
||||
WORD wBytes;
|
||||
} TCmdPlrInfoHdr;
|
||||
|
||||
// better not be bigger than this, the net will choke
|
||||
#define MAX_SEND_STR_LEN 80
|
||||
#define SEND_ALL_MASK 0xffffffff
|
||||
void NetSendString(DWORD dwSendMask,const char * pszStr);
|
||||
|
||||
|
||||
#pragma pack(pop)
|
||||
|
||||
|
||||
//******************************************************************
|
||||
// net syncing
|
||||
//******************************************************************
|
||||
#pragma pack(push,1)
|
||||
typedef struct TSyncHeader {
|
||||
BYTE bCmd;
|
||||
BYTE bLevel;
|
||||
WORD wLen;
|
||||
BYTE bObjId;
|
||||
BYTE bObjCmd;
|
||||
BYTE bItemI;
|
||||
BYTE bItemX;
|
||||
BYTE bItemY;
|
||||
WORD wItemIndx;
|
||||
WORD wItemCI;
|
||||
int dwItemSeed;
|
||||
BYTE bItemId;
|
||||
BYTE bItemDur;
|
||||
BYTE bItemMDur;
|
||||
BYTE bItemCh;
|
||||
BYTE bItemMCh;
|
||||
WORD wItemVal;
|
||||
DWORD dwItemBuff;
|
||||
BYTE bPInvLoc;
|
||||
WORD wPInvIndx;
|
||||
WORD wPInvCI;
|
||||
int dwPInvSeed;
|
||||
// drb.patch1.start.02/10/97
|
||||
BYTE bPInvId;
|
||||
// drb.patch1.end.02/10/97
|
||||
WORD wPLToHit;
|
||||
WORD wMaxDam;
|
||||
BYTE bMinStr;
|
||||
BYTE bMinMag;
|
||||
BYTE bMinDex;
|
||||
BYTE bAC;
|
||||
} TSyncHeader;
|
||||
|
||||
typedef struct TSyncMonster {
|
||||
BYTE _mndx;
|
||||
BYTE _mx;
|
||||
BYTE _my;
|
||||
BYTE _menemy;
|
||||
BYTE _mdelta;
|
||||
} TSyncMonster;
|
||||
#pragma pack(pop)
|
||||
|
||||
|
||||
//******************************************************************
|
||||
// msg sizes
|
||||
//******************************************************************
|
||||
#define MIN_MSG_SIZE 128
|
||||
#define MAX_MSG_SIZE 512
|
||||
extern DWORD gdwNormalMsgSize; // MIN_MSG_SIZE..MAX_MSG_SIZE
|
||||
extern DWORD gdwLargestMsgSize; // MIN_MSG_SIZE..MAX_MSG_SIZE
|
||||
|
||||
|
||||
//******************************************************************
|
||||
// net packets (which hold net commands inside them)
|
||||
//******************************************************************
|
||||
#pragma pack(push,1)
|
||||
typedef struct TPktHdr {
|
||||
BYTE px;
|
||||
BYTE py;
|
||||
BYTE targx;
|
||||
BYTE targy;
|
||||
DWORD php;
|
||||
DWORD pmhp;
|
||||
BYTE bstr;
|
||||
BYTE bmag;
|
||||
BYTE bdex;
|
||||
WORD wCheck; // @@ debug -- delete this
|
||||
WORD wLen; // @@ debug -- delete this
|
||||
} TPktHdr;
|
||||
typedef struct TPkt {
|
||||
TPktHdr hdr;
|
||||
BYTE body[MAX_MSG_SIZE - sizeof TPktHdr];
|
||||
} TPkt;
|
||||
#pragma pack(pop)
|
||||
|
||||
|
||||
//******************************************************************
|
||||
//******************************************************************
|
||||
extern BOOL deltaload;
|
||||
void DeltaSaveLevel();
|
||||
void DeltaLoadLevel();
|
||||
void DeltaSendAllLevels(int pnum);
|
||||
DWORD ParseCmd(int pnum, const TCmd * pCmd);
|
||||
void DeltaAddItem(int ii);
|
||||
|
||||
// PATCH1.JMM
|
||||
#if _DEBUG
|
||||
void __cdecl DROPLOG(const char * pszFmt,...);
|
||||
void VerifyItemActiveList( void );
|
||||
#else
|
||||
#define VerifyItemActiveList( )
|
||||
#define DROPLOG //
|
||||
#endif
|
||||
// ENDPATCH1
|
||||
|
||||
Reference in New Issue
Block a user