2019-04-20 14:02:55 +02:00
|
|
|
#ifndef CHARACTER_SPEC_H
|
|
|
|
#define CHARACTER_SPEC_H
|
|
|
|
|
|
|
|
#include "core/resource.h"
|
|
|
|
#include "core/ustring.h"
|
2019-09-09 01:48:14 +02:00
|
|
|
#include "core/vector.h"
|
2019-04-20 14:02:55 +02:00
|
|
|
|
|
|
|
#include "talent_row_data.h"
|
|
|
|
|
|
|
|
class TalentRowData;
|
|
|
|
class Talent;
|
|
|
|
|
|
|
|
class CharacterSpec : public Resource {
|
|
|
|
GDCLASS(CharacterSpec, Resource);
|
|
|
|
|
|
|
|
public:
|
|
|
|
int get_spec_id();
|
|
|
|
void set_spec_id(int value);
|
|
|
|
String get_spec_name();
|
|
|
|
void set_spec_name(String value);
|
|
|
|
|
2019-09-09 01:48:14 +02:00
|
|
|
int get_num_talent_rows();
|
|
|
|
void set_num_talent_rows(int value);
|
|
|
|
|
2019-04-20 14:02:55 +02:00
|
|
|
Ref<TalentRowData> get_talent_row(int index) const;
|
2019-08-13 23:58:42 +02:00
|
|
|
void set_talent_row(const int index, const Ref<TalentRowData> row);
|
2019-04-20 14:02:55 +02:00
|
|
|
|
2019-09-09 01:48:14 +02:00
|
|
|
Vector<Variant> get_talent_rows();
|
|
|
|
void set_talent_rows(const Vector<Variant> &auras);
|
|
|
|
|
2019-10-06 16:47:03 +02:00
|
|
|
Ref<Talent> get_talent(const int row_index, const int culomn, const int rank) const;
|
2019-04-20 14:02:55 +02:00
|
|
|
|
|
|
|
CharacterSpec();
|
|
|
|
~CharacterSpec();
|
|
|
|
|
2019-08-13 23:58:42 +02:00
|
|
|
protected:
|
|
|
|
static void _bind_methods();
|
|
|
|
|
|
|
|
private:
|
2019-04-20 14:02:55 +02:00
|
|
|
int _spec_id;
|
|
|
|
String _spec_name;
|
2019-09-09 01:48:14 +02:00
|
|
|
Vector<Ref<TalentRowData> > _rows;
|
2019-04-20 14:02:55 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|