forked from mirror/OpenTTD
(svn r5946) -Add: merged the TGP branch to mainline. TGP adds:
- New optional landscape generator (TerraGenesis Perlin) - Load heightmaps (either BMP or PNG) - Progress dialog while generating worlds (no longer a 'hanging' screen) - New dialogs for NewGame, Create Scenario and Play Heightmap - Easier to configure your landscape - More things to configure (tree-placer, ..) - Speedup of world generation - New console command 'restart': restart the map EXACTLY as it was when you first started it (needs a game made after or with this commit) - New console command 'getseed': get the seed of your map and share it with others (of course only works with generated maps) - Many new, world generation related, things - Many internal cleanups and rewrites Many tnx to those people who helped making this: Belugas, DaleStan, glx, KUDr, RichK67, Rubidium, and TrueLight (alfabetic) Many tnx to those who helped testing: Arnau, Bjarni, and tokai (alfabetic) And to all other people who helped testing and sending comments / bugs Stats: 673 lines changed, 3534 new lines, 79 new strings
This commit is contained in:
12
engine.c
12
engine.c
@@ -30,6 +30,10 @@ enum {
|
||||
ENGINE_PREVIEWING = 4,
|
||||
};
|
||||
|
||||
enum {
|
||||
YEAR_ENGINE_AGING_STOPS = 2050,
|
||||
};
|
||||
|
||||
/** Bitmasked values of what type of cargo is refittable for the given vehicle-type.
|
||||
* This coupled with the landscape information (_landscape_global_cargo_mask) gives
|
||||
* us exactly what is refittable and what is not */
|
||||
@@ -135,6 +139,8 @@ void StartupEngines(void)
|
||||
{
|
||||
Engine *e;
|
||||
const EngineInfo *ei;
|
||||
/* Aging of vehicles stops, so account for that when starting late */
|
||||
const uint16 aging_date = min(_date, ConvertYMDToDate(YEAR_ENGINE_AGING_STOPS, 0, 1));
|
||||
|
||||
SetupEngineNames();
|
||||
|
||||
@@ -152,7 +158,7 @@ void StartupEngines(void)
|
||||
r = Random();
|
||||
e->intro_date = ei->base_intro <= ConvertYMDToDate(1922, 0, 1) ? ei->base_intro : (Date)GB(r, 0, 9) + ei->base_intro;
|
||||
if (e->intro_date <= _date) {
|
||||
e->age = (_date - e->intro_date) >> 5;
|
||||
e->age = (aging_date - e->intro_date) >> 5;
|
||||
e->player_avail = (byte)-1;
|
||||
e->flags |= ENGINE_AVAILABLE;
|
||||
}
|
||||
@@ -237,7 +243,7 @@ void EnginesDailyLoop(void)
|
||||
{
|
||||
EngineID i;
|
||||
|
||||
if (_cur_year >= 2050) return;
|
||||
if (_cur_year >= YEAR_ENGINE_AGING_STOPS) return;
|
||||
|
||||
for (i = 0; i != lengthof(_engines); i++) {
|
||||
Engine *e = &_engines[i];
|
||||
@@ -358,7 +364,7 @@ void EnginesMonthlyLoop(void)
|
||||
{
|
||||
Engine *e;
|
||||
|
||||
if (_cur_year < 2050) {
|
||||
if (_cur_year < YEAR_ENGINE_AGING_STOPS) {
|
||||
for (e = _engines; e != endof(_engines); e++) {
|
||||
// Age the vehicle
|
||||
if (e->flags & ENGINE_AVAILABLE && e->age != 0xFFFF) {
|
||||
|
Reference in New Issue
Block a user