Emergency 20 Dokumentation  4.2.0
PlacePersonInEvacBusCommand.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 //[-------------------------------------------------------]
13 #include "em5/command/Command.h"
14 
15 
16 //[-------------------------------------------------------]
17 //[ Namespace ]
18 //[-------------------------------------------------------]
19 namespace em5
20 {
21 
22 
23  //[-------------------------------------------------------]
24  //[ Classes ]
25  //[-------------------------------------------------------]
35  {
36 
37 
38  //[-------------------------------------------------------]
39  //[ Public definitions ]
40  //[-------------------------------------------------------]
41  public:
42  static const uint32 PLUGINABLE_ID;
43 
44 
45  //[-------------------------------------------------------]
46  //[ Public methods ]
47  //[-------------------------------------------------------]
48  public:
54 
55 
56  //[-------------------------------------------------------]
57  //[ Public virtual em5::Command methods ]
58  //[-------------------------------------------------------]
59  public:
60  virtual bool checkAvailable() override;
61  virtual bool checkCaller(qsf::Entity& caller) override;
62  virtual bool checkContext(const qsf::game::CommandContext& context) override;
63  virtual void execute(const qsf::game::CommandContext& context) override;
64 
65 
66  //[-------------------------------------------------------]
67  //[ Private definitions ]
68  //[-------------------------------------------------------]
69  private:
70  static const uint32 ACTION_PRIORITY;
71  static const uint32 ACTION_PRIORITY_AUTOMATISM;
72 
73 
74  //[-------------------------------------------------------]
75  //[ CAMP reflection system ]
76  //[-------------------------------------------------------]
77  QSF_CAMP_RTTI() // Only adds the virtual method "campClassId()", nothing more
78 
79 
80  };
81 
82 
83 //[-------------------------------------------------------]
84 //[ Namespace ]
85 //[-------------------------------------------------------]
86 } // em5
87 
88 
89 //[-------------------------------------------------------]
90 //[ CAMP reflection system ]
91 //[-------------------------------------------------------]
static const uint32 PLUGINABLE_ID
"em5::PlacePersonInEvacBusCommand" unique command pluginable ID
Definition: PlacePersonInEvacBusCommand.h:42
Command manager implementation.
Definition: CommandManager.h:49
Definition: ActionPriority.h:13
Entity class.
Definition: Entity.h:46
unsigned int uint32
Definition: PlatformTypes.h:181
virtual bool checkContext(const qsf::game::CommandContext &context) override
Check whether the command can be executed with the given context.
PlacePersonInEvacBusCommand(qsf::game::CommandManager *commandManager)
Constructor.
Abstract EMERGENCY 5 command base class.
Definition: Command.h:44
virtual void execute(const qsf::game::CommandContext &context) override
Execute command for given context.
EMERGENCY 5 place person in evac bus / ambulance bus command.
Definition: PlacePersonInEvacBusCommand.h:34
#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
virtual bool checkCaller(qsf::Entity &caller) override
Check whether the command can be executed by the given caller entity.
virtual bool checkAvailable() override
Check whether the command is currently available at all.
Command context base class.
Definition: CommandContext.h:48