summaryrefslogtreecommitdiff
path: root/src/station.h
AgeCommit message (Collapse)Author
2007-08-30(svn r11009) -Codechange: unvirtualise IsValid as that isn't needed with ↵rubidium
templates. This gives up to 10% performance increase in games with lots of vehicles.
2007-08-26(svn r10981) -Fix [FS#1156] (r10970): stations gave ratings for accepted ↵rubidium
cargo too.
2007-08-24(svn r10974) -Fix [FS#1144, FS#1155]: road vehicles that could not ↵rubidium
(properly) use a road stop still tried to go to that road stop.
2007-08-05(svn r10799) -Fix: only calling QuickFree and not the destructor on pool ↵rubidium
cleanups might cause memory leaks due to the way C++ works.
2007-08-03(svn r10777) -Fix: don't put the ctor debug on lvl3, it is more a lvl5 debugtruelight
2007-08-02(svn r10746) -Codechange: add a generic superclass for almost all pool items ↵rubidium
so we do not have to duplicate code for each of the pool item classes and use it for the station and roadstop classes.
2007-08-01(svn r10745) -Codechange: generalize the pool cleanup/initialize functions ↵rubidium
for stations (in such a manner that they can be used for other pools too).
2007-07-16(svn r10601) -Codechange: store (and use) the type of stations instead of ↵rubidium
hardcoding station types by graphics IDs.
2007-06-22(svn r10269) -Fix [FS#912]: station ratings were shown for all cargos ↵rubidium
instead of only the cargos that have been transported.
2007-06-22(svn r10266) -Codechange: keep track of the origin, time of travel and ↵rubidium
accumulated feeder share (transfers) of individual pieces of cargo. This means that cargo isn't thrown on a big pile when it's put in a station or unloaded at a station, however the GUI does not reflect these changes yet so you will not actually see it.
2007-06-18(svn r10208) -Codechange: replace int32 with Money where appropriate.rubidium
2007-06-08(svn r10062) -Codechange: Don't redraw all station tiles when cargo is added ↵peter1138
or removed if the station has no custom graphics.
2007-05-24(svn r9908) -Codechange: prepare the station picker for more road types.rubidium
2007-04-20(svn r9683) -Fix [FS#423]: improved loading does not use a huge amount of ↵rubidium
processing power anymore when having a lot of trains.
2007-04-04(svn r9556) -Documentation: doxygen and comment-style changes. 'R', 'S'.. ↵belugas
The end of the preliminary work is near
2007-03-29(svn r9524) -Fix(FS#640,r8755): Implemented a "dummy" State Machine for ↵celestar
stations who got their airport removed while there were still aircraft within the State Machine (and thus caused asserts)
2007-03-08(svn r9070) -Fix [FS#404]: if bribe failed and you didn't pick up cargo yet, ↵truelight
you wouldn't ever be able to do so for a given station
2007-03-07(svn r9051) -Codechange: typedef [enum|struct] Y {} X; -> [enum|struct] X {};rubidium
2007-03-07(svn r9050) -Codechange: Foo(void) -> Foo()rubidium
2007-03-02(svn r8978) -Feature: Rewrite of transfer system.richk
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-02-17(svn r8780) -Fix: Spelling of CatchmentArea incorrect.richk
2007-02-17(svn r8767) -Fixtron
-Codechange: Do not hardcode the catchment radius of airports, but hold the information in AirportFTAClass -Fix (r979): The default AI tested possible airport locations with a fixed catchment radius instead of the radius of the to be built airport
2007-02-16(svn r8755) -Fixtron
Abbreviate GetAirport(st->airport_type) to st->Airport()
2007-02-14(svn r8735) -Feature: drive-through road stops made possible by the hard ↵rubidium
work of mart3p.
2007-02-13(svn r8709) -Fix/Codechange: Rename the function GetStationPlatforms into ↵celestar
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(svn r8707) -Codechange: Turn IsValidStation into a method of Stationcelestar
2007-02-13(svn r8705) -Codechange: Increased the number of airport blocks to 64. This ↵celestar
involves changing the enum of airport blocks to a static const uint64 as SOME platforms do not support 64-bit enums
2007-02-13(svn r8694) -Codechange: make RoadStop's status accessible via accessor ↵rubidium
functions.
2007-02-04(svn r8575) -Fix (8125): remove unused includerubidium
2007-02-02(svn r8536) -Fix (FS#577): Road Vehicles now can obtain a slot even if the ↵celestar
station is very spread out
2007-02-01(svn r8514) -Codechange: Turn IsBuoy into a method of stationscelestar
2007-01-31(svn r8485) -Fixtron
-Fix (since the dawn of time): Remove phantom oil rigs sometimes present in old savegames
2007-01-31(svn r8477) -Fixtron
-Codechange: Remove the unnecessary attributes Station::{bus,lorry}_tile_obsolete by replacing them with a scan of the map for existing road stops when loading old savegames
2007-01-31(svn r8476) -Fixtron
Remove the unused remnants of {bus,truck}_stop_status_obsolete (though I wonder a bit why this information doesn't get converted on load *shrug*)
2007-01-31(svn r8475) -Fixtron
Remove the unused remnants of blocked_months_obsolete
2007-01-31(svn r8474) -Fixtron
Turn GetPrimaryRoadStop() into a method of struct Station
2007-01-28(svn r8449) -Fixtron
-Codechange: Remove the superfluous attribute RoadStop::prev
2007-01-25(svn r8403) -Fix (r8402): Forgot to remove an enumcelestar
2007-01-25(svn r8402) -Codechange: Move RoadStop-specific enums to the RoadStop class, ↵celestar
and changed a one-member enum into a static const. Simplify their naming and add some doxygen-comments to RoadStop
2007-01-25(svn r8401) -Codechange: Make 'IsValidRoadStop' a method of RoadStop and ↵celestar
rename it to 'IsValid' -Codechange: While I'm at it, put 'RoadStop::AllocateRaw' into the protected section
2007-01-18(svn r8231) -Fix (r8125): MP desync caused by calling Random() from station ↵KUDr
constructor. This was wrong because station constructor is called also when loading savegame and when player tries to build station when it is not sure that it will succeed (thanks Rubidium)
2007-01-17(svn r8212) -Fixtron
Remove the unnecessary attribute RoadStop::used. The same information can be derived from RoadStop::xy
2007-01-17(svn r8207) -Fixtron
Remove the write-only attribute RoadStop::station
2007-01-17(svn r8203) -Fix:tron
Use initialisers, reduce variable scope, remove spurious whitespace, fix format string to make it readable
2007-01-17(svn r8185) -Codechange: Equipped Roadstops with new/delete operators and ↵celestar
gave them proper constructors/destructors (Thanks to KUDr for a nice interactive C++ lesson)
2007-01-15(svn r8144) -Fix: [FS#163] When a station is removed, vehicles do not get ↵celestar
excessive payment any longer, as the origin TILE is now stored as long as the origin STATION for the transported cargos. Basically this is only a temporary fix until cargopackets are implemented, but it fixes one of the oldest known bugs (Special Thanks to Darkvater for lots of testing)
2007-01-14(svn r8136) -Codechange: Station spread rectangle manipulators turned into ↵KUDr
StationRect::methods.
2007-01-14(svn r8130) Provide struct GoodsEntry with a constructortron
2007-01-14(svn r8125) -Codechange: Station is now constructed/destroyed using ↵KUDr
new/delete operators (don't worry, they still use the same memory pool). Few station related functions turned into Station::methods (just first step). All this new stuff moved from station_cmd.cpp to the new file (station.cpp).
2007-01-11(svn r8055) -Codechange: Replace the different max, dmax, maxu whatever ↵celestar
macros by a simple template function max(), that requires two arguments of the same type. While I'm at it change a variable called "max" to "maxval" in a function that calls max().