ManaPlus
src
resources
sprite
animationdelayload.cpp
Go to the documentation of this file.
1
/*
2
* The ManaPlus Client
3
* Copyright (C) 2012-2019 The ManaPlus Developers
4
* Copyright (C) 2019-2021 Andrei Karas
5
*
6
* This file is part of The ManaPlus Client.
7
*
8
* This program is free software; you can redistribute it and/or modify
9
* it under the terms of the GNU General Public License as published by
10
* the Free Software Foundation; either version 2 of the License, or
11
* any later version.
12
*
13
* This program is distributed in the hope that it will be useful,
14
* but WITHOUT ANY WARRANTY; without even the implied warranty of
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
* GNU General Public License for more details.
17
*
18
* You should have received a copy of the GNU General Public License
19
* along with this program. If not, see <http://www.gnu.org/licenses/>.
20
*/
21
22
#include "
resources/sprite/animationdelayload.h
"
23
24
#include "
const/resources/spriteaction.h
"
25
26
#include "
resources/loaders/spritedefloader.h
"
27
28
#include "
resources/sprite/animatedsprite.h
"
29
30
#include "
debug.h
"
31
32
AnimationDelayLoad::AnimationDelayLoad
(
const
std::string &
fileName
,
33
const
int
variant,
34
AnimatedSprite
*
const
sprite) :
35
mFileName(
fileName
),
36
mVariant(variant),
37
mSprite(sprite),
38
mAction(
SpriteAction
::
STAND
)
39
{
40
}
41
42
AnimationDelayLoad::~AnimationDelayLoad
()
43
{
44
if
(
mSprite
!=
nullptr
)
45
{
46
mSprite
->
clearDelayLoad
();
47
mSprite
=
nullptr
;
48
}
49
}
50
51
void
AnimationDelayLoad::clearSprite
()
52
{
53
mSprite
=
nullptr
;
54
}
55
56
void
AnimationDelayLoad::load
()
57
{
58
if
(
mSprite
!=
nullptr
)
59
{
60
SpriteDef
*
const
s =
Loader::getSprite
(
mFileName
,
mVariant
);
61
if
(s ==
nullptr
)
62
return
;
63
mSprite
->
setSprite
(s);
64
mSprite
->
play
(
mAction
);
65
}
66
}
animatedsprite.h
animationdelayload.h
AnimatedSprite
Definition:
animatedsprite.h:37
AnimatedSprite::play
bool play(const std::string &spriteAction)
Definition:
animatedsprite.cpp:159
AnimatedSprite::setSprite
void setSprite(SpriteDef *const sprite)
Definition:
animatedsprite.h:118
AnimatedSprite::clearDelayLoad
void clearDelayLoad()
Definition:
animatedsprite.h:115
AnimationDelayLoad::clearSprite
void clearSprite()
Definition:
animationdelayload.cpp:51
AnimationDelayLoad::mFileName
std::string mFileName
Definition:
animationdelayload.h:50
AnimationDelayLoad::mVariant
int mVariant
Definition:
animationdelayload.h:51
AnimationDelayLoad::AnimationDelayLoad
AnimationDelayLoad(const std::string &fileName, const int variant, AnimatedSprite *const sprite)
Definition:
animationdelayload.cpp:32
AnimationDelayLoad::mAction
std::string mAction
Definition:
animationdelayload.h:53
AnimationDelayLoad::mSprite
AnimatedSprite * mSprite
Definition:
animationdelayload.h:52
AnimationDelayLoad::load
void load()
Definition:
animationdelayload.cpp:56
AnimationDelayLoad::~AnimationDelayLoad
~AnimationDelayLoad()
Definition:
animationdelayload.cpp:42
SpriteDef
Definition:
spritedef.h:42
debug.h
AttackType::STAND
@ STAND
Definition:
attacktype.h:34
Loader::getSprite
SpriteDef * getSprite(const std::string &path, const int variant)
Definition:
spritedefloader.cpp:58
SpriteAction
Definition:
spriteaction.h:39
spriteaction.h
spritedefloader.h
fileName
std::string fileName
Definition:
testmain.cpp:39
Generated on Wed Mar 17 2021 19:19:10 for ManaPlus by
1.9.1