summaryrefslogtreecommitdiff
path: root/src/gui/windows
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/windows')
-rw-r--r--src/gui/windows/skilldialog.cpp15
-rw-r--r--src/gui/windows/skilldialog.h2
2 files changed, 17 insertions, 0 deletions
diff --git a/src/gui/windows/skilldialog.cpp b/src/gui/windows/skilldialog.cpp
index 07a60b594..073cf11bd 100644
--- a/src/gui/windows/skilldialog.cpp
+++ b/src/gui/windows/skilldialog.cpp
@@ -48,6 +48,7 @@
#include "utils/dtor.h"
#include "utils/gettext.h"
+#include "utils/timer.h"
#include "resources/beingcommon.h"
#include "resources/skillconsts.h"
@@ -424,6 +425,20 @@ SkillInfo* SkillDialog::getSkillByItem(const int itemId) const
return nullptr;
}
+void SkillDialog::setSkillDuration(const int id, const int duration)
+{
+ SkillMap::const_iterator it = mSkills.find(id);
+ if (it != mSkills.end())
+ {
+ SkillInfo *const info = (*it).second;
+ if (info)
+ {
+ info->duration = duration / 10;
+ info->durationTime = tick_time;
+ }
+ }
+}
+
void SkillDialog::widgetResized(const Event &event)
{
Window::widgetResized(event);
diff --git a/src/gui/windows/skilldialog.h b/src/gui/windows/skilldialog.h
index 17641cd0f..b01adcabd 100644
--- a/src/gui/windows/skilldialog.h
+++ b/src/gui/windows/skilldialog.h
@@ -95,6 +95,8 @@ class SkillDialog final : public Window,
SkillInfo* getSkillByItem(const int itemId) const A_WARN_UNUSED;
+ void setSkillDuration(const int id, const int duration);
+
bool hasSkills() const A_WARN_UNUSED
{ return !mSkills.empty(); }