Commit Graph

279 Commits

Author SHA1 Message Date
Darkvater
dad5d5dd72 (svn r6774) -Codechange: Rename the badly named OWNER_SPECTATOR to PLAYER_SPECTATOR and
put it into player.h where it belongs (instead of map.h)
2006-10-14 15:49:43 +00:00
bjarni
238b34e000 (svn r6714) -Codechange: replaced a direct manipulation of windows with 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-10 08:14:30 +00:00
bjarni
08789dd3e8 (svn r6712) -Code cleanup: renamed buildtrain_d to buildvehicle_d as it's used for all vehicle types 2006-10-10 07:56:23 +00:00
bjarni
ea075f78e0 (svn r6651) -Coding feature: added the windowevent WE_INVALIDATE_DATA
This gives the ability to invalidate some window data and recalculate as needed instead of doing it for each WE_PAINT

   This event is called right away when using InvalidateWindowData(), so it may be a good idea to set a bool or similar in the window
     or similar and then act on that bool in WE_PAINT instead of doing a lot of stuff in WE_INVALIDATE_DATA as it might be called more than once before WE_PAINT is called

   InvalidateWindowData() will not automatically repaint the window, so if you want to repaint it as well, you need to mark it dirty as well.

   Made the depot windows use WE_INVALIDATE_DATA to set when to generate the engine and wagon lists instead of at each redraw
   It makes no sense to regenerate the list when say using the scrollbar if we know that no vehicle have entered or left the list

   NOTE: currently there is a piece of code to generate the list when it's not needed and compare it to the stored list and assert if they mismatch
    This check is somewhat slow and kills the whole idea of WE_INVALIDATE_DATA, so it's a short lived one to verify that InvalidateWindowData() is used everywhere where it's needed
2006-10-05 12:59:28 +00:00
bjarni
f8f0bd4943 (svn r6637) -Codechange: merged all (vehicle type)EnterDepot into VehicleEnterDepot()
This revealed duplicated code like aircraft lists got invalidated twice
   Moved invalidation of the vehicle detail window to VehicleServiceInDepot() as it should always be updated when serviced
2006-10-04 12:01:59 +00:00
bjarni
f7769e885e (svn r6513) -Codechange: unified the code to draw depot windows
This change is intended to make it easier to make depot behaviour consistent
   and faster to code when adding more features in the future
   The user interface should hopefully not be affected by this
2006-09-26 16:47:51 +00:00
Darkvater
80814dbb1d (svn r6406) -Codechange: Rename TileOffsByDir to TileOffsByDiagDir because it accepts
DiagDirections, and add TileOffsByDir that handles Directions.
-Codechange: Make the treeloop use TileOffsByDir().
2006-09-05 23:21:41 +00:00
glx
ec6189081d (svn r6395) -Fix: when converting a depot from/to elrail, update the power of trains that are in it 2006-09-05 16:40:23 +00:00
rubidium
63687763e9 (svn r6381) -Cleanup: make the '/* */' comments that span multiple lines more uniform.
-Cleanup: whitespace alignment of a few tables.
2006-09-04 20:40:33 +00:00
tron
d3f5b7da3e (svn r6268) Remove now pointless assignment (followup of r6267) 2006-08-31 12:19:32 +00:00
tron
f3c8020902 (svn r6267) Simplify the control flow in the rail tile loop by eliminating a bool flag and replacing it by a simple goto 2006-08-31 11:42:16 +00:00
tron
d16308810e (svn r6264) Get rid of a cast 2006-08-31 10:36:59 +00:00
tron
26b153b1df (svn r6251) Replace 2 bool variables by a simple switch 2006-08-31 06:46:52 +00:00
tron
e079decb99 (svn r6212) Remove dependency on window.h from station.h 2006-08-29 06:50:47 +00:00
rubidium
27cee58ab8 (svn r6204) -Cleanup: replace non-indentation with spaces; like '}<TAB>else {' -> '} else {', tabs between code and comment, etc. 2006-08-28 18:53:03 +00:00
truelight
f73a2829f3 (svn r6141) -Codechange: introduced DepotID and used it as much as possible
-Codechange: DeleteDepot removes a depot from the pool
-Codechange: DestroyDepot is called by DeleteDepot to remove all things where a depot depends on.
  Last 2 changes to prepare for new pool system. Not pretty now, will be soon.
-Codechange: Removed DoDeleteDepot as it was stupid
2006-08-26 14:44:55 +00:00
rubidium
480af9c917 (svn r6045) -Cleanup: align all table-like structures using spaces, i.e. whitespace fixes only except for a few comments to make them uniform for the whole enum/struct. 2006-08-22 14:38:37 +00:00
tron
012e144cc1 (svn r5864) -Feature: Also allow horizontal and vertical rails on steep slopes 2006-08-12 12:56:45 +00:00
tron
5f943a4ba7 (svn r5833) -Feature: Allow building of (certain) rails, roads and bridge ramps on steep sloped tiles 2006-08-10 14:44:32 +00:00
tron
3254155930 (svn r5794) Pass the TileIndex plus x and y coordinates into GetSlopeZ_* instead of a TileInfo 2006-08-06 16:32:49 +00:00
tron
7c9165827e (svn r5787) Rename width, height and unk of struct DrawTileSeqStruct to size_{x,y,z} 2006-08-06 08:23:19 +00:00
tron
635bfcd1c8 (svn r5771) Unify several code paths and data structures for drawing train depots and waypoints 2006-08-05 16:54:55 +00:00
tron
2bb9fd3901 (svn r5624) Use {IsPlainRailTile,IsRailDepot,IsRailWaypoint,HasSignals}() instead of GetRailTile{T,Subt}ype() - this is more concise and a bit more flexible if/when the rail tile encoding changes 2006-07-27 05:30:53 +00:00
tron
6c6494588e (svn r5618) Remove a redundant check, CheckTrackCombination() a few lines above performs the same test 2006-07-26 12:11:52 +00:00
tron
7ec704564a (svn r5582) Add and use AxisToTrack{Bits,}() 2006-07-22 08:59:52 +00:00
tron
43b9204d42 (svn r5500) Undo r4597, because it breaks the intended change of r5315 to prohibit building rails on a road tile while road works are in progress 2006-07-15 09:29:39 +00:00
truelight
26e1e8ce61 (svn r5497) -Fix: somehow in r5315 slipped some wrong logic, allowed you to build rail on all road pieces without really building it ;) 2006-07-14 18:14:08 +00:00
tron
2b7089c637 (svn r5396) - Remove two fixed parameters
- Simplify an expresssion: c ? f(x) : f(y) -> f(c ? x : y)
2006-06-28 06:10:20 +00:00
tron
2b27073156 (svn r5391) Miscellaneous, mostly bracing and whitespace, nothing spectacular 2006-06-27 21:25:53 +00:00
tron
f6b15f9fc4 (svn r5363) Revert 5312, 5288, 5248, 3992, 3249, 3228
They were all aimed at fixing the terraform-into-tunnel problem, but introduced new sideeffects while doing so
2006-06-25 17:39:19 +00:00
tron
9e28713c4c (svn r5326) Remove the indicator bit for custom waypoint graphics, because it just contains redundant information
Yup-yup-ed by: peter1138
2006-06-21 11:30:28 +00:00
tron
431baba8fe (svn r5315) -Fix: Prohibit altering a road tile while road works are in progress
This fixes some glitches like "turning" the excavation by adding/removing road bits or removing the road piece
2006-06-19 17:22:57 +00:00
tron
60e65953fc (svn r5308) Replace an array of function pointers with a switch: It's shorter, more comprehensible, less dependent on magic numbers 2006-06-18 09:37:08 +00:00
tron
0a72639c2d (svn r5210) Many small changes which piled up: const, unsigned, variable scope, CSE for readability, DeMorgan, if cascades -> switch, whitespace, parentheses, bracing, misc. 2006-06-10 08:37:41 +00:00
tron
be88e269b9 (svn r5155) - Remove the bridge branch merge (revision r5070) 2006-06-07 19:35:21 +00:00
celestar
25a63ec7af (svn r5070) Merged the bridge branch
-Feature: Bridges can now be placed above:
	Any railway track combination (excluding depots and waypoints)
	Any road combination (excluding depots)
	Clear tiles (duh), including fields
	Tunnel entrances
	Bridge heads

Thanks to Tron for idea and implementation, KUDr for the yapf synchronization and many others for hours of testing

There are still a number of visual problems remaining, especially when electric railways are on or under the bridge.
DO NOT REPORT THOSE BUGS FOR THE TIME BEING please.
2006-06-02 13:05:41 +00:00
KUDr
5e73dce0e7 (svn r4987) Feature: Merged YAPF into trunk. Thanks to devs for continuous support and users for testing. 2006-05-27 16:12:16 +00:00
tron
3282efda88 (svn r4940) Remove the dubious feature of remembering the last built depot. It serves no real purpose except causing confusion 2006-05-21 13:51:36 +00:00
tron
1706164ff7 (svn r4937) Reduce the use of _error_message a bit 2006-05-21 11:34:08 +00:00
tron
1dc8b1a00e (svn r4927) Replace 3 big ifs (which regard foundations) by a bit less confusing code 2006-05-20 18:03:22 +00:00
glx
62dbc36741 (svn r4906) - Fix: Refresh build vehicle window (if opened) when converting rail depot 2006-05-18 16:51:42 +00:00
tron
c9defc0fea (svn r4790) Remove slope magic from EnsureNoVehicleZ() and rename it to EnsureNoVehicleOnGround() to make more clear what it does 2006-05-09 09:56:09 +00:00
rubidium
e5bd292dab (svn r4789) - Codechange: rename RoadType to RoadTileType and ROAD_{NORMAL,CROSSING,DEPOT} to ROAD_TILE_* for consistency 2006-05-09 08:25:31 +00:00
rubidium
9b1bbf72ee (svn r4788) - Codechange: RAILTYPE_{NORMAL,ELECTRIC,...} and RAIL_TYPE_{NORMAL,SIGNAL,...} have nearly the same name, rename RAIL_TYPE_* to RAIL_TILE_* of extra clarity 2006-05-09 08:17:33 +00:00
peter1138
9208cd3f42 (svn r4770) - Revert unindented change to rail_cmd.c in r4769. 2006-05-07 11:49:48 +00:00
peter1138
d3fea69041 (svn r4769) - Newstations: add newstations ttdpatch flag 2006-05-07 11:41:44 +00:00
peter1138
31a54a6835 (svn r4767) - Newstations: fix loading / use of custom ground sprites 2006-05-07 10:58:53 +00:00
peter1138
f689b20874 (svn r4754) - Newstations: expose default station display data via a function so we can use it (rarely) in other places. 2006-05-06 20:33:22 +00:00
peter1138
b7e0ca4453 (svn r4748) - Newstations: use custom sprite layout callback for waypoints as well as stations. Supports merging of adjacent waypoints if the GRF supports it (newstatsw.grf) 2006-05-06 09:40:12 +00:00
peter1138
4963eb80b7 (svn r4739) - Newstations: remove cargo type parameter of GetCustomStationRelocation() as we can determine it internally 2006-05-04 19:21:16 +00:00