Commit Graph

311 Commits

Author SHA1 Message Date
rubidium 50e794849a (svn r17341) -Fix: memory leak when trying to bankrupt the local company 2009-09-01 12:16:01 +00:00
smatz ee685c8287 (svn r17316) -Codechange: use Industry::GetByTile() instead of GetIndustryByTile() 2009-08-30 11:47:41 +00:00
rubidium 7fbc33dae1 (svn r17248) -Fix: add GPL license notice where appropriate 2009-08-21 20:21:05 +00:00
rubidium 0780dc8138 (svn r17222) -Fix [FS#3129, FS#3130]: with time tables vehicles would stay in the 'loading' state after they have finished loading 2009-08-19 15:27:55 +00:00
smatz 13e23141b4 (svn r17124) -Codechange: store subsidies in a pool (instead of an array) 2009-08-08 20:53:36 +00:00
smatz 2a430d981f (svn r17113) -Change [FS#265][FS#2094][FS#2589]: apply the subsidy when subsidy's destination is in station's catchment area and cargo packets originate from subsidy's source
-Change [FS#1134]: subsidies aren't bound to stations after awarding anymore, they still apply to town or industry, no matter what station is used for loading and unloading. Awarded subsidies from older savegames are lost
-Change [NoAI]: due to these changes, AISubsidy::GetSource and AISubsidy::GetDestination now return STATION_INVALID for awarded subsidies
2009-08-08 16:42:55 +00:00
smatz 74d3382b94 (svn r17107) -Codechange: store type of subsidy source and destination in the Subsidy struct instead of determining it every time it's needed 2009-08-07 22:23:34 +00:00
smatz a3e69a5b3c (svn r17086) -Cleanup (r16654): remove code used only for debugging 2009-08-06 13:51:48 +00:00
rubidium 1fe3ad3288 (svn r17075) -Codechange: rename ~750 strings to be more uniform with their relatives 2009-08-05 17:59:21 +00:00
belugas a2b996106e (svn r17058) -Codechange: magic numbers removal.
Two values used intead of just one, as it gives more possibilities to those who dare...
2009-08-03 20:02:25 +00:00
frosch 7f49d3b45c (svn r17037) -Fix (r17036): 'Polygonal Capabilities' are a core feature of windows. 2009-08-02 13:56:14 +00:00
frosch a6cbf0d419 (svn r17036) -Codechange: Split price bases from economy.cpp to table/pricebase.h. 2009-08-02 12:34:26 +00:00
rubidium c1ffbc3bce (svn r16933) -Fix [FS#3054] (r16694): vehicles would wait "very long" when they had nothing to unload and gradual loading was disabled. 2009-07-24 00:08:48 +00:00
rubidium cb0409fe52 (svn r16912) -Codechange: split waypoint.h in waypoint_base.h and waypoint_func.h 2009-07-22 10:18:19 +00:00
rubidium f7b3067fb3 (svn r16901) -Fix [FS#3046] (rpbs): when marking trains stuck don't reset the unload counter/stuck when the vehicle is unloading. It'll be automatically reset once the vehicle wants to leave the station 2009-07-21 17:14:05 +00:00
smatz af13707e00 (svn r16877) -Codechange: use Subsidy::IsAwarded() instead of testing subsidy's age 2009-07-18 19:54:35 +00:00
smatz 77d13eae61 (svn r16852) -Codechange: use FOR_ALL_CARGOSPECS for iterating over all valid CargoSpecs 2009-07-16 20:40:06 +00:00
smatz 1f29e38b83 (svn r16849) -Codechange: replace GetCargo() by CargoSpec::Get() 2009-07-16 19:00:13 +00:00
smatz b6960e4e17 (svn r16814) -Codechange: make IsNormalAircraft() member of Aircraft 2009-07-13 16:37:27 +00:00
smatz 868c21cbcc (svn r16813) -Codechange: make IsEngineCountable() member of Vehicle 2009-07-13 16:35:22 +00:00
rubidium 571dfb9055 (svn r16736) -Codechange: give some station enums a name and use that instead of 'byte'. 2009-07-04 11:26:57 +00:00
smatz 76a50ce94d (svn r16714) -Codechange: use pool-like accessors for Subsidy 2009-07-01 18:45:05 +00:00
smatz f4d0d94184 (svn r16711) -Codechange: use FOR_ALL_SUBSIDIES macro when iterating over all subsidies 2009-07-01 17:43:26 +00:00
rubidium 3884221a94 (svn r16707) -Fix [FS#3007] (r16693): under some circumstances vehicles would skip loading as they thought nothing could be unloaded or loaded. 2009-07-01 09:50:52 +00:00
rubidium 8e804a4b6c (svn r16706) -Fix (r16694): acquiring a subsidy resulted in an assertion. 2009-07-01 09:45:30 +00:00
rubidium 985608c713 (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
rubidium 80043e688e (svn r16693) -Fix [FS#3004] (r16883): cargo income was not added to the vehicle's profit. 2009-06-29 19:17:23 +00:00
rubidium 18bc39d00b (svn r16683) -Codechange: move the cargo payment handling to a seperate class. Based on ideas of fonso/fonsinchen. 2009-06-28 15:12:59 +00:00
rubidium 043af83a03 (svn r16682) -Codechange: make (static) industry list used to trigger the industries' production compile unit static instead of passing it around as pointer 2009-06-28 14:36:25 +00:00
rubidium 778e92cf54 (svn r16681) -Codechange: only resolve the company once for vehicle payment instead of each time a cargo packet is delivered 2009-06-28 14:33:10 +00:00
rubidium eb4380f5ea (svn r16680) -Codechange: don't go through all the station unloading stuff when there is no vehicle at the station 2009-06-28 14:29:58 +00:00
smatz fa1ad0fd3c (svn r16654) -Codechange: cache industries in station's coverage area instead of searching them everytime payment is made 2009-06-25 15:42:03 +00:00
smatz 8343340acb (svn r16643) -Codechange: replace GetStationByTile() by Station::GetByTile() 2009-06-24 17:39:54 +00:00
smatz bea3fe2b8b (svn r16559) -Codechange: introduce Company::IsValidAiID() and Company::IsValidHumanID(), don't use IsHumanCompany() where possible 2009-06-10 22:05:01 +00:00
smatz 0c10006907 (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
alberth bab70a823d (svn r16491) -Codechange: Added parentheses around bitwise operators for code style. 2009-06-01 11:43:36 +00:00
yexo df7786f789 (svn r16453) -Fix: Move some code around so a company is no longer used after deleting it 2009-05-27 23:37:47 +00:00
frosch a4557c7da4 (svn r16416) -Fix [FS#2912]: Rework deleting of news when referenced vehicles/stations/industries are deleted. 2009-05-24 16:52:42 +00:00
smatz 7854e68b95 (svn r16407) -Fix [FS#2913]: set CargoPacket::source to INVALID_STATION when source station is deleted 2009-05-23 19:43:09 +00:00
smatz b2aed51f8e (svn r16403) -Codechange: move code related to subsidies to separate file 2009-05-23 15:46:00 +00:00
rubidium da5661a0c8 (svn r16393) -Codechange: move VehicleRail to Train. 2009-05-22 22:55:41 +00:00
rubidium 9f4d64bda0 (svn r16360) -Codechange: don't use _network_playas as a 'second' _local_company, but only as a storage location for the company you want to join in MP. 2009-05-19 21:20:14 +00:00
smatz 8808f3beea (svn r16352) -Codechange: use PoolItem::GetIfValid() instead of PoolItem::IsValidID() and PoolItem::Get() 2009-05-18 16:21:28 +00:00
smatz 871107f529 (svn r16327) -Codechange: replace IsValidPoolItemID(index) by PoolItem::IsValidID(index) 2009-05-17 01:00:56 +00:00
smatz 6221d74644 (svn r16325) -Codechange: replace GetPoolItem(index) by PoolItem::Get(index) 2009-05-16 23:34:14 +00:00
rubidium 59d45a04d6 (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. 2009-04-21 23:40:56 +00:00
smatz 8585aa71ed (svn r15726) -Codechange: unify coding style for const pointers 2009-03-15 16:04:39 +00:00
rubidium b25a4f8231 (svn r15718) -Cleanup: apply some comment coding style on the rest of the sources too 2009-03-15 00:32:18 +00:00
rubidium 9d018723b7 (svn r15711) -Codechange: lots of whitespace cleanup/fixes 2009-03-14 18:16:29 +00:00
smatz 3fdac6f702 (svn r15588) -Fix: change owner of waypoints and deleted stations when merging companies or when a company benkrupts 2009-02-26 14:07:42 +00:00
rubidium d86ae1fde6 (svn r15574) -Fix [FS#2680]: force unload not working when trying to force unload at the station where you received the cargo 2009-02-25 00:12:57 +00:00
frosch 6390ece34f (svn r15547) -Codechange: Eliminate all == and != comparisons between v->cargo_cap and v->cargo.Count() to improve behaviour wrt. broken/incompatible grfs. 2009-02-21 15:56:02 +00:00
rubidium d846eef0b6 (svn r15434) -Codechange: bit of type safety for the DC_xxx flags. 2009-02-09 21:20:05 +00:00
rubidium c0a8d09ca7 (svn r15428) -Codechange: consistently use colour instead of having both color and colour. 2009-02-09 02:57:15 +00:00
smatz abb17d64a1 (svn r15396) -Fix [FS#2601](r15027): since AIs can have vehicle groups now, convert the groups correctly 2009-02-07 13:53:38 +00:00
smatz 0d3f5e6e74 (svn r15299) -Cleanup: remove many redundant includes 2009-01-31 20:16:06 +00:00
truebrain a3dd7506d3 (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
2009-01-12 17:11:45 +00:00
rubidium 11da45ee55 (svn r14949) -Cleanup: pointer coding style 2009-01-10 00:31:47 +00:00
smatz 7368c740a6 (svn r14828) -Codechange: move most of save/load-specific code to separate files 2009-01-04 15:32:25 +00:00
rubidium 2283b8038f (svn r14825) -Fix: pay the correct amount of interest instead of a few percent too little a year 2009-01-04 14:32:30 +00:00
smatz 254e19da91 (svn r14807) -Codechange: use INVALID_TILE instead of 0 to mark invalid depots, industries, towns and waypoints 2009-01-03 16:06:58 +00:00
rubidium 87e5a8b52b (svn r14754) -Codechange: get rid of _cmd_text and just pass it as (optional) parameter. 2008-12-28 14:37:19 +00:00
smatz 53679122af (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 21fa036c21 (svn r14750) -Fix [FS#1993]: in an MP game in SP mode no company would go bankrupt. Furthermore companies that passed the "bankrupt" period (4 quarters) wouldn't go bankrupt when loading the game back in MP. Now any company that is in MP or not "currently controlled by the player" in SP will bankrupt. 2008-12-26 21:49:00 +00:00
rubidium 3ebe66a5e4 (svn r14748) -Codechange: unduplicate window updating when deleting vehicles. 2008-12-26 21:08:51 +00:00
rubidium f18043ee21 (svn r14747) -Codechange: remove DeleteVehicleChain in favour of the vehicle destructor as that was already doing the same for a few vehicle types. 2008-12-26 20:45:02 +00:00
smatz 5b26afbd6b (svn r14734) -Codechange: type of bankrupt_asked is CompanyMask, not byte 2008-12-24 00:25:17 +00:00
frosch f1900768c0 (svn r14705) -Fix [FS#2460]: First transfer the whole load of a vehicle chain to industries before triggering any processing.
This reduces callback usage and resolves critical rounding errors when using input-cargo-multipliers instead of production callbacks.
2008-12-20 17:21:22 +00:00
frosch fab1a52963 (svn r14672) -Fix [FS#2444]: Property 7 and callback 12 were broken for aircraft.
Now callback 12 is properly called also for 'mail'.
If the callback is not used, 'mail' uses 1/4 of property 7 (rounded up).
2008-12-13 18:25:42 +00:00
smatz 28028cf755 (svn r14670) -Codechange: use better readable (I hope) and branchless (for some archs/compilers) code for cargo value computation 2008-12-13 16:16:44 +00:00
frosch 896841403f (svn r14536) -Fix (r14530): Do not expect uints to become negative. 2008-10-25 22:00:51 +00:00
frosch ac281ed35c (svn r14530) -Fix [FS#2138]: Do not deliver cargo to industries not inside station catchment area. 2008-10-25 14:24:50 +00:00
rubidium 272b2ef0e9 (svn r14464) -Codechange: replace (uint)-1 with UINT_MAX (PhilSophus) 2008-10-14 18:38:51 +00:00
rubidium b650a86e58 (svn r14422) -Codechange: also reflect the changes of r14421 in the filenames. 2008-09-30 20:51:04 +00:00
rubidium 3b798599b6 (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 7ae255a553 (svn r14348) -Fix (r1667): signs were not updated on company bankrupcy/sell, they have colour of invalid player 2008-09-16 20:57:49 +00:00
belugas 0682dc3a0d (svn r14332) -Fix[FS#1885]: Balance the monthly random industry changes, by introducing a daily random industry change.
This will allow to perform more changes per month on big maps and less on smaller maps, while not overtaxing the IndustryMonthlyLoop process.
Thanks to frosch, for nice code ideas and rewrites
2008-09-15 17:18:22 +00:00
belugas db58c25af2 (svn r14254) -Codechange: Code style and breathing room 2008-09-06 02:53:18 +00:00
belugas f2f2bcf23c (svn r14105) -Fix: Some typos that are more grammatical errors, as it seems.
Provided by ln
I've added a little fix on currency.cpp too, why not :)
2008-08-20 01:38:12 +00:00
peter1138 ea7ed286a6 (svn r13836) -Fix [FS#2074]: Automatically recalculate inflation if NewGRFs are changed and cargo types are added, so that cargo payment rates are correct. 2008-07-26 14:58:08 +00:00
rubidium 3a799389eb (svn r13731) -Codechange: make a pool of the array of players. 2008-07-18 16:40:29 +00:00
rubidium 891bec7e23 (svn r13730) -Fix: make a copy of the names for news messages about the deletion of companies as the removal of a company could lead to wrong names in the news messages. 2008-07-18 16:26:51 +00:00
rubidium d06529ef4d (svn r13719) -Codechange: rename IsValidPlayer to IsValidPlayerID in line with all other structs/classes that are in a pool. 2008-07-17 20:13:01 +00:00
rubidium fbdc1c0476 (svn r13679) -Fix [FS#2131]: saving TTD imported games in recession failed due to wrong (and unneeded) type conversions in the saveload code. 2008-07-07 09:23:54 +00:00
skidd13 9335a28cb5 (svn r13647) -Codechange: replace MAX_UVALUE() for std types with the equivalent constant 2008-06-27 17:46:43 +00:00
peter1138 10b494d260 (svn r13356) -Codechange: Incorrect documentation and variable type for inflation rates 2008-06-02 06:42:27 +00:00
rubidium 2f3b88ef9a (svn r13343) -Codechange: reorder/move variable/functions in the network headers so that nothing from the network directory needs to include basically all network headers. 2008-05-30 18:20:26 +00:00
rubidium 923e21129c (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. 2008-05-29 15:13:28 +00:00
rubidium cd8e589fa9 (svn r13256) -Codechange: merge the OPTS and PATS chuncks.
-Codechange: split the diff_custom variable.
-Feature: allow changing some of the diff_custom variables via the console in network games.
2008-05-26 00:31:36 +00:00
rubidium 8c9cc415e3 (svn r13255) -Codechange: move _opt to _settings. 2008-05-25 22:36:44 +00:00
rubidium 4625695653 (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.
2008-05-25 19:17:03 +00:00
rubidium 9defec7876 (svn r13165) -Codechange: replace some RebuildXXXList/ResortXXXList+InvalidateWindowXXX with InvalidateWindowXXXData. 2008-05-18 16:51:44 +00:00
rubidium 152e82ba92 (svn r13147) -Codechange: move the code to draw bankruptcy news to news_gui.cpp. 2008-05-17 21:13:05 +00:00
rubidium 87015f5b63 (svn r13140) -Codechange: move the gui-list-sorting out of window_gui.h so window_gui.h only needs to be included in *_gui.cpp. 2008-05-17 13:01:30 +00:00
rubidium 5ede3da220 (svn r13123) -Codechange: passing the bankrupt type via data_b is not needed anymore. Patch by Cirdan. 2008-05-16 20:04:17 +00:00
rubidium d94bef9d5c (svn r13102) -Codechange: make a class of the NewsWindow. 2008-05-15 13:47:55 +00:00
rubidium 76b8970a33 (svn r13100) -Codechange: reduce the amount of parameters passed via AddNewsMessage as there is (for each news message type) a tuple of 4 parameters that is the same for all calls. 2008-05-15 13:39:36 +00:00
rubidium d0c79e1164 (svn r13065) -Codechange: remove the need for the news string callbacks. Patch by Cirdan. 2008-05-13 10:17:04 +00:00
rubidium 2ba05f8987 (svn r13021) -Codechange: free data_b for other uses when it is not used to store a second tile to skip to (in news messages). Patch by cirdan. 2008-05-08 22:53:49 +00:00
rubidium 402a1e24ba (svn r12977) -Codechange: remove quite some redundant (duplicate) function declarations. 2008-05-06 22:17:12 +00:00