2019-04-20 14:02:55 +02:00
|
|
|
#ifndef TALENT_H
|
|
|
|
#define TALENT_H
|
|
|
|
|
|
|
|
#include "core/resource.h"
|
|
|
|
#include "core/ustring.h"
|
|
|
|
|
|
|
|
#include "aura.h"
|
|
|
|
|
2019-10-06 17:04:28 +02:00
|
|
|
class Spell;
|
|
|
|
|
2019-08-13 23:58:42 +02:00
|
|
|
class Talent : public Aura {
|
|
|
|
GDCLASS(Talent, Aura);
|
2019-04-20 14:02:55 +02:00
|
|
|
|
|
|
|
public:
|
2019-10-06 17:04:28 +02:00
|
|
|
Ref<Talent> get_required_talent() const;
|
|
|
|
void set_required_talent(const Ref<Talent> rank);
|
|
|
|
|
|
|
|
Ref<Spell> get_required_spell() const;
|
|
|
|
void set_required_spell(const Ref<Spell> spell);
|
|
|
|
|
|
|
|
Ref<Spell> get_teaches_spell() const;
|
|
|
|
void set_teaches_spell(const Ref<Spell> spell);
|
2019-04-20 14:02:55 +02:00
|
|
|
|
2019-10-06 17:04:28 +02:00
|
|
|
Ref<Aura> get_apply_aura() const;
|
|
|
|
void set_apply_aura(Ref<Aura> aura);
|
2019-04-20 14:02:55 +02:00
|
|
|
|
|
|
|
Talent();
|
|
|
|
~Talent();
|
|
|
|
|
|
|
|
protected:
|
|
|
|
static void _bind_methods();
|
|
|
|
|
|
|
|
private:
|
2019-10-06 17:04:28 +02:00
|
|
|
Ref<Talent> _required_talent;
|
|
|
|
Ref<Spell> _required_spell;
|
|
|
|
Ref<Spell> _teaches_spell;
|
2019-04-20 14:02:55 +02:00
|
|
|
|
2019-08-13 23:58:42 +02:00
|
|
|
Ref<Aura> _aura;
|
2019-04-20 14:02:55 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|