Linux multi-monitor fullscreen support
[ryzomcore.git] / ryzom / client / src / client_sheets / village_sheet.h
blob7cddc6f1245c2356cc7f26c1b991f2c84ed008f2
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_VILLAGE_SHEET_H
20 #define RY_VILLAGE_SHEET_H
23 // ig in a village
24 struct CVillageIG
26 std::string IgName;
27 std::string ParentName;
28 void serial(NLMISC::IStream &f)
30 f.serial(IgName, ParentName);
32 /// Build the sheet from an external script.
33 void build(const NLGEORGES::UFormElm &item);
36 /** Sheet of a village
37 * NB : it doesn't derives from CEntitySheet, because its instances are aggragated in a CContinentSheet
39 * \author Nicolas Vizerie
40 * \author Nevrax France
41 * \date 2003
44 struct CVillageSheet
46 std::string Zone;
47 float Altitude;
48 float ForceLoadDist;
49 float LoadDist;
50 float UnloadDist;
51 float CenterX;
52 float CenterY;
53 uint32 Width;
54 uint32 Height;
55 float Rotation;
56 std::string Name;
57 std::vector<CVillageIG> IGs;
59 // ctor
60 CVillageSheet();
62 /// Build the sheet from an external script.
63 void build(const NLGEORGES::UFormElm &item);
65 /// Serialize character sheet into binary data file.
66 void serial(NLMISC::IStream &f);
70 #endif