Make zoom rate when scrolling framerate-independent.

master
Cyp 2010-12-30 00:46:06 +01:00
parent 5c4b81fa63
commit ffe096fea4
3 changed files with 16 additions and 18 deletions

View File

@ -476,8 +476,6 @@ void processInput(void)
BOOL mOverRadar = false;
BOOL mOverConstruction = false;
int WheelZoomIterator;
if (InGameOpUp || isInGamePopupUp)
{
dragBox3D.status = DRAG_RELEASED; // disengage the dragging since it stops menu input
@ -521,8 +519,7 @@ void processInput(void)
}
else
{
for (WheelZoomIterator = 0; WheelZoomIterator < 10; WheelZoomIterator++)
kf_ZoomIn();
kf_ZoomInStep();
}
}
@ -544,8 +541,7 @@ void processInput(void)
}
else
{
for (WheelZoomIterator = 0; WheelZoomIterator < 10; WheelZoomIterator++)
kf_ZoomOut();
kf_ZoomOutStep();
}
}

View File

@ -849,13 +849,13 @@ void kf_SystemClose( void )
/* Zooms out from display */
void kf_ZoomOut( void )
{
float zoomInterval = realTimeAdjustedIncrement(MAP_ZOOM_RATE);
distance = std::min<int>(distance + realTimeAdjustedIncrement(MAP_ZOOM_RATE), MAXDISTANCE);
UpdateFogDistance(distance);
}
distance += zoomInterval;
if(distance > MAXDISTANCE)
{
distance = MAXDISTANCE;
}
void kf_ZoomOutStep(void)
{
distance = std::min<int>(distance + MAP_ZOOM_RATE/3, MAXDISTANCE);
UpdateFogDistance(distance);
}
@ -888,13 +888,13 @@ void kf_RadarZoomOut( void )
/* Zooms in the map */
void kf_ZoomIn( void )
{
float zoomInterval = realTimeAdjustedIncrement(MAP_ZOOM_RATE);
distance = std::max<int>(distance - realTimeAdjustedIncrement(MAP_ZOOM_RATE), MINDISTANCE);
UpdateFogDistance(distance);
}
distance -= zoomInterval;
if (distance < MINDISTANCE)
{
distance = MINDISTANCE;
}
void kf_ZoomInStep(void)
{
distance = std::max<int>(distance - MAP_ZOOM_RATE/3, MINDISTANCE);
UpdateFogDistance(distance);
}

View File

@ -52,7 +52,9 @@ extern void kf_LowerTile( void );
extern void kf_MapCheck( void );
extern void kf_SystemClose( void );
extern void kf_ZoomOut( void );
void kf_ZoomOutStep();
extern void kf_ZoomIn( void );
void kf_ZoomInStep();
extern void kf_ShrinkScreen( void );
extern void kf_ExpandScreen( void );
extern void kf_RotateLeft( void );