1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-11-25 22:42:04 +02:00

ManageBackpackArtifacts

This commit is contained in:
SoundSSGood
2024-03-06 15:16:35 +02:00
parent d143f53d7e
commit b1f52eec41
18 changed files with 110 additions and 33 deletions

View File

@@ -148,6 +148,27 @@ void ApplyGhNetPackVisitor::visitBulkExchangeArtifacts(BulkExchangeArtifacts & p
result = gh.bulkMoveArtifacts(pack.srcHero, pack.dstHero, pack.swap, pack.equipped, pack.backpack);
}
void ApplyGhNetPackVisitor::visitManageBackpackArtifacts(ManageBackpackArtifacts & pack)
{
if(gh.getPlayerRelations(pack.player, gh.getOwner(pack.artHolder)) != PlayerRelations::ENEMIES)
{
if(pack.cmd == ManageBackpackArtifacts::ManageCmd::SCROLL_LEFT)
result = gh.scrollBackpackArtifacts(pack.artHolder, true);
else if(pack.cmd == ManageBackpackArtifacts::ManageCmd::SCROLL_RIGHT)
result = gh.scrollBackpackArtifacts(pack.artHolder, false);
else
{
gh.throwIfWrongOwner(&pack, pack.artHolder);
if(pack.cmd == ManageBackpackArtifacts::ManageCmd::SORT_BY_CLASS)
result = true;
else if(pack.cmd == ManageBackpackArtifacts::ManageCmd::SORT_BY_COST)
result = true;
else if(pack.cmd == ManageBackpackArtifacts::ManageCmd::SORT_BY_SLOT)
result = true;
}
}
}
void ApplyGhNetPackVisitor::visitAssembleArtifacts(AssembleArtifacts & pack)
{
gh.throwIfWrongOwner(&pack, pack.heroID);