summaryrefslogtreecommitdiff
path: root/src/engine.cpp
AgeCommit message (Collapse)Author
2009-01-24(svn r15261) -Add: added Engine::GetRunningCost() to remove some code ↵glx
duplication. Also stops AIs decrementing vehicle counter of first company
2009-01-23(svn r15216) -Feature: native support for Transport Tycoon (Original) ↵smatz
savegames. Based on SVXConverter's source code and documentation by Roman Vetter
2009-01-13(svn r15077) -Codechange: enumify DAYS_IN_YEAR and DAYS_IN_LEAP_YEARsmatz
-Change: when computing daily running cost, divide by 365 (instead of 364). Since r12134, the rounding errors don't need this correction anymore
2009-01-12(svn r15027) -Merge: tomatos and bananas left to be, here is NoAI for all to ↵truebrain
see. NoAI is an API (a framework) to build your own AIs in. See: http://wiki.openttd.org/wiki/index.php/AI:Main_Page With many thanks to: - glx and Rubidium for their syncing, feedback and hard work - Yexo for his feedback, patches, and AIs which tested the system very deep - Morloth for his feedback and patches - TJIP for hosting a challenge which kept NoAI on track - All AI authors for testing our AI API, and all other people who helped in one way or another -Remove: all old AIs and their cheats/hacks
2009-01-10(svn r14958) -Codechange [FS#1923]: when checking for unique names, compare ↵smatz
only with manually set names There are situations that aren't solvable (because of different language files), so if the user really wants to have duplicated name, allow him to do so. It solves desyncs between server and clients using different languages. It behaves the same in SP and MP, so users won't see the different behaviour as a bug (and even checking in SP could be worked around by the user).
2009-01-08(svn r14926) -Feature: Automatically set last engine ageing year to the last ↵peter1138
'introduction year plus half model life', to allow engines later than 2050 to appear.
2009-01-04(svn r14828) -Codechange: move most of save/load-specific code to separate filessmatz
2008-12-28(svn r14754) -Codechange: get rid of _cmd_text and just pass it as ↵rubidium
(optional) parameter.
2008-12-24(svn r14735) -Codechange: remove a bit of bit-waste in the map array ↵rubidium
(without changing the map array) and make the CompanyIDs contiguous. -Note: 15 should be enough for now... making it any more means adding more bytes to the map array and thus wasting more bits instead of reducing the bit waste.
2008-12-23(svn r14732) -Codechange: replace some magic number with less magic ↵rubidium
constants and use the proper type for a few variables.
2008-12-16(svn r14683) -Change: only say a engine/vehicle is refittable when it can be ↵rubidium
refitted to at least two cargo type or when it has subcargos. NOTE: it is still possible that a vehicle is marked refittable when there is nothing to refit to, e.g. when only one subcargo is available but that cannot be determined without a vehicle chain.
2008-12-16(svn r14680) -Feature(ette) [FS#2434]: Use property 4 (model life) also for ↵frosch
wagons. Setting property 4 to 0xFF will protect the vehicle (engine or wagon) from expireing. (Necessary since early introduction dates) Savegames will only be affected after 'resetengines'.
2008-09-30(svn r14422) -Codechange: also reflect the changes of r14421 in the filenames.rubidium
2008-09-30(svn r14421) -Codechange: rename all player variables/types to company *or* ↵rubidium
client so it is immediatelly clear which one you are working with.
2008-09-15(svn r14334) -Feature: ability to reset name to default/automatic value (for ↵smatz
vehicles, engines, towns, groups, stations, waypoints, managers and companies)
2008-09-13(svn r14313) -Codechange: Move functions dealing with the EngineRenew pool ↵frosch
to their own file.
2008-08-28(svn r14182) -Fix: After applying NewGRF settings, all rail and road types ↵peter1138
were available as the engine availability check was performed too early.
2008-08-13(svn r14064) -Fix [FS#1752]: check for the length of strings (in bytes) in ↵rubidium
the command. Checking for the length in pixels is impossible because that differs per client.
2008-07-25(svn r13825) -Revert (r13821 partially): preview_player_rank wasn't a ↵peter1138
PlayerByte value in r12143, and still isn't a PlayerByte value.
2008-07-25(svn r13821) -Codechange: replace some uint8/bytes with more specificly ↵rubidium
named typedefs and replace a few magic numbers.
2008-07-18(svn r13731) -Codechange: make a pool of the array of players.rubidium
2008-06-05(svn r13388) -Codechange: Remove "my invented flag for something that is a ↵peter1138
wagon"
2008-05-29(svn r13331) -Fix (r12924): Wrong include type for (sdt::)mappeter1138
2008-05-29(svn r13325) -Codechange: split the client-side only settings from the ↵rubidium
settings stored in the savegame so there is no need to have a duplicate copy of it for new games.
2008-05-27(svn r13287) -Codechange: move engine list gui code away from engine.cpp ↵peter1138
(and its headers) to engine_gui.cpp
2008-05-25(svn r13255) -Codechange: move _opt to _settings.rubidium
2008-05-25(svn r13251) -Codechange: rename _patches to _settings as that is more logic.rubidium
-Codechange: move all Settings into substructs of _settings in a way that they are logically grouped.
2008-05-18(svn r13168) -Fix (r13072): forgot to 'fix' EngList_SortPartial() together ↵smatz
with EngList_Sort()
2008-05-15(svn r13100) -Codechange: reduce the amount of parameters passed via ↵rubidium
AddNewsMessage as there is (for each news message type) a tuple of 4 parameters that is the same for all calls.
2008-05-14(svn r13089) -Fix (r13072): MorphOS compilation was brokensmatz
2008-05-14(svn r13086) -Fix: do not crash badly after loading a newgrf with engines ↵smatz
in-game that often
2008-05-13(svn r13077) -Codechange: move function that updates cached num_engines to ↵smatz
engine.cpp, make it run only 1 loop
2008-05-13(svn r13072) -Fix (r12995): possible out-of-bounds accesssmatz
2008-05-13(svn r13065) -Codechange: remove the need for the news string callbacks. ↵rubidium
Patch by Cirdan.
2008-05-07(svn r12995) -Codechange: use std::vector for EngineList instead of C/C++ ↵smatz
wrapper for CBlobT
2008-05-06(svn r12971) -Documentation: add @file in files that missed them and add ↵rubidium
something more than whitespace as description of files that don't have a description.
2008-04-29(svn r12924) -Feature: Introducing the so called 'engine pool' which ↵peter1138
primarily removes the fixed engine type limits and also happens to allow (with the patch option 'dynamic_engines') multiple NewGRF vehicle sets to coexist.
2008-04-23(svn r12855) -Codechange: do not use autoptr's for testing whether certain ↵rubidium
objects can be build, but check it directly in the pool so we do not have to call destructors in the testing phase. Stations still use the autoptr though.
2008-04-06(svn r12599) -Codechange: force AllocateSafeRaw() to be linked to simplify ↵smatz
compiler's decisions about inlining
2008-03-31(svn r12490) -Codechange: rename engine.h to engine_func.h and remove ↵rubidium
unneeded inclusions of engine.h and/or replace them with engine_type.h.
2008-03-28(svn r12459) -Codechange: split news.h into news_type.h and news_func.h.rubidium
2008-02-25(svn r12244) -Fix (r12150): typo resulting in no players are given the ↵smatz
engine preview offer
2008-02-15(svn r12150) -Fix (r12143): compiler warnings - possible use of ↵smatz
uninitialised variable
2008-02-15(svn r12143) -Fix (r8038): Engine::preview_player does not contain a Player ↵peter1138
ID. Rename this to preview_player_rank and change back to a uint8 to avoid confusion.
2008-02-08(svn r12084) -Fix: 'Early retirement'-properties are signed.frosch
2008-02-04(svn r12054) -Cleanup: Use VehicleType instead of byte for vehicle types...peter1138
2008-01-24(svn r11971) -Codechange: use of FOR_ALL_ENGINES/ENGINEIDS_OF_TYPE instead ↵peter1138
of for-loops
2008-01-24(svn r11970) -Cleanup: Remove old commentpeter1138
2008-01-16(svn r11872) -Fix (r9874): EngineHasReplacementForPlayer() didn't look in ↵bjarni
ALL_GROUP
2008-01-13(svn r11834) -Codechange: only include settings_type.h if needed.rubidium