MCPcopy Create free account
hub / github.com/OpenStarbound/OpenStarbound / TitleScreen

Method TitleScreen

source/frontend/StarTitleScreen.cpp:25–54  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

23namespace Star {
24
25TitleScreen::TitleScreen(PlayerStoragePtr playerStorage, MixerPtr mixer, UniverseClientPtr client)
26 : m_playerStorage(playerStorage), m_skipMultiPlayerConnection(false), m_mixer(mixer) {
27 m_titleState = TitleState::Quit;
28
29 auto assets = Root::singleton().assets();
30
31 m_guiContext = GuiContext::singletonPtr();
32
33 m_celestialDatabase = make_shared<CelestialMasterDatabase>();
34 auto randomWorld = m_celestialDatabase->findRandomWorld(10, 50, [this](CelestialCoordinate const& coordinate) {
35 return is<TerrestrialWorldParameters>(m_celestialDatabase->parameters(coordinate)->visitableParameters());
36 }).take();
37
38 if (auto name = m_celestialDatabase->name(randomWorld))
39 Logger::info("Title world is {} @ CelestialWorld:{}", Text::stripEscapeCodes(*name), randomWorld);
40
41 SkyParameters skyParameters(randomWorld, m_celestialDatabase);
42 m_skyBackdrop = make_shared<Sky>(skyParameters, true);
43
44 m_musicTrack = make_shared<AmbientNoisesDescription>(assets->json("/interface/windowconfig/title.config:music").toObject(), "/");
45
46 initMainMenu();
47 initCharSelectionMenu();
48 initCharCreationMenu();
49 initMultiPlayerMenu();
50 initOptionsMenu(client);
51 initModsMenu();
52
53 resetState();
54}
55
56void TitleScreen::renderInit(RendererPtr renderer) {
57 m_renderer = std::move(renderer);

Callers

nothing calls this directly

Calls 10

singletonClass · 0.85
stripEscapeCodesFunction · 0.85
assetsMethod · 0.80
findRandomWorldMethod · 0.80
visitableParametersMethod · 0.80
toObjectMethod · 0.80
jsonMethod · 0.80
takeMethod · 0.45
parametersMethod · 0.45
nameMethod · 0.45

Tested by

no test coverage detected