mirror of
https://github.com/vcmi/vcmi.git
synced 2025-08-13 19:54:17 +02:00
Many fixes, mostly related to hot-seat.
This commit is contained in:
@@ -2543,9 +2543,9 @@ void CBattleInterface::stackIsCatapulting(const CatapultAttack & ca)
|
||||
void CBattleInterface::battleFinished(const BattleResult& br)
|
||||
{
|
||||
bresult = &br;
|
||||
curInt->pim->unlock();
|
||||
LOCPLINT->pim->unlock();
|
||||
animsAreDisplayed.waitUntil(false);
|
||||
curInt->pim->lock();
|
||||
LOCPLINT->pim->lock();
|
||||
displayBattleFinished();
|
||||
}
|
||||
|
||||
|
@@ -120,9 +120,16 @@ CPlayerInterface::~CPlayerInterface()
|
||||
delete pim;
|
||||
delete showingDialog;
|
||||
delete mainFPSmng;
|
||||
if(adventureInt)
|
||||
{
|
||||
if(adventureInt->active & CIntObject::KEYBOARD)
|
||||
adventureInt->deactivateKeys();
|
||||
delete adventureInt;
|
||||
adventureInt = NULL;
|
||||
}
|
||||
|
||||
if(cingconsole->active) //TODO
|
||||
cingconsole->deactivate();
|
||||
delete cingconsole;
|
||||
|
||||
for(std::map<int,SDL_Surface*>::iterator i=graphics->heroWins.begin(); i!= graphics->heroWins.end(); i++)
|
||||
@@ -838,7 +845,7 @@ void CPlayerInterface::showInfoDialog(const std::string &text, const std::vector
|
||||
pom.push_back(std::pair<std::string,CFunctionList<void()> >("IOKAY.DEF",0));
|
||||
CInfoWindow * temp = new CInfoWindow(text,playerID,0,components,pom,false);
|
||||
|
||||
if(/*makingTurn && */GH.listInt.size())
|
||||
if(makingTurn && GH.listInt.size() && LOCPLINT == this)
|
||||
{
|
||||
CGI->soundh->playSound(static_cast<soundBase::soundID>(soundID));
|
||||
showingDialog->set(true);
|
||||
@@ -1691,6 +1698,9 @@ void CPlayerInterface::finishMovement( const TryMoveHero &details, const int3 &h
|
||||
|
||||
void CPlayerInterface::gameOver(ui8 player, bool victory )
|
||||
{
|
||||
if(LOCPLINT != this)
|
||||
return;
|
||||
|
||||
if(player == playerID)
|
||||
{
|
||||
if(!victory)
|
||||
|
@@ -255,7 +255,7 @@ int CSaveFile::write( const void * data, unsigned size )
|
||||
return size;
|
||||
}
|
||||
|
||||
CLoadFile::CLoadFile( const std::string &fname )
|
||||
CLoadFile::CLoadFile( const std::string &fname, bool requireLatest )
|
||||
:sfile(new std::ifstream(fname.c_str(),std::ios::binary))
|
||||
{
|
||||
registerTypes(*this);
|
||||
@@ -278,7 +278,7 @@ CLoadFile::CLoadFile( const std::string &fname )
|
||||
}
|
||||
|
||||
*this >> myVersion;
|
||||
if(myVersion != version)
|
||||
if(myVersion != version && requireLatest)
|
||||
{
|
||||
tlog1 << "Error: Not supported save format! (file " << fname << " )\n";
|
||||
delete sfile;
|
||||
|
@@ -694,7 +694,7 @@ class DLL_EXPORT CLoadFile
|
||||
}
|
||||
public:
|
||||
std::ifstream *sfile;
|
||||
CLoadFile(const std::string &fname);
|
||||
CLoadFile(const std::string &fname, bool requireLatest = true);
|
||||
~CLoadFile();
|
||||
int read(const void * data, unsigned size);
|
||||
};
|
||||
|
@@ -434,13 +434,6 @@ void CMapHandler::init()
|
||||
initObjectRects();
|
||||
tlog0<<"\tMaking object rects: "<<th.getDif()<<std::endl;
|
||||
|
||||
|
||||
for (int i = 0; i < 8 ; i++)
|
||||
{
|
||||
TerrainTile2 &t = ttiles[24+i][0][0];
|
||||
//tlog0 << t.objects.front().first->defInfo->name << ' ';
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
// Update map window screen
|
||||
|
Reference in New Issue
Block a user