Project::OSiRiON - Git repositories
Project::OSiRiON
News . About . Screenshots . Downloads . Forum . Wiki . Tracker . Git
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/entity.h')
-rw-r--r--src/core/entity.h25
1 files changed, 24 insertions, 1 deletions
diff --git a/src/core/entity.h b/src/core/entity.h
index 54479be..20242a9 100644
--- a/src/core/entity.h
+++ b/src/core/entity.h
@@ -32,7 +32,7 @@ public:
enum Flags {Static=1, Solid=2, Bright=4};
/// Entity type constants
- enum Type {Default=0, Dynamic=1, Controlable=2};
+ enum Type {Default=0, Dynamic=1, Controlable=2, Globe=3};
/// Entity shape constants
enum Shape {Diamond=0, Sphere=1, Cube=2, Axis=3};
@@ -276,6 +276,29 @@ public:
float target_direction;
};
+/// a Globe entity
+class EntityGlobe : public Entity
+{
+public:
+ EntityGlobe(unsigned int flags = 0);
+ EntityGlobe(std::istream & is);
+
+ ~EntityGlobe();
+
+ virtual void serialize(std::ostream & os) const;
+
+
+/*----- inspectors ------------------------------------------------ */
+
+ /// core type id
+ virtual inline unsigned int type() const { return Entity::Globe; }
+
+ std::string entity_texture;
+
+ /// client side, texture id
+ unsigned int entity_texture_id;
+};
+
}
#endif // __INCLUDED_CORE_ENTITY_H__