Arma Reforger Explorer 1.7.0.54
Arma Reforger Code Explorer by Zeroy - Thanks to MisterOutofTime
Loading...
Searching...
No Matches
SCR_CurrentTaskUIComponent.c
Go to the documentation of this file.
2{
3 [Attribute("#AR-Tasks_NoAssignedTaskTitle")]
4 protected string m_sNoAssignedTaskTitle;
5
6 [Attribute("#AR-Tasks_NoAssignedTaskDescription")]
8
10
11 //------------------------------------------------------------------------------------------------
12 override void HandlerAttached(Widget w)
13 {
14 super.HandlerAttached(w);
15
16 m_Widgets.Init(w);
17 }
18
19 //------------------------------------------------------------------------------------------------
21 {
23 SCR_Faction faction = SCR_Faction.Cast(SCR_FactionManager.SGetPlayerFaction(playerID));
24 if (!faction)
25 return;
26
27 if (!task)
28 {
29 Color color = faction.GetOutlineFactionColor();
30 if (color)
31 {
32 m_Widgets.m_wTaskIconSymbol.SetColor(color);
33 m_Widgets.m_wTaskIconOutline.SetColor(color);
34 }
35
36 m_Widgets.m_wTaskTitle.SetText(m_sNoAssignedTaskTitle);
37 m_Widgets.m_wTaskDescription.SetText(m_sNoAssignedTaskDescription);
38
39 return;
40 }
41
42 SCR_TaskSystem taskSystem = SCR_TaskSystem.GetInstance();
43 if (!taskSystem)
44 return;
45
46 // Handle progression bar
47 if (taskSystem.CanProgressBeShownForTask(task))
48 {
49 float progress = taskSystem.GetTaskProgress(task);
50 m_Widgets.m_wProgressBar.SetVisible(true);
51 m_Widgets.m_ProgressBarComponent.SetValue(progress);
52 }
53
54 SCR_TaskUIInfo info = task.GetTaskUIInfo();
55 if (!info)
56 return;
57
58 info.SetNameTo(m_Widgets.m_wTaskTitle);
59 info.SetDescriptionTo(m_Widgets.m_wTaskDescription);
60 info.SetIconTo(m_Widgets.m_wTaskIconSymbol);
61
62 Color color = faction.GetOutlineFactionColor();
63 if (color)
64 {
65 m_Widgets.m_wTaskIcon.SetColor(color);
66 m_Widgets.m_wTaskIconOutline.SetColor(color);
67 }
68
69 SCR_TaskExecutor executor = SCR_TaskExecutor.FromPlayerID(playerID);
70 if (!executor)
71 return;
72
73 // Check if current controlled Entity is assigned to the task
74 if (task.IsTaskAssignedTo(executor))
75 {
76 Color factionColor = faction.GetFactionColor();
77 if (factionColor)
78 m_Widgets.m_wTaskIconBackground.SetColor(factionColor);
79 }
80 }
81}
void SCR_FactionManager(IEntitySource src, IEntity parent)
void SCR_Task(IEntitySource src, IEntity parent)
Definition SCR_Task.c:1938
Definition Color.c:13
ref SCR_CurrentTaskWidgets m_Widgets
override void HandlerAttached(Widget w)
Color GetOutlineFactionColor()
static int GetLocalPlayerId()
Returns either a valid ID of local player or 0.
override bool SetDescriptionTo(TextWidget textWidget)
override bool SetNameTo(TextWidget textWidget)
SCR_FieldOfViewSettings Attribute