tron@2186: /* $Id$ */ tron@2186: rubidium@8612: /** @file economy_func.h Functions related to the economy. */ belugas@6451: rubidium@8612: #ifndef ECONOMY_FUNC_H rubidium@8612: #define ECONOMY_FUNC_H rubidium@8612: rubidium@8617: #include "core/geometry_type.hpp" rubidium@8612: #include "economy_type.h" rubidium@8615: #include "cargo_type.h" rubidium@8615: #include "vehicle_type.h" rubidium@8634: #include "tile_type.h" rubidium@8709: #include "town_type.h" rubidium@8709: #include "industry_type.h" rubidium@8750: #include "player_type.h" rubidium@8612: rubidium@8612: struct Player; truelight@0: rubidium@6573: void ResetPriceBaseMultipliers(); peter1138@2508: void SetPriceBaseMultiplier(uint price, byte factor); peter1138@2506: ludde@2261: extern const ScoreInfo _score_info[]; rubidium@5838: extern int _score_part[MAX_PLAYERS][SCORE_END]; rubidium@8612: extern Economy _economy; rubidium@8612: extern Subsidy _subsidies[MAX_PLAYERS]; rubidium@8612: /* Prices and also the fractional part. */ rubidium@8612: extern Prices _price; rubidium@8612: extern uint16 _price_frac[NUM_PRICES]; rubidium@8615: extern Money _cargo_payment_rates[NUM_CARGO]; rubidium@8615: extern uint16 _cargo_payment_rates_frac[NUM_CARGO]; dominik@116: darkvater@147: int UpdateCompanyRatingAndValue(Player *p, bool update); rubidium@7814: Pair SetupSubsidyDecodeParam(const Subsidy *s, bool mode); rubidium@5566: void DeleteSubsidyWithTown(TownID index); rubidium@5566: void DeleteSubsidyWithIndustry(IndustryID index); rubidium@5566: void DeleteSubsidyWithStation(StationID index); truelight@0: rubidium@7450: Money GetTransportedGoodsIncome(uint num_pieces, uint dist, byte transit_days, CargoID cargo_type); peter1138@6676: uint MoveGoodsToStation(TileIndex tile, int w, int h, CargoID type, uint amount); truelight@0: rubidium@7061: void VehiclePayment(Vehicle *front_v); rubidium@7112: void LoadUnloadStation(Station *st); rubidium@7061: peter1138@9122: Money GetPriceByIndex(uint8 index); peter1138@9122: rubidium@8612: #endif /* ECONOMY_FUNC_H */