economy_func.h File Reference

Functions related to the economy. More...

#include "economy_type.h"
#include "station_type.h"
#include "cargo_type.h"
#include "vehicle_type.h"
#include "company_type.h"

Go to the source code of this file.

Functions

void ResetPriceBaseMultipliers ()
 Reset changes to the price base multipliers.
void SetPriceBaseMultiplier (Price price, int factor)
 Change a price base by the given factor.
int UpdateCompanyRatingAndValue (Company *c, bool update)
 if update is set to true, the economy is updated with this score (also the house is updated, should only be true in the on-tick event)
void StartupIndustryDailyChanges (bool init_counter)
 Initialize the variables that will maintain the daily industry change system.
Money GetTransportedGoodsIncome (uint num_pieces, uint dist, byte transit_days, CargoID cargo_type)
uint MoveGoodsToStation (CargoID type, uint amount, SourceType source_type, SourceID source_id, const StationList *all_stations)
void PrepareUnload (Vehicle *front_v)
 Prepare the vehicle to be unloaded.
void LoadUnloadStation (Station *st)
 Load/unload the vehicles in this station according to the order they entered.
Money GetPrice (Price index, uint cost_factor, const struct GRFFile *grf_file, int shift=0)
void InitializeEconomy ()
 Resets economy to initial values.
void RecomputePrices ()
 Computes all prices, payments and maximum loan.
void AddInflation (bool check_year=true)
 Add monthly inflation.

Variables

const ScoreInfo _score_info []
int _score_part [MAX_COMPANIES][SCORE_END]
Economy _economy
Prices _price


Detailed Description

Functions related to the economy.

Definition in file economy_func.h.


Function Documentation

void AddInflation ( bool  check_year  ) 

Add monthly inflation.

Parameters:
check_year Shall the inflation get stopped after 170 years?

Definition at line 600 of file economy.cpp.

References _cur_year, _settings_game, GameSettings::game_creation, MAX_INFLATION, min(), ORIGINAL_BASE_YEAR, ORIGINAL_MAX_YEAR, and GameCreationSettings::starting_year.

void LoadUnloadStation ( Station st  ) 

Load/unload the vehicles in this station according to the order they entered.

Parameters:
st the station to do the loading/unloading for

Definition at line 1398 of file economy.cpp.

References SmallVector< T, S >::Begin(), SmallVector< T, S >::Clear(), SmallVector< T, S >::End(), Station::goods, Station::loading_vehicles, LoadUnloadVehicle(), NUM_CARGO, and TriggerIndustryProduction().

void PrepareUnload ( Vehicle *  front_v  ) 

Prepare the vehicle to be unloaded.

Parameters:
front_v the vehicle to be unloaded

Definition at line 1090 of file economy.cpp.

References CargoPayment::CargoPayment(), ClrBit(), OUFB_NO_UNLOAD, and SetBit().

void SetPriceBaseMultiplier ( Price  price,
int  factor 
)

Change a price base by the given factor.

The price base is altered by factors of two. NewBaseCost = OldBaseCost * 2^n

Parameters:
price Index of price base to change.
factor Amount to change by.

Definition at line 749 of file economy.cpp.

References Clamp().

Referenced by FinalisePriceBaseMultipliers().

void StartupIndustryDailyChanges ( bool  init_counter  ) 

Initialize the variables that will maintain the daily industry change system.

Parameters:
init_counter specifies if the counter is required to be initialized

Definition at line 759 of file economy.cpp.

References MapLogX(), and MapLogY().

Referenced by Load_ECMY().

int UpdateCompanyRatingAndValue ( Company *  c,
bool  update 
)

if update is set to true, the economy is updated with this score (also the house is updated, should only be true in the on-tick event)

Parameters:
update the economy with calculated score
c company been evaluated
Returns:
actual score of this company

Definition at line 161 of file economy.cpp.

References CalculateCompanyValue(), Clamp(), ClampToI32(), CountBits(), BaseStation::facilities, max(), min(), BaseStation::owner, SCORE_END, SCORE_MAX, SCORE_TOTAL, SetWindowDirty(), Station::time_since_load, and Station::time_since_unload.

Referenced by CmdBuildCompanyHQ().


Generated on Thu Feb 4 17:20:32 2010 for OpenTTD by  doxygen 1.5.6