mirror of
https://github.com/vcmi/vcmi.git
synced 2025-11-27 22:49:25 +02:00
Register templates for new objects from mods
This commit is contained in:
@@ -108,10 +108,6 @@ std::vector<JsonNode> CObjectClassesHandler::loadLegacyData()
|
|||||||
auto totalNumber = static_cast<size_t>(parser.readNumber()); // first line contains number of objects to read and nothing else
|
auto totalNumber = static_cast<size_t>(parser.readNumber()); // first line contains number of objects to read and nothing else
|
||||||
parser.endLine();
|
parser.endLine();
|
||||||
|
|
||||||
//std::map<TerrainId, std::map<MapObjectID, std::map<MapObjectSubID, ObstacleSet>>> obstacleSets;
|
|
||||||
|
|
||||||
// TODO: Create map defName -> tmpl
|
|
||||||
|
|
||||||
for (size_t i = 0; i < totalNumber; i++)
|
for (size_t i = 0; i < totalNumber; i++)
|
||||||
{
|
{
|
||||||
auto tmpl = std::make_shared<ObjectTemplate>();
|
auto tmpl = std::make_shared<ObjectTemplate>();
|
||||||
@@ -224,6 +220,12 @@ TObjectTypeHandler CObjectClassesHandler::loadSubObjectFromJson(const std::strin
|
|||||||
createdObject->subtype = index;
|
createdObject->subtype = index;
|
||||||
createdObject->init(entry);
|
createdObject->init(entry);
|
||||||
|
|
||||||
|
for (auto & templ : createdObject->getTemplates())
|
||||||
|
{
|
||||||
|
// Register templates for new objects
|
||||||
|
VLC->biomeHandler->addTemplate(scope, templ->stringID, templ);
|
||||||
|
}
|
||||||
|
|
||||||
auto range = legacyTemplates.equal_range(std::make_pair(obj->id, index));
|
auto range = legacyTemplates.equal_range(std::make_pair(obj->id, index));
|
||||||
for (auto & templ : boost::make_iterator_range(range.first, range.second))
|
for (auto & templ : boost::make_iterator_range(range.first, range.second))
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user