mirror of
https://github.com/vcmi/vcmi.git
synced 2025-12-22 00:27:58 +02:00
CMap removed from CArtifactSet level
This commit is contained in:
@@ -519,10 +519,26 @@ void CMap::checkForObjectives()
|
||||
}
|
||||
}
|
||||
|
||||
void CMap::addNewArtifactInstance(CArtifactSet & artSet)
|
||||
{
|
||||
for(const auto & [slot, slotInfo] : artSet.artifactsWorn)
|
||||
{
|
||||
if(!slotInfo.locked && slotInfo.getArt())
|
||||
addNewArtifactInstance(slotInfo.artifact);
|
||||
}
|
||||
for(const auto & slotInfo : artSet.artifactsInBackpack)
|
||||
addNewArtifactInstance(slotInfo.artifact);
|
||||
}
|
||||
|
||||
void CMap::addNewArtifactInstance(ConstTransitivePtr<CArtifactInstance> art)
|
||||
{
|
||||
assert(art);
|
||||
assert(art->getId() == -1);
|
||||
art->setId(static_cast<ArtifactInstanceID>(artInstances.size()));
|
||||
artInstances.emplace_back(art);
|
||||
|
||||
for(const auto & partInfo : art->getPartsInfo())
|
||||
addNewArtifactInstance(partInfo.art);
|
||||
}
|
||||
|
||||
void CMap::eraseArtifactInstance(CArtifactInstance * art)
|
||||
|
||||
Reference in New Issue
Block a user