Arma Reforger Explorer 1.7.0.54
Arma Reforger Code Explorer by Zeroy - Thanks to MisterOutofTime
Loading...
Searching...
No Matches
SCR_CharacterIdentityTooltipDetail.c
Go to the documentation of this file.
3{
4 [Attribute(defvalue: "0.5 0.5 0.5 1", desc: "Color of Text.")]
5 protected ref Color m_TextColor;
6
7 [Attribute("0", UIWidgets.SearchComboBox, "Identity type Displayed", "", ParamEnumArray.FromEnum(SCR_EIdentityTooltipType))]
8 protected SCR_EIdentityTooltipType m_eDisplayType;
9
10 //------------------------------------------------------------------------------------------------
11 override bool CreateDetail(SCR_EditableEntityComponent entity, Widget parent, TextWidget label, bool setFrameslot = true)
12 {
13 if (label)
14 label.SetColor(m_TextColor);
15
16 return super.CreateDetail(entity, parent, label, setFrameslot);
17 }
18
19 //------------------------------------------------------------------------------------------------
20 override bool InitDetail(SCR_EditableEntityComponent entity, Widget widget)
21 {
22 TextWidget text = TextWidget.Cast(widget);
23 if (!text)
24 return false;
25
26 //~ Check if allowed to show bio
27 BaseContainer editorSettings = GetGame().GetGameUserSettings().GetModule("SCR_EditorSettings");
28 bool showBioTooltip = true;
29
30 if (editorSettings)
31 editorSettings.Get("m_bShowIdentityBioTooltip", showBioTooltip);
32
33 if (!showBioTooltip)
34 return false;
35
36 text.SetColor(m_TextColor);
37
39 if (!charIdentityManager)
40 return false;
41
42 if (m_eDisplayType == SCR_EIdentityTooltipType.NAME)
43 {
44 //~ It never shows full name only player name so no need to show it in GM either
45 if (charIdentityManager.ShowPlayerNameOnIdentityItem() && entity.GetPlayerID() > 0)
46 return false;
47
48 SCR_CharacterIdentityComponent charIdentityComponent = SCR_CharacterIdentityComponent.Cast(entity.GetOwner().FindComponent(CharacterIdentityComponent));
49 if (!charIdentityComponent)
50 return false;
51
52 string format, fistName, alias, surName;
53 charIdentityComponent.GetFormattedFullName(format, fistName, alias, surName);
54
55 text.SetTextFormat(format, fistName, alias, surName);
56 return true;
57 }
58
59 SCR_UIInfo uiInfo;
61 if (!charIdentityComponent)
62 return false;
63
64 SCR_ExtendedCharacterIdentity extendedIdentity = SCR_ExtendedCharacterIdentity.Cast(charIdentityComponent.GetExtendedIdentity());
65 if (!extendedIdentity)
66 return false;
67
68 switch (m_eDisplayType)
69 {
70 case SCR_EIdentityTooltipType.BLOODTYPE:
71 {
72 uiInfo = charIdentityManager.GetBloodTypeUIInfo(extendedIdentity.GetBloodType());
73 if (!uiInfo)
74 return false;
75
76 uiInfo.SetNameTo(text);
77 return true;
78 }
79 }
80 return false;
81 }
82}
83
84enum SCR_EIdentityTooltipType
85{
86 NAME,
88}
ArmaReforgerScripted GetGame()
Definition game.c:1398
SCR_AIAnimation_Loitering BaseContainerProps
Commanding menu commanding element class.
SCR_CharacterIdentityTooltipDetail NAME
Ordered by Group name.
SCR_CharacterIdentityTooltipDetail BLOODTYPE
class SCR_KeyBindingFilter BaseContainerCustomTitleField("m_sBindString")
UI Textures DeployMenu Briefing conflict_HintBanner_1_UI desc
Definition Color.c:13
override bool InitDetail(SCR_EditableEntityComponent entity, Widget widget)
override bool CreateDetail(SCR_EditableEntityComponent entity, Widget parent, TextWidget label, bool setFrameslot=true)
SCR_UIInfo GetBloodTypeUIInfo(SCR_EBloodType bloodType)
static SCR_IdentityManagerComponent GetInstance()
SCR_FieldOfViewSettings Attribute