Commit Graph

194 Commits (179cd84cc35989570fbe6ae9c85fd61a07a145a7)

Author SHA1 Message Date
tron dacbf1a433 (svn r3922) Fix copy&pasto in r3916 (Slowly it's getting a bad habit) 19 years ago
tron 89090790c2 (svn r3916) Get/Set the rail type by [GS]etRailType{Crossing,OnBridge,}() 19 years ago
tron b8da06ddb1 (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
tron d6134455a5 (svn r3906) Before removing a rail/setting the owner of a road to none check if there's a transport route at all under the bridge 19 years ago
tron 483c8f7018 (svn r3904) Move GetBridgePiece() and GetBridgeType() to bridge_map.h and make the only place which still extracted that info diretly use the wrapper 19 years ago
tron a3c45635a7 (svn r3903) Fix a copy&pasto in last commit and remove a redundant comment (the line above already says what's going on) 19 years ago
tron 1257d9e565 (svn r3902) When drawing a bridge middle part get the bridge axis only once instead of again and again 19 years ago
tron efb64283df (svn r3901) Remove the last user of FindEdgesOfBridge() by using functions with similar functionality 19 years ago
tron fedebdd09b (svn r3900) When clearing a bridge determine the bridge direction and tile offset once instead of all over the place; also use UpdateSignalsOnSegment() instead of SetSignalsOnBothDir(), because this is sufficient 19 years ago
tron 8a77808f65 (svn r3899) Use wrapper functions to make more clear how deleting stuff under bridges works; also remove an unnecessary local variable 19 years ago
tron ec33376fa3 (svn r3898) Add functions to find a bridge end starting at a middle tile 19 years ago
Darkvater 748d082a79 (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
tron 76aa40cecf (svn r3891) Fix r3885 19 years ago
tron b36203f671 (svn r3890) Simplify deleting a bridge by handling the ramps outside of the removal loop 19 years ago
tron f262ae6c8b (svn r3889) Change a part of the bridge drawing code to make it more comprehensible and add the needed accessors 19 years ago
tron dcf6c85bf2 (svn r3888) If you think you've checked everything, check once more. *sigh* Fix r3887 19 years ago
tron 3d9c76d8b8 (svn r3887) Add a function to get the other bridge end when you're at a bridge ramp 19 years ago
tron 962852b732 (svn r3885) Simplify DoConvertTunnelBridgeRail() a bit 19 years ago
tron 251242165c (svn r3877) Add functions to turn a tile into a rail/road bridge ramp/middle part 19 years ago
tron 42d1731cc1 (svn r3857) Add and use GetBridgeRampDirection()
Note: This slightly changes the behavior of GetAnyRoadBits() to only return a road piece for the start of the bridge ramp instead of a full ROAD_[XY]
19 years ago
tron b812bbeda3 (svn r3849) Fix bug in r3846 19 years ago
tron e8ccd9641f (svn r3846) Add functions to set the type of stuff (clear, water, rail, road) under bridges 19 years ago
tron 1067069e33 (svn r3838) Demystify building bridge middle parts a bit by removing some magic numbers and generic names 19 years ago
tron 2732fc8d6f (svn r3837) Partially unmagicfy restoring the tiles when deleting a bridge
Existing bug: When restoring a road piece which belongs to a town the town index unconditionally gets set to 0
19 years ago
tron 78083f0da7 (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 b394f72fa9 (svn r3829) Reduce the use of _error_message by directly returning error codes instead of using this global variable 19 years ago
tron b9ade45008 (svn r3823) Remove dead code: A value for 'image' gets calculated and overwritten just a few lines later without being used in between 19 years ago
tron e63e3bb84c (svn r3820) Be a bit more strict with types: use special types instead of generic byte and don't fill arbitrary data into inappropriate types 19 years ago
tron 6892e04d14 (svn r3814) Remove another call to FindLandscapeHeight() 19 years ago
tron 78a7b15ce0 (svn r3803) Change the second parameter of UpdateSignalsOnSegment() from Direction to DiagDirection as that's what it really operates on 19 years ago
tron fbe939b31f (svn r3783) Replace further ints and magic numbers by Direction, DiagDirection and friends 19 years ago
tron 313754011d (svn r3779) Move CheckTunnelInWay() to a more appropriate place, invert its result and give it a less ambiguous name (IsTunnelInWay) 19 years ago
tron f2dc736554 (svn r3777) Add some functions to handle tunnels 19 years ago
tron 2d3c28f2b3 (svn r3776) Replace many ints and magic numbers by Direction, DiagDirection and friends 19 years ago
tron cc4f5b4e6f (svn r3763) Adapt to the new 'map accessors go in foo_map.h'-scheme 19 years ago
tron df156dacb2 (svn r3658) Add functions and symbolic names to retrieve road tile types and road pieces 19 years ago
tron ae02bd6506 (svn r3654) Turn another if-cascade into a switch 19 years ago
tron 9a364389cb (svn r3653) -Fix: You didn't pay for terraforming at the end tile when building a tunnel 19 years ago
tron d451db7a5f (svn r3652) Rewrite CmdBuildTunnel in the hope to make it a bit more comprehensible
This implementation is also significantly shorter because it removes many redundant checks
19 years ago
tron 2e3e9daf32 (svn r3645) Fix stupid typos in last (r3644) commit *sigh* 19 years ago
tron 4b46883751 (svn r3644) Don't use FindLandscapeHeightByTile() when it's overkill - often it was just a complicated way of writing GetTileSlope(tile, NULL) 19 years ago
tron 49c7eb934b (svn r3613) Some more const, indentation, whitespace and similar stuff 19 years ago
tron ea73b46684 (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 453b30e387 (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 b844aa2db3 (svn r3520) Remove unused parameters from some functions 19 years ago
tron 84fb96fe85 (svn r3511) More whitespace ([FS#46] by Rubidium) 19 years ago
tron 22dc05faf2 (svn r3510) Fiddle with whitespace and parentheses 19 years ago
tron 5e1e902600 (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
tron 2f668b8669 (svn r3487) -Fix: Price for demolishing a bridge was dependent on orientation and map size 19 years ago
Darkvater 4e09974975 (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
peter1138 cc7a9d1ce6 (svn r3418) - Fix: When removing a town-owned tunnel the player's rating was not reduced, as it checked the ownership of the tunnel after clearing it. Now we perform the rating adjustment before clearing the tiles. (spotted by glx) 19 years ago
peter1138 019e794234 (svn r3391) - PBS Fix: Keep PBS reservation state when building a bridge over rail. 19 years ago
tron 28fe368b7f (svn r3308) BAD
foo.h: int bar;

GOOD
foo.h: extern int bar;
foo.c: int bar;
19 years ago
peter1138 809b03c81a (svn r3282) - Codechange: Replace tests against CMD_ERROR with CmdFailed() 19 years ago
bjarni 22a4679837 (svn r3218) -Feature: Multiheaded train engines will now stay in the same train
This means that any user attempt to remove a rear engine will tell the user to move the front engine instead
	This fixes the assert when moving multiheaded engines (introduced in r3144)
	Note: to make old savegames use this feature, some engines might be turned around in order to link engines in pairs

-Codechange: train subtype is now a bitmask
	This allows fast access to info like if it is a wagon or engine and if it is in front and so on
	Note: savegame version bump
19 years ago
tron ec57ef78a2 (svn r3205) Some more uses for GB/SB 19 years ago
tron 9f8c5d8fd2 (svn r3186) Unnecessary casts and truncation 19 years ago
tron 1b0091e0d2 (svn r3184) GB/SB 19 years ago
tron f7abff5f96 (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 833032adc0 (svn r3177) GB, CLRBIT, HASBIT, TOGGLEBIT 19 years ago
tron ece9b9b2b6 (svn r3066) Constify the parameter of GetSlopeZ_*() 19 years ago
celestar 5f604ec63a (svn r3065) -Codechange/Add: Modified the bridge drawing code so that the basic offset is read from the RailTypeInfo struct. This is (hopefully) the last DrawTile change on the way to electrified railways. While being at it, de-mystified the function a bit and added some asserts. 19 years ago
tron 758ae7e8f6 (svn r3064) Replace some numbers by sprite names 19 years ago
tron d5042d4ab2 (svn r3046) Replace some numbers with sprite names and fix a typo in the sprite list 19 years ago
tron 7520ef8f33 (svn r3037) Don't deduce the sprites for tunnels and level crossings from magic numbers, but fetch them from the central rail info array. This is a preparation step for electrified rails 19 years ago
tron 76db75d81a (svn r3028) s/255/OWNER_SPECTATOR/ 19 years ago
tron ae4a1f3675 (svn r3019) -Codechange: Replace explicit shifting/anding/oring with GB and SB 19 years ago
peter1138 adc5c1230f (svn r3004) -Feature, NewGRF: Support loading of bridge attributes and tables from GRF. Currently drawing tall pillars uses old data. 19 years ago
Darkvater 8e6a911700 (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
truelight 2e87864d0b (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 af819c3822 (svn r2840) Remove 3 unnecessary strings (they're empty) and fix the alignment of the musick track display 19 years ago
bjarni ed8e2bac04 (svn r2817) -Codechange: [autoreplace]: moved autoreplace and autorenew to serverside
-This means that one company can only have one setting for renew and replacing
    more clients will not fight due to different settings anymore
  -This is a needed step in the line to fix autoreplacing dualheaded locomotives
  NOTE: savegame revision bump (peter1138 + me in coop)
19 years ago
celestar 66fa62b3ea (svn r2782) -Codechange: Started cleaning the bridge code. Removed numerous global variables containing bridge information and joined them in a struct. Introduced GetBridgeType and GetBridgePiece and fixed some minor stuff (whitespace etc) 19 years ago
ludde 29564f9fcf (svn r2781) Fix some of the issues with variables in .h files. 19 years ago
tron 91353c841f (svn r2780) Remove some more unused strings and make the use of a few strings more explicit 19 years ago
celestar fcf5ace08f (svn r2774) -Codechange: Removed TRACKTYPE_SPRITE_PITCH globally and replaced it by a member of RailtypeInfo 19 years ago
celestar 238e47cd42 (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 a227065ab7 (svn r2701) Insert Id tags into all source files 19 years ago
tron 559babcdc9 (svn r2673) Include functions.h directly, not globally via openttd.h 19 years ago
tron 0762aa9ec9 (svn r2669) Shuffle some more stuff around to reduce dependencies 19 years ago
tron d71788c402 (svn r2660) Get rid of some more shifting/anding/casting 19 years ago
celestar 85f06d6e7b (svn r2658) -Codechange: Use MAKE_TRANSPARENT to display a transparented sprite 19 years ago
tron ac66e3e28f (svn r2650) Convert many explicit shifts+ands to extract bits to invocations of GB - should be a bit nicer to read 19 years ago
tron 7c694f2553 (svn r2643) Get rid of some unnecessary casts 19 years ago
celestar 9ca761b065 (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 8c1d74162f (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
hackykid 60ddaf95f0 (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
tron bec5e4fb4c (svn r2487) Replace TILE_XY by TileXY/TileDiffXY 19 years ago
tron 3154e7148d (svn r2483) Replace almost 500 "uint tile" (and variants) with "TileIndex tile" 19 years ago
Darkvater 65a00ea754 (svn r2436) - Fix: Deleting canals under bridges removes bridges first in certain configurations (peter1138) 19 years ago
tron 74541c1dcc (svn r2408) Introduce SetTileOwner() and use it 19 years ago
tron 0c4ecbe9ec (svn r2407) Use {Get,Is}TileOwner to get/check the owner of a tile and fix some bogus reads of _map_owner 19 years ago
Darkvater b438b1248c (svn r2397) - CodeChange: rename all "ttd" files to "openttd" files. 19 years ago
hackykid f7dcd2e834 (svn r2390) - Codechange: Fix some warnings on GCC 4.0.0 19 years ago
Darkvater ab954a934a (svn r2288) - CodeChange: protected the next batch of commands (41 so far, out of 115).
- CodeChange: changed the airport gui airport-type checking. Added function GetValidAirports() that returns bitmasked availibility, is also used for checking.
- CodeChange: to check tree-planting, 2 const arrays have been moved to table/tree_land.h (type and count)
- CodeChange: added IsTownIndex() in following of IsStationIndex(), etc.
- Fix (regression): road tunnels did not work anymore, forgot that their type was 0x200 (documented now)
19 years ago
Darkvater edd8c87502 (svn r2286) - CodeChange: paramcheck the next batch of commands.
- Fix (regression): fix up terraform land where every player can terraform land (towns, map generation), and player can terraform different corners; used for building tunnels
19 years ago
Darkvater 2b96754673 (svn r2285) - Codechange: Fix up some of the missing things from server-checking; namely bridge-type, bridge-length, dragged end-tile (bridge/station), station_spread
- Fix: [ 1197256 ] max station spread patch < 7 does not work. Station spread was not taking into account when not using drag&drop. Fix this up, and add a callback to the settings window to immediately reflect the changes.
19 years ago
Darkvater 3ad11e0ad4 (svn r2279) - Fix: Check the parameters of the first 10 Commands. While there also add proper comments for the functions and fix up CmdFailed() 19 years ago
tron c4133f2535 (svn r2091) Small cleanup: uint -> TileIndex, const, don't call FindLandscapeHeightByTile() 20 years ago
pasky aafb136cd0 (svn r2089) - Codechange: Simplify slopes check in CmdBuildBridge(). Inspired by st3wis' patch 1144746. 20 years ago