Files
source/Tactical/Interface Control.h
Flugente 1a87aa3b1f Improved the draw functions for the graphical explosion warning (TIME_BOMB_WARNING = TRUE):
- underlying terrain can still be seen
- Fix: graphical glich while scrolling

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@8429 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2017-07-25 19:08:10 +00:00

76 lines
2.5 KiB
C

#ifndef __INTERFACE_CONTROL_H
#define __INTERFACE_CONTROL_H
#define INTERFACE_MAPSCREEN 0x00000001
#define INTERFACE_NORENDERBUTTONS 0x00000002
#define INTERFACE_LOCKEDLEVEL1 0x00000004
#define INTERFACE_SHOPKEEP_INTERFACE 0x00000008
extern UINT32 guiTacticalInterfaceFlags;
void SetTacticalInterfaceFlags( UINT32 uiFlags );
void SetUpInterface( );
void ResetInterface( );
void RenderTopmostTacticalInterface( );
void RenderTacticalInterface( );
// Flugente: handle flashlights
void HandleFlashLights();
void StartViewportOverlays( );
void EndViewportOverlays( );
void LockTacticalInterface( );
void UnLockTacticalInterface( );
void RenderTacticalInterfaceWhileScrolling( );
void EraseInterfaceMenus( BOOLEAN fIgnoreUIUnLock );
// handle paused render of tactical panel, if flag set, OR it in with tactical render flags
// then reset
void HandlePausedTacticalRender( void );
void ResetInterfaceAndUI( );
BOOLEAN AreWeInAUIMenu( );
void HandleTacticalPanelSwitch( );
BOOLEAN InterfaceOKForMeanwhilePopup();
// sevenfm: these values are used to calculate scale for displaying values as asterisks (no more than 5 asterisks for any value)
enum{
PRINT_SCALE_PLAIN_NUMBER,
PRINT_SCALE_ASTERISK,
PRINT_SCALE_ASTERISK_SUPPRESSION,
PRINT_SCALE_ASTERISK_DAMAGE,
PRINT_SCALE_ASTERISK_MORALE,
PRINT_SCALE_ASTERISK_AP,
PRINT_SCALE_ASTERISK_SHOCK,
};
UINT8 CalcScaleSuppression( INT16 data );
UINT8 CalcScaleDamage( INT16 data );
UINT8 CalcScaleMorale( INT16 data );
UINT8 CalcScaleAP( INT16 data );
UINT8 CalcScaleShock( INT16 data );
void DrawCounters( SOLDIERTYPE *pSoldier );
// print counter as number or asterisks ( applying provided scale when displaying asterisks )
// width is updated as X offset after printing
void PrintCounter( INT16 x, INT16 y, INT16 data, UINT16 &width, UINT8 ubForegound, UINT8 scale = PRINT_SCALE_PLAIN_NUMBER );
void PrintSuppressionCounter( INT16 x, INT16 y, INT16 sX, INT16 sY, UINT8 data, UINT16 &widthDamage, UINT16 &widthSuppression, UINT8 ubForeground, UINT8 scale, UINT8 option);
// Flugente: draw moving circles around a gridno. This is used to warn the player of impending explosions
void DrawExplosionWarning( INT32 sGridno, INT8 sLevel, INT8 sDelay );
// Flugente: draw a circle around a gridno
// For now, we aren't using usColour, but that will likely change in the future
void DrawTraitRadius( INT32 sGridno, INT8 sLevel, INT32 sRadius, INT16 sThickness, UINT16 usColour );
#endif