ManaPlus
skilldata.cpp
Go to the documentation of this file.
1 /*
2  * The ManaPlus Client
3  * Copyright (C) 2004-2009 The Mana World Development Team
4  * Copyright (C) 2009-2010 The Mana Developers
5  * Copyright (C) 2011-2019 The ManaPlus Developers
6  * Copyright (C) 2019-2021 Andrei Karas
7  *
8  * This file is part of The ManaPlus Client.
9  *
10  * This program is free software; you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation; either version 2 of the License, or
13  * any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU General Public License for more details.
19  *
20  * You should have received a copy of the GNU General Public License
21  * along with this program. If not, see <http://www.gnu.org/licenses/>.
22  */
23 
25 
26 #include "configuration.h"
27 
28 #include "gui/theme.h"
29 
30 #include "resources/image/image.h"
31 
33 
34 #include "debug.h"
35 
37  name(),
38  shortName(),
39  dispName(),
40  description(),
41  missile(),
42  castingMissile(),
43  invokeCmd(),
44  castingAnimation(),
45  soundHit(std::string(), 0),
46  soundMiss(std::string(), 0),
47  icon(nullptr),
48  updateEffectId(-1),
49  removeEffectId(-1),
50  hitEffectId(-1),
51  missEffectId(-1),
52  castingSrcEffectId(-1),
53  castingDstEffectId(-1),
54  castingGroundEffectId(-1),
55  srcEffectId(-1),
56  dstEffectId(-1),
57  haveIcon(false),
58  autoTab(true)
59 {
60 }
61 
63 {
64  if (icon != nullptr)
65  {
66  icon->decRef();
67  icon = nullptr;
68  }
69 }
70 
71 void SkillData::setIcon(const std::string &iconPath)
72 {
73  if (!iconPath.empty())
74  icon = Loader::getImage(iconPath);
75 
76  if (icon == nullptr)
77  {
79  paths.getStringValue("unknownItemFile"));
80  }
81 }
std::string getStringValue(const std::string &key) const
static Image * getImageFromTheme(const std::string &path)
Definition: theme.cpp:655
Configuration paths
#define nullptr
Definition: localconsts.h:45
Image * getImage(const std::string &idPath)
Definition: imageloader.cpp:86
Image * icon
Definition: skilldata.h:47
void setIcon(const std::string &iconPath)
Definition: skilldata.cpp:71