Commit Graph

159 Commits (74d81b2991cbb3ce48b57ed748f32392f55e624a)

Author SHA1 Message Date
rubidium 1e853b1226 (svn r16387) -Codechange: use Aircraft instead of Vehicle where appropriate 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
smatz ce7dff4acc (svn r16269) -Codechange: use gcc's ability to check parameters sent to printf-like functions
-Fix: wrong number of parameters or wrong parameter types sent to printf-like functions at several places
15 years ago
peter1138 5f57ea7198 (svn r15739) -Codechange: Expose GRF ID of engines in var action property 0x25. 16 years ago
rubidium c3e87f345d (svn r15718) -Cleanup: apply some comment coding style on the rest of the sources too 16 years ago
rubidium b9aa5e17f2 (svn r15617) -Change [FS#2694]: vehicle variables 40-43 weren't cached (though spec stated they are). Caching these variables can yield a 10+% speed increase when those vehicle variables are queried often. 16 years ago
frosch a9cccbd53a (svn r15542) -Feature(ette): Support vehicle vars 0x47 and 0xF2 in purchase list. 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 8aab3b09f5 (svn r15517) -Fix [FS#2642](r6455): Wagonoverrides and articulated engine parts use the colour scheme of the engine, but not its recolour callback, nor its 2CC flag. Same applies to roadvehicles. 16 years ago
frosch 72c632742a (svn r15516) -Fix (r10097): Livery overrides for articulated parts of roadvehicles were not applied. 16 years ago
frosch 85b49d72ce (svn r15399) -Fix [FS#2617]: For articulated parts v->cargo_type == CT_INVALID is possible. 16 years ago
frosch 9bd5420450 (svn r15378) -Fix: The subcargo returned by vehicle variable 0x42 should be the most-common-subcargo of the most-common-cargo. If nothing is transported 0x..FFFF00 should be returned. 16 years ago
smatz 9021c20b5e (svn r15299) -Cleanup: remove many redundant includes 16 years ago
rubidium 28ea38ae55 (svn r14949) -Cleanup: pointer coding style 16 years ago
frosch e13dc4d99d (svn r14945) -Feature(ette): Support var 0x45 (curvature info) also for road vehicles. 16 years ago
rubidium abd3b8e0d7 (svn r14801) -Codechange: don't reference Vehicle::num_orders directly but through a method GetNumOrders() (PhilSophus) 16 years ago
peter1138 766bf8deaa (svn r14776) -Fix (r14742): ListPositionMap relied on std::map having sorted the map, which is now done by a manual key sorter on SmallMap. This fixes engine ID list sorting. 16 years ago
smatz bd92143e7b (svn r14742) -Codechange: use SmallMap in two cases to reduce compilation time and binary size 16 years ago
rubidium f1c7e4662a (svn r14678) -Fix [FS#2435]: gradual filling graphics were not chosen according to the NewGRF spec (Maedhros) 16 years ago
smatz ae6107535a (svn r14669) -Codechange: use SmallVector instead of std::list at one place 16 years ago
rubidium e589c7e580 (svn r14422) -Codechange: also reflect the changes of r14421 in the filenames. 16 years ago
rubidium f56e630e5c (svn r14421) -Codechange: rename all player variables/types to company *or* client so it is immediatelly clear which one you are working with. 16 years ago
smatz a756b23dc4 (svn r14383) -Fix [FS#2316](r14343): handle invalid 'v->u.air.targetairport' in the NewGRF code, too 16 years ago
frosch d54d8bf295 (svn r13885) -Fix [FS#2168]: Var 0x7F is not feature-specific. 16 years ago
peter1138 f81b3b7357 (svn r13761) -Codechange: Remove dependency on rail for altering purchase list position (mostly function renaming) 16 years ago
rubidium 6898a76c5f (svn r13719) -Codechange: rename IsValidPlayer to IsValidPlayerID in line with all other structs/classes that are in a pool. 16 years ago
frosch 5dd1387508 (svn r13397) -Fix: Do not crash when resolving vehicle sprite groups with zero sprites. 16 years ago
peter1138 d4bf483ecd (svn r13377) -Codechange: Let 'long format' build year work in vehicle purchase list. 16 years ago
belugas 840db9bcf0 (svn r13376) -Feature: Add access to current long year and date from Action 7/9/D and VarAction2 (23/24 or A3/A4)
Add access to (long format) building year, in Variational Action2 Variable 49 for Vehicles
16 years ago
smatz 69ebefe1ac (svn r13351) -Codechange: disable warnings about unused variable for builds without asserts 16 years ago
rubidium e7a501100a (svn r13325) -Codechange: split the client-side only settings from the settings stored in the savegame so there is no need to have a duplicate copy of it for new games. 16 years ago
rubidium dc77647ea4 (svn r13251) -Codechange: rename _patches to _settings as that is more logic.
-Codechange: move all Settings into substructs of _settings in a way that they are logically grouped.
16 years ago
smatz 93861e78a3 (svn r12982) -Fix: compiler warning when compiling without asserts 16 years ago
rubidium 1ce0b03bf0 (svn r12971) -Documentation: add @file in files that missed them and add something more than whitespace as description of files that don't have a description. 16 years ago
peter1138 45034bc522 (svn r12924) -Feature: Introducing the so called 'engine pool' which primarily removes the fixed engine type limits and also happens to allow (with the patch option 'dynamic_engines') multiple NewGRF vehicle sets to coexist. 16 years ago
peter1138 1a7c1cb84b (svn r12914) -Fix: Game crash when a spectator/server tried to show an engine with no owner when a NewGRF requested a specific variable. 16 years ago
peter1138 2d5be0185f (svn r12910) -Fix: Report reverse sprite status (FD/FE) to NewGRF for manually toggled vehicles. 16 years ago
peter1138 33f85f80d0 (svn r12872) -Codechange: Remove obsolete unused engine list order function 16 years ago
rubidium a3224512cc (svn r12587) -Codechange: unduplicate some code in the Unpack*Order functions and move the 'normal' case Pack/Unpack to Order. 16 years ago
rubidium 3b0e3d8d30 (svn r12584) -Codechange: do not access the order type directly. 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
glx 1df06c7ef1 (svn r12454) -Fix (r12452): incorrect calculation for 'first vehicle in this chain of vehicles with the same ID' (thx DaleStan)
-Fix (r12452): wrong loading of random action 2 type 84 for non vehicle (though it shouldn't happen, but who knows ;))
17 years ago
glx 90616adcb0 (svn r12452) -Feature: [NewGRF] Add random action 2 type 84. For vehicles only. 17 years ago
glx d9d601b1ca (svn r12331) -Feature: [NewGRF] vehicle variable FE bit 8 17 years ago
glx 796d46ea88 (svn r12330) -Feature: [NewGRF] vehicle variable FE bit 5 and 6 17 years ago
peter1138 26c5a14d58 (svn r12314) -Fix (r4896): Include prop 25 data for all train parts, not just those that carry cargo. 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
peter1138 1ba2ae69e6 (svn r12180) -Fix: Test purchase list loading/loaded sprites instead of unconditionally returning a possibly non-existant sprite. 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
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
rubidium 2fc62eab05 (svn r11818) -Codechange: split player.h into smaller pieces. 17 years ago
rubidium 2d2e1e3863 (svn r11800) -Codechange: move some functions to a more logical location + some type safety. 17 years ago
peter1138 a5101fb403 (svn r11799) -Codechange: no need to special-case helicopter rotor 'overrides' 17 years ago
rubidium 71d4004a85 (svn r11776) -Codechange: more header splittings to reduce the dependencies. 17 years ago
peter1138 0c4e3b83e4 (svn r11761) -Codechange: Use appropriate variable types for NewGRF engine overrides, and adjust scope while there. 17 years ago
peter1138 cb0e80fcb3 (svn r11756) -Fix: Out of bounds access caused if a vehicle's cargo amount was higher than its capacity when resolving sprite groups. 17 years ago
rubidium 722613f7f3 (svn r11706) -Codechange: split vehicle.h and remove another bunch of useless includes. 17 years ago
rubidium db73addb43 (svn r11702) -Codechange: move all date related stuff to date*. 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 00c9d3ef20 (svn r11691) -Codechange: move+rename helpers.hpp and only include it when it is really needed. 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 c0a2c0c23e (svn r11481) -Codechange: Rename the HASBIT function to fit with the naming style 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
glx 8844bd6cde (svn r11413) -Fix [FS#1405]: don't use cached override spriteset for callbacks 17 years ago
rubidium dcbd2fdfc7 (svn r11411) -Codechange: implement random triggers for houses. 17 years ago
glx 7e769d3286 (svn r11353) -Codechange: add support for newgrf callback 32 17 years ago
rubidium a93a1a8b62 (svn r11070) -Fix [FS#1217]: due to making an Action2 variable work properly, the NewGRF called other code too that wasn't prepared for non-train vehicles. 17 years ago
rubidium 643ffb270c (svn r11068) -Codechange: remove Vehicle::HasFront as all vehicles have the Vehicle::first pointer correctly set. 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 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 feb91ab5ea (svn r10690) -Codechange: use the enum that describes all callback IDs in favor of "just" using an untyped integer. 17 years ago
peter1138 7884a07b43 (svn r10443) -Fix: randomizing triggers should be called with callback type set to 1 17 years ago
rubidium fc201d4ad8 (svn r10266) -Codechange: keep track of the origin, time of travel and 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. 17 years ago
rubidium 0d8e82b7d7 (svn r10246) -Fix (r10297): some forgotten money conversions and truncation issues. Thanks to benc for providing the patch. 17 years ago
rubidium 3efca64a94 (svn r10165) -Fix [FS#874]: crash when trying to get the aircraft movement state of an aircraft going to a just deleted airport. 17 years ago
maedhros c186f91cbd (svn r10097) -Feature: Add support for articulated road vehicles, or callbacks 11 and 17 for
road vehicles for those who prefer the technical explanation.
17 years ago
peter1138 906385eb3d (svn r10061) -Codechange: [NewGRF] Add common cargo subtype support to vehicle var 42 17 years ago
rubidium 08be68e0b4 (svn r9841) -Codechange: add a little more type strictness to the vehicle types. 17 years ago
peter1138 acf5496681 (svn r9819) -Codechange: Take account of AMED_HOLD in OTTD/TTDP state translation (bulb) 17 years ago
peter1138 fe5830c4b7 (svn r9818) -Codechange: Cache wagon override sprite set whenever consist is changed, instead of 'recalculating' it every time it is used or just tested. 17 years ago
rubidium b159fb0898 (svn r9803) -Feature(tte): support for "curvature info", Action 2 for train, variable 45 (mart3p). 17 years ago
peter1138 9763b5bf8b (svn r9703) -Codechange: support callback 36 in vehicle purchase lists 17 years ago
peter1138 9861db8596 (svn r9702) -Codechange: Add livery support to newgrf vehicle var 43 17 years ago
peter1138 0d32783f87 (svn r9671) -Codechange: Implement NewGRF callback 36, which allows changing of various properties which were previously static. Vehicle max speed and train power/te/running costs are adjustable. 17 years ago
belugas 097b3b3c7b (svn r9662) -Documentation: Doxygen corrections and @file omissions 17 years ago
belugas 8952924c64 (svn r9385) -Cleanup: doxygen changes. Today, we are exploring the letter N. 18 years ago
rubidium 36cea84b11 (svn r9068) -Codechange: capitalize the VEH_Train etc. enums to match the coding style (and rest of the code). 18 years ago
rubidium 979ccd45ba (svn r9051) -Codechange: typedef [enum|struct] Y {} X; -> [enum|struct] X {}; 18 years ago
rubidium 4169bfba06 (svn r9050) -Codechange: Foo(void) -> Foo() 18 years ago
maedhros 78c3edcbb1 (svn r8946) -Feature: [NewGRF] Add support for vehicle variables 0xFE and 0xFF bit 10,
which is set when a vehicle was built during the exclusive testing phase.
18 years ago
maedhros e1748afd4f (svn r8943) -Fix (r5338): [NewGRF] Fix support for vehicle variable 48, which just returns Engine[id].flags 18 years ago
peter1138 7669f63d4e (svn r8903) -Regression (r8891): CT_PURCHASE does apply to aircraft overrides... 18 years ago
peter1138 6b7a4ba448 (svn r8891) -Codechange: Remove remains of global cargo scheme. All cargo mapping is now dealt with only in NewGRF code, on load where possible. 18 years ago
peter1138 bc968d23f1 (svn r8890) -Codechange: (NewGRF) add cargo translation support to engine var 47 18 years ago
peter1138 c924185f97 (svn r8863) -Fix: prefix engine_custom_sprites with _ 18 years ago
peter1138 b3efec2e7d (svn r8858) -Codechange: Replace magic number test with class method for determining if a cargo is valid/active. 18 years ago
peter1138 2306a02f75 (svn r8849) -Codechange: Replace hardcoded global/climate cargo mapping tables with dynamically generated data. Change associated code to use new functions. 18 years ago