celestar
f472ed0ecc
(svn r4353) Codechange: Move global _signal_position into the only function that uses it and convert the bit-hacking into a struct
19 years ago
tron
c5bc91eb0c
(svn r4344) Use tile coordinates or even TileIndices instead of virtual tile coordinates where it suffices.
19 years ago
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()
19 years ago
celestar
f5a9e68f40
(svn r4337) -Fix: A problem where GetRailType was called instead of GetRailTileType. Thanks to glx for noticing
19 years ago
tron
40c1097f04
(svn r4332) Turn a table lookup into a ternary operator
19 years ago
Darkvater
b02fc3b62b
(svn r4265) - Fix: compile warning on VS2005 (parameter 2 different from declaration)
19 years ago
tron
7163a64c25
(svn r4242) Pass TileIndex and slope to GetSlopeTileh_*() instead of TileInfo
19 years ago
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.
19 years ago
belugas
9b3f9d3c79
(svn r4156) CodeChange : Little cleanup after Celestar's elrail merge
19 years ago
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.
19 years ago
tron
d0a445db41
(svn r4111) Fix/Remove some stale comments
19 years ago
tron
c699d0e791
(svn r4085) Add GetTown{Index,ByTile}() to get the town index resp. the town from a tile
19 years ago
tron
1815383ba7
(svn r4000) Rewrite GetSlope{Tileh,Z}_{Road,Track} in a less confusing way
19 years ago
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.
19 years ago
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).
19 years ago
tron
a8b1d3c0da
(svn r3988) Remove the info about valid rails on shore tiles. It's the same as for any other sloped tile
19 years ago
tron
453a925d72
(svn r3986) Add [GS]etCrossingRoadOwner
19 years ago
tron
1f1d30cb92
(svn r3985) Make CmdBuildSingleRail() a bit more comprehensible
19 years ago
tron
4d71a903b5
(svn r3983) Use existing functions to access tree and road info
19 years ago
tron
ec34ed24ef
(svn r3982) Fix last commit. I got confused by some strange test, which did nothing
19 years ago
tron
a90e46bf03
(svn r3981) More work for the rail accessing functions and enums
19 years ago
tron
bf3811122d
(svn r3979) Move GetRailFoundation() to rail_map.h and use it and friends to get information about rail tiles
19 years ago
tron
54c4a8e780
(svn r3976) Fix typo in r3946
19 years ago
tron
76ae9585dd
(svn r3946) Add short hand names for common track combinations
19 years ago
tron
fc08e888c3
(svn r3942) GetRailType() != GetRailTileType(), fix r3941
19 years ago
tron
dabfa14778
(svn r3941) Get rid of RAIL_TYPE_SPECIAL
19 years ago
tron
7b1c7c31fb
(svn r3916) Get/Set the rail type by [GS]etRailType{Crossing,OnBridge,}()
19 years ago
tron
4fb11f23ad
(svn r3912) Move the signal type enum and GetSignalType() to rail_map.h; also add SetSignalType() and use the functions
19 years ago
tron
0e3699bd5c
(svn r3911) Add functions to retrieve/set the signal variant (electric/semaphore)
19 years ago
tron
6e988259a4
(svn r3907) Replace many bridge related direct map accesses with calls to shiny new functions and mark some strange constructs with XXX
19 years ago
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.
19 years ago
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.
19 years ago
tron
8505f4ed41
(svn r3851) Rail depots only have an entrance at one side, therefore use UpdateSignalsOnSegment() instead of SetSignalsOnBothDir()
19 years ago
tron
26815f7405
(svn r3846) Add functions to set the type of stuff (clear, water, rail, road) under bridges
19 years ago
tron
eeb5bf41a1
(svn r3831) Add and use GetRailDepotDirection()
19 years ago
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
19 years ago
tron
ee03f15f27
(svn r3803) Change the second parameter of UpdateSignalsOnSegment() from Direction to DiagDirection as that's what it really operates on
19 years ago
tron
8cfcdaa733
(svn r3783) Replace further ints and magic numbers by Direction, DiagDirection and friends
19 years ago
tron
af42610321
(svn r3777) Add some functions to handle tunnels
19 years ago
tron
49cb8eb470
(svn r3776) Replace many ints and magic numbers by Direction, DiagDirection and friends
19 years ago
tron
4efa560ffc
(svn r3763) Adapt to the new 'map accessors go in foo_map.h'-scheme
19 years ago
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
19 years ago
tron
5d6ec6b4f0
(svn r3698) Add GetCrossingRailBits() and ComplementRoadBits(). Simplify the code by using them
19 years ago
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
19 years ago
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
19 years ago
tron
a8febcf209
(svn r3689) Add functions to turn a tile into either a normal road tile, a level crossing or a road depot
19 years ago
tron
b26d54585f
(svn r3660) Convert further road bits and type references to the functions/enums
19 years ago
tron
2f8e3dcc05
(svn r3658) Add functions and symbolic names to retrieve road tile types and road pieces
19 years ago
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
19 years ago
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
19 years ago
tron
1c3e8630fe
(svn r3511) More whitespace ([FS#46] by Rubidium)
19 years ago
tron
9712d6f639
(svn r3510) Fiddle with whitespace and parentheses
19 years ago
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
19 years ago
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.
19 years ago
Darkvater
9eb1589827
(svn r3466) - Codechange: Some changes to increase readability of signals code.
19 years ago
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)
19 years ago
tron
72270695ed
(svn r3387) Restructure the code, which places fences along railroad tracks.
...
This includes no functional changes, just some cleanup before some bugfix
19 years ago
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.
19 years ago
tron
318fe153eb
(svn r3365) Staticise 36 functions
19 years ago
tron
a2533d5ee6
(svn r3298) Remove unused and write-only variables
19 years ago
tron
9822b4d755
(svn r3297) Staticise
19 years ago
peter1138
80986fcd32
(svn r3282) - Codechange: Replace tests against CMD_ERROR with CmdFailed()
19 years ago
peter1138
479a9c2e47
(svn r3212) - Waypoints/Depots: Store waypoint index in m2 for waypoints. This moves the ground type bits from m2 to m4 for waypoints and depots (leaving room for depot index in m2 in future), and moves the custom graphics ID to the waypoint struct.
...
- Waypoints: Until now stat_id was saved but never assigned to. Instead we now save the GRFID/local index of the custom graphics so that GRF file changes can leave graphics intact.
19 years ago
truelight
cd1ad24723
(svn r3210) -Codechange: use IsRailWaypoint where possible (instead of magicnumbers)
...
-Codechange: IsRailWaypoint should take 'tile', not 'm5'
19 years ago
peter1138
a56ffc6a0f
(svn r3209) In TileLoop_Track(), use names based on function rather than their place in the map array.
19 years ago
tron
3848d103c8
(svn r3187) Simplify overly complicated ifs, especially if (foo) return false; else return true; is confusing
19 years ago
tron
84a16a0b30
(svn r3184) GB/SB
19 years ago
tron
9d0e7b6458
(svn r3181) -Bracing
...
-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
19 years ago
tron
53f00c8f9d
(svn r3173) Use the trinary operator and switch to improve readability
...
Also align short cases nicely
19 years ago
peter1138
7bbf614796
(svn r3168) - NewGRF: Fix "typo" in waypoint drawer :/
19 years ago
peter1138
ce9f2fe823
(svn r3166) Constify read-only accesses of custom stations
19 years ago
peter1138
4c6a67a723
(svn r3141) Replace incorrect railtype bitmask in CmdRailTrackHelper with appropriate GB()
19 years ago
tron
181d586a7c
(svn r3078) Some more stuff, which piled up:
...
- const, whitespace, indentation, bracing, GB/SB, pointless casts
- use the trinary operator where appropriate
- data types (uint[] -> AcceptedCargo, ...)
- if cascade -> switch
- if (ptr) -> if (ptr != NULL)
- DeMorgan's Law
- Fix some comments
- 0 -> '\0', change magic numbers to symbolic constants
19 years ago
tron
0b936c3222
(svn r3077) static, const, bracing, indentation, 0 -> '\0'/NULL, typos in comments, excess empty lines, minor other changes
...
nothing spectacular, just some stuff, which piled up
19 years ago
tron
d7cbd0d4c3
(svn r3073) int/byte -> EngineID/PlayerID/VehicleID
...
0/-1 -> INVALID_ENGINE
0x10 -> OWNER_NONE
19 years ago
tron
71d293f2a3
(svn r3066) Constify the parameter of GetSlopeZ_*()
19 years ago
tron
e3d1e43559
(svn r3049) Replace byte/int/uint by RailType where appropriate
19 years ago
tron
7ab7d79190
(svn r3028) s/255/OWNER_SPECTATOR/
19 years ago
Darkvater
6423de9290
(svn r3025) -Fix: Rail convert issue introduced in r3019
19 years ago
tron
39f5dbfd3b
(svn r3019) -Codechange: Replace explicit shifting/anding/oring with GB and SB
19 years ago
peter1138
fdebfbe8d5
(svn r2998) -Codechange: Split rail drawing code off from DrawTile_Rail into a separate function to be used elsewhere. (Deja vu?)
19 years ago
Darkvater
4a58250cb9
(svn r2962) - const correctness for all Get* functions and most Draw* functions that don't change their pointer parameters
...
- change a lot of byte player types to PlayerID
- beautify header files, same "#endif /* filename */" ending
19 years ago
Darkvater
c0c75ef16e
(svn r2951) - Fix: [ 1259345 ] Changing engine in netgame opens train window for everyone
...
- Add IsLocalPlayer() which substitutes _local_player == _current_player
19 years ago
truelight
4936e93654
(svn r2948) -Fix: the old AI needs a special flag that triggers all kind of special
...
abilities you really don't want to know about (free bridges, etc..)
I removed this flag some revisions ago, but the Aircraft part
depends on it, so I re-enabled it again..
19 years ago
tron
86fcdfbe2e
(svn r2890) Fix some signed/unsigned comparison warnings (tokai)
19 years ago
ludde
9a060a0f24
(svn r2781) Fix some of the issues with variables in .h files.
19 years ago
celestar
5352ad4582
(svn r2774) -Codechange: Removed TRACKTYPE_SPRITE_PITCH globally and replaced it by a member of RailtypeInfo
19 years ago
ludde
b8c9194b7c
(svn r2756) Renamed railtypes into _railtypes
...
Renamed railtypes.c into railtypes.h, all other tables are in .h files. (It should be in the tables dir but I couldn't figure out how to get it there without deleting it first).
Added const and extern.
19 years ago
celestar
f287f2ff8d
(svn r2753) -Codechange: Introduced a new struct "RailtypeInfo" to store rail type specific information. Begun populating it with a bunch of sprites, more to come later. This should result in cleaner, more compact code which allows easy introduction of new railtypes.
19 years ago
celestar
a3739aecdf
(svn r2702) -Codechange: Cleaned up the sprite code and replaced many magic numbers
...
by enums. There remains work in gfx.c to move the "transparency" and
"recolor" bits around to make space for more sprites. However, 2800
additional sprites can now be loaded. There also remains cleanup and
Doxygen work on many of the header files.
19 years ago
tron
647cbd6bdd
(svn r2701) Insert Id tags into all source files
19 years ago
tron
54cbd01825
(svn r2673) Include functions.h directly, not globally via openttd.h
19 years ago
celestar
1fed0046ac
(svn r2658) -Codechange: Use MAKE_TRANSPARENT to display a transparented sprite
19 years ago
tron
f09638ad3d
(svn r2650) Convert many explicit shifts+ands to extract bits to invocations of GB - should be a bit nicer to read
19 years ago
hackykid
d5b305852f
(svn r2621) - Fix: [pbs] When removing tracks, clear their reserved status.
19 years ago
celestar
de19186be3
(svn r2595) -Codechange: Introduced "IsSteepTileh" to find whether a tile is steep
...
(i.e. spans two height levels) and use it throughout the code.
-Codechange: Add CanBuildDepotByTileh to find if a tile is suitable to
build a depot on it. Wraps some bitmagic which seems quite unreadable at
first glance
19 years ago
tron
a4bf608d40
(svn r2558) Change the internal map format from 7 arrays to one array of structs, this doesn't change the saved format for now. It's a stepping stone for further changes.
19 years ago
Darkvater
bf794fad62
(svn r2529) - Fix: PBS signals showed up as normal signals with the query tool
...
- Update landscape_grid.html to show busy bits used by PBS.
19 years ago
hackykid
ab9c6f126d
(svn r2516) - Feature: [pbs] Implement path-based-signalling. This allows multiple trains within the same signal block, provided their paths dont intersect. For this the block must have all exit and entry signals be pbs signals. Place these by ctrl-clicking 4 times on a normal signal.
...
- Feature: [pbs] Implement autoplacement of pbs blocks, when a block has an entry and an exit pbs signal, covert the entire block to pbs. Can be turned off in the patch settings.
- Feature: [pbs] Allow showing of reserved status by making the tracks darker, when the pbs debug level is at least 1.
19 years ago
celestar
d07e1a875e
(svn r2515) -Codechange: Removed a good deal of magic sprite numbers in the rail drawing code, and placed neatly into arrays and enums. This also makes way to implement more railtypes without having to do tons of ugly hacks.
19 years ago