MCPcopy Create free account
hub / github.com/OpenLoco/OpenLoco / getAvailableDocks

Function getAvailableDocks

src/OpenLoco/src/Objects/ObjectUtils.cpp:48–71  ·  view source on GitHub ↗

0x0048D753

Source from the content-addressed store, hash-verified

46
47 // 0x0048D753
48 sfl::static_vector<uint8_t, Limits::kMaxDockObjects> getAvailableDocks()
49 {
50 sfl::static_vector<uint8_t, Limits::kMaxDockObjects> stationList;
51 auto currentYear = getCurrentYear();
52 for (uint8_t i = 0; i < Limits::kMaxDockObjects; i++)
53 {
54 auto dockObj = ObjectManager::get<DockObject>(i);
55 if (dockObj == nullptr)
56 {
57 continue;
58 }
59 if (currentYear < dockObj->designedYear)
60 {
61 continue;
62 }
63 if (currentYear > dockObj->obsoleteYear)
64 {
65 continue;
66 }
67 stationList.push_back(i);
68 }
69 std::ranges::sort(stationList);
70 return stationList;
71 }
72
73 // 0x0048D678, 0x0048D5E4
74 sfl::static_vector<uint8_t, Limits::kMaxTrainStationObjects> getAvailableCompatibleStations(uint8_t trackType, TransportMode transportMode)

Calls 2

getCurrentYearFunction · 0.85
push_backMethod · 0.80

Tested by

no test coverage detected