diff options
author | Andrei Karas <akaras@inbox.ru> | 2016-08-15 20:53:32 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2016-08-15 20:53:32 +0300 |
commit | f2b5d38744860360b4b592920c4732aea839ab75 (patch) | |
tree | 861f05e56f628d3fc3554ada44bfb98b1803ab01 /src/gui/popups | |
parent | e5cdd67b71b9d26d5d8a4182a64379fe8a8b4f7a (diff) | |
download | mv-f2b5d38744860360b4b592920c4732aea839ab75.tar.gz mv-f2b5d38744860360b4b592920c4732aea839ab75.tar.bz2 mv-f2b5d38744860360b4b592920c4732aea839ab75.tar.xz mv-f2b5d38744860360b4b592920c4732aea839ab75.zip |
Copy skill cast offset to shortcuts.
Also show offsets in skill popup in shortcuts.
Diffstat (limited to 'src/gui/popups')
-rw-r--r-- | src/gui/popups/skillpopup.cpp | 25 | ||||
-rw-r--r-- | src/gui/popups/skillpopup.h | 6 |
2 files changed, 23 insertions, 8 deletions
diff --git a/src/gui/popups/skillpopup.cpp b/src/gui/popups/skillpopup.cpp index fa757b844..82debd83d 100644 --- a/src/gui/popups/skillpopup.cpp +++ b/src/gui/popups/skillpopup.cpp @@ -49,7 +49,9 @@ SkillPopup::SkillPopup() : mSkillCastType(new TextBox(this)), mCastType(CastType::Default), mLastId(0U), - mLastLevel(-1) + mLastLevel(-1), + mOffsetX(0), + mOffsetY(0) { mSkillName->setFont(boldFont); mSkillName->setPosition(0, 0); @@ -95,13 +97,17 @@ SkillPopup::~SkillPopup() void SkillPopup::show(const SkillInfo *const skill, const int level, - const CastTypeT castType) + const CastTypeT castType, + const int offsetX, + const int offsetY) { if (!skill || !skill->data || (skill->id == mLastId && level == mLastLevel && - castType == mCastType)) + castType == mCastType && + offsetX == mOffsetX && + offsetY == mOffsetY)) { return; } @@ -109,6 +115,8 @@ void SkillPopup::show(const SkillInfo *const skill, mLastId = skill->id; mLastLevel = level; mCastType = castType; + mOffsetX = offsetX; + mOffsetY = offsetY; mSkillName->setCaption(skill->data->dispName); mSkillName->adjustSize(); @@ -168,12 +176,12 @@ void SkillPopup::show(const SkillInfo *const skill, castStr = _("Self position"); break; } - if (skill->customOffsetX != 0 || - skill->customOffsetY != 0) + if (offsetX != 0 || + offsetY != 0) { castStr.append(strprintf(" (%+d,%+d)", - skill->customOffsetX, - skill->customOffsetY)); + offsetX, + offsetY)); } mSkillCastType->setTextWrapped(strprintf( // TRANSLATORS: skill cast type @@ -234,4 +242,7 @@ void SkillPopup::reset() { mLastId = 0; mLastLevel = 0; + mCastType = CastType::Default; + mOffsetX = 0; + mOffsetY = 0; } diff --git a/src/gui/popups/skillpopup.h b/src/gui/popups/skillpopup.h index 95d5a4133..b4bc95500 100644 --- a/src/gui/popups/skillpopup.h +++ b/src/gui/popups/skillpopup.h @@ -58,7 +58,9 @@ class SkillPopup final : public Popup */ void show(const SkillInfo *const skill, const int level, - const CastTypeT type); + const CastTypeT type, + const int offsetX, + const int offsetY); void mouseMoved(MouseEvent &event) override final; @@ -73,6 +75,8 @@ class SkillPopup final : public Popup CastTypeT mCastType; unsigned int mLastId; int mLastLevel; + int mOffsetX; + int mOffsetY; }; extern SkillPopup *skillPopup; |