1
0
mirror of https://github.com/vcmi/vcmi.git synced 2024-11-30 08:57:00 +02:00
This commit is contained in:
Ivan Savenko 2013-03-29 19:15:52 +00:00
parent 8f998b009b
commit a9fe9e9e8b
2 changed files with 25 additions and 14 deletions

View File

@ -560,6 +560,11 @@ bool CArtHandler::legalArtifact(ArtifactID id)
void CArtHandler::initAllowedArtifactsList(const std::vector<bool> &allowed)
{
allowedArtifacts.clear();
treasures.clear();
minors.clear();
majors.clear();
relics.clear();
for (ArtifactID i=ArtifactID::SPELLBOOK; i<ArtifactID::ART_SELECTION; i.advance(1))
{
if (allowed[i] && legalArtifact(i))

View File

@ -6426,25 +6426,31 @@ void CGMagi::onHeroVisit(const CGHeroInstance * h) const
{
if (ID == Obj::HUT_OF_MAGI)
{
CenterView cv;
FoWChange fw;
cv.player = fw.player = h->tempOwner;
showInfoDialog(h, 61, soundBase::LIGHTHOUSE);
showInfoDialog(h,61,soundBase::LIGHTHOUSE);
fw.mode = 1;
BOOST_FOREACH(auto it, eyelist[subID])
if (!eyelist[subID].empty())
{
const CGObjectInstance *eye = cb->getObj(it);
cb->getTilesInRange (fw.tiles, eye->pos, 10, h->tempOwner, 1);
cb->sendAndApply(&fw);
cv.pos = eye->pos;
CenterView cv;
cv.player = h->tempOwner;
cv.focusTime = 2000;
FoWChange fw;
fw.player = h->tempOwner;
fw.mode = 1;
BOOST_FOREACH(auto it, eyelist[subID])
{
const CGObjectInstance *eye = cb->getObj(it);
cb->getTilesInRange (fw.tiles, eye->pos, 10, h->tempOwner, 1);
cb->sendAndApply(&fw);
cv.pos = eye->pos;
cb->sendAndApply(&cv);
}
cv.pos = h->getPosition(false);
cb->sendAndApply(&cv);
}
cv.pos = h->getPosition(false);
cb->sendAndApply(&cv);
}
else if (ID == Obj::EYE_OF_MAGI)
{