1 #ifndef ROGUELIKE_ACTION_SKILL_SKILL_H_
2 #define ROGUELIKE_ACTION_SKILL_SKILL_H_
10 #include <ugdk/portable/tr1.h>
11 #include FROM_TR1(functional)
17 #include <ugdk/math.h>
29 Efficiency(
double efficiency) : efficiency(efficiency) {}
38 : time_elapsed(time_elapsed), efficiency(efficiency) {}
45 typedef std::tr1::function<void (base::GameObject*, const GameTargets&, const Efficiency&)>
std::tr1::function< void(base::GameObject *, const GameTargets &, const Efficiency &)> GameAction
Definition: skill.h:46
Definition: gameobject.h:53
Efficiency efficiency
Definition: skill.h:35
static Skill * LoadFromFile(const std::string &)
Definition: skill.h:59
virtual time::TimeElapsed operator()(base::GameObject *caster, const GameTargets &targets)=0
Definition: timeelapsed.h:20
double efficiency
Definition: skill.h:27
SpendInfo(const time::TimeElapsed &time_elapsed, const Efficiency &efficiency)
Definition: skill.h:37
Efficiency(double efficiency)
Definition: skill.h:29
time::TimeElapsed time_elapsed
Definition: skill.h:34
Skill()
Definition: skill.h:50
virtual ~Skill()
Definition: skill.h:51
std::list< base::GameThing > GameTargets
Definition: skill.h:24