Commit Graph

350 Commits (8252bc59e3fbd49fd9406d5b7b3b8a22193af28d)

Author SHA1 Message Date
rubidium a63974547b (svn r12795) -Fix [FS#1938]: vehicles could break down during loading and keep loading. The intention of the break down code is not to break down when having zero speed, therefor break downs now do not happen when loading. 16 years ago
rubidium ca1f8fbe2e (svn r12761) -Codechange: lots of minor whitespace coding style fixes around operators. 16 years ago
rubidium 6d063c3ad6 (svn r12754) -Codechange: split depot.h into depot_map.h, depot_func.h and depot_base.h and remove quite a lot of unneeded (before this) includes of depot.h. 16 years ago
smatz ec588da9e8 (svn r12753) -Codechange: do not use IsDepotTypeTile() where simpler function can be used 16 years ago
smatz 966e476df8 (svn r12745) -Codechange: a bit of naming conventions, introduce Is*DepotTile() 16 years ago
glx 90bd1e45eb (svn r12711) -Codechange: remove unneeded loops 16 years ago
rubidium 760a57867f (svn r12698) -Codechange: skip orders to stations that do not have a train part anymore, just like is done for road vehicles and ships. 16 years ago
rubidium daf5a2f1bc (svn r12658) -Codechange: unify a vast portion of the CmdSend<VehicleType>ToDepot commands. 16 years ago
rubidium aa8a5b2c39 (svn r12657) -Codechange: add 'FindClosestDepot' to the vehicle class. 16 years ago
frosch b91781b715 (svn r12629) -Codechange: Split VehicleNeedsService() into Vehicle::NeedsServicing() and Vehicle::NeedsAutomaticServicing().
-Fix (r11052): Disable servicing by service-interval if a vehicle has depot orders.
16 years ago
rubidium cf250390c5 (svn r12615) -Codechange: rename some enums related to depot orders to make it more clear that they are no loading/unloading flags. Also add more type strictness. 16 years ago
smatz 7dc63836ea (svn r12605) -Cleanup: variable scope and coding style in train* 16 years ago
rubidium 53d101cc99 (svn r12593) -Codechange: hide Order's flags in most of the code. 16 years ago
rubidium 935b562074 (svn r12588) -Codechange: do not access the destination of an order directly. 16 years ago
rubidium 3b0e3d8d30 (svn r12584) -Codechange: do not access the order type directly. 16 years ago
rubidium ed2acd6f3d (svn r12580) -Codechange: merge some logical related to non-stop orders. 16 years ago
rubidium ba0a9538cf (svn r12578) -Codechange: merge the aircrafts ProcessOrder too into the 'unified' ProcessOrder. 16 years ago
rubidium 3fdddeac40 (svn r12575) -Codechange: unduplicate Process*Orders for trains, ships and road vehicles. 16 years ago
frosch 2de802567a (svn r12532) -Cleanup: Replace two tables of magic values with already existing functions. 16 years ago
frosch 51155403a4 (svn r12531) -Codechange: Rename some variables for consistency. 16 years ago
rubidium df1d9bd880 (svn r12490) -Codechange: rename engine.h to engine_func.h and remove unneeded inclusions of engine.h and/or replace them with engine_type.h. 16 years ago
rubidium c51b81c247 (svn r12489) -Codechange: split station.h into station_base.h and station_func.h. 16 years ago
rubidium b84b16cfcd (svn r12488) -Codechange: split order.h into order_base.h and order_func.h. 16 years ago
bjarni 8837c7dcd5 (svn r12482) -Fix: [build train] we don't need to have a depot in order to just check the price of a rail vehicle so don't check for compatible rails on the tile either
also wagons will only need tracks they can drive on in order to be build so there is no reason to check for power in the depot
17 years ago
rubidium 2426f5342f (svn r12459) -Codechange: split news.h into news_type.h and news_func.h. 17 years ago
smatz 3ab59da68a (svn r12386) -Fix [FS#1841](r2428): train could break apart when reversed while partially in a depot 17 years ago
smatz f45221f274 (svn r12384) -Fix (r2428): do not disconnect train when reversing, it may 'think' it is whole in a depot 17 years ago
glx 285a43037b (svn r12380) -Fix: update train acceleration and max speed after setting cached value to ensure the correct max speed is used with disabled real acceleration 17 years ago
glx cbcad325f9 (svn r12379) -Codechange: removed now redondant InvalidateWindow() calls 17 years ago
glx 187c7e19fe (svn r12378) -Fix: refresh vehicle details window when cached values are updated 17 years ago
glx 08becf93e6 (svn r12377) -Fix [FS#1854]: set cached value for vehicle property 25 before other cached values 17 years ago
smatz 3d10ae7ec3 (svn r12369) -Fix (r1681): reset train speed limits when _patches.realistic_acceleration changes 17 years ago
smatz 1f13638d03 (svn r12368) -Codechange: use explicit body for loops and conditions and remove -Wno-empty-body from the configure script 17 years ago
peter1138 11c8050e3f (svn r12332) -Fix (r12331): Invalidate cached data and update image after setting flag. 17 years ago
glx d9d601b1ca (svn r12331) -Feature: [NewGRF] vehicle variable FE bit 8 17 years ago
peter1138 f6e4dc4d8c (svn r12209) -Fix: [NewGRF] Support using any base price for rail and road vehicles' running cost, and show running cost of wagons if they have it. 17 years ago
peter1138 0e997be11e (svn r12205) -Codechange: rename RailVehicleInfo::running_cost_base to running_cost, inline with other vehicle types (It is the factor, not the base) 17 years ago
frosch 91297d4732 (svn r12203) -Fix (r12199): Make trains pay attention to signals again. 17 years ago
frosch 7f3d56041b (svn r12199) -Codechange: Remove magic around the results of GetTileTrackStatus(). 17 years ago
smatz 9bdb194b2a (svn r12197) -Fix [FS#1788](r12134): show correct last year profit when the train had negative income
-Codechange: use GetDisplayProfitThisYear() to convert vehicle profit to readable form
17 years ago
smatz 7dbb21c69b (svn r12194) -Codechange: apply coding style on enum TrainSubtype 17 years ago
smatz 0357c4306c (svn r12189) -Codechange: mark some functions in train_cmd.cpp inline (called once or very short) 17 years ago
smatz 32d8ac2073 (svn r12188) -Codechange [FS#1782]: do not check twice for correct rail owner (patch by Vikthor) 17 years ago
smatz 4a329de942 (svn r12179) -Codechange: use GetCrossingRailTrack() and GetCrossingRailAxis() to improve code readability 17 years ago
smatz 97013cd8c4 (svn r12178) -Codechange: use the 'side' parameter in TrainController and TrainCheckIfLineEnds to simplify the code 17 years ago
smatz fe48d0be21 (svn r12134) -Change: count the number of ticks a vehicle was running this day to calculate running cost
-Fix [FS#1739]: vehicle profit is now counted with 8bit fract, so it is now shown properly in the vehicle details window
17 years ago
smatz 391898b47a (svn r12132) -Cleanup: convert pathfinder selection from if/else to switch/case at many places 17 years ago
smatz 4c5dde140b (svn r12131) -Fix (r3374): with mammoth trains disabled, maximum train length was limited to 9 17 years ago
smatz a3e3cd7d46 (svn r12129) -Change [FS#1759]: simplified patch settings for pathfinders (Yorick) 17 years ago
peter1138 3abf3e3fa4 (svn r12128) -Codechange: Replace last use of TrainPlayLeaveStationSound(v) with v->PlayLeaveStationSound(), and remove wrapper function. 17 years ago
frosch f476d861d2 (svn r12085) -Fix(r12058): Road vehicles could get stuck, when NPF told them to reverse on junction tiles. (spotted by SmatZ) 17 years ago
belugas 7f5f48281c (svn r12066) -Codechange: Rename GetBridge for the more common GetBridgeSpec
-Codechange: Remove direct access to the _bridge table in favor of the above mentioned GetBridgeSpec
-Codechange: Rationalize the use of Bridge type pointer
17 years ago
smatz ebba0d7c71 (svn r12057) -Fix: slowdown train when approaching 90deg turn when 90deg turns are forbidden 17 years ago
glx 7ce12e50da (svn r12037) -Codechange: replace OnNewDay_(Aircraft|RoadVeh|Ship|Train) with an OnNewDay method in the Vehicle class 17 years ago
smatz f22b0127af (svn r11996) -Fix [FS#1706]: update train statusbar when stopping from zero speed 17 years ago
smatz 8be486c27e (svn r11960) -Cleanup: simplify some IsTunnel(Tile) / IsBridge(Tile) conditions 17 years ago
smatz f05caedf7c (svn r11922) -Codechange: use MaybeBarCrossingWithSound() to bar crossing with sound 17 years ago
smatz dfb91c26ec (svn r11916) -Codechange: use enums from VehicleViewWindowWidgets instead of constants
-Fix: refit button widget was not correctly updated
17 years ago
smatz 8dbf03e322 (svn r11910) -Fix: play 'ding-ding' crossing sound in more cases (except gameload and crossing construction)
-Fix: crossing sound is bound to tile, not to vehicle
17 years ago
smatz b20d1eee6c (svn r11908) -Fix: update crossing when merging a company, when building a crossing and after loading older savegame 17 years ago
smatz 2c38d3066f (svn r11900) -Fix: set correctly crossing state after train reversal, train leaving crossing, train crash
Fixes several ways to leave crossing red forever or to leave it unbarred when there is a train on crossing
17 years ago
smatz fc2895e8c2 (svn r11882) -Codechange: introduce MarkSingleVehicleDirty() and simplify the code at some places 17 years ago
smatz 3ad8b79550 (svn r11877) -Fix: another way to crash competitors' train in a station
-Codechange: increase the speed train is approaching line end/semaphore in non-diagonal direction a bit
17 years ago
smatz 70a9c544b8 (svn r11870) -Fix: slow down train when approaching tile we can't enter in more cases
(tunnel/bridge/depot from wrong direction, competitor's track, wrong railtype)
-Fix: do not make crossing red when we can't enter it in any case
17 years ago
rubidium 736640fd87 (svn r11866) -Codechange: swap OFB_* and OF_* so it conceptually in sync with other cases of *B_* vs *_* like VETSB_* and VETS_*. 17 years ago
smatz 81cad58c68 (svn r11864) -Codechange: pass owner whose signals we will update instead of complex detection later 17 years ago
smatz c6de18c3db (svn r11847) -Fix: do not affect the speed a train is entering a depot by trackbits behind it 17 years ago
smatz a9f69f387d (svn r11845) -Codechange: simplify train collision detection a bit 17 years ago
smatz b3e28dc5ad (svn r11835) -Fix: mark depot, viewports, vehicle lists and vehicle details dirty when a train crashes 17 years ago
rubidium 9c0c798dd8 (svn r11834) -Codechange: only include settings_type.h if needed. 17 years ago
smatz 86a6268f3e (svn r11831) -Fix: call TrainConsistChanged() when removing crashed train part to be consistent with saveload process 17 years ago
rubidium 90acd52f22 (svn r11828) -Codechange: include table/* as the last includes and remove an unneeded include from openttd.h. 17 years ago
peter1138 0f7392bd61 (svn r11822) -Codechange: Replaced fixed size custom name array. Names are now attached to their object directly and there is
no limit to the amount of names.
-Fix: NewGRF engines could not be renamed.
17 years ago
smatz 74f9be8f2c (svn r11821) -Fix (r11802): 'optimization assert' when removing crashed wagon in some cases 17 years ago
smatz 9c9b743242 (svn r11820) -Fix: invalidate depot window when removing crashed train 17 years ago
smatz b18b7f6f22 (svn r11819) -Fix: do not access the Vehicle struct that has been already deleted when removing crashed train 17 years ago
rubidium 2fc62eab05 (svn r11818) -Codechange: split player.h into smaller pieces. 17 years ago
smatz fa1f94e599 (svn r11812) -Codechange: introduce TrainExitDir() to simplify some functions 17 years ago
smatz bc4ed3eafd (svn r11802) -Fix [FS#716]: do not crash trains when leaving depot to a very long track
-Codechange: use dedicated pathfinder for signal updating, resulting in better performance and possible future improvements
17 years ago
rubidium 2d2e1e3863 (svn r11800) -Codechange: move some functions to a more logical location + some type safety. 17 years ago
rubidium 0365c1f33b (svn r11793) -Codechange: pass the expense type via the CommandCost instead of a global variable. Patch by Noldo (FS#1114). 17 years ago
peter1138 0ae26a0312 (svn r11789) -Codechange: coding style for global variable names 17 years ago
rubidium 64d691bacc (svn r11787) -Codechange: more header rewrites. This time related to viewport.h. 17 years ago
rubidium e2f7ec1d3e (svn r11775) -Codechange: move all autoreplace/autorenew functions to a single location. 17 years ago
rubidium 444e77d8bc (svn r11774) -Change: do not include variables.h in a header when it is not needed. 17 years ago
smatz f02cf9281b (svn r11760) -Codechange: unify the way how other end of a tunnel/bridge is determined at some places
-Fix: adding road/tram to tram/road bridge was cheaper by one tile
17 years ago
peter1138 5c23778065 (svn r11741) -Feature: Add support for NewGRF's train 'tilt' flag. Trains with tilt capability (specific details are per NewGRF set) will be given a 20% speed limit bonus on curves. 17 years ago
peter1138 c96fcfc21b (svn r11738) -Codechange: Refactor realistic acceleration's curve counting to use DirDiffs instead of local tables, and remove an unnecessary loop. 17 years ago
peter1138 e5f50b6fde (svn r11733) -Fix: Max speed for entering stations overrode the max speed of curves 17 years ago
peter1138 a1b482973d (svn r11732) -Fix (r4150): elrail merge gave elrail, monorail & maglev unintended speed bonuses for curves, as the bonus was based on the railtype index. The bonus is now specified by a property of the railtype. 17 years ago
peter1138 2194b15fdd (svn r11731) -Fix [FS#1582]: Clear sprite override data before performing NewGRF wagon attach callback. This stopped
the callback working for autoreplace and when moving wagons from train to train in a depot.
-Fix (r11724): Don't check wagon attach callback for the chain when moving a single wagon.
17 years ago
rubidium fe71089b0e (svn r11724) -Fix: make it impossible (for users) to circumvent the length checking of the NewGRF 'allow wagon attach' callback by moving several wagons at a time. 17 years ago
rubidium 445a733eb6 (svn r11719) -Codechange: split sound.h in a header with types and one with functions. 17 years ago
smatz c10d3da133 (svn r11707) -Fix: do not allow refitting flooded (destroyed) vehicles 17 years ago
rubidium 722613f7f3 (svn r11706) -Codechange: split vehicle.h and remove another bunch of useless includes. 17 years ago
smatz ae3206cd97 (svn r11705) -Fix [FS#1557]: trains could have sprites with wrong direction when reversing, also was inconsistent with save/load process (possible desyncs) 17 years ago
rubidium db73addb43 (svn r11702) -Codechange: move all date related stuff to date*. 17 years ago
rubidium f82aeb82c5 (svn r11701) -Codechange: removal unnecessary inclusions of map.h (and split map.h). 17 years ago
rubidium 81bf9f8503 (svn r11692) -Codechange: move some functions from 'functions.h' to a more logical place and remove about 50% of the includes of 'functions.h' 17 years ago
rubidium 3074bca136 (svn r11680) -Codechange: refactor more out of openttd.h and functions.h. 17 years ago
rubidium 766551b0bc (svn r11677) -Codechange: move price and command related types/functions to their respective places. 17 years ago
rubidium 8427b8bad2 (svn r11675) -Codechange: split the string types from the string functions. 17 years ago
rubidium be923601bf (svn r11669) -Codechange: refactor tile.h -> tile_type.h and tile_map.h 17 years ago
rubidium 0995194162 (svn r11661) -Codechange: some header reworks in order to try to reduce the compile time of OpenTTD by reduce the amount of circular-ish dependencies. 17 years ago
smatz d56a690ba4 (svn r11649) -Codechange: some code can be simplified thanks to changes in r11642 17 years ago
smatz 926fe5c9e9 (svn r11644) -Codechange: merge some functions from tunnel_map.h and bridge_map.h into tunnelbridge_map.h 17 years ago
smatz 60f9bbd17e (svn r11642) -Codechange: VehicleFromPos does check for v->tile == tile, so remove useless checks 17 years ago
smatz 57a83e7c76 (svn r11634) -Fix: update signals when deleting crashed train on a bridge, update even when train is rotated 17 years ago
smatz d31506654c (svn r11633) -Codechange: merge CheckTunnelEmpty and IsVehicleOnBridge into GetVehicleTunnelBridge 17 years ago
smatz cd58045234 (svn r11623) -Fix [FS#1533] (r11619): assert when train is going over two crossings next to each other 17 years ago
smatz 3a62919ba3 (svn r11619) -Fix [FS#1531]: do not make crossing red behind depot the train is entering 17 years ago
glx 06c131b244 (svn r11567) -Fix [FS#1512] (r11011): break the chain before moving a vehicle after another in the same chain 17 years ago
skidd13 e36dba227b (svn r11523) -Codechange: Move the CHANCE macros to core/random_func.cpp cause they depend on Random()
-Codechange: Convert the CHANCE macros to functions and rename them fitting to the naming style
17 years ago
skidd13 f92f3aec06 (svn r11485) -Codechange: Remove the doubled function ToggleBitT and rename the remaining to fit with the naming style 17 years ago
skidd13 3ae50673a3 (svn r11484) -Codechange: Remove the doubled function SetBitT and rename the remaining to fit with the naming style 17 years ago
skidd13 6801cceda1 (svn r11482) -Codechange: Remove the doubled function ClrBitT and rename the remaining to fit with the naming style 17 years ago
skidd13 c0a2c0c23e (svn r11481) -Codechange: Rename the HASBIT function to fit with the naming style 17 years ago
skidd13 f4a5c80d71 (svn r11476) -Codechange: rename the function myabs to abs to get rid of an unneeded define 17 years ago
skidd13 98f66552be (svn r11475) -Codechange: rename clamp and clampu to Clamp and ClampU to fit with the coding style 17 years ago
glx 9fcf6e7a43 (svn r11431) -Codechange: [NewGRF] Add support for changing rail vehicle user-defined bit mask (prop 25) via callback 36 17 years ago
truelight b935a74782 (svn r11383) -Codechange: fixed all the mess around KillFirstBit (tnx to Rubidium and skidd13) 17 years ago
glx 6120d02751 (svn r11352) -Codechange: cache callback 2D result (vehicle color mapping) instead calling it every time the vehicle is drawn 17 years ago
maedhros 5712da734f (svn r11333) -Fix: Train engines still had a value of 0. 17 years ago
rubidium b4e7203b0a (svn r11332) -Fix: vehicles getting a value of 0 on construction.
-Fix: assertion when selling vehicles.
17 years ago
rubidium c8df832678 (svn r11230) -Fix [FS#1228]: one could construct trains out of crashed wagons and engines. Based on a patch by SmatZ. 17 years ago
rubidium 2e8f93a821 (svn r11229) -Fix [FS#1307]: one could sell vehicles that were crashed in a depot, which would still yield money. 17 years ago
rubidium a28b307c95 (svn r11173) -Codechange: rename some callback enums so they are more uniform. 17 years ago
rubidium 26310769dd (svn r11134) -Fix [FS#1238]: vehicles got removed twice from the group list when selling whole trains. 17 years ago
rubidium f41c8ab3aa (svn r11122) -Fix [FS#1234]: crash when building a NewGRF vehicle when the articulated build vehicle callback returneed a different value for the purchase window than the normal build. Thanks for Dalestan and _minime_ for pointers to possible causes. 17 years ago
rubidium a18f3f25a9 (svn r11120) -Codechange: remove the arbitrary limit of 10 articulated parts for a vehicle. 17 years ago
rubidium d651f6b9ed (svn r11086) -Fix/Revert (r11053, r10984): "fixing" r11053 made the acceleration code use the wrong speed, which can be fixed by reverting a small piece of r10984. 17 years ago
rubidium 634aba16a7 (svn r11072) -Fix [FS#1045]: when a vehicle had a service order, the goto-depot button did not make it possible to stop the vehicle at that depot. 17 years ago
rubidium c97804461e (svn r11059) -Fix [FS#1182]: inconsistency between Rail<->ElRail conversions of different kinds of rail containing tiles (normal rail, stations, depots, etc). Patch by SmatZ. 17 years ago
rubidium 0db524e175 (svn r11048) -Fix [FS#1206]: several cases where (re)moving eninges on a train would corrupt the vehicle counts for the groups. 17 years ago
bjarni 7cd2aeb1c9 (svn r11045) -Codechange: added a function to tell if a vehicle is the rear part of a dualheaded train engine 17 years ago
rubidium cadc470da5 (svn r11017) -Codechange: unify determining whether a vehicle needs/can be service a little more. 17 years ago
rubidium 732845440a (svn r11011) -Fix [FS#1129]: GetFirstVehicleInChain did change the game 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.
17 years ago
rubidium f830699971 (svn r11004) -Codechange: some reworks of the saveload mechanism to be able to save and load private and protected variables in the vehicle struct. 17 years ago
rubidium 235ad4ab6b (svn r11003) -Codechange: replace Vehicle->next to Vehicle->Next() and Vehicle->SetNext() so we can trap instances that change a next pointer and (in the future) update the first/previous pointers based on that. 17 years ago
rubidium dc80195754 (svn r10999) -Codechange: unify the way the running cost of a vehicle is determined. Patch by nycom. 17 years ago
rubidium a6a9968d16 (svn r10997) -Codechange: unify the vehicle view window. Patch by PhilSophus. 17 years ago
rubidium 91d18ebd17 (svn r10984) -Codechange: unify the way one can get the current speed in the same forwat so we can display it. 17 years ago
rubidium 39f17c9de4 (svn r10983) -Codechange: use vehstatus & VS_CRASHED instead of some other "methods" custom to each vehicle to determine whether the vehicle is crashed. 17 years ago
bjarni 495bc4ecf4 (svn r10823) -Fix r8610 [FS#1097]: the autoreplace window vehicle count didn't always update correctly) (Matthias) 17 years ago
rubidium b21f29c38f (svn r10770) -Codechange: use the pool item class as super class for the 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.
17 years ago
peter1138 9b9bca40b9 (svn r10734) -Fix [FS#1030]: Revert r10513) and add special cases for collision detection on bridges/tunnels. 17 years ago
rubidium a67957866a (svn r10697) -Codechange: give a more sensible names to some of the unkX variables. 17 years ago
rubidium df009178d4 (svn r10587) -Codechange: move the string/dparam related stuff from variables.h to strings.h 17 years ago
rubidium 7cb7488836 (svn r10493) -Codechange: update some callback ID enums to reflect their changed usage, add a few and update the comments. 17 years ago
rubidium 4b70a97fde (svn r10474) -Fix [FS#995]: wrong group count after train crash. 17 years ago