mirror of
https://github.com/vcmi/vcmi.git
synced 2025-04-15 11:46:56 +02:00
parent
c00d4bf905
commit
82faf7538e
@ -70,8 +70,8 @@ CMenuScreen::CMenuScreen( EState which )
|
|||||||
buttons[1] = new AdventureMapButton("", CGI->generaltexth->zelp[4].second, bind(&CMenuScreen::moveTo, this, ref(CGP->scrs[loadGame])), 532, 132, "ZMENULG.DEF", SDLK_l);
|
buttons[1] = new AdventureMapButton("", CGI->generaltexth->zelp[4].second, bind(&CMenuScreen::moveTo, this, ref(CGP->scrs[loadGame])), 532, 132, "ZMENULG.DEF", SDLK_l);
|
||||||
buttons[2] = new AdventureMapButton("", CGI->generaltexth->zelp[5].second, 0 /*cb*/, 524, 251, "ZMENUHS.DEF", SDLK_h);
|
buttons[2] = new AdventureMapButton("", CGI->generaltexth->zelp[5].second, 0 /*cb*/, 524, 251, "ZMENUHS.DEF", SDLK_h);
|
||||||
buttons[3] = new AdventureMapButton("", CGI->generaltexth->zelp[6].second, 0 /*cb*/, 557, 359, "ZMENUCR.DEF", SDLK_c);
|
buttons[3] = new AdventureMapButton("", CGI->generaltexth->zelp[6].second, 0 /*cb*/, 557, 359, "ZMENUCR.DEF", SDLK_c);
|
||||||
//boost::function<void()> confWindow = bind(CInfoWindow::showYesNoDialog, )
|
boost::function<void()> confWindow = bind(CInfoWindow::showYesNoDialog, ref(CGI->generaltexth->allTexts[69]), (const std::vector<SComponent*>*)0, do_quit, 0, false, 1);
|
||||||
buttons[4] = new AdventureMapButton("", CGI->generaltexth->zelp[7].second, do_quit, 586, 468, "ZMENUQT.DEF", SDLK_ESCAPE);
|
buttons[4] = new AdventureMapButton("", CGI->generaltexth->zelp[7].second, confWindow, 586, 468, "ZMENUQT.DEF", SDLK_ESCAPE);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case newGame:
|
case newGame:
|
||||||
|
@ -651,7 +651,8 @@ CInfoWindow::CInfoWindow()
|
|||||||
void CInfoWindow::close()
|
void CInfoWindow::close()
|
||||||
{
|
{
|
||||||
GH.popIntTotally(this);
|
GH.popIntTotally(this);
|
||||||
LOCPLINT->showingDialog->setn(false);
|
if(LOCPLINT)
|
||||||
|
LOCPLINT->showingDialog->setn(false);
|
||||||
}
|
}
|
||||||
void CInfoWindow::show(SDL_Surface * to)
|
void CInfoWindow::show(SDL_Surface * to)
|
||||||
{
|
{
|
||||||
@ -705,7 +706,7 @@ void CInfoWindow::showYesNoDialog(const std::string & text, const std::vector<SC
|
|||||||
std::vector<std::pair<std::string,CFunctionList<void()> > > pom;
|
std::vector<std::pair<std::string,CFunctionList<void()> > > pom;
|
||||||
pom.push_back(std::pair<std::string,CFunctionList<void()> >("IOKAY.DEF",0));
|
pom.push_back(std::pair<std::string,CFunctionList<void()> >("IOKAY.DEF",0));
|
||||||
pom.push_back(std::pair<std::string,CFunctionList<void()> >("ICANCEL.DEF",0));
|
pom.push_back(std::pair<std::string,CFunctionList<void()> >("ICANCEL.DEF",0));
|
||||||
CInfoWindow * temp = new CInfoWindow(text, player, 0, *components, pom, DelComps);
|
CInfoWindow * temp = new CInfoWindow(text, player, 0, components ? *components : std::vector<SComponent*>(), pom, DelComps);
|
||||||
temp->delComps = DelComps;
|
temp->delComps = DelComps;
|
||||||
for(int i=0;i<onYes.funcs.size();i++)
|
for(int i=0;i<onYes.funcs.size();i++)
|
||||||
temp->buttons[0]->callback += onYes.funcs[i];
|
temp->buttons[0]->callback += onYes.funcs[i];
|
||||||
|
@ -3326,7 +3326,7 @@ const std::string & CGMagicWell::getHoverText() const
|
|||||||
|
|
||||||
void CGPandoraBox::initObj()
|
void CGPandoraBox::initObj()
|
||||||
{
|
{
|
||||||
blockVisit = true;
|
blockVisit = (ID==6); //block only if it's really pandora's box (events also derive from that class)
|
||||||
}
|
}
|
||||||
|
|
||||||
void CGPandoraBox::onHeroVisit(const CGHeroInstance * h) const
|
void CGPandoraBox::onHeroVisit(const CGHeroInstance * h) const
|
||||||
@ -3501,8 +3501,8 @@ void CGPandoraBox::giveContents( const CGHeroInstance *h, bool afterBattle ) con
|
|||||||
cb->showInfoDialog(&iw);
|
cb->showInfoDialog(&iw);
|
||||||
}
|
}
|
||||||
|
|
||||||
iw.components.clear();
|
iw.components.clear();
|
||||||
getText(iw,afterBattle,183,h);
|
// getText(iw,afterBattle,183,h);
|
||||||
for(int i=0; i<artifacts.size(); i++)
|
for(int i=0; i<artifacts.size(); i++)
|
||||||
{
|
{
|
||||||
iw.components.push_back(Component(Component::ARTIFACT,artifacts[i],0,0));
|
iw.components.push_back(Component(Component::ARTIFACT,artifacts[i],0,0));
|
||||||
|
@ -2095,13 +2095,16 @@ void CGameState::calculatePaths(const CGHeroInstance *hero, CPathsInfo &out, int
|
|||||||
{
|
{
|
||||||
for(size_t ii = 0; ii < tinfo->visitableObjects.size(); ii++)
|
for(size_t ii = 0; ii < tinfo->visitableObjects.size(); ii++)
|
||||||
{
|
{
|
||||||
if(tinfo->visitableObjects[ii]->blockVisit)
|
const CGObjectInstance * const obj = tinfo->visitableObjects[ii];
|
||||||
|
if(obj->blockVisit)
|
||||||
{
|
{
|
||||||
node.accessible = CGPathNode::BLOCKVIS;
|
node.accessible = CGPathNode::BLOCKVIS;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
else
|
else if(obj->ID != 26) //pathfinder should ignore placed events
|
||||||
|
{
|
||||||
node.accessible = CGPathNode::VISITABLE;
|
node.accessible = CGPathNode::VISITABLE;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user