initial commit, lordsawar source, slightly modified
[lordsawar] / src / SightMap.cpp
1 // Copyright (C) 2008 Ben Asselstine
2 //
3 //  This program is free software; you can redistribute it and/or modify
4 //  it under the terms of the GNU General Public License as published by
5 //  the Free Software Foundation; either version 3 of the License, or
6 //  (at your option) any later version.
7 //
8 //  This program is distributed in the hope that it will be useful,
9 //  but WITHOUT ANY WARRANTY; without even the implied warranty of
10 //  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
11 //  GNU Library General Public License for more details.
12 //
13 //  You should have received a copy of the GNU General Public License
14 //  along with this program; if not, write to the Free Software
15 //  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 
16 //  02110-1301, USA.
17
18 #include <sstream>
19 #include "SightMap.h"
20
21 std::string SightMap::d_tag = "sightmap";
22 using namespace std;
23
24 SightMap::SightMap(XML_Helper* helper)
25         :Renamable(helper)
26 {
27     helper->getData(x, "x");
28     helper->getData(x, "y");
29     helper->getData(w, "width");
30     helper->getData(h, "height");
31 }
32
33 SightMap::SightMap(std::string name, Vector<int> pos, guint32 height, guint32 width)
34 :Rectangle(pos, Vector<int>(width, height)), Renamable(name)
35 {
36 }
37
38 SightMap::SightMap(const SightMap& orig)
39 :Rectangle(orig), Renamable(orig)
40 {
41 }
42
43 SightMap::~SightMap()
44 {
45 }
46
47 bool SightMap::save(XML_Helper* helper) const
48 {
49   bool retval = true;
50
51   retval &= helper->openTag(SightMap::d_tag);
52   retval &= helper->saveData("name", getName());
53   retval &= helper->saveData("x", x);
54   retval &= helper->saveData("y", y);
55   retval &= helper->saveData("width", w);
56   retval &= helper->saveData("height", h);
57   retval &= helper->closeTag();
58
59   return retval;
60 }