Commit Graph

447 Commits (acdeaa715e1ac080a295d453577a0934f9175073)

Author SHA1 Message Date
rubidium 974793f0c5 (svn r21952) -Codechange: unify the company clearing code for bankruptcy with the command to remove companies 14 years ago
rubidium 05199a641a (svn r21890) -Cleanup: remove some unneeded includes 14 years ago
rubidium 84423c6ea6 (svn r21658) -Fix [FS#4351]: cargo payment window wasn't properly invalidated when payment changed 14 years ago
rubidium 308da265ef (svn r21605) -Fix [FS#4324]: crash due to cargo payments belonging to an non-existing company 14 years ago
terkhen f69d280f14 (svn r21521) -Codechange: Unify some cached values that were present in both road vehicles and trains. 14 years ago
rubidium 9cb806ed8f (svn r21462) -Codechange [FS#3689]: don't do unnecessary cargo reservations in while loading/unloading vehicles. It is only needed when at least one vehicle is loading; all other times it is a waste of effort. Roughly halves the time it takes to perform loading/unloading of vehicles (fonsinchen) 14 years ago
alberth b698045b82 (svn r21156) -Codechange: Introduce EconomyIsInRecession(). 14 years ago
rubidium 19f39f0fe0 (svn r21145) -Fix: station list wasn't updated when a new cargo got a rating 14 years ago
terkhen 25e638adcb (svn r21099) -Codechange: Store road vehicle max speed in the vehicle cache. 14 years ago
terkhen 79ab8cb571 (svn r21098) -Codechange: Ships now store their max speed in the cache instead of recalculating it every time. 14 years ago
terkhen ca755e983c (svn r21097) -Codechange: Unify cached max speed for all vehicle types. 14 years ago
terkhen 9dbd35a2ae (svn r21095) -Codechange: Use a function to convert aircraft speed to old units. 14 years ago
rubidium 56a65270fc (svn r20970) -Add: company change notification to remote admins (dihedral) 14 years ago
smatz 548a3747e9 (svn r20860) -Cleanup: remove some unused functions and variables 14 years ago
michi_cc 355ca511ca (svn r20843) -Fix [FS#2534] (r20506): Make sure (gradual) loading is properly terminated for consists with multiple cargo types. Don't stop loading if the timetabled wait is not over yet. (Steve-N) 14 years ago
rubidium 360d6daf34 (svn r20632) -Cleanup: remove "a few" unneeded includes, and add them to some headers 14 years ago
rubidium 514f566d7c (svn r20623) -Codechange: unify the storing of animation related information 14 years ago
michi_cc 29e7f55d94 (svn r20506) -Change: Vehicles will now stop loading after a load cycle that loaded less than possible, unless it's a full load order. This should improve behaviour with gradual loading and cargo continuously trickling in. 14 years ago
rubidium 1f2276b785 (svn r20411) -Codechange: rename unmovables as quite a lot of them are actually movable; e.g. HQ and owned land are pretty movable. 14 years ago
yexo 5162f28c27 (svn r20396) -Codechange: introduce a helper function to test whether an industry temporarily refues to accept some cargo 14 years ago
alberth f5964a46d2 (svn r20393) -Fix [FS#3993]: Prevent taking over competitors when you'd get too many vehicles. 14 years ago
alberth 3db5cfb95d (svn r20392) -Fix [FS#3993]: Prevent buying bankrupt companies when you'd get too many vehicles. 14 years ago
rubidium f475a7f5e7 (svn r20341) -Codechange: pass the tile of the HQ instead of the company to UpdateCompanyHQ 14 years ago
alberth 91eba89331 (svn r20320) -Doc: Small Doxygen and normal comment fixes, and an missed addition. 14 years ago
alberth 66b3d60b60 (svn r20319) -Codechange: Align comments, add indent to a function call. 14 years ago
alberth ccbacfc298 (svn r20318) -Doc: Doxygen additions. 14 years ago
alberth 6c01a5833c (svn r20317) -Codechange: Move variable declaration to their first use. 14 years ago
frosch c18839704b (svn r20286) -Codechange: Unify end of doxygen comments. 14 years ago
frosch 5b86c79fce (svn r20283) -Codechange: Unify start of doygen comments. 14 years ago
alberth e5b703ddf9 (svn r20279) -Doc: Doxygen additions/improvements. 14 years ago
alberth 1743c86610 (svn r20266) -Doc: Mostly typo fixes, a few doxygen-related improvements. 14 years ago
alberth 7d3de0632d (svn r20262) -Codechange: Remove unused ScoreInfo::id field, and doxyment the data structures. 14 years ago
alberth 137e2b64c9 (svn r20211) -Codechange: Indented code should have curly braces around it. 14 years ago
rubidium 1b507dcf66 (svn r20164) -Fix [FS#3870]: inconsistencies w.r.t. to km/h vs km-ish/h as "base" unit for aircraft speeds 14 years ago
frosch a5bea603ea (svn r19931) -Fix (r19914): Convert assertion in Backup<> destructor into DEBUG() output. It was triggered on exceptions, especially when aborting world generation. 14 years ago
frosch ee53807e51 (svn r19914) -Codechange: Wrap a helper class around temporary assignments of _current_company to ensure proper restoration. 14 years ago
frosch a4413f4cf6 (svn r19670) -Codechange: Add CeilDiv() and RoundDiv() to simplify integer divisions with rounding. 14 years ago
frosch 001a96526c (svn r19655) -Codechange: Reduce usage magic p1 parameter. 14 years ago
smatz abaf6b5b42 (svn r19651) -Fix [FS#3745]: when a company is sold, move connected clients to spectators 14 years ago
smatz 258b128a56 (svn r19614) -Codechange: "it's" => "its" where appropriate 14 years ago
rubidium f91cf9e519 (svn r19277) -Fix [FS#3646]: [NewGRF] Ensure prices can't be set to zero. Zero prices break a lot of the internal logic to determine whether something has been done. 15 years ago
yexo 391b759d04 (svn r19197) -Codechange: introduce animation callbacks for airport tiles 15 years ago
rubidium 06e3ad23a0 (svn r18908) -Fix [FS#3561]: on bankruptcy the company value did include the loan and as such the value at which you bought the company was too low 15 years ago
rubidium 9467b7c6d6 (svn r18809) -Codechange/Cleanup: remove unneeded headers from some files, if a header require a header make it include that header 15 years ago
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 15 years ago
rubidium 6cac8be361 (svn r18717) -Codechange: use TileArea in industry instead of three separate variables. Also make use of TileArea functions for determining the 'width' and 'height' of an industry. 15 years ago
rubidium f99c8b3f21 (svn r18703) -Feature-ish: allow virtually paying a percentage of the leg profit in feeder chains. This to give the user a better chance to get a feeder system without "losses". 15 years ago
rubidium 3de085a143 (svn r18683) -Fix: it's not an other 15 years ago
frosch 9384da0ea2 (svn r18540) -Codechange: resulting in better name for 'result'. 15 years ago
frosch ec8e44055c (svn r18537) -Fix (r17436): Also do not account cargo in statistics, if it was not accepted. 15 years ago
rubidium da30e736ca (svn r18330) -Cleanup: remove some unneeded includes 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
frosch c0936d100d (svn r18016) -Codechange: Move the arbitrary basecost multiplier offset (8) to newgrf loading and make the internal state zero-based instead. 15 years ago
frosch d6e65fc173 (svn r18008) -Codechange: Rename NUM_PRICES to PR_END, and use the Price enum some more. 15 years ago
frosch 040404c5d3 (svn r18005) -Codechange: Convert the Prices struct into an array and an enum. 15 years ago
frosch 3cb949a17d (svn r17976) -Codechange: Move CargoClass to cargotype.h and clean up including of newgrf_cargo.h 15 years ago
rubidium d4919d8e88 (svn r17834) -Fix [FS#3274] (r17808): you got paid a bit too much... ofcourse the index of the source station generally doesn't equal the location of said station. 15 years ago
rubidium 756f813040 (svn r17808) -Codechange: remove write 'access' from all of CargoPacket's variables 15 years ago
rubidium e553983e39 (svn r17800) -Codechange: first steps into making CargoList a template 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 ec3a0dc064 (svn r17720) -Codechange: guard the CargoPacket variables that are cached in CargoLists so they cannot be written from outside the CargoList class (based on patch by fonsinchen) 15 years ago
smatz 581366f352 (svn r17592) -Fix [FS#3212](r17436): force all cargo being accepted when industry tiles accept it but industry itself doesn't 15 years ago
smatz c3a80f1518 (svn r17589) -Codechange: rename town_acc to always_accepted 15 years ago
rubidium 2e5596025c (svn r17579) -Fix: remove doxygen docs for removed parameters, or change @param to @tparam if necessary 15 years ago
rubidium 310465da07 (svn r17570) -Fix: a number of Doxygen warnings about missing parameters, which were sometimes missing and sometimes just typos 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 ba1af15b7a (svn r17551) -Fix [FS#3201] (r17222): vehicles waiting for their time table didn't load anymore after their initial load was completed 15 years ago
frosch 8f5622ebad (svn r17550) -Fix (r8973): Aircraft are good enough, don't make them even better. 15 years ago
rubidium 3325d91c6e (svn r17546) -Fix (r9617): sign extending of profit calculation didn't work 15 years ago
yexo 6fb7012bc6 (svn r17542) -Fix: don't access variables in the company struct after it has been deleted
-Cleanup: remove some never-used code
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 97d1314a47 (svn r17485) -Change [FS2459]: make the performance ratings harder to exploit; only count profitable vehicles and recently serviced stations. 15 years ago
rubidium ab935f3085 (svn r17449) -Fix (r17436): MSVC compile warning about comparing signed and unsigned values 15 years ago
smatz 5d622fd840 (svn r17439) -Fix (r17436): you weren't paid for cargo delivered to houses and headquarters anymore 15 years ago
smatz 587ae07799 (svn r17437) -Change: don't accept cargo produced in the same industry (generalise and improve the check used only for valuables) 15 years ago
smatz 7c978ce5cd (svn r17436) -Change: pay only for cargo actually delivered, not for all cargo unloaded at station (can differ with 'stockpiling' industries) 15 years ago
frosch d7bf8b74c7 (svn r17435) -Codechange: Move _cargo_payment_rates[] to CargoSpec::current_payment. 15 years ago
frosch 64f5f1d02c (svn r17433) -Codechange: Store cumulated inflation in savegame and compute all prices from that instead of storing all prices separately.
Note: Savegame conversion computes the inflation from max loan. Prices from modified savegames will get lost. TTO savegames will also behave slightly different.
-Change: NewGRF price modifiers now take effect everytime when loading NewGRFs instead of once on gamestart.
15 years ago
smatz 6572bce9c1 (svn r17426) -Fix (r1): economy recession would never end when economy is set to Steady while in recession 15 years ago
smatz dc73d5432d (svn r17420) -Codechange: replace assert() by assert_compile() where possible 15 years ago
rubidium 62e990823d (svn r17345) -Fix [FS#2769]: one wasn't offered to take over bankrupt companies anymore; caused by the introduction NoAI, although NewAI had the same problem too. 15 years ago
rubidium c1fe2ce4bc (svn r17343) -Codechange: it's bankruptcy, not bankrupcy, according to my Oxford Dictionary of English and Merriam-Webster. 15 years ago
rubidium 94867f3052 (svn r17342) -Fix: reset bankruptcy checks when bankruptcy has been averted and don't set an unused timeout with a magic number 15 years ago
rubidium 846cd79ada (svn r17341) -Fix: memory leak when trying to bankrupt the local company 15 years ago
smatz 09e1ecc8ac (svn r17316) -Codechange: use Industry::GetByTile() instead of GetIndustryByTile() 15 years ago
rubidium 99d46e0ad7 (svn r17248) -Fix: add GPL license notice where appropriate 15 years ago
rubidium 2612f46a20 (svn r17222) -Fix [FS#3129, FS#3130]: with time tables vehicles would stay in the 'loading' state after they have finished loading 15 years ago
smatz d59b687f65 (svn r17124) -Codechange: store subsidies in a pool (instead of an array) 15 years ago
smatz 0502a6df42 (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
15 years ago
smatz 738d7fde53 (svn r17107) -Codechange: store type of subsidy source and destination in the Subsidy struct instead of determining it every time it's needed 15 years ago
smatz fcae906575 (svn r17086) -Cleanup (r16654): remove code used only for debugging 15 years ago
rubidium d61be2637e (svn r17075) -Codechange: rename ~750 strings to be more uniform with their relatives 15 years ago
belugas 00338562b9 (svn r17058) -Codechange: magic numbers removal.
Two values used intead of just one, as it gives more possibilities to those who dare...
15 years ago
frosch 29d4316064 (svn r17037) -Fix (r17036): 'Polygonal Capabilities' are a core feature of windows. 15 years ago
frosch 8b50754b19 (svn r17036) -Codechange: Split price bases from economy.cpp to table/pricebase.h. 15 years ago
rubidium fb36ebd9dd (svn r16933) -Fix [FS#3054] (r16694): vehicles would wait "very long" when they had nothing to unload and gradual loading was disabled. 15 years ago
rubidium 6435dc89fe (svn r16912) -Codechange: split waypoint.h in waypoint_base.h and waypoint_func.h 15 years ago
rubidium 84dec43208 (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 15 years ago
smatz 3564579dc4 (svn r16877) -Codechange: use Subsidy::IsAwarded() instead of testing subsidy's age 15 years ago
smatz cb13cf2543 (svn r16852) -Codechange: use FOR_ALL_CARGOSPECS for iterating over all valid CargoSpecs 15 years ago
smatz 8718babe90 (svn r16849) -Codechange: replace GetCargo() by CargoSpec::Get() 15 years ago
smatz 64de470917 (svn r16814) -Codechange: make IsNormalAircraft() member of Aircraft 15 years ago
smatz 98b8479f56 (svn r16813) -Codechange: make IsEngineCountable() member of Vehicle 15 years ago
rubidium c5a44ce99e (svn r16736) -Codechange: give some station enums a name and use that instead of 'byte'. 15 years ago
smatz 93557ba4e9 (svn r16714) -Codechange: use pool-like accessors for Subsidy 15 years ago
smatz d04750ff87 (svn r16711) -Codechange: use FOR_ALL_SUBSIDIES macro when iterating over all subsidies 15 years ago
rubidium ff4326d6a3 (svn r16707) -Fix [FS#3007] (r16693): under some circumstances vehicles would skip loading as they thought nothing could be unloaded or loaded. 15 years ago
rubidium e189037662 (svn r16706) -Fix (r16694): acquiring a subsidy resulted in an assertion. 15 years ago
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.
15 years ago
rubidium 025cf4b546 (svn r16693) -Fix [FS#3004] (r16883): cargo income was not added to the vehicle's profit. 15 years ago
rubidium 2c478d1b6d (svn r16683) -Codechange: move the cargo payment handling to a seperate class. Based on ideas of fonso/fonsinchen. 15 years ago
rubidium e6ac18cd57 (svn r16682) -Codechange: make (static) industry list used to trigger the industries' production compile unit static instead of passing it around as pointer 15 years ago
rubidium 7f117cf256 (svn r16681) -Codechange: only resolve the company once for vehicle payment instead of each time a cargo packet is delivered 15 years ago
rubidium 5140f4261b (svn r16680) -Codechange: don't go through all the station unloading stuff when there is no vehicle at the station 15 years ago
smatz 72bee4ad2d (svn r16654) -Codechange: cache industries in station's coverage area instead of searching them everytime payment is made 15 years ago
smatz f6a4d61cca (svn r16643) -Codechange: replace GetStationByTile() by Station::GetByTile() 15 years ago
smatz a2567c84a0 (svn r16559) -Codechange: introduce Company::IsValidAiID() and Company::IsValidHumanID(), don't use IsHumanCompany() where possible 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
alberth 580e478e4e (svn r16491) -Codechange: Added parentheses around bitwise operators for code style. 15 years ago
yexo e7a087b08b (svn r16453) -Fix: Move some code around so a company is no longer used after deleting it 15 years ago
frosch eeb3f75cfe (svn r16416) -Fix [FS#2912]: Rework deleting of news when referenced vehicles/stations/industries are deleted. 15 years ago
smatz bebab3cd79 (svn r16407) -Fix [FS#2913]: set CargoPacket::source to INVALID_STATION when source station is deleted 15 years ago
smatz 1eb48cdded (svn r16403) -Codechange: move code related to subsidies to separate file 15 years ago
rubidium 4c0542c17f (svn r16393) -Codechange: move VehicleRail to Train. 15 years ago
rubidium 789999ecf3 (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. 15 years ago
smatz 512db5248e (svn r16352) -Codechange: use PoolItem::GetIfValid() instead of PoolItem::IsValidID() and PoolItem::Get() 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
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
smatz e0fe28fdc9 (svn r15726) -Codechange: unify coding style for const pointers 15 years ago
rubidium c3e87f345d (svn r15718) -Cleanup: apply some comment coding style on the rest of the sources too 16 years ago
rubidium f3e0fd7416 (svn r15711) -Codechange: lots of whitespace cleanup/fixes 16 years ago
smatz e7c2479216 (svn r15588) -Fix: change owner of waypoints and deleted stations when merging companies or when a company benkrupts 16 years ago
rubidium a23818b146 (svn r15574) -Fix [FS#2680]: force unload not working when trying to force unload at the station where you received the cargo 16 years ago
frosch 7e925a5781 (svn r15547) -Codechange: Eliminate all == and != comparisons between v->cargo_cap and v->cargo.Count() to improve behaviour wrt. broken/incompatible grfs. 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
smatz d5e2154e90 (svn r15396) -Fix [FS#2601](r15027): since AIs can have vehicle groups now, convert the groups correctly 16 years ago
smatz 9021c20b5e (svn r15299) -Cleanup: remove many redundant includes 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
smatz 91233ea596 (svn r14828) -Codechange: move most of save/load-specific code to separate files 16 years ago
rubidium 1900ba908b (svn r14825) -Fix: pay the correct amount of interest instead of a few percent too little a year 16 years ago
smatz b00e510140 (svn r14807) -Codechange: use INVALID_TILE instead of 0 to mark invalid depots, industries, towns and waypoints 16 years ago
rubidium e83cca7d13 (svn r14754) -Codechange: get rid of _cmd_text and just pass it as (optional) parameter. 16 years ago
smatz 9c2c1dea06 (svn r14753) -Fix (r1): after buying a company, one could have more vehicles with the same UnitID 16 years ago
rubidium 027e431b99 (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. 16 years ago