summaryrefslogtreecommitdiff
path: root/src/gui/skilldialog.h
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2012-12-16 22:03:21 +0300
committerAndrei Karas <akaras@inbox.ru>2012-12-16 22:33:53 +0300
commit4520aa5631f5dfa9d941231a11c2ba782f456dd0 (patch)
treea01027e50987230d63aaeeccc65c074c3a6dca7c /src/gui/skilldialog.h
parent99fc034012a3c97805014d578c8bb910beabfbc5 (diff)
downloadmanaplus-4520aa5631f5dfa9d941231a11c2ba782f456dd0.tar.gz
manaplus-4520aa5631f5dfa9d941231a11c2ba782f456dd0.tar.bz2
manaplus-4520aa5631f5dfa9d941231a11c2ba782f456dd0.tar.xz
manaplus-4520aa5631f5dfa9d941231a11c2ba782f456dd0.zip
Allow different skill images/names etc for each skill level.
Diffstat (limited to 'src/gui/skilldialog.h')
-rw-r--r--src/gui/skilldialog.h14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/gui/skilldialog.h b/src/gui/skilldialog.h
index e77bde935..3cfff0c84 100644
--- a/src/gui/skilldialog.h
+++ b/src/gui/skilldialog.h
@@ -55,8 +55,14 @@ struct SkillData final
SkillData();
A_DELETE_COPY(SkillData)
~SkillData();
+
+ void setIcon(const std::string &iconPath);
};
+typedef std::map<int, SkillData*> SkillDataMap;
+typedef SkillDataMap::iterator SkillDataMapIter;
+typedef SkillDataMap::const_iterator SkillDataMapCIter;
+
struct SkillInfo final
{
int level;
@@ -71,7 +77,8 @@ struct SkillInfo final
int range;
gcn::Color color;
- SkillData data;
+ SkillData *data;
+ SkillDataMap dataMap;
SkillInfo();
A_DELETE_COPY(SkillInfo)
@@ -83,10 +90,13 @@ struct SkillInfo final
const int paddingText, const int spacingText,
const int y, const int width);
- void setIcon(const std::string &iconPath);
+ SkillData *getData(const int level);
+
+ void addData(const int level, SkillData *const data);
};
typedef std::vector<SkillInfo*> SkillList;
+typedef SkillList::iterator SkillListIter;
/**
* The skill dialog.