Nebula
Loading...
Searching...
No Matches
multiplayerfeatureunit.h
Go to the documentation of this file.
1#pragma once
2//------------------------------------------------------------------------------
9#include "game/featureunit.h"
12
13//------------------------------------------------------------------------------
14namespace Multiplayer
15{
16
17const double NEBULA_DEFAULT_TICK_RATE = 1.0/8.0;
18
20{
23
24public:
25
30
31 void OnAttach() override;
32 void OnActivate() override;
33 void OnDeactivate() override;
34 void OnBeginFrame() override;
35 void OnFrame() override;
36 void OnEndFrame() override;
37
38 virtual void OnRenderDebug();
39
41 bool IsServer() const;
46
47private:
50
51};
52
53//--------------------------------------------------------------------------
56inline bool
58{
59 return this->server != nullptr;
60}
61
62//--------------------------------------------------------------------------
65inline void
70
71//--------------------------------------------------------------------------
74inline void
79
80} // namespace Scripting
81//------------------------------------------------------------------------------
A FeatureUnit is an encapsulated feature which can be added to an application.
Definition featureunit.h:34
Definition basemultiplayerclient.h:26
Definition basemultiplayerserver.h:20
Definition multiplayerfeatureunit.h:20
void OnAttach() override
called from GameServer::AttachGameFeature()
Definition multiplayerfeatureunit.cc:107
BaseMultiplayerClient * client
Definition multiplayerfeatureunit.h:49
void OnBeginFrame() override
called on begin of frame
Definition multiplayerfeatureunit.cc:228
virtual void OnRenderDebug()
called when game debug visualization is on
Definition multiplayerfeatureunit.cc:280
void SetClient(BaseMultiplayerClient *client)
Set the client that should be used (if any). You must set this before activating the feature unit.
Definition multiplayerfeatureunit.h:75
void OnDeactivate() override
called before GameServer::RemoveGameFeature()
Definition multiplayerfeatureunit.cc:208
void SetServer(BaseMultiplayerServer *server)
Set the server that should be used (if any). You must set this before activating the feature unit.
Definition multiplayerfeatureunit.h:66
void OnActivate() override
called after GameServer::AttachGameFeature()
Definition multiplayerfeatureunit.cc:182
bool IsServer() const
returns true if this instance is the server.
Definition multiplayerfeatureunit.h:57
BaseMultiplayerServer * server
Definition multiplayerfeatureunit.h:48
void OnFrame() override
called in the middle of the feature trigger cycle
Definition multiplayerfeatureunit.cc:241
void OnEndFrame() override
called at the end of the feature trigger cycle
Definition multiplayerfeatureunit.cc:250
__DeclareClass(MultiplayerFeatureUnit) __DeclareSingleton(MultiplayerFeatureUnit) public ~MultiplayerFeatureUnit()
destructor
Definition multiplayerfeatureunit.cc:98
Definition basemultiplayerclient.cc:24
const double NEBULA_DEFAULT_TICK_RATE
Definition multiplayerfeatureunit.h:17
#define __DeclareSingleton(type)
Definition osxsingleton.h:24
#define __DeclareClass(type)