aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/activeobject.h3
-rw-r--r--src/serverobject.cpp5
2 files changed, 7 insertions, 1 deletions
diff --git a/src/activeobject.h b/src/activeobject.h
index 76893280a..48f078d3f 100644
--- a/src/activeobject.h
+++ b/src/activeobject.h
@@ -26,12 +26,13 @@ with this program; if not, write to the Free Software Foundation, Inc.,
enum ActiveObjectType {
ACTIVEOBJECT_TYPE_INVALID = 0,
ACTIVEOBJECT_TYPE_TEST = 1,
+// Deprecated stuff
ACTIVEOBJECT_TYPE_ITEM = 2,
- // Compat layer, migrating objects from 0.3 to 0.4+
ACTIVEOBJECT_TYPE_RAT = 3,
ACTIVEOBJECT_TYPE_OERKKI1 = 4,
ACTIVEOBJECT_TYPE_FIREFLY = 5,
ACTIVEOBJECT_TYPE_MOBV2 = 6,
+// End deprecated stuff
ACTIVEOBJECT_TYPE_LUAENTITY = 7,
// Special type, not stored as a static object
ACTIVEOBJECT_TYPE_PLAYER = 100,
diff --git a/src/serverobject.cpp b/src/serverobject.cpp
index 98d82550f..9cf817859 100644
--- a/src/serverobject.cpp
+++ b/src/serverobject.cpp
@@ -46,6 +46,11 @@ ServerActiveObject* ServerActiveObject::create(ActiveObjectType type,
std::map<u16, Factory>::iterator n;
n = m_types.find(type);
if(n == m_types.end()) {
+ // These are 0.3 entity types, return without error.
+ if (ACTIVEOBJECT_TYPE_ITEM <= type && type <= ACTIVEOBJECT_TYPE_MOBV2) {
+ return NULL;
+ }
+
// If factory is not found, just return.
dstream<<"WARNING: ServerActiveObject: No factory for type="
<<type<<std::endl;