1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
|
typedef union _PMsgUnion {
/* Note that this type field relies on the fact that all
messages have type as their first field */
PlayerMsgType type;
PMsgSaveStateMsg savestate;
PMsgLoadStateMsg loadstate;
PMsgConnectMsg connect;
PMsgRequestReconnectMsg requestreconnect;
PMsgDeclareSpecialMsg declarespecial;
PMsgRequestPauseMsg requestpause;
PMsgReadyMsg ready;
PMsgDiscardMsg discard;
PMsgNoClaimMsg noclaim;
PMsgPungMsg pung;
PMsgFormClosedPungMsg formclosedpung;
PMsgKongMsg kong;
PMsgDeclareClosedKongMsg declareclosedkong;
PMsgAddToPungMsg addtopung;
PMsgQueryMahJongMsg querymahjong;
PMsgChowMsg chow;
PMsgFormClosedChowMsg formclosedchow;
PMsgDeclareWashOutMsg declarewashout;
PMsgMahJongMsg mahjong;
PMsgPairMsg pair;
PMsgFormClosedPairMsg formclosedpair;
PMsgShowTilesMsg showtiles;
PMsgSpecialSetMsg specialset;
PMsgFormClosedSpecialSetMsg formclosedspecialset;
PMsgSetPlayerOptionMsg setplayeroption;
PMsgSetGameOptionMsg setgameoption;
PMsgQueryGameOptionMsg querygameoption;
PMsgListGameOptionsMsg listgameoptions;
PMsgChangeManagerMsg changemanager;
PMsgSendMessageMsg sendmessage;
PMsgSwapTileMsg swaptile;
} PMsgUnion;
|