Emergency 20 Dokumentation  4.2.0
DrunkenOverboardEventFactory.h
Go to the documentation of this file.
1 // Copyright (C) 2012-2018 Promotion Software GmbH
2 
3 
4 //[-------------------------------------------------------]
5 //[ Header guard ]
6 //[-------------------------------------------------------]
7 #pragma once
8 
9 
10 //[-------------------------------------------------------]
11 //[ Includes ]
12 //[-------------------------------------------------------]
14 
15 
16 //[-------------------------------------------------------]
17 //[ Forward declarations ]
18 //[-------------------------------------------------------]
19 namespace qsf
20 {
21  class Entity;
22 }
23 
24 
25 //[-------------------------------------------------------]
26 //[ Namespace ]
27 //[-------------------------------------------------------]
28 namespace em5
29 {
30 
31 
32  //[-------------------------------------------------------]
33  //[ Classes ]
34  //[-------------------------------------------------------]
40  {
41 
42 
43  //[-------------------------------------------------------]
44  //[ Public methods ]
45  //[-------------------------------------------------------]
46  public:
52 
58 
59 
60  //[-------------------------------------------------------]
61  //[ Public virtual em5::FreeplayEventFactory methods ]
62  //[-------------------------------------------------------]
63  public:
64  virtual FreeplayEvent* tryTriggerEvent() override;
65 
66 
67  //[-------------------------------------------------------]
68  //[ Private methods ]
69  //[-------------------------------------------------------]
70  private:
71  qsf::Entity* findShip() const;
72  qsf::Entity* spawnCandidate(qsf::Entity& shipEntity) const;
73  bool checkShip(qsf::Entity& shipEntity) const;
74  qsf::Entity* findSpawnPointOnShip(qsf::Entity& shipEntity) const;
75 
76 
77  //[-------------------------------------------------------]
78  //[ CAMP reflection system ]
79  //[-------------------------------------------------------]
80  QSF_CAMP_RTTI() // Only adds the virtual method "campClassId()", nothing more
81 
82 
83  };
84 
85 
86 //[-------------------------------------------------------]
87 //[ Namespace ]
88 //[-------------------------------------------------------]
89 } // em5
90 
91 
92 //[-------------------------------------------------------]
93 //[ CAMP reflection system ]
94 //[-------------------------------------------------------]
Definition: ActionPriority.h:13
Entity class.
Definition: Entity.h:46
EMERGENCY 5 freeplay event factory for "drunken overbaord".
Definition: DrunkenOverboardEventFactory.h:39
#define EM5_API_EXPORT
Definition: Export.h:28
Definition: PickupPersonByParamedicAction.h:21
#define QSF_CAMP_RTTI()
Only adds the virtual method "campClassId()", nothing more.
Definition: CampClass.h:75
#define QSF_CAMP_TYPE_NONCOPYABLE(type)
See "CAMP_TYPE_NONCOPYABLE" for details.
Definition: CampClass.h:112
EMERGENCY 5 freeplay event factory base class.
Definition: FreeplayEventFactory.h:56
Abstract EMERGENCY 5 freeplay event base class.
Definition: FreeplayEvent.h:66