rubidium@8116: /* $Id$ */ rubidium@8116: rubidium@8116: /** @file economy_func.h Functions related to the economy. */ rubidium@8116: rubidium@8116: #ifndef ECONOMY_FUNC_H rubidium@8116: #define ECONOMY_FUNC_H rubidium@8116: rubidium@8121: #include "core/geometry_type.hpp" rubidium@8116: #include "economy_type.h" rubidium@8119: #include "cargo_type.h" rubidium@8119: #include "vehicle_type.h" rubidium@8138: #include "tile_type.h" rubidium@8213: #include "town_type.h" rubidium@8213: #include "industry_type.h" rubidium@10208: #include "company_type.h" rubidium@8769: #include "station_type.h" rubidium@8116: rubidium@8116: void ResetPriceBaseMultipliers(); rubidium@8116: void SetPriceBaseMultiplier(uint price, byte factor); peter1138@9717: void ResetEconomy(); rubidium@8116: rubidium@8116: extern const ScoreInfo _score_info[]; rubidium@10207: extern int _score_part[MAX_COMPANIES][SCORE_END]; rubidium@8116: extern Economy _economy; rubidium@10207: extern Subsidy _subsidies[MAX_COMPANIES]; rubidium@8116: /* Prices and also the fractional part. */ rubidium@8116: extern Prices _price; rubidium@8116: extern uint16 _price_frac[NUM_PRICES]; rubidium@8119: extern Money _cargo_payment_rates[NUM_CARGO]; rubidium@8119: extern uint16 _cargo_payment_rates_frac[NUM_CARGO]; rubidium@8116: rubidium@10207: int UpdateCompanyRatingAndValue(Company *c, bool update); rubidium@8116: Pair SetupSubsidyDecodeParam(const Subsidy *s, bool mode); rubidium@8116: void DeleteSubsidyWithTown(TownID index); rubidium@8116: void DeleteSubsidyWithIndustry(IndustryID index); rubidium@8116: void DeleteSubsidyWithStation(StationID index); rubidium@8116: rubidium@8116: Money GetTransportedGoodsIncome(uint num_pieces, uint dist, byte transit_days, CargoID cargo_type); rubidium@8116: uint MoveGoodsToStation(TileIndex tile, int w, int h, CargoID type, uint amount); rubidium@8116: rubidium@8116: void VehiclePayment(Vehicle *front_v); rubidium@8116: void LoadUnloadStation(Station *st); rubidium@8116: peter1138@8626: Money GetPriceByIndex(uint8 index); peter1138@8626: rubidium@8116: #endif /* ECONOMY_FUNC_H */