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

Function prepareSaveDetails

src/OpenLoco/src/S5/S5.cpp:102–119  ·  view source on GitHub ↗

0x004471A4

Source from the content-addressed store, hash-verified

100
101 // 0x004471A4
102 static std::unique_ptr<SaveDetails> prepareSaveDetails(OpenLoco::GameState& gameState)
103 {
104 auto saveDetails = std::make_unique<SaveDetails>();
105
106 const auto& playerCompany = gameState.companies[enumValue(gameState.playerCompanies[0])];
107 StringManager::formatString(saveDetails->company, sizeof(saveDetails->company), playerCompany.name);
108 StringManager::formatString(saveDetails->owner, sizeof(saveDetails->owner), playerCompany.ownerName);
109
110 saveDetails->date = gameState.currentDay;
111 saveDetails->performanceIndex = playerCompany.performanceIndex;
112 saveDetails->challengeProgress = playerCompany.challengeProgress;
113 saveDetails->challengeFlags = playerCompany.challengeFlags;
114
115 std::strncpy(saveDetails->scenario, gameState.scenarioName, sizeof(saveDetails->scenario));
116 Scenario::drawSavePreviewImage(saveDetails->image, { 250, 200 });
117
118 return saveDetails;
119 }
120
121 /**
122 * Removes all tile elements that have the ghost flag set.

Callers 1

prepareGameStateFunction · 0.85

Calls 3

enumValueFunction · 0.85
formatStringFunction · 0.85
drawSavePreviewImageFunction · 0.85

Tested by

no test coverage detected