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

* more constTransitivePointers in GameInfo, separated client GUI classes from it, moved def handlers from CGDefInfo

This commit is contained in:
mateuszb
2010-12-19 14:39:56 +00:00
parent 5806976a9a
commit b15deaa203
31 changed files with 344 additions and 330 deletions

View File

@@ -29,6 +29,7 @@
#include "../lib/VCMI_Lib.h"
#include "../hch/CSpellHandler.h"
#include <boost/foreach.hpp>
#include "../hch/CSoundBase.h"
#ifdef _MSC_VER
#pragma warning (disable : 4355)
@@ -491,7 +492,7 @@ void CTerrainRect::mouseMoved (const SDL_MouseMotionEvent & sEvent)
if(tHovered != pom) //tile outside the map
{
CGI->curh->changeGraphic(0, 0);
CCS->curh->changeGraphic(0, 0);
return;
}
@@ -507,7 +508,7 @@ void CTerrainRect::hover(bool on)
if (!on)
{
adventureInt->statusbar.clear();
CGI->curh->changeGraphic(0,0);
CCS->curh->changeGraphic(0,0);
}
//Hoverable::hover(on);
}
@@ -1329,7 +1330,7 @@ void CAdvMapInt::deactivate()
deactivateMouseMove();
scrollingDir = 0;
CGI->curh->changeGraphic(0,0);
CCS->curh->changeGraphic(0,0);
kingOverview.deactivate();
underground.deactivate();
questlog.deactivate();
@@ -1857,18 +1858,18 @@ void CAdvMapInt::tileHovered(const int3 &tile)
{
case Spells::SCUTTLE_BOAT:
if(objAtTile && objAtTile->ID == 8)
CGI->curh->changeGraphic(0, 42);
CCS->curh->changeGraphic(0, 42);
else
CGI->curh->changeGraphic(0, 0);
CCS->curh->changeGraphic(0, 0);
return;
case Spells::DIMENSION_DOOR:
{
const TerrainTile *t = LOCPLINT->cb->getTileInfo(tile);
int3 hpos = selection->getSightCenter();
if((!t || t->isClear(LOCPLINT->cb->getTileInfo(hpos))) && isInScreenRange(hpos, tile))
CGI->curh->changeGraphic(0, 41);
CCS->curh->changeGraphic(0, 41);
else
CGI->curh->changeGraphic(0, 0);
CCS->curh->changeGraphic(0, 0);
return;
}
}
@@ -1881,12 +1882,12 @@ void CAdvMapInt::tileHovered(const int3 &tile)
if(objAtTile)
{
if(objAtTile->ID == TOWNI_TYPE && LOCPLINT->cb->getPlayerRelations(LOCPLINT->playerID, objAtTile->tempOwner))
CGI->curh->changeGraphic(0, 3);
CCS->curh->changeGraphic(0, 3);
else if(objAtTile->ID == HEROI_TYPE && objAtTile->tempOwner == LOCPLINT->playerID)
CGI->curh->changeGraphic(0, 2);
CCS->curh->changeGraphic(0, 2);
}
else
CGI->curh->changeGraphic(0, 0);
CCS->curh->changeGraphic(0, 0);
}
else if(const CGHeroInstance *h = curHero())
{
@@ -1897,18 +1898,18 @@ void CAdvMapInt::tileHovered(const int3 &tile)
if(!LOCPLINT->cb->getPlayerRelations( LOCPLINT->playerID, objAtTile->tempOwner)) //enemy hero
{
if(accessible)
CGI->curh->changeGraphic(0, 5 + turns*6);
CCS->curh->changeGraphic(0, 5 + turns*6);
else
CGI->curh->changeGraphic(0, 0);
CCS->curh->changeGraphic(0, 0);
}
else //our or ally hero
{
if(selection == objAtTile)
CGI->curh->changeGraphic(0, 2);
CCS->curh->changeGraphic(0, 2);
else if(accessible)
CGI->curh->changeGraphic(0, 8 + turns*6);
CCS->curh->changeGraphic(0, 8 + turns*6);
else
CGI->curh->changeGraphic(0, 2);
CCS->curh->changeGraphic(0, 2);
}
}
else if(objAtTile->ID == TOWNI_TYPE)
@@ -1921,30 +1922,30 @@ void CAdvMapInt::tileHovered(const int3 &tile)
// Show movement cursor for unguarded enemy towns, otherwise attack cursor.
if (townObj && !townObj->stacksCount())
CGI->curh->changeGraphic(0, 9 + turns*6);
CCS->curh->changeGraphic(0, 9 + turns*6);
else
CGI->curh->changeGraphic(0, 5 + turns*6);
CCS->curh->changeGraphic(0, 5 + turns*6);
}
else
{
CGI->curh->changeGraphic(0, 0);
CCS->curh->changeGraphic(0, 0);
}
}
else //our or ally town
{
if(accessible)
CGI->curh->changeGraphic(0, 9 + turns*6);
CCS->curh->changeGraphic(0, 9 + turns*6);
else
CGI->curh->changeGraphic(0, 3);
CCS->curh->changeGraphic(0, 3);
}
}
else if(objAtTile->ID == 8) //boat
{
if(accessible)
CGI->curh->changeGraphic(0, 6 + turns*6);
CCS->curh->changeGraphic(0, 6 + turns*6);
else
CGI->curh->changeGraphic(0, 0);
CCS->curh->changeGraphic(0, 0);
}
else if (objAtTile->ID == 33 || objAtTile->ID == 219) // Garrison
{
@@ -1955,28 +1956,28 @@ void CAdvMapInt::tileHovered(const int3 &tile)
// Show battle cursor for guarded enemy garrisons, otherwise movement cursor.
if (garrObj&& garrObj->stacksCount()
&& !LOCPLINT->cb->getPlayerRelations( LOCPLINT->playerID, garrObj->tempOwner) )
CGI->curh->changeGraphic(0, 5 + turns*6);
CCS->curh->changeGraphic(0, 5 + turns*6);
else
CGI->curh->changeGraphic(0, 9 + turns*6);
CCS->curh->changeGraphic(0, 9 + turns*6);
}
else
CGI->curh->changeGraphic(0, 0);
CCS->curh->changeGraphic(0, 0);
}
else if (guardingCreature && accessible) //(objAtTile->ID == 54) //monster
{
CGI->curh->changeGraphic(0, 5 + turns*6);
CCS->curh->changeGraphic(0, 5 + turns*6);
}
else
{
if(accessible)
{
if(pnode->land)
CGI->curh->changeGraphic(0, 9 + turns*6);
CCS->curh->changeGraphic(0, 9 + turns*6);
else
CGI->curh->changeGraphic(0, 28 + turns);
CCS->curh->changeGraphic(0, 28 + turns);
}
else
CGI->curh->changeGraphic(0, 0);
CCS->curh->changeGraphic(0, 0);
}
}
else //no objs
@@ -1984,27 +1985,27 @@ void CAdvMapInt::tileHovered(const int3 &tile)
if(accessible && pnode->accessible != CGPathNode::FLYABLE)
{
if (guardingCreature) {
CGI->curh->changeGraphic(0, 5 + turns*6);
CCS->curh->changeGraphic(0, 5 + turns*6);
} else {
if(pnode->land)
{
if(LOCPLINT->cb->getTileInfo(h->getPosition(false))->tertype != TerrainTile::water)
CGI->curh->changeGraphic(0, 4 + turns*6);
CCS->curh->changeGraphic(0, 4 + turns*6);
else
CGI->curh->changeGraphic(0, 7 + turns*6); //anchor
CCS->curh->changeGraphic(0, 7 + turns*6); //anchor
}
else
CGI->curh->changeGraphic(0, 6 + turns*6);
CCS->curh->changeGraphic(0, 6 + turns*6);
}
}
else
CGI->curh->changeGraphic(0, 0);
CCS->curh->changeGraphic(0, 0);
}
}
if(const IShipyard *shipyard = ourInaccessibleShipyard(objAtTile))
{
CGI->curh->changeGraphic(0, 6);
CCS->curh->changeGraphic(0, 6);
}
}
@@ -2079,7 +2080,7 @@ const IShipyard * CAdvMapInt::ourInaccessibleShipyard(const CGObjectInstance *ob
{
const IShipyard *ret = IShipyard::castFrom(obj);
if(!ret || obj->tempOwner != player || CGI->curh->mode || (CGI->curh->number != 6 && CGI->curh->number != 0))
if(!ret || obj->tempOwner != player || CCS->curh->mode || (CCS->curh->number != 6 && CCS->curh->number != 0))
return NULL;
return ret;