diff --git a/src/addresses.h b/src/addresses.h index b23ef7ac73..2238a58c3a 100644 --- a/src/addresses.h +++ b/src/addresses.h @@ -207,20 +207,10 @@ #define RCT2_ADDRESS_SPRITE_LIST 0x010E63BC #define RCT2_ADDRESS_SPRITE_LISTS_HEAD 0x013573BC #define RCT2_ADDRESS_SPRITE_LISTS_COUNT 0x013573C8 -#define RCT2_ADDRESS_INITIAL_CASH 0x013573DC -#define RCT2_ADDRESS_CURRENT_LOAN 0x013573E0 -#define RCT2_ADDRESS_MAXIMUM_LOAN 0x013580F0 #define RCT2_ADDRESS_LOAN_HASH 0x013587C4 #define RCT2_ADDRESS_LAST_RESEARCHED_ITEM_SUBJECT 0x01357CF4 -#define RCT2_ADDRESS_BALANCE_HISTORY 0x0135812C -#define RCT2_ADDRESS_CURRENT_EXPENDITURE 0x0135832C -#define RCT2_ADDRESS_CURRENT_PROFIT 0x01358330 -#define RCT2_ADDRESS_WEEKLY_PROFIT_HISTORY 0x0135833C #define RCT2_ADDRESS_CURRENT_PARK_VALUE 0x0135853C -#define RCT2_ADDRESS_PARK_VALUE_HISTORY 0x01358540 #define RCT2_ADDRESS_AWARD_LIST 0x01358760 -#define RCT2_ADDRESS_CURRENT_MONEY_ENCRYPTED 0x013587F8 -#define RCT2_ADDRESS_CURRENT_INTEREST_RATE 0x0135934A #define RCT2_ADDRESS_SAME_PRICE_THROUGHOUT 0x01358838 #define RCT2_ADDRESS_LAST_ENTRANCE_STYLE 0x01358840 #define RCT2_ADDRESS_SAME_PRICE_THROUGHOUT_EXTENDED 0x0135934C @@ -231,7 +221,6 @@ #define RCT2_ADDRESS_PEEP_SPAWNS 0x013573F2 #define RCT2_ADDRESS_CURRENT_RESEARCH_LEVEL 0x013573FF -#define RCT2_ADDRESS_EXPENDITURE_TABLE 0x01357848 #define RCT2_ADDRESS_HANDYMAN_COLOUR 0x01357BCD #define RCT2_ADDRESS_MECHANIC_COLOUR 0x01357BCE @@ -276,9 +265,6 @@ #define RCT2_ADDRESS_RIDE_COUNT 0x013587C8 #define RCT2_ADDRESS_RIDE_FLAGS 0x0097CF40 -#define RCT2_ADDRESS_WEEKLY_PROFIT_AVERAGE_DIVIDEND 0x01358334 -#define RCT2_ADDRESS_WEEKLY_PROFIT_AVERAGE_DIVISOR 0x01358338 - //How many ticks the scenario has existed for #define RCT2_ADDRESS_SAVED_AGE 0x01388698 #define RCT2_ADDRESS_SAVED_VIEW_X 0x0138869A @@ -564,6 +550,19 @@ #define RCT2_ADDRESS_SCENERY_TOOL_CTRL_PRESSED 0x00F64F12 #define RCT2_ADDRESS_SCENERY_TOOL_SHIFT_PRESSED 0x00F64F13 +#define RCT2_ADDRESS_INITIAL_CASH 0x013573DC +#define RCT2_ADDRESS_CURRENT_LOAN 0x013573E0 +#define RCT2_ADDRESS_MAXIMUM_LOAN 0x013580F0 +#define RCT2_ADDRESS_CURRENT_EXPENDITURE 0x0135832C +#define RCT2_ADDRESS_CURRENT_PROFIT 0x01358330 +#define RCT2_ADDRESS_CURRENT_MONEY_ENCRYPTED 0x013587F8 +#define RCT2_ADDRESS_CURRENT_INTEREST_RATE 0x0135934A +#define RCT2_ADDRESS_WEEKLY_PROFIT_AVERAGE_DIVIDEND 0x01358334 +#define RCT2_ADDRESS_WEEKLY_PROFIT_AVERAGE_DIVISOR 0x01358338 +#define RCT2_ADDRESS_BALANCE_HISTORY 0x0135812C +#define RCT2_ADDRESS_WEEKLY_PROFIT_HISTORY 0x0135833C +#define RCT2_ADDRESS_PARK_VALUE_HISTORY 0x01358540 +#define RCT2_ADDRESS_EXPENDITURE_TABLE 0x01357848 #define RCT2_ADDRESS_GUEST_CHANGE_MODIFIER 0x013573FE #define RCT2_ADDRESS_LAST_GUESTS_IN_PARK 0x01357BC8 #define RCT2_ADDRESS_NEXT_GUEST_NUMBER 0x013B0E6C diff --git a/src/management/finance.c b/src/management/finance.c index 5c3220b829..3fa565b794 100644 --- a/src/management/finance.c +++ b/src/management/finance.c @@ -47,10 +47,19 @@ const money32 research_cost_table[4] = { int dword_988E60[] = { 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0 }; -money32 *gCashHistory = RCT2_ADDRESS(RCT2_ADDRESS_BALANCE_HISTORY, money32); -money32 *gWeeklyProfitHistory = RCT2_ADDRESS(RCT2_ADDRESS_WEEKLY_PROFIT_HISTORY, money32); -money32 *gParkValueHistory = RCT2_ADDRESS(RCT2_ADDRESS_PARK_VALUE_HISTORY, money32); -money32 *gExpenditureTable = RCT2_ADDRESS(RCT2_ADDRESS_EXPENDITURE_TABLE, money32); +money32 gInitialCash; +money32 gCashEncrypted; +money32 gBankLoan; +uint8 gBankLoanInterestRate; +money32 gMaxBankLoan; +money32 gCurrentExpenditure; +money32 gCurrentProfit; +money32 gWeeklyProfitAverageDividend; +uint16 gWeeklyProfitAverageDivisor; +money32 gCashHistory[128]; +money32 gWeeklyProfitHistory[128]; +money32 gParkValueHistory[128]; +money32 gExpenditureTable[RCT_EXPENDITURE_TYPE_COUNT]; uint8 gCommandExpenditureType; diff --git a/src/management/finance.h b/src/management/finance.h index b304293bea..8af0cc9d9d 100644 --- a/src/management/finance.h +++ b/src/management/finance.h @@ -42,23 +42,22 @@ enum { #define EXPENDITURE_TABLE_MONTH_COUNT 16 #define EXPENDITURE_TABLE_TOTAL_COUNT (EXPENDITURE_TABLE_MONTH_COUNT * RCT_EXPENDITURE_TYPE_COUNT) -#define gInitialCash RCT2_GLOBAL(RCT2_ADDRESS_INITIAL_CASH, money32) -#define gCashEncrypted RCT2_GLOBAL(RCT2_ADDRESS_CURRENT_MONEY_ENCRYPTED, money32) -#define gBankLoan RCT2_GLOBAL(RCT2_ADDRESS_CURRENT_LOAN, money32) -#define gBankLoanInterestRate RCT2_GLOBAL(RCT2_ADDRESS_CURRENT_INTEREST_RATE, sint8) -#define gMaxBankLoan RCT2_GLOBAL(RCT2_ADDRESS_MAXIMUM_LOAN, money32) -#define gCurrentExpenditure RCT2_GLOBAL(RCT2_ADDRESS_CURRENT_EXPENDITURE, money32) -#define gCurrentProfit RCT2_GLOBAL(RCT2_ADDRESS_CURRENT_PROFIT, money32) -#define gWeeklyProfitAverageDividend RCT2_GLOBAL(RCT2_ADDRESS_WEEKLY_PROFIT_AVERAGE_DIVIDEND, money32) -#define gWeeklyProfitAverageDivisor RCT2_GLOBAL(RCT2_ADDRESS_WEEKLY_PROFIT_AVERAGE_DIVISOR, uint16) - extern const money32 research_cost_table[4]; extern const money32 wage_table[4]; -extern money32 *gCashHistory; -extern money32 *gWeeklyProfitHistory; -extern money32 *gParkValueHistory; -extern money32 *gExpenditureTable; +extern money32 gInitialCash; +extern money32 gCashEncrypted; +extern money32 gBankLoan; +extern uint8 gBankLoanInterestRate; +extern money32 gMaxBankLoan; +extern money32 gCurrentExpenditure; +extern money32 gCurrentProfit; +extern money32 gWeeklyProfitAverageDividend; +extern uint16 gWeeklyProfitAverageDivisor; +extern money32 gCashHistory[128]; +extern money32 gWeeklyProfitHistory[128]; +extern money32 gParkValueHistory[128]; +extern money32 gExpenditureTable[RCT_EXPENDITURE_TYPE_COUNT]; extern uint8 gCommandExpenditureType;