Commit Graph

777 Commits

Author SHA1 Message Date
Niels Martin Hansen d84b67e54d Codechange: Make a k-d tree index of stations 2019-03-09 20:27:11 +01:00
Peter Nelson 943c58e468 Fix: Show industry name in Land Area Information window for oil-rig type stations instead of just 'Oil Rig' 2019-03-09 18:16:33 +00:00
Peter Nelson 8b1b3fd0f9 Feature: Non-rectangular sparse station catchment area. 2019-03-09 16:33:47 +00:00
peter1138 ed6084523d Codechange: Convert StationList from SmallVector to std::set. 2019-03-09 16:33:47 +00:00
PeterN dd20ccee88
Feature: Industries with neutral stations (e.g. Oil Rig) only supply/accept cargo to/from their neutral station. (#7234)
This change is a controlled by a game setting, located under Environment ->
Industries which allows toggling the behaviour. It defaults to enabled.

"Company stations can serve industries with attached neutral stations"

When enabled, industries with attached neutral station (such as Oil Rigs) may
also be served by company-owned stations built nearby. This is the traditional
behaviour.

When disabled, these industries may only be served by their neutral station.
Any nearby company-owned stations won't be able to serve them, nor will the
neutral station serve anything else other than the industry.
2019-03-08 18:30:44 +00:00
SamuXarick 456e67ac1c Change: Owner of vehicle with exclusive transport rights may now load cargo from neutral stations (#7256) 2019-02-21 21:23:37 +00:00
Juanjo 45ce517105 Codechange: Move some common code after adding/removing tiles to a station to its own function. 2019-02-18 22:57:43 +01:00
Peter Nelson 81330b8d6e Change: Add path cache for ships. 2019-01-19 23:11:17 +00:00
nikolas d8ccad91f9 Fix: Some code and comment typos
Found with codespell
2019-01-17 22:01:07 +00:00
Johannes E. Krause 06cd561cea Add: when placing non-rectangular airport, consider airport tile table tiles only (patch by adf88, #6613) 2019-01-11 20:38:52 +00:00
Joost Hopmans 5029cd6f28 Fix: Only possible to build station next to competitors by using CTRL+click
Fix by checking only for stations owned by the current company when
inspecting if there are multiple adjoining stations to the one being built.

When building next to 2 or more owned stations we don't know which
station should be extended. For other companies' stations that's not a
problem since our station won't merge with theirs anyway.

Calling to BuildStationPart should never have another company's station
as a parameter to attach to unless the client is malicious, so just returning
a generic error in that case.
2018-10-31 19:24:21 +01:00
Charles Pigott f5b1115039 Doc: Lots and lots of doxymentation fixes 2018-10-31 12:35:54 +01:00
Peter Nelson bf8d7df736 Change: Extend rail types to 64 (6 bit storage) 2018-07-26 13:27:40 +01:00
Peter Nelson 408cee123d Fix: One-way roads could be over-built by road stops (regardless of road owner.) 2018-06-06 07:20:46 +01:00
PeterN 4cebebcf68
Change: Add CargoTypes type for cargo masks. (#6790) 2018-05-21 22:08:39 +01:00
frosch b4b98e5165 (svn r27893) -Codechange: Use fallthrough attribute. (LordAro) 2017-08-13 18:38:42 +00:00
peter1138 890a44f130 (svn r27810) -Change: Factor out reservation-handling code in station_cmd.cpp
Code dealing with freeing and restoring track reservations is
duplicated in CmdBuildRailStation and RemoveFromRailBaseStation;
make separate functions for it. (cirdan)
2017-03-20 17:44:37 +00:00
frosch 10293c5fb1 (svn r27686) -Change: List railtype of rail tiles explicitly in the tile info window. 2016-12-09 21:27:22 +00:00
fonsinchen 58fdd3ac98 (svn r27682) -Fix: Don't check if links are alive for manually routed cargo 2016-12-04 19:59:17 +00:00
fonsinchen 662c019136 (svn r27681) -Fix: When deleting stale links, iterate through order lists before iterating through vehicles 2016-12-04 19:53:38 +00:00
frosch d9bfe88261 (svn r27676) -Codechange: Rename catenary functions, so that they refer unambiguously to either RoadCatenary or RailCatenary. 2016-11-05 11:53:03 +00:00
frosch 62bc57db77 (svn r27311) -Fix: Mark infrastructure window dirty in more cases. (marcole) 2015-06-21 09:19:27 +00:00
frosch 904688c00a (svn r27308) -Fix [FS#6283]: Prevent breaking of tram-reversal points by adding more road pieces. (adf88) 2015-06-20 13:11:09 +00:00
frosch 046cb6140f (svn r27256) -Change [FS#6165]: Do not consider cargo that is already being loaded as waiting cargo wrt. the station rating. 2015-04-26 11:43:58 +00:00
frosch 0ea4127837 (svn r27251) -Feature [FS#6252]: Make Ctrl+Remove-Roadstop also remove the road, just like for rail stations. (adf88) 2015-04-26 09:51:24 +00:00
frosch 6bdae2f64a (svn r27246) -Codechange: Deduplicate code between removing part of a rail station and removing the whole rail station. (adf88) 2015-04-25 11:37:57 +00:00
frosch 272c386fa8 (svn r27245) -Fix [FS#6251]: Removing a rail waypoint used the remove-rail-station cost. (adf88) 2015-04-25 11:30:27 +00:00
planetmaker 84e5c5a9cb (svn r27225) -Change [FS#6262]: Be more lenient about road stop removal when at least one stop could be removed (afd88) 2015-04-11 11:50:02 +00:00
frosch 780e595933 (svn r27178) -Fix [FS#5969]: Data race due to lazy initialisation of objects. 2015-03-07 18:27:01 +00:00
fonsinchen 9fdb88962f (svn r26891) -Codechange: Add methods to retrieve flows from a FlowStatMap 2014-09-21 16:19:52 +00:00
rubidium 9daf7e749c (svn r26879) -Codechange: remove most MayHaveBridgeAbove calls since the data is now always accessible 2014-09-21 11:24:51 +00:00
fonsinchen 957f5ca117 (svn r26646) -Fix [FS#6041]: Save locations instead of distances in link graphs to reduce size. 2014-06-14 13:35:39 +00:00
rubidium 0ceb05ee9f (svn r26582) -Feature-ish: quickly decay cargo after about 21 months of not having picked any of the cargo, and prevent houses and industries providing more cargo 2014-05-11 18:35:34 +00:00
rubidium 89c25b955e (svn r26580) -Codechange: s/GES_PICKUP/GES_RATING/ (it has nothing to do with actual pickup), s/acceptance_pickup/status/ (the enum isn't called GoodEntryStatus for a reason; it's not only acceptance and pickup anymore) 2014-05-11 18:02:11 +00:00
fonsinchen 11d98f043e (svn r26549) -Change: better estimation for link capacities during full load 2014-05-01 14:50:52 +00:00
rubidium 9ed12b0f07 (svn r26509) -Codechange: replace strdup with stredup (the latter ensures the return is not NULL) 2014-04-25 15:40:32 +00:00
rubidium 0463dbdc9e (svn r26482) -Codechange: add an include that allows us to undefine/redefine "unsafe" functions to prevent them from being used, and thus having to care about certain aspects of their return values 2014-04-23 20:13:33 +00:00
planetmaker ba42bcdf49 (svn r26458) -Doc: Correct a few spelling mistakes (__ln__) 2014-04-12 15:59:56 +00:00
fonsinchen bef953a32c (svn r26448) -Fix [FS#5970]: Avoid division by 0 when scaling flow values. 2014-04-08 19:28:14 +00:00
fonsinchen 5d3fcce725 (svn r26393) -Fix: Update distances between link graph nodes when station sign is moved 2014-03-06 21:19:41 +00:00
frosch a9acaf7a5e (svn r26375) -Fix [FS#5929]: Station sizes > 8 were always allowed. (adf88) 2014-02-24 19:57:18 +00:00
rubidium 98539bd2c3 (svn r26363) -Codechange [FS#5894]: make it clearer that drive through road stops need an Axis in CmdBuildRoadStop and the non drive through stops need a DiagDir 2014-02-22 19:52:13 +00:00
frosch 932dad7c8b (svn r26275) -Fix: If NewGRF provided the same station name for different industry types, stations would end up with same name. So also consider the provided name, not only the industry type. 2014-01-23 20:23:14 +00:00
fonsinchen ec492bfb77 (svn r26166) -Fix: Scale flows only after mapping to avoid rounding errors. 2013-12-20 14:57:44 +00:00
fonsinchen e6668f24b5 (svn r26013) -Revert (r25495) [FS#5684]: Having trains miss a platform that is just being modified is less of a problem than having trains stop twice without moving. 2013-11-16 17:52:00 +00:00
fonsinchen 962d6d7e48 (svn r25963) -Fix [FS#5758]: Mixtures of old and new flows could create cycles. 2013-11-10 15:18:49 +00:00
fonsinchen f6fd21e8e6 (svn r25948) -Fix [FS#5796]: Make sure LinkRefresher doesn't delete the LinkGraph DeleteStaleLinks() is examining. 2013-11-07 20:50:03 +00:00
fonsinchen 8926398f89 (svn r25915) -Fix: Unrestricted flow was counted incorrectly when invalidating flow. 2013-10-27 11:51:14 +00:00
fonsinchen f528d2c592 (svn r25910) -Fix: Guard against empty FlowStats in a few more places. 2013-10-23 19:04:06 +00:00
fonsinchen 6e1cc80926 (svn r25903) -Codechange: Refactor RefreshNextHopsStats into an own class LinkRefresher. 2013-10-22 18:34:10 +00:00
fonsinchen 2f9c48b859 (svn r25901) -Fix [FS#5675]: Check if any vehicles are still serving a link before deleting it. 2013-10-22 16:19:31 +00:00
fonsinchen 6524849386 (svn r25899) -Change: Restrict flows if links are restricted and don't normally pick them anymore. 2013-10-22 16:13:54 +00:00
fonsinchen 29e987f3fc (svn r25898) -Codechange: Add second timestamp for 'restricted links' to all edges. 2013-10-22 16:13:28 +00:00
fonsinchen 9337c561b0 (svn r25892) -Fix: off-by-one error in GetVia prevented certain flows from getting picked 2013-10-20 14:27:36 +00:00
fonsinchen 54db96be43 (svn r25891) -Feature: Use smallstack to allow for multiple next hops when loading and unloading. 2013-10-20 13:47:58 +00:00
zuu dfb5663313 (svn r25849) -Codechange: Introduce IsTileFlat to not compute full slope information for situations when we only want to know if a tile is flat or not (cirdan, LordAro) 2013-10-12 22:07:58 +00:00
rubidium d3ccc7c194 (svn r25495) -Fix [FS#5553]: when addings bits to a (train) station, the train trying to stop there could overshoot the (new) stop location and not stop at all 2013-06-28 18:09:07 +00:00
rubidium b4106e686b (svn r25461) -Fix: MSVC compiler warning 2013-06-25 18:52:12 +00:00
fonsinchen 930c19dae2 (svn r25435) -Fix: reroute cargo in vehicles if station is deleted 2013-06-23 08:29:28 +00:00
fonsinchen 3dd811e179 (svn r25434) -Fix: reroute cargo staged for unloading if a link breaks 2013-06-23 08:28:53 +00:00
fonsinchen f0119308f6 (svn r25424) -Fix: keep old flows around in an invalidated state to continue routing cargo if necessary 2013-06-17 20:38:11 +00:00
fonsinchen 1c995a3faa (svn r25391) -Fix: make ChangeShare really aware of INT_MIN 2013-06-10 21:53:11 +00:00
fonsinchen 6166772bc5 (svn r25379) -Fix: avoid warning in FlowStatMap::FinalizeLocalConsumption 2013-06-09 14:10:33 +00:00
fonsinchen 0fc198cb00 (svn r25365) -Feature: show cargo by next hops and final destinations in the station GUI 2013-06-09 13:08:52 +00:00
fonsinchen 741c431caa (svn r25362) -Feature: consider cargo waiting at other stations for rating at the origin station 2013-06-09 13:04:32 +00:00
fonsinchen 04e3eb6fab (svn r25361) -Feature: distribute cargo according to plan given by linkgraph 2013-06-09 13:03:48 +00:00
fonsinchen 5c8ff0a251 (svn r25359) -Codechange: schedule jobs when tracking capacities of links 2013-06-09 13:02:40 +00:00
fonsinchen db671ffb86 (svn r25346) -Codechange: Glue between stations and flow stats 2013-06-09 12:49:47 +00:00
fonsinchen c8f068d979 (svn r25345) -Add: implementation of SharesMap and FlowStatMap 2013-06-09 12:48:42 +00:00
rubidium be4f85766c (svn r25260) -Codechange: occasionally clear dead links and compress link graphs (fonsinchen) 2013-05-19 14:26:14 +00:00
rubidium 3947453277 (svn r25259) -Codechange: track capacities and usage of links 2013-05-19 14:22:04 +00:00
rubidium 1a0c081c18 (svn r25251) -Fix [FS#5540]: when overbuilding a reserved track with a non-track station tile, that tile would remain reserved and eventually trigger a crash upon removal 2013-05-18 18:59:06 +00:00
rubidium 0d05b8a0fb (svn r25243) -Fix [FS#5546]: "No station" error was given, even when there was a station that way occupied or not yours 2013-05-13 21:04:12 +00:00
frosch 5eddbb338b (svn r25185) -Fix [FS#5508]: Remove ambivalent functions CargoList::Empty() and Count(), and replace them with VehicleCargoList::StoredCount(), TotalCount(), StationCargoList::AvailableCount() and TotalCount(). (fonsinchen) 2013-04-13 13:42:08 +00:00
rubidium b2292122b6 (svn r25149) -Codechange: replace 'magic' 'has rating' bitcheck by descriptive function 2013-04-06 12:10:16 +00:00
rubidium 9986691220 (svn r25132) -Fix [FS#5510, FS#5516]: station rebuilding could leave reserved tiles which caused crashes later on 2013-03-31 20:07:32 +00:00
rubidium bae033c23d (svn r25016) -Fix [FS#5476]: integer overflow in UpdateStationRating (fonsinchen) 2013-02-17 20:16:49 +00:00
rubidium 2795ed5b09 (svn r25008) -Codechange: Make CargoList::Truncate behave similarly to CargoList::MoveTo, i.e. pass the amount to truncate (fonsinchen) 2013-02-17 14:10:15 +00:00
rubidium c7168f09c3 (svn r24961) -Fix [FS#5362] (r23564): making occupied platforms larger would make train reserve onto the newly unreserved bit and cause crashes. Now if a platform is enlarged and there is a reservation, reserve the whole platform 2013-02-03 10:03:38 +00:00
frosch 6f80f4ac29 (svn r24951) -Fix: [NewGRF] Var 10 of CB 24 missed the T part. 2013-01-31 18:34:11 +00:00
peter1138 c00a400cc7 (svn r24905) -Feature(ish): Implement station randomisation triggers. 2013-01-11 07:39:25 +00:00
planetmaker c24374f99c (svn r24900) -Fix [FS#5389]: Comments with typos (most fixes supplied by Eagle_rainbow) 2013-01-08 22:46:42 +00:00
peter1138 fb58c42aa0 (svn r24840) -Fix: Draw NewGRF railtypes in NewGRF station previews. 2012-12-23 15:38:54 +00:00
frosch eb56e60e94 (svn r24721) -Fix (r24715): Reallow building road stations. 2012-11-13 21:41:54 +00:00
frosch b518f1342c (svn r24720) -Fix (r24715): Comparison of different height units. 2012-11-13 21:40:50 +00:00
frosch 883f9bec9b (svn r24718) -Codechange: Rename GoodsEntry::days_since_pickup to GoodsEntry::time_since_pickup. 2012-11-12 21:59:02 +00:00
frosch 96540079e7 (svn r24715) -Fix [FS#5335]: [NewGRF] Allow stations to draw snow/desert aware ground sprites with railtype overlays. 2012-11-12 20:13:34 +00:00
frosch f3be01c26f (svn r24714) -Fix [FS#5337]: [NewGRF] Draw default foundations if resolving of custom station foundation sprites fails. 2012-11-12 20:13:17 +00:00
frosch 0566b29ab7 (svn r24708) -Codechange: Check magic values of GoodsEntry::last_speed only via wrapper function. 2012-11-12 18:11:26 +00:00
frosch a2980378ff (svn r24704) -Cleanup: No need to initialise stuff twice. 2012-11-12 18:10:02 +00:00
frosch e6459a91dd (svn r24703) -Fix: Disallow closing oilrig airports in SE. 2012-11-12 18:09:33 +00:00
alberth 0849fb8d36 (svn r24535) -Doc: Two additions, lots of small spelling fixes, and some Doxygen improvements. 2012-09-21 09:47:21 +00:00
frosch c8cb096533 (svn r24402) -Fix [FS#5243]: Station properties 11 and 14 were combined incorrectly. 2012-07-15 16:17:22 +00:00
frosch 0fd41221c3 (svn r24355) -Codechange [FS#5217]: Deduplicate code when building stations. (Hirundo) 2012-06-23 15:56:17 +00:00
frosch ca10522e8d (svn r24354) -Fix: When airport construction was denied due to noise, the error message named the wrong town. 2012-06-23 15:27:15 +00:00
frosch a8c88f43b6 (svn r24284) -Codechange: Remove NewsSubtypes and directly use NewsTypes and NewsFlag instead. 2012-05-26 14:16:03 +00:00
frosch c841a78f69 (svn r24167) -Codechange: Rename NewGRFClass::GetCount() to NewGRFClass::GetClassCount() 2012-04-22 16:28:19 +00:00
frosch 0f0e7e43cf (svn r24166) -Codechange: Turn NewGRFClass::Get(Tid, uint) and GetCount(Tid) into non-static members GetSpec(uint) and GetSpecCount(). 2012-04-22 16:28:14 +00:00
frosch 6f4d2160c2 (svn r24162) -Codechange: Remove NewGRFClass::GetName() and SetName() in favour of using Get() and direct member access (which is needed anyway for GRF string resolving). 2012-04-22 16:27:55 +00:00
michi_cc aa47d6c7f2 (svn r24127) -Feature [FS#1497]: Allow closing airports for incoming aircraft. (Based on patch by cirdan) 2012-04-17 19:43:18 +00:00