Commit Graph

149 Commits

Author SHA1 Message Date
frosch
ac07725124 (svn r18929) -Fix [FS#3568]: Preserve some timetable related vehicle flags during autorenew/-replace. 2010-01-27 20:07:29 +00:00
rubidium
9467b7c6d6 (svn r18809) -Codechange/Cleanup: remove unneeded headers from some files, if a header require a header make it include that header 2010-01-15 16:41:15 +00:00
rubidium
ad8d6e8dd2 (svn r18764) -Fix [FS#3422]: split the (un)load ticks counter and signal wait counter; sometimes they might get into eachother's way 2010-01-09 14:43:08 +00:00
rubidium
6600610e47 (svn r18402) -Codechange: unify/centralise the code for crashing vehicles 2009-12-04 20:29:46 +00:00
rubidium
8c11679381 (svn r18342) -Fix: erroneous spaces before ; 2009-11-29 19:20:39 +00:00
frosch
ea3c6e1b1e (svn r18297) -Fix: Preserve timetable-start when auto-replacing/-renewing. 2009-11-26 14:56:17 +00:00
rubidium
bd9c679873 (svn r18292) -Codechange: add a command to set the start date of a timetable. Based on work by PhilSophus. 2009-11-25 23:37:15 +00:00
rubidium
760a329622 (svn r17795) -Codechange: split cargolist into one for vehicles and one for stations. 2009-10-18 13:39:00 +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
99d46e0ad7 (svn r17248) -Fix: add GPL license notice where appropriate 2009-08-21 20:21:05 +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
1fcdb149d3 (svn r17089) -Codechange: move RunVehicleDayProc() to vehicle.cpp 2009-08-06 17:02:49 +00:00
frosch
fec6129cd1 (svn r16894) -Codechange: Add [Specialised]Vehicle::Last(). 2009-07-20 19:58:33 +00:00
smatz
98b8479f56 (svn r16813) -Codechange: make IsEngineCountable() member of Vehicle 2009-07-13 16:35:22 +00:00
rubidium
4f99508114 (svn r16694) -Fix [FS#2995] (rgradual loading, rnewindustries): only pay for whatever has been actually unloaded and perform the payment when unloading has finished. This fixes, amongst others:
* cheating by starting to unload and after getting paid rushing to the depot to get sold (or unloading, loading and getting paid again for the remainder)
 * cargo being dropped onto a station at the moment a stockpiling industry doesn't accept it anymore
 * industries getting cargo that has not been unloaded yet and subsequently dumping it back on the station in one go
Note: you will now get paid after the unloading has finished, so you'll have to wait a bit longer for 'your' money.
2009-06-29 19:55:36 +00:00
smatz
d2ad6d38be (svn r16544) -Codechange: use double-linked list for vehicle position caches in order to improve performance (~5% with many vehicles) 2009-06-09 17:20:06 +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
rubidium
d7eb9f9d0e (svn r16505) -Fix [FS#2951] (r16472): since g++ 4.4 the implicit (default) constructor will zero the whole class. This caused all vehicle indices to be 0, which causes all kinds of trouble. 2009-06-02 19:12:28 +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
11d88765cc (svn r16472) -Codechange: set vehicle type in SpecializedVehicle constructor instead of constructor of each vehicle type 2009-05-30 20:13:12 +00:00
smatz
01e5c536a7 (svn r16445) -Codechange: update old comments (Yexo) 2009-05-26 23:24:34 +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
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
rubidium
4c0542c17f (svn r16393) -Codechange: move VehicleRail to Train. 2009-05-22 22:55:41 +00:00
rubidium
6350648a6c (svn r16392) -Codechange: move some variables (the ones that aren't caches) from VehicleRail to Train 2009-05-22 22:33:05 +00:00
rubidium
1324100d69 (svn r16391) -Codechange: use Train instead of Vehicle where appropriate. 2009-05-22 22:22:46 +00:00
rubidium
489253b630 (svn r16390) -Codechange: move u.road to RoadVehicle. 2009-05-22 20:22:20 +00:00
rubidium
4ae19b7451 (svn r16388) -Codechange: move u.air to Aircraft 2009-05-22 20:07:26 +00:00
rubidium
d40c61749f (svn r16385) -Codechange: move u.disaster to DisasterVehicle. 2009-05-22 18:57:11 +00:00
rubidium
521c265282 (svn r16384) -Codechange: move u.effect to EffectVehicle 2009-05-22 18:56:25 +00:00
rubidium
86fc432293 (svn r16382) -Codechange: make GetVehicleTrackdir a member function of Vehicle. 2009-05-22 18:17:20 +00:00
smatz
3793b966c3 (svn r16380) -Codechange: rename pool.hpp to pool_type.hpp 2009-05-22 15:39:22 +00:00
smatz
50624d5c0f (svn r16378) -Codechange: replace OldPool with simpler Pool. Compilation time, binary size and run time (with asserts disabled) should be improved 2009-05-22 15:13:50 +00:00
smatz
7eb14aa49f (svn r16377) -Codechange: unify FOR_ALL_* macros, use separate index variable instead of var->index 2009-05-22 14:23:36 +00:00
smatz
70d3ed15c8 (svn r16376) -Codechange: Vehicle::Tick() now returns false if the vehicle was deleted 2009-05-22 13:53:14 +00:00
rubidium
1cc82de384 (svn r16333) -Cleanup: remove a bunch of unused wrapper functions. 2009-05-17 11:18:34 +00:00
smatz
0c10daa243 (svn r16327) -Codechange: replace IsValidPoolItemID(index) by PoolItem::IsValidID(index) 2009-05-17 01:00:56 +00:00
smatz
cf986c3099 (svn r16326) -Codechange: replace GetPoolItemPoolSize() by PoolItem::GetPoolSize() 2009-05-16 23:44:36 +00:00
smatz
d495dc5dbc (svn r16325) -Codechange: replace GetPoolItem(index) by PoolItem::Get(index) 2009-05-16 23:34:14 +00:00
smatz
c189a15e3e (svn r16302) -Codechange: remove Vehicle::AllocateList 2009-05-13 21:38:23 +00:00
frosch
d1aa2286ec (svn r16261) -Fix (r16260): Replace a space with a newline and a tab. (thanks smatz) 2009-05-09 14:23:19 +00:00
frosch
8bb92c110d (svn r16260) -Codechange: Add Vehicle::IncrementOrderIndex() to deduplicate some code. 2009-05-09 13:37:18 +00:00
rubidium
9d0c77b123 (svn r15672) -Codechange: (left,right,top,bottom)_coord -> coord.(left,right,top,bottom), i.e. use Rect. 2009-03-11 17:26:58 +00:00
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. 2009-03-04 23:32:23 +00:00
rubidium
5c8cf85613 (svn r15434) -Codechange: bit of type safety for the DC_xxx flags. 2009-02-09 21:20:05 +00:00
rubidium
89e1afdaa0 (svn r15428) -Codechange: consistently use colour instead of having both color and colour. 2009-02-09 02:57:15 +00:00
rubidium
20cb3a581c (svn r15354) -Fix (r14803): first shared of a vehicle could be NULL making it impossible to (share-)clone the vehicle. 2009-02-05 15:58:42 +00:00
frosch
61a893d6fd (svn r15308) -Codechange: Deduplicate km-ish/h -> mph conversions. 2009-02-01 17:14:39 +00:00
smatz
f0ff90d71c (svn r15216) -Feature: native support for Transport Tycoon (Original) savegames. Based on SVXConverter's source code and documentation by Roman Vetter 2009-01-23 02:35:17 +00:00
rubidium
28ea38ae55 (svn r14949) -Cleanup: pointer coding style 2009-01-10 00:31:47 +00:00
smatz
91233ea596 (svn r14828) -Codechange: move most of save/load-specific code to separate files 2009-01-04 15:32:25 +00:00
rubidium
f316796629 (svn r14803) -Codechange: move order list management into it's own class and remove the order count from the savegame as we can easily count that (PhilSophus) 2009-01-03 13:52:06 +00:00
rubidium
abd3b8e0d7 (svn r14801) -Codechange: don't reference Vehicle::num_orders directly but through a method GetNumOrders() (PhilSophus) 2009-01-03 13:20:32 +00:00
smatz
9c2c1dea06 (svn r14753) -Fix (r1): after buying a company, one could have more vehicles with the same UnitID 2008-12-26 23:53:07 +00:00
rubidium
047e40d33f (svn r14745) -Codechange: move "depot_list" and "leave_depot_immediately" out of the vehicle struct (saving up to 16 bytes per vehicle) as it is only used to tell a calling function entered a depot (for autoreplace). 2008-12-26 18:26:11 +00:00
frosch
f1e02ab1ed (svn r14702) -Documentation: Add a note about the meaning and validity of Vehicle::dest_tile. 2008-12-20 11:51:52 +00:00
rubidium
150bf7e489 (svn r14592) -Feature [FS#1124]: non-destructive autofill with option to keep waiting times (PhilSophus) 2008-11-18 23:53:37 +00:00
rubidium
e589c7e580 (svn r14422) -Codechange: also reflect the changes of r14421 in the filenames. 2008-09-30 20:51:04 +00:00
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. 2008-09-30 20:39:50 +00:00
smatz
75d63af2ae (svn r14398) -Cleanup (r14395): unused function sneaked in 2008-09-25 09:50:31 +00:00
smatz
a000de8418 (svn r14395) -Fix [FS#2285]: crashes and GUI desyncs when order is deleted/modified while the timetable window is open
-Fix: close any dropdown and child windows in the Order and Timetable windows when selected order is deselected, deleted, ...
2008-09-24 16:40:06 +00:00
rubidium
66b9ea9a5a (svn r14096) -Codechange: merge the shared order's vehicle list management to a single location. 2008-08-17 19:56:17 +00:00
frosch
fc8997bcc3 (svn r14085) -Cleanup (r14083): Remove no longer used functions. 2008-08-16 14:15:32 +00:00
frosch
92f3c368b8 (svn r14083) -Fix [FS#1264, FS#2037, FS#2038, FS#2110]: Rewrite the autoreplace kernel. 2008-08-16 14:02:20 +00:00
rubidium
a31e86c778 (svn r13950) -Add [YAPP]: Trains can now also be in a 'stuck' state when waiting on a path reservation. (michi_cc) 2008-08-02 22:53:21 +00:00
rubidium
91a27d6441 (svn r13681) -Revert (r13678, r13677): the fixes didn't work in all cases (assertions on savegame loads).
-Fix [FS#2102]: but now in a hopefully beter way.
2008-07-08 15:10:23 +00:00
rubidium
b2479212ef (svn r13678) -Fix (r13677): electric trains from pre elrail savegames would get stopped on load. 2008-07-06 11:08:40 +00:00
peter1138
42f78d2fc3 (svn r13205) -Codechange: Remove unnecessary code-style-buggering-up macro. 2008-05-21 12:06:05 +00:00
rubidium
e0e1bf76a2 (svn r12986) -Codechange: move the landscape and transport related types from openttd.h to their own headers. 2008-05-07 09:07:19 +00:00
bjarni
63fea0790b (svn r12940) -Fix [FS#1974](r12913): [autoreplace] a vehicle backup should include the cargo packets in the vehicle as well 2008-05-04 10:05:35 +00:00
bjarni
783e20a263 (svn r12913) -Add: ability to backup and restore a player's economic data and data for a vehicle (or chain of vehicles)
Autoreplace uses this with the following benefits:
  -Mass autoreplace (the button in the depot window) will now estimate costs correctly
  -Autoreplace now either replaces correctly or manages to keep the original vehicle (no more broken trains)
  Thanks to Ammler for testing this
2008-04-27 20:09:29 +00:00
smatz
26206fa116 (svn r12862) -Codechange: reduce code duplication for VehicleType -> WindowClass lookup 2008-04-24 09:55:20 +00:00
peter1138
a05e9b4c6b (svn r12824) -Codechange: Standardise routines for drawing vehicle images, using correct types and less duplication. 2008-04-21 20:50:58 +00:00
rubidium
4ce50a0d64 (svn r12814) -Codechange: reshuffle some variables in the Vehicle struct saving 20 bytes with a 32 bit compiler and 32 bytes on 64 bit compiler per vehicle. 2008-04-21 08:35:27 +00:00
rubidium
8186344628 (svn r12804) -Codechange: move the effect vehicle handling out of vehicle.cpp 2008-04-20 11:12:07 +00:00
rubidium
40b19f3997 (svn r12803) -Cleanup: rename SpecialVehicle to EffectVehicle to have a uniform naming of the thing instead of using both names for the same thing. 2008-04-20 10:13:54 +00:00
glx
90bd1e45eb (svn r12711) -Codechange: remove unneeded loops 2008-04-14 20:48:17 +00:00
rubidium
daf5a2f1bc (svn r12658) -Codechange: unify a vast portion of the CmdSend<VehicleType>ToDepot commands. 2008-04-11 08:40:10 +00:00
rubidium
aa8a5b2c39 (svn r12657) -Codechange: add 'FindClosestDepot' to the vehicle class. 2008-04-11 08:14:43 +00:00
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.
2008-04-08 15:48:32 +00:00
rubidium
3fdddeac40 (svn r12575) -Codechange: unduplicate Process*Orders for trains, ships and road vehicles. 2008-04-05 10:55:50 +00:00
frosch
51155403a4 (svn r12531) -Codechange: Rename some variables for consistency. 2008-04-01 14:03:20 +00:00
rubidium
b84b16cfcd (svn r12488) -Codechange: split order.h into order_base.h and order_func.h. 2008-03-30 23:24:18 +00:00
rubidium
49a040e6ad (svn r12476) -Codechange: split type engine related types from engine.h (and openttd.h) to engine_type.h. 2008-03-28 18:00:38 +00:00
rubidium
bf54e0ba1c (svn r12469) -Codechange: split type related stuff from group.h (and openttd.h) to group_type.h. 2008-03-28 16:34:50 +00:00
glx
d9d601b1ca (svn r12331) -Feature: [NewGRF] vehicle variable FE bit 8 2008-03-03 20:56:30 +00:00
bjarni
973d1fd6ad (svn r12230) -Codechange: [autoreplace] made a function to detect if a vehicle needs autorenewing
This will remove duplicated code and ensure that the check is consistent
2008-02-23 22:01:55 +00:00
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
2008-02-20 17:06:58 +00:00
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
2008-02-13 19:24:40 +00:00
belugas
33e63a3adc (svn r12040) -Codechange: Change IsOrderListShared from a simple function to a class member(MagicBuzz). 2008-02-02 02:45:09 +00:00
glx
7ce12e50da (svn r12037) -Codechange: replace OnNewDay_(Aircraft|RoadVeh|Ship|Train) with an OnNewDay method in the Vehicle class 2008-02-01 22:02:14 +00:00
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.
2008-01-12 19:58:06 +00:00
rubidium
2fc62eab05 (svn r11818) -Codechange: split player.h into smaller pieces. 2008-01-12 14:10:35 +00:00
rubidium
2d2e1e3863 (svn r11800) -Codechange: move some functions to a more logical location + some type safety. 2008-01-09 21:05:03 +00:00
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. 2008-01-01 22:24:18 +00:00
peter1138
96d09cfae9 (svn r11735) -Fix [FS#1574]: Don't reset loading indicator IDs when only reloading NewGRFs. 2008-01-01 15:06:37 +00:00
rubidium
722613f7f3 (svn r11706) -Codechange: split vehicle.h and remove another bunch of useless includes. 2007-12-27 13:35:39 +00:00