Commit Graph

416 Commits (33d71b45fe8fd9774616568cf8fce2df18ef5110)

Author SHA1 Message Date
alberth a51d34c048 (svn r20499) -Doc: Spelling fixes, and one doxygen comment addition. 14 years ago
rubidium b5d5a4e159 (svn r20437) -Codechange: lets Engines use GRFFilePropsBase as well 14 years ago
frosch 5b86c79fce (svn r20283) -Codechange: Unify start of doygen comments. 14 years ago
alberth 137e2b64c9 (svn r20211) -Codechange: Indented code should have curly braces around it. 14 years ago
frosch 0a01f91f54 (svn r20133) -Revert (r20130): Vehicles could deadlock themself in roadstops. 14 years ago
frosch 8457cafd7e (svn r20130) -Fix [FS#3935]: Standard roadstops can also be left via manual depot orders. 14 years ago
frosch 35f4b4155e (svn r20079) -Codechange [FS#3922]: Add helper functions to deal with the 192-256-magic of vehicle movement. 14 years ago
rubidium 0eb8772794 (svn r20053) -Fix [FS#3919] (r20034): crashing road vehicles crashed OpenTTD with slower/longer trains 14 years ago
rubidium 1fcfac6d69 (svn r20034) -Fix [FS#3896] (r14869): road vehicles could get crashed twice in a tick
In RoadVehicleController at tick N a road vehicle gets a j of slightly less 
than adv_speed. In tick N+1 RoadVehCheckTrainCrash is called, then the road
vehicle gets a j of slightly more than adv_speed. This causes a second call
of RoadVehCheckTrainCrash. If in tick N the road vehicle moved onto a level
crossing and a (maglev) entered that tile at the same tick, in tick N+1 the
road vehicle would be crashed twice.
14 years ago
terkhen b3d347f6c9 (svn r19961) -Codechange: Unify "vehicle is destroyed" errors. 14 years ago
frosch 585d259b22 (svn r19945) -Fix (r19755-ish): Allow turning of roadvehicles while waiting in a queue (again). 14 years ago
frosch a5bea603ea (svn r19931) -Fix (r19914): Convert assertion in Backup<> destructor into DEBUG() output. It was triggered on exceptions, especially when aborting world generation. 14 years ago
frosch ee53807e51 (svn r19914) -Codechange: Wrap a helper class around temporary assignments of _current_company to ensure proper restoration. 14 years ago
smatz 27949d219d (svn r19756) -Codechange: move UpdateViewport() from Vehicle to SpecializedVehicle in order to improve performance 14 years ago
frosch 5a0934afff (svn r19755) -Fix: Blocked roadvehicles should first check whether they are still blocked before accelerating again, instead of continuous starting/stopping. 14 years ago
frosch 0d6a432b4c (svn r19621) -Codechange: Remove direct usage of magic 'p1's in build vehicle commands. 14 years ago
terkhen d29c756946 (svn r19533) -Fix [FS#3720]: Vehicle details window did not resize correctly after refitting a road vehicle to a longer variant. 14 years ago
alberth 72d62fd6fc (svn r19494) -Codechange: Remove _error_message. 14 years ago
alberth d5fe3f96c7 (svn r19405) -Codechange: CheckOwnership() returns a CommandCost. 15 years ago
terkhen e6878d7ba1 (svn r19345) -Feature: Realistic acceleration for road vehicles. 15 years ago
terkhen ac03431a76 (svn r19344) -Codechange: RoadVehicle uses UpdateInclination instead of its own function. 15 years ago
rubidium b0a1ecf160 (svn r19091) -Cleanup: remove some unneeded zeroing 15 years ago
smatz 6c1ab1a2fa (svn r19019) -Codechange: use HasExactlyOneBit() and HasAtMostOneBit() instead of CountBits() where possible 15 years ago
rubidium 7127338414 (svn r18872) -Codechange: introduce PaletteID and use it 15 years ago
rubidium f618acfb7d (svn r18866) -Codechange: remove the CmdFailed(ret)/CmdSucceeded(ret) wrapper functions 15 years ago
rubidium 9467b7c6d6 (svn r18809) -Codechange/Cleanup: remove unneeded headers from some files, if a header require a header make it include that header 15 years ago
rubidium 9d5a91ed07 (svn r18574) -Fix [FS#3392] (r18481): manually sending trains and RVs to depots didn't quite work 15 years ago
rubidium 99cdb5e8ec (svn r18561) -Fix [FS#3390]: Do try to overtake a vehicle in a station as overtaking in a station is not allowed 15 years ago
rubidium 98be5fcc5c (svn r18532) -Codechange/Fix (r18404): don't leave the road stop between tiles, just stay on it. This prevents the rare cases where a road vehicle would stop exactly on the border where it could not load 15 years ago
rubidium 06f9e26ca4 (svn r18531) -Fix [FS#3384] (r18404): for articulated road vehicles only the first part was accounted for, so for extremely short fronts and lots after it the spreading did not work as it should. 15 years ago
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.
15 years ago
rubidium 7da9158f6b (svn r18428) -Fix: if lots of road vehicles are leaving a depot and the first in the hash linked list is basically the last of the vehicles to leave the depot then due to the 'jam prevention' code all vehicles would fairly quickly increase the blocked counter and drive off all simultaniously 15 years ago
rubidium 556061ef6b (svn r18405) -Fix (r18405): RVs didn't like to stop when the 'next' drive through station tile didn't have a compatible road type 15 years ago
rubidium 0fed86a779 (svn r18404) -Codechange: link drive through stops better together
-Feature: make penalty for road stop occupancy user configurable
-Fix [FS#1944]: road vehicles would not pick an empty drive through stop. Now they will *if* the penalty for driving around is less than the occupancy penalty
-Fix [FS#1495]: long (articulated) road vehicles could block loading of others when the following road vehicle already got 'permission' to go to the next bay even when it could not reach it
-Change: improve the throughput of the drive through road stops by letting them stop closer together
15 years ago
rubidium 6600610e47 (svn r18402) -Codechange: unify/centralise the code for crashing vehicles 15 years ago
rubidium e4dd60d428 (svn r18388) -Codechange: move entering/leaving of road stops to functions of RoadStop 15 years ago
rubidium 6278f0b8a9 (svn r18385) -Cleanup: remove the now unneeded multistop slot management code 15 years ago
frosch 992bc6c345 (svn r18381) -Codechange: Add RoadVehicle::IsBus() to simplify some stuff. 15 years ago
rubidium 3eaf87992e (svn r18373) -Codechange: unify some road pathfinder functions 15 years ago
rubidium 2341c2e283 (svn r18367) -Codechange: unify the ship pathfinder 'calls' 15 years ago
rubidium 2f3053508d (svn r18364) -Codechange: move the pathfinders and their related files into a separate directory 15 years ago
rubidium cbb87c41d5 (svn r18362) -Cleanup: remove OPF for RVs and NTP to clean up lots of code and simplify some things for the future 15 years ago
rubidium ff1a4a9028 (svn r18270) -Codechange: split the code for finding a road stop to stop at into a seperate function 15 years ago
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. 15 years ago
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. 15 years ago
rubidium d4774a2ce9 (svn r18123) -Codechange: try our best to keep the vehicles within the build vehicle list/autoreplace lists instead of overflowing. 15 years ago
rubidium ddafe77904 (svn r18121) -Codechange: pass the maximum left/right location to the Draw*Engine functions 15 years ago
frosch 1bd8a982d5 (svn r18011) -Feature(ette): [NewGRF] CB 36 for roadvehicle property 09 'running cost factor'. 15 years ago
frosch 3cb949a17d (svn r17976) -Codechange: Move CargoClass to cargotype.h and clean up including of newgrf_cargo.h 15 years ago
frosch 020c53fc7e (svn r17899) -Codechange: Deduplicate code for refitting vehicles. 15 years ago
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.
15 years ago
frosch 61fbba4dc1 (svn r17894) -Fix: Invalidate cache of vehicle vars 40-43 after testruns of certain commands, that change them temporarily. 15 years ago
frosch f6cc2c162b (svn r17827) -Codechange: Deduplicate some lines of code. 15 years ago
frosch 99d822723d (svn r17826) -Codechange: GetRoadVehLength() is only used in one file, make it static. 15 years ago
frosch b25f03a447 (svn r17726) -Cleanup: Remove some unneeded/unused parameters. 15 years ago
frosch 4cb5a3e8a2 (svn r17725) -Codechange: Reduce usage of EngInfo and XxxVehInfo, esp. when a Engine * is already present. 15 years ago
rubidium 982b8ee5fc (svn r17693) -Cleanup: remove some unneeded includes 15 years ago
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. 15 years ago
frosch b6156da5e9 (svn r17616) -Codechange [FS#3222]: Enumerize properties used in callback 0x36. Based on Terkhen's work. 15 years ago
smatz f85b8c4e09 (svn r17596) -Codechange: constify some tables 15 years ago
frosch 1192ed4c2d (svn r17594) -Fix: Vehicle image was not always updated when needed. 15 years ago
rubidium 06e490fadc (svn r17567) -Fix: some doxygen warnings 15 years ago
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. 15 years ago
rubidium c2c0f4403e (svn r17534) -Codechange: unify the naming of callback masks/flags 15 years ago
frosch 0e36260337 (svn r17532) -Codechange: Rename several Invalidate functions to SetDirty for more consistency and distinguishability. 15 years ago
rubidium 91024042ea (svn r17495) -Codechange: replace 'Depot::Get(GetDepotIndex(tile))->index' with GetDepotIndex(tile) 15 years ago
rubidium 4c548cca34 (svn r17491) -Fix [FS#3188]: road vehicles could get lost when the prelimiary destination (for the pathfinder heuristics) is unreachable. 15 years ago
rubidium 67468acf5a (svn r17333) -Codechange: make the road pathfinder 'interface' like the one for the rail pathfinder
-Fix [FS#3057]: road vehicles forgetting their servicing order when the path takes them away (in bird distance) from their destination first
15 years ago
rubidium 99d46e0ad7 (svn r17248) -Fix: add GPL license notice where appropriate 15 years ago
frosch 32a47df09a (svn r17121) -Fix [FS#3060]: Update vehicle position cache when the vehicle sprite changes. 15 years ago
smatz 096aca2479 (svn r17085) -Codechange: unify the place where vehicle's cargo ages 15 years ago
rubidium d61be2637e (svn r17075) -Codechange: rename ~750 strings to be more uniform with their relatives 15 years ago
rubidium 01eabc5f4c (svn r16921) -Codechange: make it more clear what strings are related to road vehicles; only ROAD isn't always enough. Also unify the way of writing it. 15 years ago
frosch f9e085f004 (svn r16872) -Codechange: Add RoadVehicle::GetDisplayImageWidth and simplify DrawRoadVehImage. 15 years ago
rubidium 18fbe0aac4 (svn r16722) -Codechange: unify the naming of the Is/Set/HasArticulatedPart functions 15 years ago
rubidium f97bd41ed4 (svn r16721) -Codechange: make Is/SetRoadVehicleFront, Is/Set/HasArticulatedPart member of RoadVehicle. 15 years ago
smatz 9d63b88b22 (svn r16662) -Codechange: replace GetRoadStopByTile() by RoadStop::GetByTile() 15 years ago
yexo a52f5c45e6 (svn r16648) -Codechange: move some more includes around 15 years ago
yexo b00726a5d2 (svn r16647) -Codechange: remove newgrf.h include from newgrf_engine.h to prevent unnecessary inclusion newgrf.h anyway 15 years ago
smatz a9602401f0 (svn r16646) -Codechange: rename GetDepotByTile() to Depot::GetByTile() 15 years ago
smatz f6a4d61cca (svn r16643) -Codechange: replace GetStationByTile() by Station::GetByTile() 15 years ago
smatz 61a42f42c1 (svn r16640) -Codechange: move roadstop stuff to separate files 15 years ago
rubidium 8ca2ccc456 (svn r16581) -Codechange: unify the access to Engine::lifelength. 15 years ago
rubidium ee96d737b2 (svn r16580) -Codechange: rename Engine::image_index to original_image_index to not confuse it with image_index from *VehInfo. 15 years ago
smatz af85994f7f (svn r16527) -Codechange: use static member functions instead of simple casts when converting Vehicle to specialised vehicle types. Includes safety check 15 years ago
frosch c9eac207ea (svn r16498) -Codechange: Remove hardly used HASBITS. 15 years ago
alberth 580e478e4e (svn r16491) -Codechange: Added parentheses around bitwise operators for code style. 15 years ago
frosch 6e06b592ad (svn r16480) -Fix (r15617): Invalidate newgrf variable caches of more vehicles in more places. Esp. they were only invalidated for trains. 15 years ago
smatz e419fe6d3f (svn r16442) -Codechange: use new Vehicle accessors at more places 15 years ago
smatz 0c53f04c07 (svn r16441) -Codechange: new class SpecializedVehicle used as superclass for all vehicle types 15 years ago
yexo f044ad6f80 (svn r16439) -Change: Make the default vehicle servicing settings company-based settings, so in a multiplayer game everyone can change them. 15 years ago
rubidium 82cdacb20c (svn r16427) -Codechange: replace a few magic numbers with an existing constant and unduplicate a few lines. 15 years ago
frosch eeb3f75cfe (svn r16416) -Fix [FS#2912]: Rework deleting of news when referenced vehicles/stations/industries are deleted. 15 years ago
rubidium cd382b28a3 (svn r16394) -Codechange: move (NewGRF) cache variables into a separate struct so (some vehicle related) NewGRF cache 'desyncs' can be tested easier. 15 years ago
rubidium 489253b630 (svn r16390) -Codechange: move u.road to RoadVehicle. 15 years ago
rubidium 1ceb349779 (svn r16389) -Codechange: use RoadVehicle instead of Vehicle where appropriate 15 years ago
rubidium 521c265282 (svn r16384) -Codechange: move u.effect to EffectVehicle 15 years ago
rubidium 86fc432293 (svn r16382) -Codechange: make GetVehicleTrackdir a member function of Vehicle. 15 years ago
smatz 70d3ed15c8 (svn r16376) -Codechange: Vehicle::Tick() now returns false if the vehicle was deleted 15 years ago
smatz 512db5248e (svn r16352) -Codechange: use PoolItem::GetIfValid() instead of PoolItem::IsValidID() and PoolItem::Get() 15 years ago