Files
@ r2171:969c16b625b3
Branch filter:
Location: cpp/openttd-patchpack/source/economy.h - annotation
r2171:969c16b625b3
2.0 KiB
text/x-c
(svn r2685) -Codechange: Split the music/sound/video drivers into separate files and move them into subfolders.
This results in shorter and hopefully easier to maintain files.
Note: I had to change paths in #include statements of some unrelated files, because I added the ottd base directory to the include path (-I.)
This results in shorter and hopefully easier to maintain files.
Note: I had to change paths in #include statements of some unrelated files, because I added the ottd base directory to the include path (-I.)
r0:d63b455452f6 r0:d63b455452f6 r0:d63b455452f6 r0:d63b455452f6 r0:d63b455452f6 r0:d63b455452f6 r0:d63b455452f6 r0:d63b455452f6 r0:d63b455452f6 r0:d63b455452f6 r0:d63b455452f6 r0:d63b455452f6 r0:d63b455452f6 r0:d63b455452f6 r0:d63b455452f6 r0:d63b455452f6 r0:d63b455452f6 r0:d63b455452f6 r0:d63b455452f6 r0:d63b455452f6 r820:b2b538ba23ae r820:b2b538ba23ae r0:d63b455452f6 r0:d63b455452f6 r0:d63b455452f6 r116:e56e45d1abc8 r116:e56e45d1abc8 r116:e56e45d1abc8 r116:e56e45d1abc8 r116:e56e45d1abc8 r116:e56e45d1abc8 r116:e56e45d1abc8 r116:e56e45d1abc8 r116:e56e45d1abc8 r116:e56e45d1abc8 r116:e56e45d1abc8 r116:e56e45d1abc8 r116:e56e45d1abc8 r193:6aa65dc5a4b4 r116:e56e45d1abc8 r116:e56e45d1abc8 r116:e56e45d1abc8 r116:e56e45d1abc8 r116:e56e45d1abc8 r116:e56e45d1abc8 r116:e56e45d1abc8 r116:e56e45d1abc8 r116:e56e45d1abc8 r116:e56e45d1abc8 r116:e56e45d1abc8 r179:a6c2cb1ce7db r179:a6c2cb1ce7db r179:a6c2cb1ce7db r179:a6c2cb1ce7db r116:e56e45d1abc8 r179:a6c2cb1ce7db r179:a6c2cb1ce7db r179:a6c2cb1ce7db r179:a6c2cb1ce7db r179:a6c2cb1ce7db r116:e56e45d1abc8 r116:e56e45d1abc8 r116:e56e45d1abc8 r116:e56e45d1abc8 r147:612ed080a7f6 r147:612ed080a7f6 r116:e56e45d1abc8 r116:e56e45d1abc8 r0:d63b455452f6 r0:d63b455452f6 r820:b2b538ba23ae r820:b2b538ba23ae r240:da729723796c r0:d63b455452f6 r0:d63b455452f6 r1977:1f8b99c96041 r0:d63b455452f6 r0:d63b455452f6 | #ifndef ECONOMY_H
#define ECONOMY_H
typedef struct {
// Maximum possible loan
int32 max_loan;
int32 max_loan_unround;
// Economy fluctuation status
int fluct;
// Interest
byte interest_rate;
byte infl_amount;
byte infl_amount_pr;
} Economy;
VARDEF Economy _economy;
typedef struct Subsidy {
byte cargo_type;
byte age;
uint16 from;
uint16 to;
} Subsidy;
enum {
SCORE_VEHICLES = 0,
SCORE_STATIONS = 1,
SCORE_MIN_PROFIT = 2,
SCORE_MIN_INCOME = 3,
SCORE_MAX_INCOME = 4,
SCORE_DELIVERED = 5,
SCORE_CARGO = 6,
SCORE_MONEY = 7,
SCORE_LOAN = 8,
SCORE_TOTAL = 9, // This must always be the last entry
NUM_SCORE = 10, // How many scores are there..
SCORE_MAX = 1000, // The max score that can be in the performance history
// the scores together of score_info is allowed to be more!
};
typedef struct ScoreInfo {
byte id; // Unique ID of the score
int needed; // How much you need to get the perfect score
int score; // How much score it will give
} ScoreInfo;
static const ScoreInfo score_info[] = {
{SCORE_VEHICLES, 120, 100},
{SCORE_STATIONS, 80, 100},
{SCORE_MIN_PROFIT, 10000, 100},
{SCORE_MIN_INCOME, 50000, 50},
{SCORE_MAX_INCOME, 100000, 100},
{SCORE_DELIVERED, 40000, 400},
{SCORE_CARGO, 8, 50},
{SCORE_MONEY, 10000000, 50},
{SCORE_LOAN, 250000, 50},
{SCORE_TOTAL, 0, 0}
};
int _score_part[MAX_PLAYERS][NUM_SCORE];
int UpdateCompanyRatingAndValue(Player *p, bool update);
void UpdatePlayerHouse(Player *p, uint score);
VARDEF Subsidy _subsidies[MAX_PLAYERS];
Pair SetupSubsidyDecodeParam(Subsidy *s, bool mode);
void DeleteSubsidyWithIndustry(uint16 index);
void DeleteSubsidyWithStation(uint16 index);
void RemoteSubsidyAdd(Subsidy *s_new);
int32 GetTransportedGoodsIncome(uint num_pieces, uint dist, byte transit_days, byte cargo_type);
uint MoveGoodsToStation(TileIndex tile, int w, int h, int type, uint amount);
#endif /* ECONOMY_H */
|