Arma Reforger Explorer 1.7.0.54
Arma Reforger Code Explorer by Zeroy - Thanks to MisterOutofTime
Loading...
Searching...
No Matches
SCR_EntityEnableResourceEditorAttribute.c
Go to the documentation of this file.
3{
4 [Attribute(EResourceType.SUPPLIES.ToString(), desc: "Which resource is set enabled/disabled", uiwidget: UIWidgets.SearchComboBox, enums: ParamEnumArray.FromEnum(EResourceType))]
6
7 //------------------------------------------------------------------------------------------------
8 override SCR_BaseEditorAttributeVar ReadVariable(Managed item, SCR_AttributesManagerEditorComponent manager)
9 {
11 if (!editableEntity)
12 return null;
13
14 SCR_ResourceComponent resourceComponent = SCR_ResourceComponent.Cast(SCR_EntityHelper.FindComponent(editableEntity.GetOwner(), SCR_ResourceComponent));
15 if (!resourceComponent || !resourceComponent.CanResourceTypeEnabledBeChanged(m_eResourceToSetEnabled))
16 return null;
17
18 //~ Does not use available resources
19 float availableResources;
20
21 if (!SCR_ResourceSystemHelper.GetAvailableResources(resourceComponent, availableResources))
22 return null;
23
24 return SCR_BaseEditorAttributeVar.CreateBool(resourceComponent.IsResourceTypeEnabled(m_eResourceToSetEnabled));
25 }
26
27 //------------------------------------------------------------------------------------------------
28 override void UpdateInterlinkedVariables(SCR_BaseEditorAttributeVar var, SCR_AttributesManagerEditorComponent manager, bool isInit = false)
29 {
30 if (isInit)
31 manager.SetAttributeEnabled(SCR_EntityEnableResourceEditorAttribute, SCR_ResourceSystemHelper.IsGlobalResourceTypeEnabled(m_eResourceToSetEnabled));
32 }
33
34 //------------------------------------------------------------------------------------------------
35 override void WriteVariable(Managed item, SCR_BaseEditorAttributeVar var, SCR_AttributesManagerEditorComponent manager, int playerID)
36 {
37 if (!var)
38 return;
39
41 if (!editableEntity)
42 return;
43
44 SCR_ResourceComponent resourceComponent = SCR_ResourceComponent.Cast(SCR_EntityHelper.FindComponent(editableEntity.GetOwner(), SCR_ResourceComponent));
45 if (!resourceComponent || !resourceComponent.CanResourceTypeEnabledBeChanged(m_eResourceToSetEnabled))
46 return;
47
48 //~ Does not use available resources
49 float availableResources;
50
51 if (!SCR_ResourceSystemHelper.GetAvailableResources(resourceComponent, availableResources))
52 return;
53
54 resourceComponent.SetResourceTypeEnabled(var.GetBool(), m_eResourceToSetEnabled);
55 }
56};
SCR_AIAnimation_Loitering BaseContainerProps
Commanding menu commanding element class.
UI Textures DeployMenu Briefing conflict_HintBanner_1_UI desc
Base Attribute Script for other attributes to inherent from to get and set varriables in Editor Attri...
static SCR_BaseEditorAttributeVar CreateBool(bool value)
override SCR_BaseEditorAttributeVar ReadVariable(Managed item, SCR_AttributesManagerEditorComponent manager)
override void WriteVariable(Managed item, SCR_BaseEditorAttributeVar var, SCR_AttributesManagerEditorComponent manager, int playerID)
override void UpdateInterlinkedVariables(SCR_BaseEditorAttributeVar var, SCR_AttributesManagerEditorComponent manager, bool isInit=false)
SCR_FieldOfViewSettings Attribute