mirror of
https://github.com/vcmi/vcmi.git
synced 2024-11-28 08:48:48 +02:00
CArtifactInstance::putAt, CArtifactInstance::removeFrom, CArtifactInstance::move interface unified. Small optimization.
This commit is contained in:
parent
20d86edbd1
commit
8751d9ab8b
@ -849,12 +849,12 @@ bool CArtifactInstance::canBePutAt(const ArtifactLocation & al, bool assumeDestR
|
|||||||
return artType->canBePutAt(al.getHolderArtSet(), al.slot, assumeDestRemoved);
|
return artType->canBePutAt(al.getHolderArtSet(), al.slot, assumeDestRemoved);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CArtifactInstance::putAt(ArtifactLocation al)
|
void CArtifactInstance::putAt(const ArtifactLocation & al)
|
||||||
{
|
{
|
||||||
al.getHolderArtSet()->putArtifact(al.slot, this);
|
al.getHolderArtSet()->putArtifact(al.slot, this);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CArtifactInstance::removeFrom(ArtifactLocation al)
|
void CArtifactInstance::removeFrom(const ArtifactLocation & al)
|
||||||
{
|
{
|
||||||
al.getHolderArtSet()->removeArtifact(al.slot);
|
al.getHolderArtSet()->removeArtifact(al.slot);
|
||||||
}
|
}
|
||||||
@ -917,7 +917,7 @@ void CCombinedArtifactInstance::addAsConstituent(CArtifactInstance * art, const
|
|||||||
attachTo(*art);
|
attachTo(*art);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CCombinedArtifactInstance::removeFrom(ArtifactLocation al)
|
void CCombinedArtifactInstance::removeFrom(const ArtifactLocation & al)
|
||||||
{
|
{
|
||||||
CArtifactInstance::removeFrom(al);
|
CArtifactInstance::removeFrom(al);
|
||||||
for(auto & part : constituentsInfo)
|
for(auto & part : constituentsInfo)
|
||||||
|
@ -162,8 +162,8 @@ public:
|
|||||||
/// of itself, additionally truth is returned for constituents of combined arts
|
/// of itself, additionally truth is returned for constituents of combined arts
|
||||||
virtual bool isPart(const CArtifactInstance *supposedPart) const;
|
virtual bool isPart(const CArtifactInstance *supposedPart) const;
|
||||||
|
|
||||||
virtual void putAt(ArtifactLocation al);
|
virtual void putAt(const ArtifactLocation & al);
|
||||||
virtual void removeFrom(ArtifactLocation al);
|
virtual void removeFrom(const ArtifactLocation & al);
|
||||||
virtual void move(const ArtifactLocation & src, const ArtifactLocation & dst);
|
virtual void move(const ArtifactLocation & src, const ArtifactLocation & dst);
|
||||||
|
|
||||||
template <typename Handler> void serialize(Handler &h, const int version)
|
template <typename Handler> void serialize(Handler &h, const int version)
|
||||||
@ -198,7 +198,7 @@ public:
|
|||||||
bool isPart(const CArtifactInstance *supposedPart) const override;
|
bool isPart(const CArtifactInstance *supposedPart) const override;
|
||||||
void createConstituents();
|
void createConstituents();
|
||||||
void addAsConstituent(CArtifactInstance * art, const ArtifactPosition & slot);
|
void addAsConstituent(CArtifactInstance * art, const ArtifactPosition & slot);
|
||||||
void removeFrom(ArtifactLocation al) override;
|
void removeFrom(const ArtifactLocation & al) override;
|
||||||
|
|
||||||
CCombinedArtifactInstance() = default;
|
CCombinedArtifactInstance() = default;
|
||||||
|
|
||||||
|
@ -192,7 +192,7 @@ struct ArtifactLocation
|
|||||||
DLL_LINKAGE PlayerColor owningPlayer() const;
|
DLL_LINKAGE PlayerColor owningPlayer() const;
|
||||||
DLL_LINKAGE CArtifactSet *getHolderArtSet();
|
DLL_LINKAGE CArtifactSet *getHolderArtSet();
|
||||||
DLL_LINKAGE CBonusSystemNode *getHolderNode();
|
DLL_LINKAGE CBonusSystemNode *getHolderNode();
|
||||||
DLL_LINKAGE const CArtifactSet *getHolderArtSet() const;
|
DLL_LINKAGE CArtifactSet *getHolderArtSet() const;
|
||||||
DLL_LINKAGE const CBonusSystemNode *getHolderNode() const;
|
DLL_LINKAGE const CBonusSystemNode *getHolderNode() const;
|
||||||
|
|
||||||
DLL_LINKAGE const CArtifactInstance *getArt() const;
|
DLL_LINKAGE const CArtifactInstance *getArt() const;
|
||||||
|
@ -1620,7 +1620,7 @@ const CArtifactInstance *ArtifactLocation::getArt() const
|
|||||||
return nullptr;
|
return nullptr;
|
||||||
}
|
}
|
||||||
|
|
||||||
const CArtifactSet * ArtifactLocation::getHolderArtSet() const
|
CArtifactSet * ArtifactLocation::getHolderArtSet() const
|
||||||
{
|
{
|
||||||
auto * t = const_cast<ArtifactLocation *>(this);
|
auto * t = const_cast<ArtifactLocation *>(this);
|
||||||
return t->getHolderArtSet();
|
return t->getHolderArtSet();
|
||||||
|
Loading…
Reference in New Issue
Block a user