BVB Source Codes

CRYENGINE Show ProceduralBreakingRecordingListener.h Source code

Return Download CRYENGINE: download ProceduralBreakingRecordingListener.h Source code - Download CRYENGINE Source code - Type:.h
  1. // Copyright 2001-2016 Crytek GmbH / Crytek Group. All rights reserved.
  2.  
  3. /*************************************************************************
  4.    -------------------------------------------------------------------------
  5.    $Id$
  6.    $DateTime$
  7.    Description:  network breakability: recording of procedural breaks
  8.    -------------------------------------------------------------------------
  9.    History:
  10.    - 22/01/2007   10:34 : Created by Craig Tiller
  11. *************************************************************************/
  12. #ifndef __PROCEDURALBREAKRECORDINGLISTENER_H__
  13. #define __PROCEDURALBREAKRECORDINGLISTENER_H__
  14.  
  15. #pragma once
  16.  
  17. #if !NET_USE_SIMPLE_BREAKAGE
  18.  
  19.         #include "ProceduralBreakingBaseListener.h"
  20.  
  21. class CProceduralBreakingRecordingListener : public CProceduralBreakingBaseListener
  22. {
  23. public:
  24.         CProceduralBreakingRecordingListener(IProceduralBreakTypePtr pBreakType);
  25.         ~CProceduralBreakingRecordingListener();
  26.  
  27.         bool AttemptAbsorb(const IProceduralBreakTypePtr& pBT);
  28.  
  29. private:
  30.         virtual void        GotJointBreak(int idxRef, int id, int epicenter);
  31.         virtual void        GotJointBreakParticle(const EventPhysCreateEntityPart* pEvent);
  32.         virtual int         GotBreakOp(ENetBreakOperation op, int idxRef, int partid, EntityId to);
  33.         virtual void        FinishBreakOp(ENetBreakOperation op, int idxRef, EntityId to, int virtId);
  34.         virtual void        Complete();
  35.         int                 GetEntRef(EntityId id);
  36.         virtual bool        AllowComplete();
  37.         virtual const char* GetListenerName() { return "Recording"; }
  38.  
  39.         DynArray<EntityId>               m_ents;
  40.         DynArray<SJointBreakRec>         m_jointBreaks;
  41.         DynArray<SProceduralSpawnRec>    m_spawnRecs;
  42.         DynArray<SJointBreakParticleRec> m_gibs;                  // An unclean attempt to sync the initial particle velocities
  43.         std::map<int, int>               m_jointBreaksForIds;
  44.         #if BREAK_HIERARCHICAL_TRACKING
  45.         uint16                           m_frame;
  46.         std::set<int>                    m_openIds;
  47.         #else
  48.         bool                             m_gotRemove;
  49.         #endif
  50.  
  51.         int m_orderId;
  52. };
  53.  
  54. #endif // !NET_USE_SIMPLE_BREAKAGE
  55.  
  56. #endif
  57.  
downloadProceduralBreakingRecordingListener.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