BVB Source Codes

CRYENGINE Show BreakReplicatorGameObject.h Source code

Return Download CRYENGINE: download BreakReplicatorGameObject.h Source code - Download CRYENGINE Source code - Type:.h
  1. // Copyright 2001-2016 Crytek GmbH / Crytek Group. All rights reserved.
  2.  
  3. #ifndef __BREAK_REP_GAME_OBJECT__H__
  4. #define __BREAK_REP_GAME_OBJECT__H__
  5.  
  6. #include "ActionGame.h"
  7.  
  8. /*
  9.    =====================================================================
  10.    class: CBreakRepGameObject
  11.    =====================================================================
  12.  */
  13. class CBreakRepGameObject : public CGameObjectExtensionHelper<CBreakRepGameObject, IGameObjectExtension>
  14. {
  15. public:
  16.         virtual inline bool                 Init(IGameObject* pGameObject);
  17.         virtual inline void                 InitClient(int channelId)                                                       {}
  18.         virtual inline void                 PostInit(IGameObject*)                                                          {}
  19.         virtual inline void                 PostInitClient(int channelId)                                                   {}
  20.         virtual inline bool                 ReloadExtension(IGameObject* pGameObject, const SEntitySpawnParams& params);
  21.         virtual inline void                 PostReloadExtension(IGameObject* pGameObject, const SEntitySpawnParams& params) {}
  22.         virtual inline void                 Release()                                                                       { delete this; }
  23.  
  24.         virtual inline void                 FullSerialize(TSerialize ser)                                                   {}
  25.         virtual inline bool                 NetSerialize(TSerialize ser, EEntityAspects aspect, uint8 profile, int flags);
  26.         virtual inline void                 PostSerialize()                                                                 {}
  27.         virtual inline void                 SerializeSpawnInfo(TSerialize ser)                                              {}
  28.         virtual inline ISerializableInfoPtr GetSpawnInfo()                                                                  { return NULL; }
  29.         virtual inline void                 Update(SEntityUpdateContext& ctx, int)                                          {}
  30.         virtual inline void                 HandleEvent(const SGameObjectEvent& event)                                      {}
  31.         virtual inline void                 ProcessEvent(SEntityEvent& event)                                               {}
  32.         virtual uint64                      GetEventMask() const final { return 0; };
  33.         virtual inline void                 SetChannelId(uint16 id)                                                         {}
  34.         virtual inline void                 SetAuthority(bool auth)                                                         {}
  35.         virtual inline void                 PostUpdate(float frameTime)                                                     {}
  36.         virtual inline void                 PostRemoteSpawn()                                                               {}
  37.         virtual inline void                 GetMemoryUsage(ICrySizer* s) const                                              { s->Add(*this); }
  38.  
  39. public:
  40.         bool m_wasRemoved;
  41.         bool m_removed;
  42. };
  43.  
  44. inline bool CBreakRepGameObject::Init(IGameObject* pGameObject)
  45. {
  46.         SetGameObject(pGameObject);
  47.         m_removed = false;
  48.         m_wasRemoved = false;
  49.         return true;
  50. }
  51.  
  52. inline bool CBreakRepGameObject::ReloadExtension(IGameObject* pGameObject, const SEntitySpawnParams& params)
  53. {
  54.         ResetGameObject();
  55.         CRY_ASSERT_MESSAGE(false, "CBreakRepGameObject::ReloadExtension not implemented");
  56.         return false;
  57. }
  58.  
  59. inline bool CBreakRepGameObject::NetSerialize(TSerialize ser, EEntityAspects aspect, uint8 profile, int flags)
  60. {
  61.         ser.Value("removed", m_removed);
  62.  
  63.         if (m_removed && m_wasRemoved == false)
  64.         {
  65.                 m_wasRemoved = true;
  66.                 CActionGame::Get()->FreeBrokenMeshesForEntity(GetGameObject()->GetEntity()->GetPhysics());
  67.         }
  68.         return true;
  69. }
  70.  
  71. #endif
  72.  
downloadBreakReplicatorGameObject.h Source code - Download CRYENGINE Source code
Related Source Codes/Software:
postal - 2017-06-11
reactide - Reactide is the first dedicated IDE for React web ... 2017-06-11
rkt - rkt is a pod-native container engine for Linux. It... 2017-06-11
uWebSockets - Tiny WebSockets https://for... 2017-06-11
realworld - TodoMVC for the RealWorld - Exemplary fullstack Me... 2017-06-11
CRYENGINE - CRYENGINE is a powerful real-time game development... 2017-06-11
goreplay - GoReplay is an open-source tool for capturing and ... 2017-06-10
pyenv - Simple Python version management 2017-06-10
redux-saga - An alternative side effect model for Redux apps ... 2017-06-10
angular-starter - 2017-06-10

 Back to top