summaryrefslogtreecommitdiff
path: root/src/train_cmd.cpp
AgeCommit message (Collapse)Author
2007-09-10(svn r11086) -Fix/Revert (r11053, r10984): "fixing" r11053 made the ↵rubidium
acceleration code use the wrong speed, which can be fixed by reverting a small piece of r10984.
2007-09-09(svn r11072) -Fix [FS#1045]: when a vehicle had a service order, the ↵rubidium
goto-depot button did not make it possible to stop the vehicle at that depot.
2007-09-08(svn r11059) -Fix [FS#1182]: inconsistency between Rail<->ElRail conversions ↵rubidium
of different kinds of rail containing tiles (normal rail, stations, depots, etc). Patch by SmatZ.
2007-09-05(svn r11048) -Fix [FS#1206]: several cases where (re)moving eninges on a ↵rubidium
train would corrupt the vehicle counts for the groups.
2007-09-05(svn r11045) -Codechange: added a function to tell if a vehicle is the rear ↵bjarni
part of a dualheaded train engine
2007-08-31(svn r11017) -Codechange: unify determining whether a vehicle needs/can be ↵rubidium
service a little more.
2007-08-30(svn r11011) -Fix [FS#1129]: GetFirstVehicleInChain did change the game ↵rubidium
state while being marked const. -Codechange: do not brute force determine the first vehicle in the chain or previous vehicle, but do it by properly accounting the previous and first pointers when updating the next pointer. This gives a performance increase of about 15% when there are a lot of vehicles in the game.
2007-08-30(svn r11004) -Codechange: some reworks of the saveload mechanism to be able ↵rubidium
to save and load private and protected variables in the vehicle struct.
2007-08-30(svn r11003) -Codechange: replace Vehicle->next to Vehicle->Next() and ↵rubidium
Vehicle->SetNext() so we can trap instances that change a next pointer and (in the future) update the first/previous pointers based on that.
2007-08-29(svn r10999) -Codechange: unify the way the running cost of a vehicle is ↵rubidium
determined. Patch by nycom.
2007-08-29(svn r10997) -Codechange: unify the vehicle view window. Patch by PhilSophus.rubidium
2007-08-26(svn r10984) -Codechange: unify the way one can get the current speed in the ↵rubidium
same forwat so we can display it.
2007-08-26(svn r10983) -Codechange: use vehstatus & VS_CRASHED instead of some other ↵rubidium
"methods" custom to each vehicle to determine whether the vehicle is crashed.
2007-08-07(svn r10823) -Fix r8610 [FS#1097]: the autoreplace window vehicle count ↵bjarni
didn't always update correctly) (Matthias)
2007-08-03(svn r10770) -Codechange: use the pool item class as super class for the ↵rubidium
vehicle struct. -Codechange: do not force "special" vehicles to be allocated in the low 1024 vehicle slots and non "special" vehicles in the rest of the slots.
2007-07-30(svn r10734) -Fix [FS#1030]: Revert r10513) and add special cases for ↵peter1138
collision detection on bridges/tunnels.
2007-07-26(svn r10697) -Codechange: give a more sensible names to some of the unkX ↵rubidium
variables.
2007-07-16(svn r10587) -Codechange: move the string/dparam related stuff from ↵rubidium
variables.h to strings.h
2007-07-09(svn r10493) -Codechange: update some callback ID enums to reflect their ↵rubidium
changed usage, add a few and update the comments.
2007-07-08(svn r10474) -Fix [FS#995]: wrong group count after train crash.rubidium
2007-07-01(svn r10409) -Codechange: replace (Aircraft|RoadVeh|Ship|Train)_Tick with a ↵rubidium
Tick method in the Vehicle class.
2007-07-01(svn r10408) -Codechange: make GetImage a class method of Vehicle instead of ↵rubidium
Get(Aircraft|RoadVeh|Ship|Train)Image.
2007-06-28(svn r10381) -Fix [FS#951]: skipping an order made train reverse ↵rubidium
immediatelly. Patch by boekabart.
2007-06-27(svn r10363) -Fix [FS#911]: invalidating autoreplace windows didn't take ↵peter1138
account of vehicle group (Matthias Wolf)
2007-06-26(svn r10344) -Fix (r10317): confusion between TRACK_n and TRACK_BIT_n ↵peter1138
stopped NW/SE slopes being picked up, and compare middle of tile against current z, not previous.
2007-06-25(svn r10335) -Fix (r10331): Increment the current order index *after* using ↵maedhros
it in UpdateVehicleTimetable.
2007-06-25(svn r10317) -Fix [FS#786]: acceleration not calculated properly when a ↵rubidium
train goes up a hill between tunnels.
2007-06-22(svn r10288) -Fix [FS#202]: also age engines that aren't front-engines ↵truelight
(based on a patch by kaan)
2007-06-22(svn r10287) -Fix (r10266): some surprises from that (almost always) ↵rubidium
complaining compiler...
2007-06-22(svn r10266) -Codechange: keep track of the origin, time of travel and ↵rubidium
accumulated feeder share (transfers) of individual pieces of cargo. This means that cargo isn't thrown on a big pile when it's put in a station or unloaded at a station, however the GUI does not reflect these changes yet so you will not actually see it.
2007-06-21(svn r10258) -Codechange: as we are now using int64 all over the place, it's ↵rubidium
better to use int64 variables in the string generating too instead of packing them into two int32s. -Fix: some displays of money were wrong.
2007-06-21(svn r10247) -Fix (r10210): *always* call SetDParamMoney when you want to ↵rubidium
place money in some string.
2007-06-21(svn r10246) -Fix (r10297): some forgotten money conversions and truncation ↵rubidium
issues. Thanks to benc for providing the patch.
2007-06-20(svn r10236) -Feature: Introduce a form of timetabling for vehicles.maedhros
2007-06-19(svn r10222) -Fix [FS#892]: Only 2 trains could crash at one time as ↵peter1138
collision checking stopped on the first hit. This could cause desyncs in network games as the collision hash order is not guaranteed. (patch by B. N. Smatz)
2007-06-18(svn r10208) -Codechange: replace int32 with Money where appropriate.rubidium
2007-06-18(svn r10205) -Codechange: refactor returning of cost, so it can be more ↵rubidium
easily modified.
2007-06-18(svn r10197) -Codechange: replace int32 with CommandCost where appropriate.rubidium
2007-06-17(svn r10177) -Fix: Passengers has one A and two Es (ln)peter1138
2007-06-12(svn r10111) -Codechange: Add new vehicle hash table for collision detection ↵peter1138
and finding vehicles on a tile. The hash area scanned is far smaller than the old hash table, which is now used for viewport updates only. This should give a significant performance improvement for games with many vehicles. (Based on work by 'B. N. SmatZ!' and 'madman2003')
2007-06-11(svn r10097) -Feature: Add support for articulated road vehicles, or ↵maedhros
callbacks 11 and 17 for road vehicles for those who prefer the technical explanation.
2007-06-02(svn r10028) -Fix (r2270/r2951): When deleting the first engine of a train ↵peter1138
with multiple engines, only reopen the train window if the player had the original train window open. This fixes 'random' windows opening for multiple players of the same company.
2007-06-02(svn r10026) -Fix: unlinking a rail vehicle didn't clear the first pointerbjarni
After r9973, this could cause some asserts as some vehicles could end up with first pointers to chains they didn't belong to
2007-06-02(svn r10023) -Fix (r3218): When selling trains, if there were no wagons ↵maedhros
between multiheaded engines the rear part could be checked despite having already been deleted, triggering an assert.
2007-06-02(svn r10022) -Fix (r10007): Set the type of multiheaded trains before the ↵maedhros
subtype.
2007-06-01(svn r10008) -Codechange: Move a couple of functions related to articulated ↵maedhros
vehicles to a file of their own.
2007-06-01(svn r10007) -Codechange: Add some asserts to IsFrontEngine and friends to ↵maedhros
ensure that only trains use them.
2007-05-30(svn r9987) -Fix [FS#818]: a train under a bridge could collide with a train ↵rubidium
on the bridge.
2007-05-29(svn r9973) -Cleanup: removed some code that kept both ends of a dualheaded ↵bjarni
engine in the same train (when moving wagons in a depot) NormaliseTrainConsist() is called later in the same command and it will take care of this issue
2007-05-28(svn r9967) -Fix (r9938): autoreplace would in certain conditions move ↵bjarni
dualheaded engines in a train (usually to the rear) -Change: moving an engine in between the two ends of a dualheaded engine will now move the rear dualheaded engine to the front of the newly added engine (instead of moving the new engine to the rear of the rear dualheaded engine) This can make a difference if there are wagons in the train