Linux multi-monitor fullscreen support
[ryzomcore.git] / ryzom / client / src / projectile_desc.h
blobaca4805d2d35782db77f77b6711ae36d0639dd23
1 // Ryzom - MMORPG Framework <http://dev.ryzom.com/projects/ryzom/>
2 // Copyright (C) 2010 Winch Gate Property Limited
3 //
4 // This program is free software: you can redistribute it and/or modify
5 // it under the terms of the GNU Affero General Public License as
6 // published by the Free Software Foundation, either version 3 of the
7 // License, or (at your option) any later version.
8 //
9 // This program is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 // GNU Affero General Public License for more details.
14 // You should have received a copy of the GNU Affero General Public License
15 // along with this program. If not, see <http://www.gnu.org/licenses/>.
19 #ifndef CL_PROJECTILE_DESC_H
20 #define CL_PROJECTILE_DESC_H
24 /** Description of a projectile
26 * \author Nicolas Vizerie
27 * \author Nevrax France
28 * \date 2003
31 class CProjectileDesc
33 public:
34 CAnimationFXSet Projectile;
35 CFXStickMode ProjectileImpact;
36 float ProjectileDelay; // delay before the projectile is thrown (may not be thrown at start of anim)
37 CAnimationFXSet Impact;
38 public:
39 /// Build the fx from an external script.
40 void build(const NLGEORGES::UFormElm &item);
41 /// Serialize a CAnimationFXSheet.
42 void serial(NLMISC::IStream &f);
43 // build tracks for fxs, loading animation as necessary using the given animation set
44 void buildTrack(NL3D::UAnimationSet *as);
50 #endif