Explorar o código

Compatibility hack for mods with old banks format

Ivan Savenko hai 1 ano
pai
achega
9ee2ee45bc
Modificáronse 1 ficheiros con 5 adicións e 0 borrados
  1. 5 0
      lib/mapObjectConstructors/CObjectClassesHandler.cpp

+ 5 - 0
lib/mapObjectConstructors/CObjectClassesHandler.cpp

@@ -203,6 +203,11 @@ TObjectTypeHandler CObjectClassesHandler::loadSubObjectFromJson(const std::strin
 		assert(handlerConstructors.count(handler) != 0);
 	}
 
+	// Compatibility with 1.5 mods for 1.6. To be removed in 1.7
+	// Detect banks that use old format and load them using old bank hander
+	if (baseObject->id == Obj::CREATURE_BANK && entry.Struct().count("levels") && !entry.Struct().count("rewards"))
+		handler = "bank";
+
 	auto createdObject = handlerConstructors.at(handler)();
 
 	createdObject->modScope = scope;