Commit Graph

380 Commits (4dfdd4e9f925d92d9d6bdceab4533a309bb4f0d0)

Author SHA1 Message Date
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
rubidium 8df6765823 (svn r16340) -Codechange: introduce SoundID (uint16) and use that instead of SoundFX, which was used as a byte and uint16 at different places, when the uint16 sound ID is meant. 15 years ago
smatz 0c10daa243 (svn r16327) -Codechange: replace IsValidPoolItemID(index) by PoolItem::IsValidID(index) 15 years ago
smatz d495dc5dbc (svn r16325) -Codechange: replace GetPoolItem(index) by PoolItem::Get(index) 15 years ago
frosch 2431cc099e (svn r16303) -Codechange: Use the question mark as default sprite when creating vehicles, instead of arbitrary sprites not related to the vehicle. (though that also applies to the question mark) 15 years ago
smatz c189a15e3e (svn r16302) -Codechange: remove Vehicle::AllocateList 15 years ago
frosch 8bb92c110d (svn r16260) -Codechange: Add Vehicle::IncrementOrderIndex() to deduplicate some code. 15 years ago
rubidium 5c5b357043 (svn r16118) -Change/cleanup: remove the hexadecimal 'in TTD the string had this ID' from 'some' strings and replace the string name with something more sensible. 15 years ago
rubidium c3e87f345d (svn r15718) -Cleanup: apply some comment coding style on the rest of the sources too 16 years ago
frosch d86e821f53 (svn r15701) -Fix [FS#2595]: Blame NewGRFs returning inconsistent information in purchase-list/after building before users have a chance to blame OpenTTD for incorrectly autorenewing/-replacing. 16 years ago
rubidium 404cff525b (svn r15677) -Fix [FS#2546]: vehicle images would be determined during the process of moving the vehicle which means that only the (orientation) data for the vehicles in front of it is valid. Now the data for the vehicles behind the vehicle are valid too. 16 years ago
rubidium b003536ea8 (svn r15676) -Codechange: remove the need for BeginVehicleMove and merge VehiclePositionChanged and EndVehicleMove. 16 years ago
rubidium 77a1323eef (svn r15671) -Codechange: bit of coding style/clarification. 16 years ago
frosch 90a81da62b (svn r15654) -Fix: Only ever call any vehicle callbacks after the whole articulated engine has been built. (except 0x16) 16 years ago
rubidium 7c084bb3e6 (svn r15635) -Fix [FS#2707]: don't allow more than 64 road vehicles to reserve a slot at a single road stop. 255 + 1 gives trouble, but 64 is even more than the roadstop would be able to handle within the slot timeout time. 16 years ago
rubidium 251f6f676f (svn r15596) -Change: road vehicles can stop at stops when they own the stop, not when they own the road/tram track. 16 years ago
frosch abe4692da2 (svn r15541) -Revert (r15399): 'v->cargo_type' is also used in other places, which cannot accept CT_INVALID.
-Codechange: Add Engine::GetDefaultCargoType() and Engine::CanCarryCargo() and use them.
-Fix [FS#2617]: When articulated parts have no available default cargo, use the cargo type of the first part for livery selection.
-Change: To decide whether a vehicle is refittable do not test its current capacity for being zero, but always use the 'capacity property'.
  Note: The property is used unmodifed without calling CB 15/36. By setting it to a non-zero value and returning zero in the callback vehicles can be refitted to/from zero capacity for e.g. livery effects.
  Note: It is intentional that you cannot control refittability by CB 36.
16 years ago
frosch 9eb880ab43 (svn r15540) -Fix: Testing of 'only_this' in CmdRefitRoadVeh() could be skipped by 'continue'. 16 years ago
frosch 8eb906dda9 (svn r15534) -Codechange: Rename some variables. 16 years ago
rubidium 5c8cf85613 (svn r15434) -Codechange: bit of type safety for the DC_xxx flags. 16 years ago
rubidium 89e1afdaa0 (svn r15428) -Codechange: consistently use colour instead of having both color and colour. 16 years ago
rubidium d45d8d23d3 (svn r15375) -Fix [FS#2605]: a tram circling around in a depot did never actually 'enter' the depot. 16 years ago
rubidium 7215e28774 (svn r15374) -Codechange: remove a magic constant. 16 years ago
frosch f6fa77d5f9 (svn r15358) -Add [NoAI]: AIEventVehicleCrashed::GetCrashReason() 16 years ago
frosch 55728d9e18 (svn r15326) -Fix: Old-ai-ishm when refitting vehicles. 16 years ago
smatz 9021c20b5e (svn r15299) -Cleanup: remove many redundant includes 16 years ago
frosch 9a0d88176b (svn r15286) -Fix: Refitting did not invalidate vehicle-colour-maps of road-vehicles, ships and aircraft, as well vehicle-length of road-vehicles. 16 years ago
glx 470da22ac3 (svn r15263) -Codechange: added Engine::GetCost() to remove some code duplication. 16 years ago
glx 12c89708cb (svn r15210) -Fix: Vehicle::GetRunningCost() was wrong for ships and aircraft 16 years ago
smatz ca45774160 (svn r15077) -Codechange: enumify DAYS_IN_YEAR and DAYS_IN_LEAP_YEAR
-Change: when computing daily running cost, divide by 365 (instead of 364). Since r12134, the rounding errors don't need this correction anymore
16 years ago
truebrain c2406cd42d (svn r15027) -Merge: tomatos and bananas left to be, here is NoAI for all to see.
NoAI is an API (a framework) to build your own AIs in. See:
   http://wiki.openttd.org/wiki/index.php/AI:Main_Page
 With many thanks to:
  - glx and Rubidium for their syncing, feedback and hard work
  - Yexo for his feedback, patches, and AIs which tested the system very deep
  - Morloth for his feedback and patches
  - TJIP for hosting a challenge which kept NoAI on track
  - All AI authors for testing our AI API, and all other people who helped in one way or another
-Remove: all old AIs and their cheats/hacks
16 years ago
rubidium 28ea38ae55 (svn r14949) -Cleanup: pointer coding style 16 years ago
frosch 62f3aa89f2 (svn r14903) -Fix: First create all articulated parts of roadvehicles, then call callback 36 capacity, also call it for all articulated parts. 16 years ago
peter1138 bd803696b3 (svn r14869) -Feature: Allow road vehicles to move multiple steps in a tick (code based on train movement code) and add support for RV prop 15. This gives RVs a maximum speed of 318mph instead 79mph. This only implements higher speeds, not 'realistic acceleration'. 16 years ago
smatz ec7ebf2170 (svn r14835) -Change: apply the 'warn if train's income is negative' setting to other vehicle types, too 16 years ago
rubidium e83cca7d13 (svn r14754) -Codechange: get rid of _cmd_text and just pass it as (optional) parameter. 16 years ago
rubidium 0c6c3311c9 (svn r14748) -Codechange: unduplicate window updating when deleting vehicles. 16 years ago