Files
source/Laptop/finances.h
T
Flugente 960bb2d4ba New feature (by rftr): Mini events are a feature where the player can receive short text blurbs, and pick one of two outcomes.
Based on game implementations like Gloomhaven (road/city events) or Battletech (travel events).

For more info, see https://thepit.ja-galaxy-forum.com/index.php?t=msg&th=24865&goto=363481&#msg_363481

Requires GameDir >= r2599

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@9137 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2021-07-09 19:38:55 +00:00

86 lines
2.3 KiB
C

#ifndef __FINANCES_H
#define __FINANCES_H
void GameInitFinances();
void EnterFinances();
void ExitFinances();
void HandleFinances();
void RenderFinances();
#define FINANCES_DATA_FILE "TEMP\\finances.dat"
// the financial structure
struct finance{
UINT8 ubCode; // the code index in the finance code table
UINT32 uiIdNumber; // unique id number
UINT8 ubSecondCode; // secondary code
UINT32 uiDate; // time in the world in global time
INT32 iAmount; // the amount of the transaction
INT32 iBalanceToDate;
struct finance *Next; // next unit in the list
};
enum
{
ACCRUED_INTEREST,
ANONYMOUS_DEPOSIT,
TRANSACTION_FEE,
HIRED_MERC,
BOBBYR_PURCHASE,
PAY_SPECK_FOR_MERC,
MEDICAL_DEPOSIT,
IMP_PROFILE,
PURCHASED_INSURANCE,
REDUCED_INSURANCE,
EXTENDED_INSURANCE,
CANCELLED_INSURANCE,
INSURANCE_PAYOUT,
EXTENDED_CONTRACT_BY_1_DAY,
EXTENDED_CONTRACT_BY_1_WEEK,
EXTENDED_CONTRACT_BY_2_WEEKS,
DEPOSIT_FROM_GOLD_MINE,
DEPOSIT_FROM_SILVER_MINE,
PURCHASED_FLOWERS,
FULL_MEDICAL_REFUND,
PARTIAL_MEDICAL_REFUND,
NO_MEDICAL_REFUND,
PAYMENT_TO_NPC,
TRANSFER_FUNDS_TO_MERC,
TRANSFER_FUNDS_FROM_MERC,
TRAIN_TOWN_MILITIA,
PURCHASED_ITEM_FROM_DEALER,
MERC_DEPOSITED_MONEY_TO_PLAYER_ACCOUNT,
SOLD_ITEMS,
FACILITY_OPERATIONS, // HEADROCK HAM 3.6: Facility costs (daily payment)
MILITIA_UPKEEP, // HEADROCK HAM 3.6: Militia Upkeep Costs (daily payment)
PRISONER_RANSOM, // Flugente: ransom for released prisoners
WHO_SUBSCRIPTION, // Flugente: subscription do WHO data
PMC_CONTRACT, // Flugente: hired militia from a PMC
SAM_REPAIR, // Flugente: repair SAM site
WORKERS_TRAINED, // Flugente: train workers
PROMOTE_MILITIA, // Flugente: drill militia
MINI_EVENT, // rftr: mini events
TEXT_NUM_FINCANCES
};
typedef struct finance FinanceUnit;
typedef struct finance *FinanceUnitPtr;
extern FinanceUnitPtr pFinanceListHead;
//extern INT32 iCurrentBalance;
UINT32 AddTransactionToPlayersBook(UINT8 ubCode, UINT8 ubSecondCode, UINT32 uiDate, INT32 iAmount);
void InsertDollarSignInToString( STR16 pString );
void InsertCommasForDollarFigure( STR16 pString );
INT32 GetTodaysDaysIncome( void );
INT32 GetProjectedTotalDailyIncome( void );
INT32 GetProjectedExpenses( void ); // HEADROCK HAM 3.6: Projected daily expenses.
#endif