BVB Source Codes

CRYENGINE Show SequenceManager.h Source code

Return Download CRYENGINE: download SequenceManager.h Source code - Download CRYENGINE Source code - Type:.h
  1. // Copyright 2001-2016 Crytek GmbH / Crytek Group. All rights reserved.
  2.  
  3. #pragma once
  4.  
  5. #include "Sequence.h"
  6.  
  7. namespace AIActionSequence
  8. {
  9.  
  10. class SequenceManager : public ISequenceManager
  11. {
  12. public:
  13.         SequenceManager()
  14.                 : m_sequenceIdCounter(1)
  15.         {
  16.         }
  17.  
  18.         ~SequenceManager()
  19.         {
  20.         }
  21.  
  22.         void Reset();
  23.  
  24.         // AIActionSequence::ISequenceManager
  25.         virtual bool RegisterSequence(EntityId entityId, TFlowNodeId startNodeId, SequenceProperties sequenceProperties, IFlowGraph* flowGraph);
  26.         virtual void UnregisterSequence(SequenceId sequenceId);
  27.  
  28.         virtual void StartSequence(SequenceId sequenceId);
  29.         virtual void CancelSequence(SequenceId sequenceId);
  30.         virtual bool IsSequenceActive(SequenceId sequenceId);
  31.  
  32.         virtual void SequenceBehaviorReady(EntityId entityId);
  33.         virtual void SequenceInterruptibleBehaviorLeft(EntityId entityId);
  34.         virtual void SequenceNonInterruptibleBehaviorLeft(EntityId entityId);
  35.         virtual void AgentDisabled(EntityId entityId);
  36.  
  37.         virtual void RequestActionStart(SequenceId sequenceId, TFlowNodeId actionNodeId);
  38.         virtual void ActionCompleted(SequenceId sequenceId);
  39.         virtual void SetBookmark(SequenceId sequenceId, TFlowNodeId bookmarkNodeId);
  40.         // ~AIActionSequence::ISequenceManager
  41.  
  42. private:
  43.         SequenceId GenerateUniqueSequenceId();
  44.         Sequence*  GetSequence(SequenceId sequenceId);
  45.         void       CancelActiveSequencesForThisEntity(EntityId entityId);
  46.  
  47.         typedef std::map<SequenceId, Sequence> SequenceMap;
  48.         SequenceMap m_registeredSequences;
  49.         SequenceId  m_sequenceIdCounter;
  50. };
  51.  
  52. } // namespace AIActionSequence
  53.  
downloadSequenceManager.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