1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-04-23 12:08:45 +02:00

* fixes for glitches in garrisons in non 800x600 resolutions

* fixed timed events
* in recruitment window upgraded creatures will be selected by default
* bumped version number
* spell points won't be negative
This commit is contained in:
Michał W. Urbańczyk 2009-07-17 21:53:28 +00:00
parent 01a222066b
commit d1d2823c58
9 changed files with 20 additions and 14 deletions

View File

@ -203,7 +203,7 @@ void CHeroWindow::setHero(const CGHeroInstance *hero)
portraitArea->text = hero->getBiography(); portraitArea->text = hero->getBiography();
delete garr; delete garr;
/*gar4button->owner = */garr = new CGarrisonInt(pos.x+80, pos.y+493, 8, Point(), curBack, Point(63,7), curHero); garr = new CGarrisonInt(pos.x+80, pos.y+493, 8, Point(), curBack, Point(16,486), curHero);
garr->update = false; garr->update = false;
gar4button->callback = boost::bind(&CGarrisonInt::splitClick,garr);//actualization of callback function gar4button->callback = boost::bind(&CGarrisonInt::splitClick,garr);//actualization of callback function

View File

@ -333,7 +333,8 @@ void CGarrisonSlot::show(SDL_Surface * to)
else //empty slot else //empty slot
{ {
Rect pos1 = pos, pos2 = pos; //positions on the garr bg sur and scren Rect pos1 = pos, pos2 = pos; //positions on the garr bg sur and scren
pos1 -= owner->surOffset; pos1.x = owner->surOffset.x;
pos1.y = owner->surOffset.y;
SDL_BlitSurface(owner->sur,&pos1,to,&pos2); SDL_BlitSurface(owner->sur,&pos1,to,&pos2);
if(owner->splitting) if(owner->splitting)
@ -1746,7 +1747,7 @@ void CRecruitmentWindow::show(SDL_Surface * to)
} }
CRecruitmentWindow::CRecruitmentWindow(const std::vector<std::pair<int,int> > &Creatures, const boost::function<void(int,int)> &Recruit) //creatures - pairs<creature_ID,amount> CRecruitmentWindow::CRecruitmentWindow(const std::vector<std::pair<int,int> > &Creatures, const boost::function<void(int,int)> &Recruit) //creatures - pairs<creature_ID,amount>
:recruit(Recruit), which(0) :recruit(Recruit), which(Creatures.size()-1)
{ {
creatures.resize(Creatures.size()); creatures.resize(Creatures.size());
amounts.resize(Creatures.size()); amounts.resize(Creatures.size());
@ -3193,7 +3194,7 @@ void CGarrisonWindow::show(SDL_Surface * to)
quit->show(to); quit->show(to);
garr->show(to); garr->show(to);
blitAt(graphics->flags->ourImages[garr->odown->getOwner()].bitmap,pos.x+29,pos.y+125,to); blitAt(graphics->flags->ourImages[garr->odown->getOwner()].bitmap,pos.x+28,pos.y+124,to);
blitAt(graphics->portraitLarge[static_cast<const CGHeroInstance*>(garr->odown)->portrait],pos.x+29,pos.y+222,to); blitAt(graphics->portraitLarge[static_cast<const CGHeroInstance*>(garr->odown)->portrait],pos.x+29,pos.y+222,to);
printAtMiddle(CGI->generaltexth->allTexts[709],pos.x+275,pos.y+30,GEOR16,tytulowy,to); printAtMiddle(CGI->generaltexth->allTexts[709],pos.x+275,pos.y+30,GEOR16,tytulowy,to);
} }
@ -3208,7 +3209,7 @@ CGarrisonWindow::CGarrisonWindow( const CArmedInstance *up, const CGHeroInstance
pos.w = screen->w; pos.w = screen->w;
pos.h = screen->h; pos.h = screen->h;
garr = new CGarrisonInt(pos.x+92, pos.y+129, 4, Point(0,94), bg, Point(124,102), up, down); garr = new CGarrisonInt(pos.x+92, pos.y+127, 4, Point(0,96), bg, Point(93,127), up, down);
split = new AdventureMapButton(CGI->generaltexth->tcommands[3],"",boost::bind(&CGarrisonInt::splitClick,garr),pos.x+88,pos.y+314,"IDV6432.DEF"); split = new AdventureMapButton(CGI->generaltexth->tcommands[3],"",boost::bind(&CGarrisonInt::splitClick,garr),pos.x+88,pos.y+314,"IDV6432.DEF");
quit = new AdventureMapButton(CGI->generaltexth->tcommands[8],"",boost::bind(&CGarrisonWindow::close,this),pos.x+399,pos.y+314,"IOK6432.DEF",SDLK_RETURN); quit = new AdventureMapButton(CGI->generaltexth->tcommands[8],"",boost::bind(&CGarrisonWindow::close,this),pos.x+399,pos.y+314,"IOK6432.DEF",SDLK_RETURN);
} }

View File

@ -129,7 +129,7 @@
EnableFunctionLevelLinking="false" EnableFunctionLevelLinking="false"
EnableEnhancedInstructionSet="0" EnableEnhancedInstructionSet="0"
WarningLevel="3" WarningLevel="3"
DebugInformationFormat="0" DebugInformationFormat="3"
/> />
<Tool <Tool
Name="VCManagedResourceCompilerTool" Name="VCManagedResourceCompilerTool"

View File

@ -19,7 +19,7 @@ typedef boost::int8_t si8; //signed int 8 bits (1 byte)
#define THC #define THC
#endif #endif
#define NAME_VER ("VCMI 0.72c") #define NAME_VER ("VCMI 0.72d")
#define CONSOLE_LOGGING_LEVEL 5 #define CONSOLE_LOGGING_LEVEL 5
#define FILE_LOGGING_LEVEL 6 #define FILE_LOGGING_LEVEL 6

View File

@ -288,7 +288,7 @@ struct SetMana : public CPackForClient //110
DLL_EXPORT void applyGs(CGameState *gs); DLL_EXPORT void applyGs(CGameState *gs);
ui32 hid, val; si32 hid, val;
template <typename Handler> void serialize(Handler &h, const int version) template <typename Handler> void serialize(Handler &h, const int version)
{ {

View File

@ -125,7 +125,7 @@
RuntimeLibrary="2" RuntimeLibrary="2"
EnableFunctionLevelLinking="false" EnableFunctionLevelLinking="false"
WarningLevel="3" WarningLevel="3"
DebugInformationFormat="0" DebugInformationFormat="3"
/> />
<Tool <Tool
Name="VCManagedResourceCompilerTool" Name="VCManagedResourceCompilerTool"
@ -141,7 +141,7 @@
AdditionalDependencies="zdll.lib" AdditionalDependencies="zdll.lib"
Version="" Version=""
AdditionalLibraryDirectories="../../libs;" AdditionalLibraryDirectories="../../libs;"
GenerateDebugInformation="false" GenerateDebugInformation="true"
OptimizeReferences="2" OptimizeReferences="2"
EnableCOMDATFolding="2" EnableCOMDATFolding="2"
LinkTimeCodeGeneration="0" LinkTimeCodeGeneration="0"

View File

@ -1913,9 +1913,13 @@ void Mapa::readEvents( unsigned char * bufor, int &i )
else else
ne->humanAffected = true; ne->humanAffected = true;
ne->computerAffected = bufor[i]; ++i; ne->computerAffected = bufor[i]; ++i;
ne->firstOccurence = bufor[i]; ++i; ne->firstOccurence = readNormalNr(bufor,i, 2); i+=2;
ne->nextOccurence = bufor[i]; ++i; ne->nextOccurence = bufor[i]; ++i;
i+=18;
char unknown[17];
memcpy(unknown, bufor+i, 17);
i+=17;
events.push_back(ne); events.push_back(ne);
} }
} }

View File

@ -2566,6 +2566,7 @@ bool CGameHandler::makeCustomAction( BattleAction &ba )
void CGameHandler::handleTimeEvents() void CGameHandler::handleTimeEvents()
{ {
gs->map->events.sort(evntCmp);
while(gs->map->events.size() && gs->map->events.front()->firstOccurence+1 == gs->day) while(gs->map->events.size() && gs->map->events.front()->firstOccurence+1 == gs->day)
{ {
CMapEvent *ev = gs->map->events.front(); CMapEvent *ev = gs->map->events.front();

View File

@ -122,7 +122,7 @@
RuntimeLibrary="2" RuntimeLibrary="2"
EnableFunctionLevelLinking="false" EnableFunctionLevelLinking="false"
WarningLevel="3" WarningLevel="3"
DebugInformationFormat="0" DebugInformationFormat="3"
DisableSpecificWarnings="4251" DisableSpecificWarnings="4251"
/> />
<Tool <Tool
@ -138,7 +138,7 @@
Name="VCLinkerTool" Name="VCLinkerTool"
AdditionalDependencies="VCMI_lib.lib zdll.lib" AdditionalDependencies="VCMI_lib.lib zdll.lib"
AdditionalLibraryDirectories="../../libs;../" AdditionalLibraryDirectories="../../libs;../"
GenerateDebugInformation="false" GenerateDebugInformation="true"
OptimizeReferences="2" OptimizeReferences="2"
EnableCOMDATFolding="2" EnableCOMDATFolding="2"
TargetMachine="1" TargetMachine="1"