summaryrefslogtreecommitdiff
path: root/train_cmd.c
AgeCommit message (Collapse)Author
2006-03-18(svn r3947) use TOGGLEBIT() instead of manual bit toggling in ↵bjarni
CmdReverseTrainDirection (pointed out by glx)
2006-03-18(svn r3945) cleaned the layout in CmdReverseTrainDirection a bit (made a bit ↵bjarni
messy in last commit)
2006-03-18(svn r3944) -Feature: it's now possible to turn a single unit in a trainbjarni
control-click on a unit in a train in a depot will make the click unit turn around this is useful if you want "normal" engines to act as dualheaded (one each way) or similar this only works on single unit units. Multiheaded and articulated engines get a red error box this is based on a quick hack peter1138 while I made it network safe and correctly handling of multible unit engines
2006-03-17(svn r3916) Get/Set the rail type by [GS]etRailType{Crossing,OnBridge,}()tron
2006-03-16(svn r3907) Replace many bridge related direct map accesses with calls to ↵tron
shiny new functions and mark some strange constructs with XXX
2006-03-13(svn r3851) Rail depots only have an entrance at one side, therefore use ↵tron
UpdateSignalsOnSegment() instead of SetSignalsOnBothDir()
2006-03-12(svn r3832) Replace some magic numbers by (Diag)Direction enumstron
2006-03-12(svn r3831) Add and use GetRailDepotDirection()tron
2006-03-12(svn r3830) Move IsTunnelTile() from tile.h to tunnel_map.h and add ↵tron
IsTunnel(), which just checks for a tunnel, but not the tile type as IsTunnelTile() does
2006-03-12(svn r3829) Reduce the use of _error_message by directly returning error ↵tron
codes instead of using this global variable
2006-03-09(svn r3803) Change the second parameter of UpdateSignalsOnSegment() from ↵tron
Direction to DiagDirection as that's what it really operates on
2006-03-08(svn r3789) Add an enum and function to handle DiagDirection changestron
2006-03-08(svn r3787) Use DirToDiagDir() instead of >> 1tron
2006-03-08(svn r3786) More work for DirDifftron
2006-03-08(svn r3784) Add a type and functions to handle direction changestron
2006-03-08(svn r3783) Replace further ints and magic numbers by Direction, ↵tron
DiagDirection and friends
2006-03-06(svn r3777) Add some functions to handle tunnelstron
2006-03-06(svn r3776) Replace many ints and magic numbers by Direction, DiagDirection ↵tron
and friends
2006-03-04(svn r3758) Remove the news validation callback. It is superseded by r3757.tron
2006-03-04(svn r3757) -Feature: Delete news items about vehicles, when they get staletron
This is used to delete - all news about a vehicle, when it gets deleted - "vehicle has stopped in depot" news, when it gets started - "vehicle has invalid orders" news, when the orders get changed
2006-02-13(svn r3602) - Move _railveh_score data to _rail_vehicle_info->ai_rank and ↵peter1138
remove global variable to return data as we can now access this directly.
2006-02-13(svn r3597) Miscellaneous (I like that word) changes: Fix some indentation, ↵tron
add consts, reduce indentation level by short-circuit logic, convert if cascades to switch, whitespace, bracing, plus some minor stuff
2006-02-11(svn r3588) - Refit: Use only one global to return the refit capacity rather ↵peter1138
than one per vehicle type.
2006-02-11(svn r3587) - NewGRF: Rename Callback IDs to include their "class"peter1138
2006-02-10(svn r3585) Similar changes to the order handlers of the other vehicle types ↵tron
like r3584
2006-02-08(svn r3579) v->u.rail.first_engine holds an engine type, not a vehicle ↵peter1138
index, so use INVALID_ENGINE.
2006-02-07(svn r3570) - Explicitly update v->first in TrainConsistChanged() if ↵peter1138
necessary, as this is far faster than brute forcing it later.
2006-02-06(svn r3564) Several smaller changes:tron
- 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-05(svn r3557) - NewGRF: move callback enums to a new file as more than just ↵peter1138
engines will use them
2006-02-04(svn r3535) -Feature: [autoreplace] allow autoreplacing of train wagonsbjarni
currently ALL available wagons are displayed in the right menu in the replace window however the replacement will only be done if the new wagon can be refitted to carry same cargo as the old one is currently carrying Since the standard vehicles do not have any valid wagon replacements, this feature can only be used when using newgrf sets
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 r3511) More whitespace ([FS#46] by Rubidium)tron
2006-02-01(svn r3510) Fiddle with whitespace and parenthesestron
2006-01-29(svn r3484) -fix: fixed issue in last commit where loading savegame versions ↵bjarni
18 and 19 didn't init the multiheaded engine pointers
2006-01-29(svn r3472) - [PBS] Remove from trunk. Anyone interested can still find it ↵Darkvater
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-25(svn r3431) - Fix crash when moving vehicles around in a train depot under ↵peter1138
certain conditions.
2006-01-23(svn r3422) - Fix: If an engine reaches the rear of a depot, make the engine ↵peter1138
turn around before it reaches the tile end (same as a normal end of line.) This fixes a bug whereby the engine could poke into the depot and crash with another engine just leaving it.
2006-01-18(svn r3403) -Codechange: [multiheaded engines] the references between the ↵bjarni
front and rear engines are no longer saved instead the pointers are generated on load
2006-01-18(svn r3402) -Fix: [building/cloning] added a string telling if build failed ↵bjarni
due to not being able to build a vehicle. Triggered when cloning a retired design
2006-01-08(svn r3392) Train depot fixes:peter1138
- Only count the parts from the source train that will be moved, not the whole train. - Don't count articulated parts of an engine. This alleviates issues with autoreplacing very long trains.
2006-01-07(svn r3388) - NewGRF: Allow train running cost class to differ from engine ↵peter1138
class. Also fix typo in r3384.
2006-01-07(svn r3381) -Fix: r3374 left one bug: allow moving around wagons in a 100 ↵truelight
long train
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-06(svn r3374) -Fix: [ FS#36 ] Don't allow trains to get bigger than 100 via ↵truelight
drag and drop
2006-01-06(svn r3373) -Fix: don't link a wagon to itself, which resulted in a wagon ↵truelight
disapearing, and a depot which was unable to remove
2006-01-05(svn r3367) Unify the 4 distinct ↵tron
CMD_CHANGE_{AIRCRAFT,ROADVEH,SHIP,TRAIN}_SERVICE_INT commands into one CMD_CHANGE_SERVICE_INT command. As side effect this is a -Fix: The default AI tried to change the service intervals of vehicles via the CMD_CHANGE_TRAIN_SERVICE_INT command - regardless of the type of the vehicle - which of course failed for non-trains
2006-01-05(svn r3365) Staticise 36 functionstron
2005-12-29(svn r3353) Simplify the automatic length adjustment algorithm for replacing ↵tron
trains: Use the length of the train before the replacement as reference length
2005-12-28(svn r3352) - NewGRF: Move initialization of vehicle random_bits to DC_EXEC ↵peter1138
blocks to allow use of Random() instead of InteractiveRandom(), which will alleviate some possible network desyncs.
2005-12-14(svn r3303) Change #if PF_BENCHMARK to #ifdef PF_BENCHMARKpeter1138