- When ordering a merc to interrogate, one can now select what type of prisoners should be interrogated primarily. Thus one no longer has to empty the prison just to get to the one remaining officer.

- Generals are now a separate prisoner type. They cannot join militia, but yield an impressive ransom.
- various prisoner fixes

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@7327 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
Flugente
2014-07-10 21:19:26 +00:00
parent 7fb31cc9c8
commit 0efc3b7241
31 changed files with 1000 additions and 310 deletions
+2 -2
View File
@@ -273,6 +273,7 @@ private:
DynamicOpinionSpeechEvent mEvent;
};
// due to the way callbacks on mouse regions are handled, we need a static object that we can 'hook' on. Thus we use this singleton
class IMPDialogueChooseBox_Static : public IMPDialogueChooseBox
{
public:
@@ -287,7 +288,7 @@ public:
static void SelectRegionDropDown_DropDown( MOUSE_REGION * pRegion, INT32 iReason ) { return static_cast<IMPDialogueChooseBox*>(mpSelf)->SelectDropDownRegionCallBack( pRegion, iReason ); }
MOUSE_CALLBACK
CallBackWrapper( void* pt2Object, UINT8 arg, void( *pt2Function )(MOUSE_REGION * pRegion, INT32 iReason) )
CallBackWrapper( void* pt2Object, UINT8 arg, void( *pt2Function )(MOUSE_REGION * pRegion, INT32 iReason) )
{
mpSelf = pt2Object;
@@ -318,5 +319,4 @@ BOOLEAN DynamicDialogueBoxesActive( );
// used fo example when we load a game - dialogue has to start anew, so all boxes must be wiped
void DestroyAllDynamicDialogueBoxes( );
#endif
+2 -2
View File
@@ -73,10 +73,10 @@ typedef struct
//General Laptop Info
BOOLEAN gfNewGameLaptop; //Is it the firs time in Laptop
BOOLEAN fVisitedBookmarkAlready[20]; // have we visitied this site already?
INT32 iBookMarkList[MAX_BOOKMARKS];
INT32 iBookMarkList[MAX_BOOKMARKS];
INT32 iCurrentBalance; // current players balance
INT32 iCurrentBalance; // current players balance
//IMP Information
+6 -23
View File
@@ -170,28 +170,28 @@ void RenderMercCompareMain( )
}
BOOLEAN InitMercCompareDefaults( )
void InitMercCompareDefaults( )
{
VOBJECT_DESC VObjectDesc;
// load the Insurance bullet graphic and add it
VObjectDesc.fCreateFlags = VOBJECT_CREATE_FROMFILE;
FilenameForBPP( "LAPTOP\\bullet.sti", VObjectDesc.ImageFile );
CHECKF( AddVideoObject( &VObjectDesc, &guiMercCompareBulletImage ) );
CHECKV( AddVideoObject( &VObjectDesc, &guiMercCompareBulletImage ) );
// load the Flower Account Box graphic and add it
VObjectDesc.fCreateFlags = VOBJECT_CREATE_FROMFILE;
FilenameForBPP( "LAPTOP\\BackGroundTile.sti", VObjectDesc.ImageFile );
CHECKF( AddVideoObject( &VObjectDesc, &guiInsuranceBackGround ) );
CHECKV( AddVideoObject( &VObjectDesc, &guiInsuranceBackGround ) );
// load the red bar on the side of the page and add it
VObjectDesc.fCreateFlags = VOBJECT_CREATE_FROMFILE;
FilenameForBPP( "LAPTOP\\LargeBar.sti", VObjectDesc.ImageFile );
CHECKF( AddVideoObject( &VObjectDesc, &guiInsuranceBigRedLineImage ) );
CHECKV( AddVideoObject( &VObjectDesc, &guiInsuranceBigRedLineImage ) );
VObjectDesc.fCreateFlags = VOBJECT_CREATE_FROMFILE;
FilenameForBPP( "LAPTOP\\PressLogos.sti", VObjectDesc.ImageFile );
CHECKF( AddVideoObject( &VObjectDesc, &guiMercCompareLogoImage ) );
CHECKV( AddVideoObject( &VObjectDesc, &guiMercCompareLogoImage ) );
UINT16 usPosX = CAMPAIGN_HISTORY_LINK_START_X;
UINT16 usPosY = CAMPAIGN_HISTORY_LINK_START_Y;
@@ -204,8 +204,6 @@ BOOLEAN InitMercCompareDefaults( )
usPosY += CAMPAIGN_HISTORY_LINK_STEP_Y;
}
return(TRUE);
}
void DisplayMercCompareDefaults( )
@@ -298,11 +296,6 @@ void SelectMercCompareRegionCallBack( MOUSE_REGION * pRegion, INT32 iReason )
////////////////////////// MERC COMPARE CUSTOMERS ////////////////////////////////
void GameInitMercCompareCustomers( )
{
}
BOOLEAN EnterMercCompareCustomers( )
{
InitMercCompareDefaults( );
@@ -388,11 +381,6 @@ BOOLEAN fMercCompareRedraw = FALSE;
template<> void DropDownTemplate<DROPDOWNNR_MERCCOMPARE1>::SetRefresh( ) { fMercCompareRedraw = TRUE; }
template<> void DropDownTemplate<DROPDOWNNR_MERCCOMPARE2>::SetRefresh( ) { fMercCompareRedraw = TRUE; }
void GameInitMercCompareAnalyze()
{
}
BOOLEAN EnterMercCompareAnalyze()
{
InitMercCompareDefaults( );
@@ -988,11 +976,6 @@ template<> void DropDownTemplate<DROPDOWNNR_MERCCOMPARE_SQUADSELECTION>::SetRefr
fMercCompareMatrixRedraw = TRUE;
}
void GameInitMercCompareMatrix( )
{
}
BOOLEAN EnterMercCompareMatrix( )
{
InitMercCompareDefaults( );
@@ -1183,7 +1166,7 @@ void RenderMercCompareMatrix( )
CURSOR_WWW, MSYS_NO_CALLBACK, SelectMercCompareMatrixRegionCallBack );
MSYS_AddRegion( &gMercCompareMatrixLinkRegion[currentmouseregion] );
// both profilenumbers are combined to a single value which cn later be reinterpreted.
// both profilenumbers are combined to a single value which can later be reinterpreted.
// Note: this will fail if the profile IDs are bigger than UINT16 (currently UINT8)
MSYS_SetRegionUserData( &gMercCompareMatrixLinkRegion[currentmouseregion], 0, ((pSoldierA->ubProfile << 8) | pSoldierB->ubProfile) );
gMercCompareMatrixLinkDefined[currentmouseregion] = TRUE;
+1 -4
View File
@@ -12,20 +12,18 @@ void ExitMercCompareMain( );
void HandleMercCompareMain( );
void RenderMercCompareMain( );
BOOLEAN InitMercCompareDefaults( );
void InitMercCompareDefaults( );
void DisplayMercCompareDefaults( );
void RemoveMercCompareDefaults( );
void GetMercCompareText( UINT8 ubNumber, STR16 pString );
// displays a few quotes of customers
void GameInitMercCompareCustomers( );
BOOLEAN EnterMercCompareCustomers( );
void ExitMercCompareCustomers( );
void HandleMercCompareCustomers( );
void RenderMercCompareCustomers( );
// comparison of characters
void GameInitMercCompareAnalyze( );
BOOLEAN EnterMercCompareAnalyze( );
void ExitMercCompareAnalyze( );
void HandleMercCompareAnalyze( );
@@ -34,7 +32,6 @@ void RenderMercCompareAnalyze( );
BOOLEAN DisplayMercData( UINT8 usProfileA, UINT8 usProfileB );
// squad opinion overview
void GameInitMercCompareMatrix( );
BOOLEAN EnterMercCompareMatrix( );
void ExitMercCompareMatrix( );
void HandleMercCompareMatrix( );