Starshatter_Open
Open source Starshatter engine
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
NetGameClient.h
Go to the documentation of this file.
1 /* Project Starshatter 4.5
2  Destroyer Studios LLC
3  Copyright © 1997-2004. All Rights Reserved.
4 
5  SUBSYSTEM: Stars.exe
6  FILE: NetGameClient.h
7  AUTHOR: John DiCamillo
8 
9 
10  OVERVIEW
11  ========
12  Network Game Manager class
13 */
14 
15 #ifndef NetGameClient_h
16 #define NetGameClient_h
17 
18 #include "NetGame.h"
19 #include "SimObject.h"
20 
21 // +--------------------------------------------------------------------+
22 
23 class NetJoinAnnounce;
24 
25 // +--------------------------------------------------------------------+
26 
27 class NetGameClient : public NetGame, public SimObserver
28 {
29 public:
30  NetGameClient();
31  virtual ~NetGameClient();
32 
33  virtual bool IsClient() const { return true; }
34  virtual bool IsServer() const { return false; }
35 
36  virtual void ExecFrame();
37  virtual void Send();
38  virtual void SendData(NetData* data);
39  virtual void Respawn(DWORD objid, Ship* spawn);
40 
41  virtual bool Update(SimObject* obj);
42  virtual const char* GetObserverName() const;
43 
44 protected:
45  virtual void DoJoinRequest(NetMsg* msg);
46  virtual void DoJoinAnnounce(NetMsg* msg);
47  virtual void DoQuitRequest(NetMsg* msg);
48  virtual void DoQuitAnnounce(NetMsg* msg);
49  virtual void DoGameOver(NetMsg* msg);
50  virtual void DoDisconnect(NetMsg* msg);
51 
52  virtual void DoObjLoc(NetMsg* msg);
53  virtual void DoObjDamage(NetMsg* msg);
54  virtual void DoObjKill(NetMsg* msg);
55  virtual void DoObjSpawn(NetMsg* msg);
56  virtual void DoObjHyper(NetMsg* msg);
57  virtual void DoObjTarget(NetMsg* msg);
58  virtual void DoObjEmcon(NetMsg* msg);
59  virtual void DoSysDamage(NetMsg* msg);
60  virtual void DoSysStatus(NetMsg* msg);
61 
62  virtual void DoElemCreate(NetMsg* msg);
63  virtual void DoShipLaunch(NetMsg* msg);
64  virtual void DoNavData(NetMsg* msg);
65  virtual void DoNavDelete(NetMsg* msg);
66 
67  virtual void DoWepTrigger(NetMsg* msg);
68  virtual void DoWepRelease(NetMsg* msg);
69  virtual void DoWepDestroy(NetMsg* msg);
70 
71  virtual void DoCommMsg(NetMsg* msg);
72  virtual void DoChatMsg(NetMsg* msg);
73  virtual void DoSelfDestruct(NetMsg* msg);
74 
75  virtual void SendJoinRequest();
76 
77  virtual bool DoJoinBacklog(NetJoinAnnounce* join_ann);
78 
79  DWORD server_id;
82 };
83 
84 // +--------------------------------------------------------------------+
85 
86 #endif NetGameClient_h
87