mirror of
https://github.com/1dot13/source.git
synced 2026-07-22 13:40:22 +02:00
92 lines
2.5 KiB
C
92 lines
2.5 KiB
C
#ifndef _MERC_CONTRACT_H_
|
|
#define _MERC_CONTRACT_H_
|
|
|
|
|
|
#include "Soldier Control.h"
|
|
|
|
|
|
//enums used for extending contract, etc.
|
|
enum
|
|
{
|
|
CONTRACT_EXTEND_1_DAY,
|
|
CONTRACT_EXTEND_1_WEEK,
|
|
CONTRACT_EXTEND_2_WEEK,
|
|
NUM_CONTRACT_EXTEND,
|
|
};
|
|
|
|
|
|
typedef struct
|
|
{
|
|
UINT8 ubProfileID;
|
|
UINT8 ubFiller[ 3 ];
|
|
|
|
} CONTRACT_NEWAL_LIST_NODE;
|
|
|
|
|
|
// WDS - make number of mercenaries, etc. be configurable
|
|
//extern CONTRACT_NEWAL_LIST_NODE ContractRenewalList[ CODE_MAXIMUM_NUMBER_OF_PLAYER_SLOTS ];
|
|
//extern UINT8 ubNumContractRenewals;
|
|
extern BOOLEAN gfContractRenewalSquenceOn;
|
|
//extern UINT8 ubCurrentContractRenewal;
|
|
extern BOOLEAN gfInContractMenuFromRenewSequence;
|
|
|
|
|
|
/*
|
|
|
|
//list of quotes used in renewing a mercs contract
|
|
enum
|
|
{
|
|
LAME_REFUSAL_DOING_SOMETHING_ELSE = 73,
|
|
DEPARTING_COMMENT_AFTER_48_HOURS = 75,
|
|
CONTRACTS_OVER_U_EXTENDING = 79,
|
|
ACCEPT_CONTRACT_RENEWAL = 80,
|
|
REFUSAL_TO_RENEW_POOP_MORALE = 85,
|
|
DEPARTING_COMMENT_BEFORE_48_HOURS=88,
|
|
DEATH_RATE_REFUSAL=89,
|
|
HATE_MERC_1_ON_TEAM,
|
|
HATE_MERC_2_ON_TEAM,
|
|
LEARNED_TO_HATE_MERC_ON_TEAM,
|
|
JOING_CAUSE_BUDDY_1_ON_TEAM,
|
|
JOING_CAUSE_BUDDY_2_ON_TEAM,
|
|
JOING_CAUSE_LEARNED_TO_LIKE_BUDDY_ON_TEAM,
|
|
PRECEDENT_TO_REPEATING_ONESELF,
|
|
REFUSAL_DUE_TO_LACK_OF_FUNDS,
|
|
};
|
|
*/
|
|
|
|
BOOLEAN MercContractHandling( SOLDIERTYPE *pSoldier, UINT8 ubDesiredAction );
|
|
|
|
BOOLEAN StrategicRemoveMerc( SOLDIERTYPE *pSoldier );
|
|
BOOLEAN BeginStrategicRemoveMerc( SOLDIERTYPE *pSoldier, BOOLEAN fAddRehireButton );
|
|
|
|
|
|
BOOLEAN WillMercRenew( SOLDIERTYPE *pSoldier, BOOLEAN fSayQuote );
|
|
void HandleBuddiesReactionToFiringMerc(SOLDIERTYPE *pFiredSoldier, INT8 bMoraleEvent );
|
|
void CheckIfMercGetsAnotherContract( SOLDIERTYPE *pSoldier );
|
|
void FindOutIfAnyMercAboutToLeaveIsGonnaRenew( void );
|
|
|
|
void BeginContractRenewalSequence( );
|
|
void HandleContractRenewalSequence( );
|
|
void EndCurrentContractRenewal( );
|
|
void HandleMercIsWillingToRenew( SoldierID ubID );
|
|
void HandleMercIsNotWillingToRenew( SoldierID ubID );
|
|
|
|
BOOLEAN ContractIsExpiring( SOLDIERTYPE *pSoldier );
|
|
UINT32 GetHourWhenContractDone( SOLDIERTYPE *pSoldier );
|
|
BOOLEAN ContractIsGoingToExpireSoon( SOLDIERTYPE *pSoldier );
|
|
|
|
BOOLEAN LoadContractRenewalDataFromSaveGameFile( HWFILE hFile );
|
|
BOOLEAN SaveContractRenewalDataToSaveGameFile( HWFILE hFile );
|
|
|
|
|
|
|
|
// rehiring of mercs from leave equipment pop up
|
|
extern BOOLEAN fEnterMapDueToContract;
|
|
extern SOLDIERTYPE *pContractReHireSoldier;
|
|
extern SOLDIERTYPE *pLeaveSoldier;
|
|
extern UINT8 ubQuitType;
|
|
extern BOOLEAN gfFirstMercSayQuote;
|
|
|
|
#endif
|
|
|