mirror of
				https://github.com/vcmi/vcmi.git
				synced 2025-10-31 00:07:39 +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->active & CIntObject::KEYBOARD) | ||||
| 		adventureInt->deactivateKeys(); | ||||
| 	delete adventureInt; | ||||
| 	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