X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=src%2Fstaticobject.h;h=6fb486193c9790fc2727c7283d959e808fe0107b;hb=5b42b5a8c26811bd7cb152cbb5ffeee77abb8d66;hp=640747e96dbe3152823d02cb0d6a16444a6582d7;hpb=a0566270d9fa075afa36a7e3e68c690b1b23ba90;p=dragonfireclient.git diff --git a/src/staticobject.h b/src/staticobject.h index 640747e96..6fb486193 100644 --- a/src/staticobject.h +++ b/src/staticobject.h @@ -17,33 +17,25 @@ with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ -#ifndef STATICOBJECT_HEADER -#define STATICOBJECT_HEADER +#pragma once #include "irrlichttypes_bloated.h" #include #include -#include +#include #include #include "debug.h" +class ServerActiveObject; + struct StaticObject { - u8 type; + u8 type = 0; v3f pos; std::string data; - StaticObject(): - type(0), - pos(0,0,0) - { - } - StaticObject(u8 type_, v3f pos_, const std::string &data_): - type(type_), - pos(pos_), - data(data_) - { - } + StaticObject() = default; + StaticObject(const ServerActiveObject *s_obj, const v3f &pos_); void serialize(std::ostream &os); void deSerialize(std::istream &is, u8 version); @@ -54,9 +46,9 @@ class StaticObjectList public: /* Inserts an object to the container. - Id must be unique or 0. + Id must be unique (active) or 0 (stored). */ - void insert(u16 id, StaticObject obj) + void insert(u16 id, const StaticObject &obj) { if(id == 0) { @@ -68,8 +60,7 @@ class StaticObjectList { dstream<<"ERROR: StaticObjectList::insert(): " <<"id already exists"< m_stored; + std::vector m_stored; std::map m_active; private: }; - -#endif -