Project::OSiRiON - Git repositories
Project::OSiRiON
News . About . Screenshots . Downloads . Forum . Wiki . Tracker . Git
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStijn Buys <ingar@osirion.org>2012-11-25 12:06:13 +0000
committerStijn Buys <ingar@osirion.org>2012-11-25 12:06:13 +0000
commitd8be908233fd7b85492d7a9e87f07bb207173990 (patch)
tree70d9103a867688838fc517290bb370366c69fedb /src/core/entityglobe.cc
parentedc5ddce817244111b302e449c28a052f2746cc4 (diff)
Moved core::EntityGlobe into a separate file,
added various methods to core::Item and core::Slot, added r_slots cvar to draw entity slots and docks, added game methods for mounting and umounting of weapons, added playerlist to chat window.
Diffstat (limited to 'src/core/entityglobe.cc')
-rw-r--r--src/core/entityglobe.cc68
1 files changed, 68 insertions, 0 deletions
diff --git a/src/core/entityglobe.cc b/src/core/entityglobe.cc
new file mode 100644
index 0000000..c27e05c
--- /dev/null
+++ b/src/core/entityglobe.cc
@@ -0,0 +1,68 @@
+/*
+ core/entityglobe.cc
+ This file is part of the Osirion project and is distributed under
+ the terms of the GNU General Public License version 2.
+*/
+
+#include <vector>
+#include <iomanip>
+#include <cstring>
+
+#include "core/entityglobe.h"
+
+namespace core
+{
+
+/*----- EntityGlobe ------------------------------------------------ */
+
+EntityGlobe::EntityGlobe() : Entity()
+{
+ entity_texture_id = 0;
+ entity_corona_id = 0;
+ entity_rotationspeed = 0;
+ set_shape(Sphere);
+}
+
+EntityGlobe::EntityGlobe(std::istream & is) : Entity(is)
+{
+ entity_texture_id = 0;
+ entity_corona_id = 0;
+ entity_rotationspeed = 0;
+ set_shape(Sphere);
+}
+
+EntityGlobe::~EntityGlobe()
+{
+}
+
+void EntityGlobe::serialize_server_create(std::ostream & os) const
+{
+ Entity::serialize_server_create(os);
+ os << entity_rotationspeed << " \"" << texturename() << "\" \"" << coronaname() << "\" ";
+}
+
+void EntityGlobe::receive_server_create(std::istream &is)
+{
+ Entity::receive_server_create(is);
+
+ is >> entity_rotationspeed;
+
+ std::string n;
+ char c;
+
+ // read texture name
+ while ((is.get(c)) && (c != '"'));
+ while ((is.get(c)) && (c != '"'))
+ n += c;
+
+ entity_texturename.assign(n);
+
+ // read corona name
+ n.clear();
+ while ((is.get(c)) && (c != '"'));
+ while ((is.get(c)) && (c != '"'))
+ n += c;
+ entity_coronaname.assign(n);
+}
+
+} // namespace core