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

Method AiInterface

source/frontend/StarAiInterface.cpp:37–99  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

35namespace Star {
36
37AiInterface::AiInterface(UniverseClientPtr client, CinematicPtr cinematic, MainInterfacePaneManager* paneManager) {
38 m_client = client;
39 m_cinematic = cinematic;
40 m_paneManager = paneManager;
41
42 m_textLength = 0.0;
43 m_textMaxLength = 0.0;
44
45 m_aiDatabase = Root::singleton().aiDatabase();
46 auto assets = Root::singleton().assets();
47
48 GuiReader reader;
49 reader.registerCallback("close", bind(mem_fn(&AiInterface::dismiss), this));
50 reader.registerCallback("missionItemList", bind(mem_fn(&AiInterface::selectMission), this));
51 reader.registerCallback("startMission", bind(mem_fn(&AiInterface::startMission), this));
52 reader.registerCallback("crewItemList", bind(mem_fn(&AiInterface::selectRecruit), this));
53 reader.registerCallback("dismissRecruit", bind(mem_fn(&AiInterface::dismissRecruit), this));
54 reader.registerCallback("showMissions", bind(mem_fn(&AiInterface::showMissions), this));
55 reader.registerCallback("showCrew", bind(mem_fn(&AiInterface::showCrew), this));
56 reader.registerCallback("goBack", bind(mem_fn(&AiInterface::goBack), this));
57
58 reader.construct(assets->json("/interface/ai/ai.config:guiConfig"), this);
59
60 m_mainStack = fetchChild<StackWidget>("mainStack");
61 m_missionStack = findChild<StackWidget>("missionStack");
62 m_crewStack = findChild<StackWidget>("crewStack");
63
64 m_breadcrumbLeftPadding = assets->json("/interface/ai/ai.config:breadcrumbLeftPadding").toInt();
65 m_breadcrumbRightPadding = assets->json("/interface/ai/ai.config:breadcrumbRightPadding").toInt();
66 m_homeBreadcrumbBackground = fetchChild<ImageStretchWidget>("homeBreadcrumbBg");
67 m_pageBreadcrumbBackground = fetchChild<ImageStretchWidget>("pageBreadcrumbBg");
68 m_itemBreadcrumbBackground = fetchChild<ImageStretchWidget>("itemBreadcrumbBg");
69
70 m_homeBreadcrumbWidget = fetchChild<LabelWidget>("homeBreadcrumb");
71 m_pageBreadcrumbWidget = fetchChild<LabelWidget>("pageBreadcrumb");
72 m_itemBreadcrumbWidget = fetchChild<LabelWidget>("itemBreadcrumb");
73
74 m_aiFaceCanvasWidget = findChild<CanvasWidget>("aiFaceCanvas");
75 m_missionListWidget = findChild<ListWidget>("missionItemList");
76 m_crewListWidget = findChild<ListWidget>("crewItemList");
77
78 m_showMissionsButton = findChild<ButtonWidget>("showMissions");
79 m_showCrewButton = findChild<ButtonWidget>("showCrew");
80 m_backButton = findChild<ButtonWidget>("backButton");
81
82 m_missionNameLabel = findChild<LabelWidget>("missionName");
83 m_missionIcon = findChild<ImageWidget>("missionIcon");
84 m_startMissionButton = findChild<ButtonWidget>("startMission");
85
86 m_recruitNameLabel = findChild<LabelWidget>("recruitName");
87 m_recruitIcon = findChild<ImageWidget>("recruitIcon");
88 m_dismissRecruitButton = findChild<ButtonWidget>("dismissRecruit");
89
90 m_species = m_client->mainPlayer()->species();
91 m_staticAnimation = m_aiDatabase->staticAnimation(m_species);
92 m_scanlineAnimation = m_aiDatabase->scanlineAnimation();
93
94 m_missionBreadcrumbText = assets->json("/interface/ai/ai.config:missionBreadcrumbText").toString();

Callers

nothing calls this directly

Calls 12

singletonClass · 0.85
aiDatabaseMethod · 0.80
assetsMethod · 0.80
jsonMethod · 0.80
toIntMethod · 0.80
mainPlayerMethod · 0.80
staticAnimationMethod · 0.80
scanlineAnimationMethod · 0.80
registerCallbackMethod · 0.45
constructMethod · 0.45
speciesMethod · 0.45
toStringMethod · 0.45

Tested by

no test coverage detected