Resolve "Toggle Free Look with Hotkey"
[ryzomcore.git] / ryzom / client / src / client_sheets / pact_sheet.h
blobb15b2cfe84398abf13d4155325fd908f5da9998d
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 RY_PACT_SHEET_H
20 #define RY_PACT_SHEET_H
22 #include "entity_sheet.h"
24 /// A pact, read from a .death_impact sheet
25 class CPactSheet : public CEntitySheet
27 public:
28 struct SPact
30 uint16 LoseHitPointsLevel;
31 uint16 LoseStaminaLevel;
32 uint16 LoseSapLevel;
33 uint16 LoseSkillsLevel;
34 float Duration;
35 std::string Name;
37 void serial(NLMISC::IStream &f)
39 f.serial( LoseHitPointsLevel);
40 f.serial( LoseStaminaLevel );
41 f.serial( LoseSapLevel );
42 f.serial( LoseSkillsLevel );
43 f.serial( Duration );
44 f.serial( Name );
47 public:
48 std::vector< SPact > PactLose;
49 std::string Icon;
50 std::string IconBackground;
51 public:
52 ///\name Object
53 //@{
54 /// Build the sheet from an external script.
55 virtual void build(const NLGEORGES::UFormElm &item);
56 /// Serialize plant sheet into binary data file.
57 virtual void serial(NLMISC::IStream &f);
58 //@}
61 #endif