Commit Graph

292 Commits

Author SHA1 Message Date
tron
e774caca2a (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
2b17d16ce2 (svn r4937) Reduce the use of _error_message a bit 2006-05-21 11:34:08 +00:00
tron
b95c1faca9 (svn r4927) Replace 3 big ifs (which regard foundations) by a bit less confusing code 2006-05-20 18:03:22 +00:00
glx
d2c8412e50 (svn r4906) - Fix: Refresh build vehicle window (if opened) when converting rail depot 2006-05-18 16:51:42 +00:00
tron
1be0d9926e (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
2a337ab009 (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
3dae1a9bba (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
f324715c55 (svn r4770) - Revert unindented change to rail_cmd.c in r4769. 2006-05-07 11:49:48 +00:00
peter1138
7e0ca9489d (svn r4769) - Newstations: add newstations ttdpatch flag 2006-05-07 11:41:44 +00:00
peter1138
9d6ddd364e (svn r4767) - Newstations: fix loading / use of custom ground sprites 2006-05-07 10:58:53 +00:00
peter1138
09bb8ba10c (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
3cdd2a637b (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
e5d936d0fe (svn r4739) - Newstations: remove cargo type parameter of GetCustomStationRelocation() as we can determine it internally 2006-05-04 19:21:16 +00:00
peter1138
c722c88f43 (svn r4723) - Newstations: add TileIndex parameter to station resolver. 2006-05-03 21:19:21 +00:00
peter1138
62e6493dd0 (svn r4719) - Newstations: instead of drawing nothing, fall back to the default sprite layout if a station layout specifies so. 2006-05-03 20:35:41 +00:00
belugas
3ac1832fd1 (svn r4593) CodeChange : Renamed spec (when using StationSpec) to statspec.
This is following the same scheme as for IndustrySpec
2006-04-27 18:28:56 +00:00
Darkvater
725cfc26d0 (svn r4586) - Codechange: Recursive commands that rely on _error_message to handle success/failure can fail if a recursive call fails but doesn't set the error message, thus resulting in an old, possibly erroneous being used (see FS#130 prior to r4585). Now properly reset the global variable _error_message in these cases. 2006-04-26 21:48:22 +00:00
tron
b57640e28a (svn r4572) Remove vehicle_leave_tile_proc
There's exactly one implemented function (unbarring a level crossing) and one place where it can be triggered (a train leaves a level crossing)
It's a bit overkill, so just handle this one case where it can happen
2006-04-25 07:32:33 +00:00
tron
6dbc9c9ced (svn r4554) Replace magic numbers by TILE_{HEIGHT,SIZE} 2006-04-23 19:35:36 +00:00
peter1138
7e229e9728 (svn r4546) - NewGRF: add support for Action 0x05, type 0x04: replacement signal graphics. Thanks to Purno for supplying data to test
with.
2006-04-23 15:57:34 +00:00
tron
dd180a1e18 (svn r4541) Add a type for slopes and replace many magic numbers by the appropriate enums 2006-04-23 13:48:16 +00:00
celestar
01cd0f6fd3 (svn r4461) -Codechange: Add and make use of map accessor functions for signal drawing. Includes some basic cleanup of the drawing functions 2006-04-17 19:09:30 +00:00
Darkvater
2035c1e284 (svn r4440) - Fix: Yoyo-effect of rail in desert/snow introduced by r4379. When a special groundtype below the track is encountered in the tileloop, always return even if groundtype hasn't changed. 2006-04-15 22:16:47 +00:00
peter1138
96246126e1 (svn r4415) Fix bug introduced in r4384 where drawing a default waypoint for the GUI
caused a game crash. This only manifested with some newstations loaded. 
Thanks to Richk67 for finding this.
2006-04-14 16:28:24 +00:00
celestar
cb001ea14d (svn r4386) -Codechange: Add and make use of IsCustomWaypoint 2006-04-12 13:25:32 +00:00
celestar
e81a1821f1 (svn r4384) -Codechange: rail drawing code
-Added a function to obtain the axis of a waypoint
    -Moved the waypoint layout tables from the depot layout tables into an own one
    -Use GetRailTileSubtype
2006-04-12 12:50:40 +00:00
peter1138
7b6e932d82 (svn r4383) - Codechange: Remove extraneous code from 4354; no need to get RailTypeInfo when we already have it... 2006-04-12 12:33:21 +00:00
celestar
46eab6aec6 (svn r4382) -Codechange: Make use of SetSignalType where appropriate 2006-04-12 12:24:39 +00:00
celestar
25f3a06141 (svn r4381) -Codechange: Forgot an occurence for rail ground types 2006-04-12 12:22:43 +00:00
celestar
e53edaf173 (svn r4380) -Codechange: Make use of GetTrackBits where appropriate 2006-04-12 12:12:51 +00:00
celestar
7109274de4 (svn r4379) -Codechange: Add and make use of map accessor functions concerning rail ground types 2006-04-12 11:58:07 +00:00
celestar
ce320ceb55 (svn r4378) -Add and make use of an accessor function two-way => one-way => one-way => two-way signal cycling 2006-04-12 09:36:27 +00:00
celestar
3207d63244 (svn r4377) -Add and make use of a function that finds out whether a signal is an entry or and exit signal to a presignal block (as combos act as both) 2006-04-12 09:12:33 +00:00
celestar
62ded2f58d (svn r4376) -Codechange Renamed GetSignalState to GetSignalStateByTrackdir 2006-04-12 08:28:03 +00:00
celestar
5ba4345b87 (svn r4375) -Codechange: Move the signal drawing bit to an own function and rename DrawSignalHelper to DrawSingleSignal 2006-04-12 08:06:08 +00:00
celestar
595a436683 (svn r4358) -Codechange: Don't use a TileInfo where a TileIndex will do 2006-04-11 13:19:05 +00:00
celestar
dfd8ade37d (svn r4357) -Codechange: Moved global _signal_base_sprites into the only function where it is used and use a better array arrangement for it 2006-04-11 13:10:16 +00:00
peter1138
b87b68842a (svn r4354) [Elrail][NewGRF] Codechange: Drawing of custom waypoints with custom ground sprites used the index of the rail type as an offset. With the introduction of elrails this offset is incorrect, so instead there is now a lookup table within the RailTypeInfo struct to explicitly list the offset. 2006-04-11 10:45:06 +00:00
celestar
f472ed0ecc (svn r4353) Codechange: Move global _signal_position into the only function that uses it and convert the bit-hacking into a struct 2006-04-11 10:19:50 +00:00
tron
c5bc91eb0c (svn r4344) Use tile coordinates or even TileIndices instead of virtual tile coordinates where it suffices. 2006-04-10 12:36:04 +00:00
tron
35e93e451f (svn r4342) Change the first two parameters of commands - virtual pixel coordinates of the tile to operate on - to a TileIndex
Remove DoCommandByTile(), because now it does the same as DoCommand()
2006-04-10 07:15:58 +00:00
celestar
f5a9e68f40 (svn r4337) -Fix: A problem where GetRailType was called instead of GetRailTileType. Thanks to glx for noticing 2006-04-09 17:50:00 +00:00
tron
40c1097f04 (svn r4332) Turn a table lookup into a ternary operator 2006-04-09 09:29:50 +00:00
Darkvater
b02fc3b62b (svn r4265) - Fix: compile warning on VS2005 (parameter 2 different from declaration) 2006-04-03 18:11:42 +00:00
tron
7163a64c25 (svn r4242) Pass TileIndex and slope to GetSlopeTileh_*() instead of TileInfo 2006-04-02 12:49:18 +00:00
belugas
1b28d92fc8 (svn r4181) CodeChange : Replaced [G/S]etMapExtraBits by [G/S]etTropicZone. Although it was an accessor, nor his usage nor the values were clear. 2006-03-30 19:16:44 +00:00
belugas
9b3f9d3c79 (svn r4156) CodeChange : Little cleanup after Celestar's elrail merge 2006-03-29 20:06:31 +00:00
celestar
6c44bf5012 (svn r4150) -Feature: Merged elrails into trunk. Thanks to Tron for lots of code and proofreading, thanks to peter1138 for another lot of code and ideas. 2006-03-29 16:30:26 +00:00
tron
d0a445db41 (svn r4111) Fix/Remove some stale comments 2006-03-26 11:08:44 +00:00
tron
c699d0e791 (svn r4085) Add GetTown{Index,ByTile}() to get the town index resp. the town from a tile 2006-03-24 12:00:24 +00:00
tron
1815383ba7 (svn r4000) Rewrite GetSlope{Tileh,Z}_{Road,Track} in a less confusing way 2006-03-21 22:06:32 +00:00
peter1138
fd75fb6766 (svn r3998) - Fix: When removing rail track from a while where only X and Y (/ and \) pieces exist, explicitly update signals in both directions. 2006-03-21 21:11:41 +00:00
celestar
b5b348bdce (svn r3992) -Fix: Rewrote the code to determine whether a rail-tile can be terraformed.
Fixes a bug where you could terraform a tunnel (fixed by r3228, but reverted that one)
Fixes a bug introduced by r3228 which allowed steep rail tiles resulting in ... unwanted effects such as display artifacts.
That means the terraform feature should not work as intended; it also uses _valid_tileh_slopes to determine valid configurations instead of hand-brewn stuff.
TODO: _terraform_err_tile and similar TileIndices should have INVALID_TILE as "unused", not 0. (0 is a valid tile).
2006-03-20 16:43:48 +00:00
tron
a8b1d3c0da (svn r3988) Remove the info about valid rails on shore tiles. It's the same as for any other sloped tile 2006-03-19 19:56:57 +00:00
tron
453a925d72 (svn r3986) Add [GS]etCrossingRoadOwner 2006-03-19 19:33:19 +00:00
tron
1f1d30cb92 (svn r3985) Make CmdBuildSingleRail() a bit more comprehensible 2006-03-19 17:52:02 +00:00
tron
4d71a903b5 (svn r3983) Use existing functions to access tree and road info 2006-03-19 16:57:48 +00:00
tron
ec34ed24ef (svn r3982) Fix last commit. I got confused by some strange test, which did nothing 2006-03-19 14:43:23 +00:00
tron
a90e46bf03 (svn r3981) More work for the rail accessing functions and enums 2006-03-19 13:48:08 +00:00
tron
bf3811122d (svn r3979) Move GetRailFoundation() to rail_map.h and use it and friends to get information about rail tiles 2006-03-19 12:06:12 +00:00
tron
54c4a8e780 (svn r3976) Fix typo in r3946 2006-03-19 06:50:19 +00:00
tron
76ae9585dd (svn r3946) Add short hand names for common track combinations 2006-03-18 13:20:50 +00:00
tron
fc08e888c3 (svn r3942) GetRailType() != GetRailTileType(), fix r3941 2006-03-18 11:38:43 +00:00
tron
dabfa14778 (svn r3941) Get rid of RAIL_TYPE_SPECIAL 2006-03-18 09:06:07 +00:00
tron
7b1c7c31fb (svn r3916) Get/Set the rail type by [GS]etRailType{Crossing,OnBridge,}() 2006-03-17 10:10:31 +00:00
tron
4fb11f23ad (svn r3912) Move the signal type enum and GetSignalType() to rail_map.h; also add SetSignalType() and use the functions 2006-03-17 06:26:37 +00:00
tron
0e3699bd5c (svn r3911) Add functions to retrieve/set the signal variant (electric/semaphore) 2006-03-16 21:44:58 +00:00
tron
6e988259a4 (svn r3907) Replace many bridge related direct map accesses with calls to shiny new functions and mark some strange constructs with XXX 2006-03-16 15:16:27 +00:00
Darkvater
a390b6e4d1 (svn r3893) - Fix: Properly set back the owner of a crossing/road-under bridge after removing it. For crossings we can always use .m2 because it is already 0 when not owned by a town. 2006-03-15 21:27:19 +00:00
Darkvater
3fd42fab5d (svn r3876) - Fix: We know on a level crossing's town owner of the road (if any); it is in m2 so properly set it back when the crossing's removed. 2006-03-14 23:28:04 +00:00
tron
8505f4ed41 (svn r3851) Rail depots only have an entrance at one side, therefore use UpdateSignalsOnSegment() instead of SetSignalsOnBothDir() 2006-03-13 20:12:35 +00:00
tron
26815f7405 (svn r3846) Add functions to set the type of stuff (clear, water, rail, road) under bridges 2006-03-13 12:55:20 +00:00
tron
eeb5bf41a1 (svn r3831) Add and use GetRailDepotDirection() 2006-03-12 16:13:16 +00:00
tron
0100871412 (svn r3830) Move IsTunnelTile() from tile.h to tunnel_map.h and add IsTunnel(), which just checks for a tunnel, but not the tile type as IsTunnelTile() does 2006-03-12 15:04:03 +00:00
tron
ee03f15f27 (svn r3803) Change the second parameter of UpdateSignalsOnSegment() from Direction to DiagDirection as that's what it really operates on 2006-03-09 12:32:25 +00:00
tron
8cfcdaa733 (svn r3783) Replace further ints and magic numbers by Direction, DiagDirection and friends 2006-03-08 06:55:33 +00:00
tron
af42610321 (svn r3777) Add some functions to handle tunnels 2006-03-06 20:55:24 +00:00
tron
49cb8eb470 (svn r3776) Replace many ints and magic numbers by Direction, DiagDirection and friends 2006-03-06 20:28:28 +00:00
tron
4efa560ffc (svn r3763) Adapt to the new 'map accessors go in foo_map.h'-scheme 2006-03-05 10:19:33 +00:00
tron
8d3e42fe3c (svn r3760) Replace some magic numbers for checking for a suitable slope for a level crossing by some less magic numbers. Quite similar to r3699, though this time for placing the rails 2006-03-04 13:52:52 +00:00
tron
5d6ec6b4f0 (svn r3698) Add GetCrossingRailBits() and ComplementRoadBits(). Simplify the code by using them 2006-03-01 12:31:39 +00:00
tron
7b106a3d8f (svn r3697) Rename DIAG1/DIAG2 to X resp. Y as this conveys a bit better in which direction a pieces of rail goes 2006-03-01 09:40:34 +00:00
tron
28fc670fe2 (svn r3696) Add functions to turn a tile into a normal rail tile/depot/waypoint. This is just a tiny step, the rail code needs way more love and caring 2006-03-01 08:56:38 +00:00
tron
a8febcf209 (svn r3689) Add functions to turn a tile into either a normal road tile, a level crossing or a road depot 2006-02-28 21:19:50 +00:00
tron
b26d54585f (svn r3660) Convert further road bits and type references to the functions/enums 2006-02-23 12:24:19 +00:00
tron
2f8e3dcc05 (svn r3658) Add functions and symbolic names to retrieve road tile types and road pieces 2006-02-23 08:20:28 +00:00
tron
5352e9fbcb (svn r3597) Miscellaneous (I like that word) changes: Fix some indentation, add consts, reduce indentation level by short-circuit logic, convert if cascades to switch, whitespace, bracing, plus some minor stuff 2006-02-13 21:15:00 +00:00
tron
087fe86ed2 (svn r3564) Several smaller changes:
- Don't treat non-booleans as booleans
- Reduce variable scope
- Bracing
- Use DeMorgan's law to make conditionals easier to read
- if cascade -> switch
- Replace some magic numbers by symbolic names
- Avoid assignments within other statements
2006-02-06 09:18:04 +00:00
tron
1c3e8630fe (svn r3511) More whitespace ([FS#46] by Rubidium) 2006-02-01 07:36:15 +00:00
tron
9712d6f639 (svn r3510) Fiddle with whitespace and parentheses 2006-02-01 06:32:03 +00:00
tron
244d4ab5cb (svn r3490) -Fix: A bunch (10) of off-by-one errors when checking if a TileIndex points to a tile on the map 2006-01-30 17:18:45 +00:00
Darkvater
4014e36aec (svn r3472) - [PBS] Remove from trunk. Anyone interested can still find it in branch/pbs. This reverts revisions r3158, r3140, r3075, r2977, r2674, r2625, r2621, r2529, r2528, r2525, r2524, r2519, r2517, r2516, r2507, r2499. (in conjunction with Tron)
- The only change is that the nsignalsw.grf file is kept and that existing nightlies with PBS signals get those signals converted to combo-signals.
2006-01-29 18:57:26 +00:00
Darkvater
9eb1589827 (svn r3466) - Codechange: Some changes to increase readability of signals code. 2006-01-29 10:50:27 +00:00
tron
461d76a40c (svn r3389) -Fix: No fence was placed when placing fences and the neighbouring tile is a rail configuration which permits a fence but has a signal
(Per request of peter1138 the above line does not contain any commas)
2006-01-07 17:26:37 +00:00
tron
72270695ed (svn r3387) Restructure the code, which places fences along railroad tracks.
This includes no functional changes, just some cleanup before some bugfix
2006-01-07 16:30:49 +00:00
matthijs
138761e78e (svn r3369) - Codechange: Replace tables _signals_table, _signals_table_other and _signals_table_both by the equivalent calls to rail.h functions.
- Codechange: Add a few constants.
2006-01-06 00:08:00 +00:00
tron
318fe153eb (svn r3365) Staticise 36 functions 2006-01-05 12:40:50 +00:00
tron
a2533d5ee6 (svn r3298) Remove unused and write-only variables 2005-12-14 06:28:48 +00:00
tron
9822b4d755 (svn r3297) Staticise 2005-12-14 06:20:23 +00:00
peter1138
80986fcd32 (svn r3282) - Codechange: Replace tests against CMD_ERROR with CmdFailed() 2005-12-10 12:05:39 +00:00