[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Pingus-CVS] CVS: Games/Pingus/src/worldobjsdata prefab_obj_data.cxx,1.
From: |
grumbel |
Subject: |
[Pingus-CVS] CVS: Games/Pingus/src/worldobjsdata prefab_obj_data.cxx,1.10,1.11 prefab_obj_data.hxx,1.7,1.8 |
Date: |
5 Mar 2003 19:55:16 -0000 |
Update of /usr/local/cvsroot/Games/Pingus/src/worldobjsdata
In directory dark:/tmp/cvs-serv18052/worldobjsdata
Modified Files:
prefab_obj_data.cxx prefab_obj_data.hxx
Log Message:
fixed prefab support a bit, still broken, but at least loading works kind of
Index: prefab_obj_data.cxx
===================================================================
RCS file:
/usr/local/cvsroot/Games/Pingus/src/worldobjsdata/prefab_obj_data.cxx,v
retrieving revision 1.10
retrieving revision 1.11
diff -u -d -r1.10 -r1.11
--- prefab_obj_data.cxx 5 Mar 2003 19:13:59 -0000 1.10
+++ prefab_obj_data.cxx 5 Mar 2003 19:55:14 -0000 1.11
@@ -21,31 +21,49 @@
#include "../xml_file_reader.hxx"
#include "../xml_helper.hxx"
#include "../prefab.hxx"
+#include "../pingus_error.hxx"
#include "prefab_obj_data.hxx"
namespace WorldObjsData {
PrefabObjData::PrefabObjData (xmlDocPtr doc, xmlNodePtr cur)
{
+ std::cout << "PrefabObjData::PrefabObjData (xmlDocPtr doc, xmlNodePtr cur)"
<< std::endl;
XMLFileReader reader(doc, cur);
reader.read_vector("position", pos);
reader.read_string("type", type);
// try to load the data for this prefab-uid
data = Prefab::create (type);
+ if (data == 0)
+ {
+ PingusError::raise("PrefabObjData: Couldn't create prefab '" + type +
"'");
+ }
}
void
-PrefabObjData::insert_WorldObjs ()
+PrefabObjData::write_xml (std::ostream& xml)
{
- // FIXME:
+ xml << "<prefab>\n"
+ << " <type>" << type << "</type>\n";
+ XMLhelper::write_vector_xml(xml, pos);
+ xml << "</prefab>\n" << std::endl;
+}
+
+void
+PrefabObjData::insert_WorldObjs (World* world)
+{
+ std::cout << "PrefabObjData::insert_WorldObjs (World* world)" << std::endl;
+ data->get_data()->insert_WorldObjs(world);
}
void
PrefabObjData::insert_EditorObjs (EditorNS::EditorObjMgr* obj_mgr)
{
- UNUSED_ARG(obj_mgr);
- // FIXME:
+ std::cout << "PrefabObjData::insert_EditorObjs (EditorNS::EditorObjMgr*
obj_mgr)" << std::endl;
+
+ // FIXME: Wrong
+ data->get_data()->insert_EditorObjs(obj_mgr);
}
} // namespace WorldObjsData
Index: prefab_obj_data.hxx
===================================================================
RCS file:
/usr/local/cvsroot/Games/Pingus/src/worldobjsdata/prefab_obj_data.hxx,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- prefab_obj_data.hxx 5 Mar 2003 19:13:59 -0000 1.7
+++ prefab_obj_data.hxx 5 Mar 2003 19:55:14 -0000 1.8
@@ -56,11 +56,12 @@
/** The PrefabData is flattened to a WorldObjGroup, the World
doesn't need to keep track of prefabs */
- void insert_WorldObjs ();
+ void insert_WorldObjs (World*);
/** Create a EditorObjs::PrefabObj from the prefab data */
void insert_EditorObjs (EditorNS::EditorObjMgr*);
+ void write_xml (std::ostream& xml);
private:
PrefabObjData (const PrefabObjData&);
PrefabObjData& operator= (const PrefabObjData&);
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Pingus-CVS] CVS: Games/Pingus/src/worldobjsdata prefab_obj_data.cxx,1.10,1.11 prefab_obj_data.hxx,1.7,1.8,
grumbel <=
- Prev by Date:
[Pingus-CVS] CVS: Games/Pingus/src/worldobjs Makefile.am,1.17,1.18
- Next by Date:
[Pingus-CVS] CVS: Games/Pingus/src prefab.cxx,1.5,1.6 worldobj_data_factory.cxx,1.31,1.32 xml_plf.cxx,1.34,1.35
- Previous by thread:
[Pingus-CVS] CVS: Games/Pingus/src/worldobjs Makefile.am,1.17,1.18
- Next by thread:
[Pingus-CVS] CVS: Games/Pingus/src prefab.cxx,1.5,1.6 worldobj_data_factory.cxx,1.31,1.32 xml_plf.cxx,1.34,1.35
- Index(es):