diff options
author | Stijn Buys <ingar@osirion.org> | 2012-11-25 12:06:13 +0000 |
---|---|---|
committer | Stijn Buys <ingar@osirion.org> | 2012-11-25 12:06:13 +0000 |
commit | d8be908233fd7b85492d7a9e87f07bb207173990 (patch) | |
tree | 70d9103a867688838fc517290bb370366c69fedb /src/core/entityglobe.cc | |
parent | edc5ddce817244111b302e449c28a052f2746cc4 (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.cc | 68 |
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 |