ManaPlus
attack.h
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 
24 #ifndef RESOURCES_ATTACK_H
25 #define RESOURCES_ATTACK_H
26 
27 #include "resources/missileinfo.h"
28 
29 struct Attack final
30 {
31  std::string mAction;
32  std::string mSkyAction;
33  std::string mWaterAction;
34  std::string mRideAction;
35  int mEffectId;
40 
41  Attack(const std::string &action,
42  const std::string &skyAction,
43  const std::string &waterAction,
44  const std::string &rideAction,
45  const int effectId,
46  const int hitEffectId,
47  const int criticalHitEffectId,
48  const int missEffectId,
49  const std::string &missileParticle,
50  const float missileZ,
51  const float missileSpeed,
52  const float missileDieDistance,
53  const int missileLifeTime) :
54  mAction(action),
55  mSkyAction(skyAction),
56  mWaterAction(waterAction),
57  mRideAction(rideAction),
58  mEffectId(effectId),
59  mHitEffectId(hitEffectId),
60  mCriticalHitEffectId(criticalHitEffectId),
61  mMissEffectId(missEffectId),
62  mMissile()
63  {
64  mMissile.particle = missileParticle;
65  mMissile.z = missileZ;
66  mMissile.speed = missileSpeed;
67  mMissile.dieDistance = missileDieDistance;
68  mMissile.lifeTime = missileLifeTime;
69  }
70 
72 };
73 
74 #endif // RESOURCES_ATTACK_H
#define final
Definition: localconsts.h:46
#define A_DELETE_COPY(func)
Definition: localconsts.h:53
Definition: attack.h:30
int mMissEffectId
Definition: attack.h:38
MissileInfo mMissile
Definition: attack.h:39
std::string mRideAction
Definition: attack.h:34
std::string mWaterAction
Definition: attack.h:33
int mCriticalHitEffectId
Definition: attack.h:37
int mEffectId
Definition: attack.h:35
std::string mAction
Definition: attack.h:31
Attack(const std::string &action, const std::string &skyAction, const std::string &waterAction, const std::string &rideAction, const int effectId, const int hitEffectId, const int criticalHitEffectId, const int missEffectId, const std::string &missileParticle, const float missileZ, const float missileSpeed, const float missileDieDistance, const int missileLifeTime)
Definition: attack.h:41
int mHitEffectId
Definition: attack.h:36
std::string mSkyAction
Definition: attack.h:32
std::string particle
Definition: missileinfo.h:41
float dieDistance
Definition: missileinfo.h:44
float speed
Definition: missileinfo.h:43