Roguelike
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
simple.h
Go to the documentation of this file.
1 #ifndef ROGUELIKE_ACTION_SKILL_SIMPLE_H_
2 #define ROGUELIKE_ACTION_SKILL_SIMPLE_H_
3 
4 // Inheritance
6 
7 // External Dependencies
8 #include <ugdk/portable/tr1.h>
9 #include FROM_TR1(functional)
10 
11 // Internal Dependencies
12 // (none)
13 
14 // Forward Declarations
15 #include <ugdk/math.h>
16 #include "game/base.h"
17 
18 namespace game {
19 namespace action {
20 namespace skill {
21 
22 typedef std::tr1::function<bool (const base::GameObject*, const base::GameThing&)>
24 
25 typedef std::tr1::function<SpendInfo (base::GameObject*, const base::GameThing&)>
27 
28 typedef std::tr1::function<void (base::GameObject*, base::GameThing&, const Efficiency&)>
30 
31 class Simple : public Skill {
32  typedef Skill super;
33  public:
34  Simple(const SimpleValidator& validator, const SimpleSpender& spender, const SimpleAction& action);
35  virtual ~Simple() {}
36 
38 
39  private:
40  SimpleValidator validator_;
41  SimpleSpender spender_;
42  SimpleAction action_;
43 };
44 
45 } // namespace skill
46 } // namespace action
47 } // namespace game
48 
49 #endif // ROGUELIKE_ACTION_SKILL_SIMPLE_H_
std::tr1::function< SpendInfo(base::GameObject *, const base::GameThing &)> SimpleSpender
Definition: simple.h:26
Definition: gameobject.h:53
Simple(const SimpleValidator &validator, const SimpleSpender &spender, const SimpleAction &action)
Definition: simple.cc:20
time::TimeElapsed operator()(base::GameObject *caster, const GameTargets &targets)
Definition: simple.cc:23
Definition: simple.h:31
virtual ~Simple()
Definition: simple.h:35
Definition: aim.cc:15
std::tr1::function< bool(const base::GameObject *, const base::GameThing &)> SimpleValidator
Definition: simple.h:23
Definition: timeelapsed.h:20
std::list< base::GameThing > GameTargets
Definition: skill.h:24
std::tr1::function< void(base::GameObject *, base::GameThing &, const Efficiency &)> SimpleAction
Definition: simple.h:29
Definition: skill.h:48