michi_cc
3ecd08be01
(svn r18647) -Fix: [YAPP] A train inside a station was not always found when checking for trains on a reserved path.
2009-12-27 14:37:50 +00:00
rubidium
e2c2370bc8
(svn r18628) -Fix [FS#3422]: (un)loading counter being reset while loading a train and changing the (path) signal setup around the station
2009-12-25 18:01:27 +00:00
rubidium
9d5a91ed07
(svn r18574) -Fix [FS#3392] (r18481): manually sending trains and RVs to depots didn't quite work
2009-12-20 16:19:47 +00:00
rubidium
e62a56e0f4
(svn r18515) -Change: make it visible when you're to pass the next signal on danger and possible to cancel it
...
-Fix [FS#2891]: when you pass a signal at danger, in a PBS controlled area, don't try to do the 'safe' thing and stop, but continue going; the user wanted the train to pass the signal at danger so (s)he has to suffer the consequences. Ofcourse one can always stop the train manually.
2009-12-16 16:23:44 +00:00
rubidium
75ed87aa71
(svn r18494) -Fix (r18474): crash when moving non-engine to new free wagon chain and group count was off when moving a front engine within the same train and the new front isn't an engine.
2009-12-13 22:17:12 +00:00
rubidium
f90086b696
(svn r18484) -Codechange: simplify the Is(Stopped)InDepot functions for trains
2009-12-13 17:13:20 +00:00
rubidium
899b3db66b
(svn r18481) -Codechange: unify the curve pathfinder penalty defaults; 0.01 tile won't make a dent, 3 tiles might be a bit too much
...
-Feature-ish: make maximum pathfinder penalties for finding depots customisable, also increase it slightly to 20 tiles worth of penalties.
2009-12-13 10:48:44 +00:00
rubidium
689e7efe2f
(svn r18474) -Fix (r18470): in some odd corner cases the group (vehicle) counts could be off
2009-12-12 23:49:30 +00:00
rubidium
54852d9a13
(svn r18473) -Fix (r18470): crash when moving a multiheaded part to be just after itself
2009-12-12 23:24:11 +00:00
rubidium
9eaf5edb53
(svn r18472) -Fix [FS#3146]: selling vehicles in the depot could create states that are not allowed by the NewGRF attach callback.
2009-12-12 22:59:48 +00:00
rubidium
f877cfb38a
(svn r18470) -Codechange/Fix [part of FS#3146]: moving vehicles around in the depot could create states that are not allowed by the NewGRF attach callback.
2009-12-12 22:11:43 +00:00
rubidium
5fedaa4cca
(svn r18466) -Codechange: use CmdMoveRailWagon to attach a just build wagon to a chain
2009-12-11 22:23:48 +00:00
rubidium
e80eabcc2c
(svn r18465) -Codechange: simplify CheckTrainInDepot and remove some unneeded wrapper functions
2009-12-11 22:04:57 +00:00
rubidium
e253bda379
(svn r18463) -Codechange: some simplifications for finding the end of a vehicle
2009-12-11 19:28:28 +00:00
rubidium
d752254cfd
(svn r18462) -Fix: when moving a wagon and only the last part of a dual headed engine you could split the dual headed engine over two vehicles.
2009-12-11 19:27:48 +00:00
rubidium
d9da9d46c5
(svn r18461) -Fix (r18456): when moving a wagon from the front of a train one could make a train 1 longer than allowed
2009-12-11 18:49:03 +00:00
rubidium
639e2986b7
(svn r18459) -Codechange: move the new train validity checking (attach callbacks) to a separate function
2009-12-11 16:16:36 +00:00
rubidium
e4439fd3d4
(svn r18458) -Codechange: make the 'check train length' code of CmdMoveRailVehicle a separate function
2009-12-11 15:50:07 +00:00
rubidium
9298f4d618
(svn r18456) -Codechange: make the length checking functionality of CmdMoveRailVehicle a separate function and simplify the logic
2009-12-11 13:37:01 +00:00
rubidium
5e2a1a46ed
(svn r18420) -Codechange: split YAPF's track follower from the actual YAPF code
2009-12-07 08:41:18 +00:00
rubidium
6600610e47
(svn r18402) -Codechange: unify/centralise the code for crashing vehicles
2009-12-04 20:29:46 +00:00
rubidium
1c2214b430
(svn r18371) -Codechange: unify calling of the train pathfinders
2009-12-02 09:57:17 +00:00
rubidium
2f3053508d
(svn r18364) -Codechange: move the pathfinders and their related files into a separate directory
2009-12-01 22:45:39 +00:00
rubidium
cbb87c41d5
(svn r18362) -Cleanup: remove OPF for RVs and NTP to clean up lots of code and simplify some things for the future
2009-12-01 22:18:51 +00:00
frosch
b5a07b3c70
(svn r18361) -Fix: Remove unneeded usage of invalid pointer. Also thank Hirundo and SmatZ.
2009-12-01 21:45:50 +00:00
frosch
e2b619392c
(svn r18341) -Fix: Replace some GetNextVehicle() with GetNextUnit() where needed.
2009-11-29 18:46:54 +00:00
frosch
f60a437d36
(svn r18268) -Feature: [NewGRF] Make price base multipliers related to vehicles only apply to the GRF locally, if it defines engines of that type itself.
2009-11-24 13:15:58 +00:00
frosch
fe65c7f833
(svn r18266) -Codechange: Add a function to compute prices from price base and cost factor and use it consistently for vehicle purchase, running cost, and refit cost.
2009-11-24 13:12:34 +00:00
rubidium
d4774a2ce9
(svn r18123) -Codechange: try our best to keep the vehicles within the build vehicle list/autoreplace lists instead of overflowing.
2009-11-16 17:58:46 +00:00
rubidium
ddafe77904
(svn r18121) -Codechange: pass the maximum left/right location to the Draw*Engine functions
2009-11-16 17:15:42 +00:00
frosch
1bd8a982d5
(svn r18011) -Feature(ette): [NewGRF] CB 36 for roadvehicle property 09 'running cost factor'.
2009-11-08 13:02:05 +00:00
frosch
17039eaf42
(svn r18007) -Codechange: No need to call CB 36 'running cost factor' if the vehicle has no running cost class anyway.
2009-11-08 12:18:59 +00:00
alberth
5a97b64d73
(svn r17928) -Codechange: ShowErrorMessage() now takes the summary string before the details string.
...
Gentlemen, swap your string parameters.
2009-10-31 19:46:51 +00:00
frosch
020c53fc7e
(svn r17899) -Codechange: Deduplicate code for refitting vehicles.
2009-10-28 21:09:37 +00:00
frosch
23980e6486
(svn r17897) -Fix [FS#3255]: CB15 and CB36 (capacity) were not always called when they should.
...
-Codechange: Move capacity calculation to a single function for all vehicle types, so the behaviour can be kept consistent easier.
2009-10-28 18:31:16 +00:00
frosch
61fbba4dc1
(svn r17894) -Fix: Invalidate cache of vehicle vars 40-43 after testruns of certain commands, that change them temporarily.
2009-10-27 20:37:55 +00:00
frosch
3a470a37cf
(svn r17858) -Codechange: Unindent some code.
2009-10-24 19:16:18 +00:00
frosch
b25f03a447
(svn r17726) -Cleanup: Remove some unneeded/unused parameters.
2009-10-06 19:30:31 +00:00
frosch
4cb5a3e8a2
(svn r17725) -Codechange: Reduce usage of EngInfo and XxxVehInfo, esp. when a Engine * is already present.
2009-10-06 19:17:07 +00:00
rubidium
982b8ee5fc
(svn r17693) -Cleanup: remove some unneeded includes
2009-10-04 17:16:41 +00:00
frosch
a9717da0d3
(svn r17684) -Fix: tcache.first_engine and rcache.first_engine need to be set before first callback/sprite-resolving. For RV fronts it was missing at all, causing livery selection to fail.
2009-10-03 14:46:48 +00:00
frosch
b6156da5e9
(svn r17616) -Codechange [FS#3222]: Enumerize properties used in callback 0x36. Based on Terkhen's work.
2009-09-22 19:28:57 +00:00
frosch
1192ed4c2d
(svn r17594) -Fix: Vehicle image was not always updated when needed.
2009-09-20 19:36:27 +00:00
rubidium
4d378b946c
(svn r17576) -Fix [FS#3208]: assertion triggered when the second vehicle in a 101+ (or 11+ if mammoth trains is disabled) vehicle free wagon chain is an engine and the first vehicle is moved to another chain
2009-09-19 13:55:37 +00:00
rubidium
06e490fadc
(svn r17567) -Fix: some doxygen warnings
2009-09-18 14:23:58 +00:00
rubidium
4db98357ea
(svn r17552) -Codechange: rename load_unload_time_rem to something more generic as it's used for more than just load/unload. Also add some documentation about where it is used.
2009-09-15 20:58:44 +00:00
rubidium
c2c0f4403e
(svn r17534) -Codechange: unify the naming of callback masks/flags
2009-09-14 12:22:57 +00:00
frosch
0e36260337
(svn r17532) -Codechange: Rename several Invalidate functions to SetDirty for more consistency and distinguishability.
2009-09-13 19:15:59 +00:00
rubidium
91024042ea
(svn r17495) -Codechange: replace 'Depot::Get(GetDepotIndex(tile))->index' with GetDepotIndex(tile)
2009-09-10 14:37:55 +00:00
rubidium
cd6b9ed7e4
(svn r17352) -Fix [FS#3162]: trains wouldn't show smoke if the load/unload counter wasn't 0, though there doesn't seem to be a reason to check that variable anyhow anymore
2009-09-01 18:35:24 +00:00
rubidium
99d46e0ad7
(svn r17248) -Fix: add GPL license notice where appropriate
2009-08-21 20:21:05 +00:00
smatz
d64bdb138c
(svn r17168) -Codechange: apply coding style to if and while statements
2009-08-14 17:11:59 +00:00
michi_cc
2fb209c96a
(svn r17152) -Fix: A stuck train could free the reservation of another train if it was reversed or did crash.
2009-08-10 23:52:44 +00:00
michi_cc
6c88e22cc7
(svn r17151) -Fix [FS#3104] (r13974): A train entering a PBS section through a block signal could cause a train crash if another reservation ending at a safe tile was already present in the section.
2009-08-10 23:52:40 +00:00
frosch
32a47df09a
(svn r17121) -Fix [FS#3060]: Update vehicle position cache when the vehicle sprite changes.
2009-08-08 18:45:12 +00:00
smatz
096aca2479
(svn r17085) -Codechange: unify the place where vehicle's cargo ages
2009-08-06 12:44:10 +00:00
smatz
4a39f236fa
(svn r17084) -Codechange: _age_cargo_skip_counter is common to all vehicle types
2009-08-06 12:33:13 +00:00
rubidium
d61be2637e
(svn r17075) -Codechange: rename ~750 strings to be more uniform with their relatives
2009-08-05 17:59:21 +00:00
rubidium
5bb7b8ad35
(svn r17062) -Change: unify the naming of some 125 strings
2009-08-04 18:04:33 +00:00
rubidium
58563eafa7
(svn r16947) -Codechange: use TileArea instead of train_tile, trainst_w and trainst_h.
2009-07-25 08:54:19 +00:00
rubidium
196856f54e
(svn r16939) -Codechange: s/RailwayStation/RailStation/ to unify the way it's written.
2009-07-24 11:47:12 +00:00
rubidium
100cb17fa8
(svn r16909) -Fix [FS#2996]: NewGRF stations would be triggering assertions all over the place when using the more advanced station types.
...
-Change: make (rail) waypoints sub classes of 'base stations', make buoys waypoints and unify code between them where possible.
2009-07-22 08:59:57 +00:00
rubidium
9eaee690bc
(svn r16908) -Codechange: s/DepotWaypointReservation/DepotReservation/
2009-07-22 08:52:41 +00:00
rubidium
f1d6561cc4
(svn r16907) -Codechange: make a more clear distinction between reservation functions that return a bool and that return TrackBits; GetRailStationReservation vs GetRailwayStationReservation, which one returns the bool and which one the TrackBits?
2009-07-21 22:37:10 +00:00
rubidium
84dec43208
(svn r16901) -Fix [FS#3046] (rpbs): when marking trains stuck don't reset the unload counter/stuck when the vehicle is unloading. It'll be automatically reset once the vehicle wants to leave the station
2009-07-21 17:14:05 +00:00
frosch
fec6129cd1
(svn r16894) -Codechange: Add [Specialised]Vehicle::Last().
2009-07-20 19:58:33 +00:00
frosch
f1f4edfbd1
(svn r16884) -Codechange: Add Train::GetFirstEnginePart() and use it.
2009-07-19 19:17:41 +00:00
frosch
12ea92a257
(svn r16867) -Feature(ette): Turn variable 0E/8E (vertical offset for trains in depot) and variable 1E/9E bit 3 (wagon width in depot) into grf-local variables.
2009-07-17 22:00:13 +00:00
smatz
0b4b9dd764
(svn r16857) -Fix [FS#3036](r16652): crash when train partially in depot crashed
2009-07-17 13:54:06 +00:00
smatz
8718babe90
(svn r16849) -Codechange: replace GetCargo() by CargoSpec::Get()
2009-07-16 19:00:13 +00:00
rubidium
74f56861e9
(svn r16772) -Fix [FS#3019]: don't use the same error message for turning around road vehicles and flipping parts of trains in the depot
2009-07-08 22:11:55 +00:00
smatz
32bf91aa41
(svn r16723) -Codechange: make GetNextArticPart(), GetLastEnginePart(), GetNextVehicle(), GetPrevVehicle(), GetNextUnit(), GetPrevUnit() members of Train
2009-07-02 12:10:39 +00:00
smatz
9b10bc9cdf
(svn r16720) -Codechange: make Set/ClearFrontEngine(), Set/ClearArticulatedPart(), Set/ClearWagon(), Set/ClearEngine(), Set/ClearFreeWagon() and Set/ClearMultiheaded() members of Train
2009-07-02 00:17:27 +00:00
smatz
1e1f0ab2cf
(svn r16719) -Codechange: make IsArticulatedPart(), IsTrainEngine(), IsTrainWagon(), IsMultiheaded(), EngineHasArticPart() and IsRearDualheaded() members of Train
2009-07-01 23:57:20 +00:00
smatz
378d01f2f4
(svn r16718) -Codechange: make IsFreeWagon() member of Train
2009-07-01 23:49:13 +00:00
smatz
20fedeb3d6
(svn r16717) -Codechange: make IsFrontEngine() member of Train
2009-07-01 22:22:01 +00:00
smatz
c113303593
(svn r16655) -Codechange: use IsRailwayStationTile() more
2009-06-25 15:54:06 +00:00
smatz
d4538bc611
(svn r16652) -Codechange: use less strict, but faster check for quickly bailing out in FindTrainCollideEnum() (Bilbo)
...
-Codechange: shuffle the code a bit
2009-06-24 23:59:20 +00:00
smatz
a9602401f0
(svn r16646) -Codechange: rename GetDepotByTile() to Depot::GetByTile()
2009-06-24 19:26:41 +00:00
smatz
4b3bf5667a
(svn r16641) -Codechange: reduce number of multiplications done in FindTrainCollideEnum() to minimum
2009-06-23 23:31:43 +00:00
smatz
9ec6fc8a61
(svn r16633) -Codechange: remove checks for consistency of newpool
2009-06-23 10:44:46 +00:00
rubidium
8ca2ccc456
(svn r16581) -Codechange: unify the access to Engine::lifelength.
2009-06-16 13:52:18 +00:00
rubidium
ee96d737b2
(svn r16580) -Codechange: rename Engine::image_index to original_image_index to not confuse it with image_index from *VehInfo.
2009-06-16 13:31:06 +00:00
smatz
632a3191f6
(svn r16571) -Fix [FS#2974](r16322): in some cases, train could be stuck in depot
2009-06-13 10:22:22 +00:00
smatz
ca9787b2ea
(svn r16553) -Codechange: don't use TRACK_BIT_WORMHOLE and TRACK_BIT_DEPOT as bitmasks
2009-06-10 16:02:00 +00:00
smatz
5c934c621d
(svn r16545) -Cleanup: tunnels have been returning correct SlopeZ since r1
2009-06-09 20:04:46 +00:00
smatz
af85994f7f
(svn r16527) -Codechange: use static member functions instead of simple casts when converting Vehicle to specialised vehicle types. Includes safety check
2009-06-06 16:54:22 +00:00
frosch
c9eac207ea
(svn r16498) -Codechange: Remove hardly used HASBITS.
2009-06-01 15:01:54 +00:00
smatz
c5240c770c
(svn r16494) -Codechange: cache train's speed limit caused by curves
2009-06-01 13:14:56 +00:00
alberth
580e478e4e
(svn r16491) -Codechange: Added parentheses around bitwise operators for code style.
2009-06-01 11:43:36 +00:00
frosch
6e06b592ad
(svn r16480) -Fix (r15617): Invalidate newgrf variable caches of more vehicles in more places. Esp. they were only invalidated for trains.
2009-05-31 12:03:14 +00:00
smatz
e419fe6d3f
(svn r16442) -Codechange: use new Vehicle accessors at more places
2009-05-26 22:45:48 +00:00
smatz
0c53f04c07
(svn r16441) -Codechange: new class SpecializedVehicle used as superclass for all vehicle types
2009-05-26 22:10:13 +00:00
yexo
f044ad6f80
(svn r16439) -Change: Make the default vehicle servicing settings company-based settings, so in a multiplayer game everyone can change them.
2009-05-26 21:59:49 +00:00
rubidium
82cdacb20c
(svn r16427) -Codechange: replace a few magic numbers with an existing constant and unduplicate a few lines.
2009-05-26 08:53:16 +00:00
rubidium
c496a3e014
(svn r16421) -Codechange: do not unnecessarily remove constness or unnecessarily add it.
2009-05-24 20:29:04 +00:00
frosch
eeb3f75cfe
(svn r16416) -Fix [FS#2912]: Rework deleting of news when referenced vehicles/stations/industries are deleted.
2009-05-24 16:52:42 +00:00
frosch
6e06e82bc4
(svn r16414) -Change: Make it harder to ignore/close important error messages. Esp. do not close them automatically after some time.
2009-05-24 12:50:58 +00:00
rubidium
6cfc38b97c
(svn r16397) -Codechange: move GetVehicleOrder/GetLastVehicleOrder into Vehicle
2009-05-23 12:27:42 +00:00
rubidium
cd382b28a3
(svn r16394) -Codechange: move (NewGRF) cache variables into a separate struct so (some vehicle related) NewGRF cache 'desyncs' can be tested easier.
2009-05-23 09:10:56 +00:00