Commit Graph

58 Commits

Author SHA1 Message Date
rubidium 0b90d5319d (svn r10125) -Fix [FS#865]: under some circumstances the wagons of a train didn't get loaded properly. 2007-06-12 23:35:10 +00:00
maedhros f8ae742da4 (svn r10122) -Codechange: Add a CountBitsSet function and use it to replace some less efficient loops. 2007-06-12 22:13:49 +00:00
maedhros 12b359fa32 (svn r10117) -Fix [FS#863]: When deleting the vehicles of bankrupt players, delete trains as
a whole rather than each part individually, as that leads to invalid tests on
parts that have already been deleted.
2007-06-12 17:10:52 +00:00
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.
2007-06-11 14:00:16 +00:00
rubidium f73956888f (svn r10084) -Fix [FS#855]: reversing a train when loading at a station crashed. 2007-06-10 20:27:28 +00:00
peter1138 f2e0912ce9 (svn r10062) -Codechange: Don't redraw all station tiles when cargo is added or removed if the station has no custom graphics. 2007-06-08 09:35:39 +00:00
rubidium d255041365 (svn r10058) -Codechange: give some industry variable sensible names (like not telling "last_mo_production" when it is the production of the current month). 2007-06-07 14:38:45 +00:00
maedhros fa548f1a6f (svn r10009) -Codechange: Add and use Vehicle::IsPrimaryVehicle to replace individual checks depending on the vehicle type. 2007-06-01 12:03:10 +00:00
rubidium 76b1a66498 (svn r9930) -Fix (r9838): obiwan could cause vehicles to way a long time (2.5 years) at stations. 2007-05-26 09:13:59 +00:00
rubidium 8f0f090c51 (svn r9874) -Feature: advanced vehicle lists a.k.a. group interface. Now you can make groups of vehicles and perform all kinds of tasks on that given group. Original code by nycom and graphics by skidd13. 2007-05-19 09:40:18 +00:00
belugas 662bee5b12 (svn r9870) -Codechange: Silence two compiler warnings and give proper type to the "type" member of industry struct 2007-05-18 17:55:07 +00:00
belugas c4b90f3137 (svn r9867) -Codechange: Remove data duplication. The exact same values can be found in the industry spec, so take it from there instead. 2007-05-18 00:33:47 +00:00
rubidium b007a3419c (svn r9866) -Codechange: remove the technical one-input-cargo-creates-one-output-cargo limit in the factories, sawmills, steelmills and the ones I'm forgetting to mention right now. Use of this functionality will come later. 2007-05-17 20:19:55 +00:00
rubidium 08be68e0b4 (svn r9841) -Codechange: add a little more type strictness to the vehicle types. 2007-05-15 11:28:22 +00:00
rubidium 0f81140b59 (svn r9840) -Fix (r9838): MSVC is complaining about signedness again (Belugas). 2007-05-15 06:20:16 +00:00
rubidium 49476d46e6 (svn r9838) -Fix: make "improved loading" a proper improved loading instead of loading one (semi-)random vehicle at a time:
- Now it is really FIFO.
 - When there is enough cargo to fill the first vehicle in the queue, the next vehicle in the queue start loading (and the next when ....).
2007-05-14 20:12:32 +00:00
rubidium 07bdd6c3cc (svn r9836) -Codechange: make non-improved loading happen FIFO-ish; generally loading/unloading will happen fifo, but there are no guarantees on the FIFO-ness. For (better) FIFO guarantees you still need to use improved loading. 2007-05-14 16:07:05 +00:00
rubidium 5ae882a184 (svn r9831) -Codechange: more refactoring of the loading/unloading. 2007-05-13 21:24:58 +00:00
rubidium 82ca197a10 (svn r9829) -Codechange: more refactoring of the unloading algorithm. 2007-05-12 09:09:10 +00:00
rubidium e6a6d7ef31 (svn r9815) -Fix (r9761) [FS#769): transfers weren't accounted in the vehicle profits. 2007-05-08 16:42:48 +00:00
rubidium 9a893ebe20 (svn r9794) -Codechange: refactor the question whether a vehicle can be loaded into LoadUnloadVehicle instead of duplicating it for each vehicle. 2007-05-06 14:59:01 +00:00
rubidium cc9d811f53 (svn r9770) -Codechange: perform the payment of cargo when loading/unloading, but when arriving at the station. 2007-05-02 18:29:11 +00:00
rubidium 53485da02c (svn r9761) -Codechange: refactor cargo payment out of LoadUnloadVehicle. 2007-05-01 16:45:03 +00:00
rubidium 1951817f3b (svn r9683) -Fix [FS#423]: improved loading does not use a huge amount of processing power anymore when having a lot of trains. 2007-04-20 08:00:30 +00:00
peter1138 7df3a94d8f (svn r9638) -Feature: Increase cargo types from 12 to 32 and enable newcargo flag in NewGRF loader. 2007-04-15 16:20:35 +00:00
peter1138 e7cd92f06f (svn r9617) -Codechange: Implement callback for cargo profit calculation 2007-04-12 19:33:05 +00:00
maedhros 3d81de8d7e (svn r9609) -Codechange: Move some function prototypes out of functions.h and into landscape.h, and add a few where they didn't exist. 2007-04-12 13:07:15 +00:00
belugas 7ad3bb257e (svn r9568) -Documentation: doxygen and comment changes: Root of src is finally done. Now, time to start clearing as much as possible 2007-04-06 04:10:19 +00:00
celestar 6f49e4c644 (svn r9541) -Codechange: Safeguard the company-buying routines so that the buying player and the bought player need to be two different entities 2007-04-01 10:55:31 +00:00
truelight fb116653c6 (svn r9533) -Fix [FS#274]: when a company is removed (either via auto-clean, bankrupt, or take over), sell all the shares he has first, then sell the shares all people have on this company, and then remove the company. 2007-03-31 12:19:22 +00:00
peter1138 5a73caa0f7 (svn r9427) -Codechange: remove redundant variable 2007-03-24 14:42:11 +00:00
belugas 691f8578fd (svn r9400) -Codechange: Use some more representative enum names for landscape types. 2007-03-22 03:42:43 +00:00
peter1138 93fe91cc8c (svn r9388) -Codechange: variable scope and type, and standardify all CargoID loops. 2007-03-21 13:19:01 +00:00
peter1138 28717b6bc5 (svn r9257) -Codechange: Use cargo's town effect property for determining subsidy source/target type. 2007-03-16 17:40:31 +00:00
truelight e2eeac06f8 (svn r9071) -Fix [FS#459]: when in networking an other player takes over an AI which is also controlled by a player, move the player with the company to the company who bought out the AI 2007-03-08 21:05:05 +00:00
rubidium 36cea84b11 (svn r9068) -Codechange: capitalize the VEH_Train etc. enums to match the coding style (and rest of the code). 2007-03-08 16:27:54 +00:00
rubidium 979ccd45ba (svn r9051) -Codechange: typedef [enum|struct] Y {} X; -> [enum|struct] X {}; 2007-03-07 12:11:48 +00:00
rubidium 4169bfba06 (svn r9050) -Codechange: Foo(void) -> Foo() 2007-03-07 11:47:46 +00:00
maedhros 878b6fcf37 (svn r9029) -Fix (r7326): Only call the gradual loading amount callback if the bit for it is set in the vehicle's callbackmask. 2007-03-06 19:12:56 +00:00
rubidium 5ec31ebc2b (svn r8979) -Fix (r8978): unsigned vs signed comparisons. 2007-03-02 18:57:54 +00:00
richk cd7b71092b (svn r8978) -Feature: Rewrite of transfer system.
This major feature-fix keeps track of the value of transfers offloaded at a station, and hands on to a loading vehicle a credit note proportionate to the cargo loaded. The transferring vehicle is paid only for the distance it has travelled. eg. B-C in a transfer chain A-B-C-D.
When the final cargo is delivered, these credit notes are cashed, and the final vehicle is paid for A-D minus any credit notes it is carrying. The company bank balance increases by the value of the A-D route.
You still need to set up a profitable route; it is still easy to make a loss on transfers by bad planning. :)
2007-03-02 18:49:11 +00:00
rubidium 5b4b9cbd5c (svn r8969) -Codechange: rework of the player face bits.
- introduce a new format (with backward compatability) that is more clear and needs a much simpler face drawer
 - replace tons of ifs/switches/magic numbers by table lookups
2007-03-02 01:17:11 +00:00
maedhros 2f557f7dc0 (svn r8945) -Codechange: Rename v->load_status to v->vehicle_flags so it can be used for more than just the gradual loading status. 2007-02-28 17:18:36 +00:00
belugas 0f090a0c1d (svn r8862) -Cleanup: doxygen changes, again. Mostly @files missing tags and a few comments style.
Some documentation addition, when i can easily supply them
2007-02-23 18:55:07 +00:00
tron 92159b7afd (svn r8855) -Fix
Change some shift and cast mumbo jumbo for inflation calculation to something remotly comprehensible and explain what the magic number "54" means
2007-02-23 08:03:30 +00:00
tron fef1922705 (svn r8847) -Fix
There is not much point in hiding a normal 64bit multiplication in a function, so do not do it
2007-02-22 19:05:26 +00:00
peter1138 3d581f4f89 (svn r8826) -Codechange: Replace _cargoc's separate arrays with a regular struct array (with accessor) and implement new initialization method using cargo labels. 2007-02-20 22:09:21 +00:00
celestar 72e74c29d4 (svn r8709) -Fix/Codechange: Rename the function GetStationPlatforms into GetPlatformLength because that is what it really does. Overload it because there is already a GetPlatformLength (one gives the length of the whole platform, the other gives the remaining length in a given direction). Turned both functions into methods of Station. While messing around with it, fix a problem where loading times for overhanging trains are miscomputed. 2007-02-13 16:36:38 +00:00
bjarni d40886903d (svn r8621) -Codechange: assigned new numbers to the VEH_(type) enum so that VEH_Train is 0, VEH_Road is 1 and so on
This means that "v->type" can be used as array indexes instead of VehTypeToIndex() (or "v->type - VEH_Train/0x10 as the code still used in some places)
  Surprisingly this can be done without changing the savegame format
2007-02-07 19:10:19 +00:00
maedhros 913558797b (svn r8501) -Fix (r7377) [FS#539]: Keep track of how much cargo has been paid for, so that cargo cannot be paid for more than once. 2007-01-31 22:33:24 +00:00