summaryrefslogtreecommitdiff
path: root/engine.c
AgeCommit message (Collapse)Author
2006-12-26(svn r7565) -Codechange: Rework DEBUG functionality. Look for appropiate ↵Darkvater
debugging levels to use in debug.h. grfmsg() is now used as a specific debug-function for grf.
2006-12-03(svn r7331) - Codechange: Rename all memory pool macro's and types to "old ↵matthijs
pool", so the new pool implementation can be committed alongside it. - Codechange: Rename pool.[ch] to oldpool.[ch].
2006-12-03(svn r7330) -Fix (r7304): Data invalidation doesn't always happen as the local peter1138
player, resulting in an empty vehicle purchase list. Specify the player as an argument to IsEngineBuildable()
2006-11-06(svn r7079) -Codechange: Move an array to the only place it is used.peter1138
2006-10-28(svn r6977) Use the pool macros for the EngineRenew pooltron
2006-10-14(svn r6774) -Codechange: Rename the badly named OWNER_SPECTATOR to ↵Darkvater
PLAYER_SPECTATOR and put it into player.h where it belongs (instead of map.h)
2006-10-14(svn r6771) -Codechange: Replace two macros with functions. IS_HUMAN_PLAYER andDarkvater
IS_INTERACTIVE_PLAYER
2006-10-10(svn r6714) -Codechange: replaced a direct manipulation of windows with ↵bjarni
InvalidateWindowData() in rail_cmd.c Moved the actual modification of railtype to WE_INVALIDATE_DATA in the train depot handler -Codechange: added SetWindowDirty() to WE_INVALIDATE_DATA as it made no sense to update the list without making the window dirty
2006-10-07(svn r6681) -Fix: when vehicles never expire they will stay at peak ↵bjarni
reliability instead of the lowest to make them useful even when old -Fix: when retiring an engine design, invalidate the build windows and invalidate the build window data -Fix: mark build windows dirty when engine reliability changes
2006-10-07(svn r6680) -Codechange r6679: [train build window] only generate the list ↵bjarni
when the window data is invalidated or the window is generated, not on each redraw
2006-09-04(svn r6381) -Cleanup: make the '/* */' comments that span multiple lines ↵rubidium
more uniform. -Cleanup: whitespace alignment of a few tables.
2006-08-28(svn r6195) -Codechange: do not use '//' in '/* ... */' style comments and ↵rubidium
'/*' or '*/' in '//' style comments.
2006-08-26(svn r6137) -Codechange: some very minor cleanups:truelight
- Start using DeleteXXX for every pool item, not manually doing it - Use some wrapper to improve logic - Rewrote some pieces to improve logic
2006-08-22(svn r6059) -Fix(r6049): FOR_ALL was not use to not skip invalid items, so ↵glx
really don't skip invalid items :)
2006-08-22(svn r6049) -Codechange: forgot EngineRenew in r6047truelight
-Codechange: cleaned up the EngineRenew code a bit (coding style mostly) -Codechange: forgot the correct comment in station_cmd -Codechange: move pool-stuff to engine.h, like we always do
2006-08-22(svn r6047) -Codechange: FOR_ALL now _only_ loops valid items, and skips ↵truelight
invalid ones -Codechange: use IsValidXXX where ever possible Note: both changes to prepare for new pool system, which needs those changes. For every pool there are 2 ugly lines, which will be removed when done implementing new pool system. Based on FS#13 by blathijs, partly implemented.
2006-08-22(svn r6045) -Cleanup: align all table-like structures using spaces, i.e. ↵rubidium
whitespace fixes only except for a few comments to make them uniform for the whole enum/struct.
2006-08-20(svn r5999) -Feature: change the original date format to a 32 bits format ↵rubidium
based at the year 0. The game date subsystem now allows someone to start in the year 0 and continue up to the year 5 000 000. However, you currently cannot build anything before 1920 as there is no newgrf support for dates before 1920 or after 2090 yet.
2006-08-20(svn r5975) -Cleanup: use ORIGINAL_BASE_YEAR & ORIGINAL_MAX_YEAR where the ↵rubidium
functions really depend on the original date format. -Cleanup: use DAYS_TILL_ORIGINAL_BASE_YEAR where the date variables are in the old date format and conversions are needed. -Cleanup: replace one (forgotten) instance of uint16 with Date.
2006-08-19(svn r5946) -Add: merged the TGP branch to mainline. TGP adds:truelight
- 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
2006-08-17(svn r5934) -Cleanup: forgot some conversions to Year and to Daterubidium
-Cleanup: use _cur_year instead of _date for some (year based) comparisons -Cleanup: remove a magic number in favour of another (less) magic number
2006-08-16(svn r5926) -Codechange: make _cur_year contain the full year, instead of ↵rubidium
the offset since 1920 -Codechange: store all year related variables that are _not_ stored in a savegame/transported over the network in the same format as _cur_year
2006-08-14(svn r5887) -Cleanup: move date related functions, defines and variables to ↵rubidium
date.[ch] -Cleanup: fix whitespace related coding style issues in date.[ch] -Cleanup: make original comments doxygen compatible and remove/change outdated comments
2006-07-26(svn r5609) CodeChange : Apply coding stylebelugas
2006-06-27(svn r5391) Miscellaneous, mostly bracing and whitespace, nothing spectaculartron
2006-05-18(svn r4902) Newgrf : Introduction of the newgrf_cargo files. belugas
Clearing engine and newgrf_engine from cargo related structures. Apart from moving stuff cargo related, there is nothing really newcargo for now.
2006-05-17(svn r4901) - Codechange: change 'SpriteGroup *' to 'struct SpriteGroup *' ↵peter1138
within StationSpec and GRFFile struct declarations. Now only code which actually references those pointers needs to know about the SpriteGroup struct. Remove some unnecessary lingering header dependencies.
2006-04-18(svn r4471) - Pools: Add a facility for calling a custom function during ↵peter1138
pool block clean up.
2006-04-10(svn r4342) Change the first two parameters of commands - virtual pixel ↵tron
coordinates of the tile to operate on - to a TileIndex Remove DoCommandByTile(), because now it does the same as DoCommand()
2006-03-16(svn r3895) - Add proper SLE(G)_CONDNULL macros for the empty space ↵Darkvater
reservation in savegames and update where used - Also add this capability to settings
2006-02-20(svn r3627) - Change all hardcoded 255 max-saveload versions with the define ↵Darkvater
SL_MAX_VERSION
2006-02-06(svn r3565) - Fix: On loading a game, GetPlayerRailtypes() didn't account ↵peter1138
for the fact that vehicles are introduced a year after their introduction date. This will also relieve possible (rare) network desyncs.
2006-02-03(svn r3524) - Split newgrf features from engine.[ch] into ↵peter1138
newgrf_engine.[ch], and add the new files to project files.
2006-02-01(svn r3510) Fiddle with whitespace and parenthesestron
2006-01-24(svn r3423) - NewGRF: Update the base_intro age at which an engine will have ↵peter1138
a randomized intro date, as per (the now updated) spec.
2006-01-19(svn r3410) - NewGRF fix: Only add a random number of days to an engine's ↵peter1138
base introduction date if that date is not 0.
2006-01-12(svn r3396) - Autoreplace changes:peter1138
- Change fixed array per player to a single pool. This avoids future problems with vehicle numbers and decreases savegame size. Engine replacements from previous savegames will be lost. - Move engine replacement code from players.c to engine.c. (thanks to blathijs for rewriting this)
2006-01-06(svn r3378) - NewGRF Fix: Use order status to determine whether a vehicle is ↵peter1138
loading instead of speed, and get that state from first vehicle in a train consist.
2006-01-05(svn r3365) Staticise 36 functionstron
2005-12-18(svn r3316) - NewGRF: Unload engine names before loading grf files. This ↵peter1138
fixes names in climates where the engines don't get loaded. Renamed function to reflect its purpose.
2005-12-15(svn r3308) BADtron
foo.h: int bar; GOOD foo.h: extern int bar; foo.c: int bar;
2005-12-02(svn r3252) - NewGRF: Map new train subtypes to old types for rail vehicles.peter1138
2005-11-14(svn r3181) -Bracingtron
-Indentation -Whitespace -DeMorgan's Law -Test with NULL or 0 for non-booleans -'\0' instead of 0 for chars -Remove redundantly redundant comments (like DoFoo(); // Do foo) -Join multiple short lines with a single statement -Split single lines with multiple statements -Avoid assignments in if
2005-11-06(svn r3148) -NewGRF, Feature: Add support for cargo refitting specification ↵peter1138
by cargo classes.
2005-11-05(svn r3139) -NewGRF, Feature: support for articulated rail vehicles. This is ↵peter1138
used, for example, by coal tenders.
2005-11-03(svn r3126) Autoreplace: Only the first vehicle in a chain should be marked ↵peter1138
as entering a depot, so call moved out of DoVehicleTrigger loop.
2005-10-31(svn r3111) -Fix: [autoreplace] [ 1341783 ] Assertion failure in vehicle.c ↵bjarni
line 378 running MaybeReplaceVehicle() is now delayed until after the loop in CallVehicleTicks() This avoids selling the vehicle the loop currently works with (and continues to work with afterwards)
2005-10-22(svn r3077) static, const, bracing, indentation, 0 -> '\0'/NULL, typos in ↵tron
comments, excess empty lines, minor other changes nothing spectacular, just some stuff, which piled up
2005-10-18(svn r3059) Use bitfields to encode railtype and climates of engines instead ↵tron
of manual shifting/anding
2005-10-04(svn r3017) -NewGRF: Implement sprite group unreferencing and unloading.peter1138