Mana
Loading...
Searching...
No Matches
animationparticle.cpp
Go to the documentation of this file.
1/*
2 * The Mana Client
3 * Copyright (C) 2006-2009 The Mana World Development Team
4 * Copyright (C) 2009-2012 The Mana Developers
5 *
6 * This file is part of The Mana 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 "animationparticle.h"
23
24#include "simpleanimation.h"
25
26#include "utils/time.h"
27
29 ImageParticle(map, nullptr),
30 mAnimation(std::move(animation))
31{
32}
33
35 const std::string &dyePalettes):
36 ImageParticle(map, nullptr),
37 mAnimation(animationNode, dyePalettes)
38{
39}
40
42{
43 // Prevent ImageParticle from decreasing the reference count of the image
44 mImage = nullptr;
45}
46
48{
49 mAnimation.update(MILLISECONDS_IN_A_TICK);
51
52 return Particle::update();
53}
SimpleAnimation mAnimation
Used animation for this particle.
bool update() override
Updates particle position, returns false when the particle should be deleted.
AnimationParticle(Map *map, Animation animation)
An animation consists of several frames, each with their own delay and offset.
Definition animation.h:47
A particle that uses an image for its visualization.
Image * mImage
The image used for this particle.
A tile map.
Definition map.h:147
virtual bool update()
Updates particle position, returns false when the particle should be deleted.
Definition particle.cpp:85
Image * getCurrentImage() const
void update(int dt)