Arma Reforger Explorer
1.7.0.54
Arma Reforger Code Explorer by Zeroy - Thanks to MisterOutofTime
Toggle main menu visibility
Loading...
Searching...
No Matches
SCR_ZoomManualCameraComponent.c
Go to the documentation of this file.
1
2
4
[
BaseContainerProps
(), SCR_BaseManualCameraComponentTitle()]
5
class
SCR_ZoomManualCameraComponent
:
SCR_BaseManualCameraComponent
6
{
7
protected
static
const
float
INERTIA_THRESHOLD
= 0.001;
8
9
[
Attribute
(defvalue:
"1"
, uiwidget:
UIWidgets
.Slider,
desc
:
"Minimum field of view"
,
params
:
"0 180 1"
)]
10
protected
float
m_fMinFOV
;
11
12
[
Attribute
(defvalue:
"120"
, uiwidget:
UIWidgets
.Slider,
desc
:
"Maximum field of view"
,
params
:
"0 180 1"
)]
13
protected
float
m_fMaxFOV
;
14
15
[
Attribute
(defvalue:
"0.1"
,
desc
:
"Zoom value coefficient"
)]
16
protected
float
m_fCoef
;
17
18
[
Attribute
(defvalue:
"0.08"
,
desc
:
"Indertia strength. Larger values mean more inertia."
)]
19
protected
float
m_fInertiaStrength
;
20
21
protected
float
m_fTargetFOV
;
22
protected
bool
m_bIsAnimating
;
23
protected
bool
m_bIsInstant
;
24
protected
ref
ScriptInvoker
m_OnZoomChange
=
new
ScriptInvoker
();
25
26
//------------------------------------------------------------------------------------------------
28
ScriptInvoker
GetOnZoomChange
()
29
{
30
return
m_OnZoomChange
;
31
}
32
33
//------------------------------------------------------------------------------------------------
34
override
void
EOnCameraSave
(
SCR_ManualCameraComponentSave
data
)
35
{
36
if
(
m_fTargetFOV
!= 0)
37
data
.m_aValues = {
m_fTargetFOV
};
38
}
39
40
//------------------------------------------------------------------------------------------------
41
override
void
EOnCameraLoad
(
SCR_ManualCameraComponentSave
data
)
42
{
43
m_fTargetFOV
=
data
.m_aValues[0];
44
m_bIsInstant
=
true
;
45
}
46
47
//------------------------------------------------------------------------------------------------
48
override
void
EOnCameraReset
()
49
{
50
m_fTargetFOV
=
GetCameraEntity
().
GetDefaultFOV
();
51
m_bIsAnimating
=
true
;
52
}
53
54
//------------------------------------------------------------------------------------------------
55
override
void
EOnCameraFrame
(
SCR_ManualCameraParam
param)
56
{
57
if
(!param.isManualInputEnabled)
58
return
;
59
60
if
(
GetInputManager
().GetActionValue(
"ManualCameraZoomReset"
))
61
{
62
m_fTargetFOV
=
GetCameraEntity
().
GetDefaultFOV
();
63
m_bIsAnimating
=
true
;
64
}
65
66
float
input = 0;
67
if
(
GetInputManager
().IsUsingMouseAndKeyboard() ||
GetInputManager
().GetActionValue(
"ManualCameraModifier"
))
68
input =
GetInputManager
().GetActionValue(
"ManualCameraZoom"
);
69
70
if
(input != 0)
71
{
72
m_fTargetFOV
=
Math
.Clamp(param.fov * (1 - input *
m_fCoef
),
m_fMinFOV
,
m_fMaxFOV
);
73
m_bIsAnimating
=
true
;
74
}
75
76
if
(
m_bIsInstant
)
77
{
78
m_bIsInstant
=
false
;
79
param.fov =
m_fTargetFOV
;
80
param.isDirty =
true
;
81
m_OnZoomChange
.Invoke(param.fov);
82
}
83
else
if
(
m_bIsAnimating
)
84
{
85
param.fov =
Math
.Lerp(param.fov,
m_fTargetFOV
,
Math
.Min(param.
timeSlice
/
m_fInertiaStrength
, 1));
86
param.isDirty =
true
;
87
if
(
Math
.AbsFloat(param.fov -
m_fTargetFOV
) <
INERTIA_THRESHOLD
)
88
m_bIsAnimating
=
false
;
89
90
m_OnZoomChange
.Invoke(param.fov);
91
}
92
}
93
94
//------------------------------------------------------------------------------------------------
95
override
bool
EOnCameraInit
()
96
{
97
return
true
;
98
}
99
}
BaseContainerProps
SCR_AIAnimation_Loitering BaseContainerProps
Commanding menu commanding element class.
Definition
SCR_AIAnimationWaypoint.c:14
data
Get all prefabs that have the spawner data
Definition
SCR_EntityCatalogManagerComponent.c:320
desc
UI Textures DeployMenu Briefing conflict_HintBanner_1_UI desc
Definition
SCR_RespawnBriefingComponent.c:17
params
category params
Definition
SCR_SpherePointGeneratorPreviewComponent.c:21
Math
Definition
Math.c:13
SCR_BaseManualCameraComponent
Parent class from which all SCR_ManualCamera components inherit.
Definition
SCR_BaseManualCameraComponent.c:6
SCR_BaseManualCameraComponent::GetCameraEntity
SCR_ManualCamera GetCameraEntity()
Definition
SCR_BaseManualCameraComponent.c:64
SCR_BaseManualCameraComponent::GetInputManager
InputManager GetInputManager()
Definition
SCR_BaseManualCameraComponent.c:70
SCR_ManualCameraComponentSave
Definition
SCR_ManualCameraSave.c:16
SCR_ManualCamera::GetDefaultFOV
float GetDefaultFOV()
Definition
SCR_ManualCamera.c:361
SCR_ManualCameraParam
Parameter for carrying information between individual camera components.
Definition
SCR_ManualCameraParam.c:6
SCR_ManualCameraParam::timeSlice
float timeSlice
Frame time slice.
Definition
SCR_ManualCameraParam.c:9
SCR_ZoomManualCameraComponent
Adjust camera field of view.
Definition
SCR_ZoomManualCameraComponent.c:6
SCR_ZoomManualCameraComponent::EOnCameraSave
override void EOnCameraSave(SCR_ManualCameraComponentSave data)
Definition
SCR_ZoomManualCameraComponent.c:34
SCR_ZoomManualCameraComponent::m_fMinFOV
float m_fMinFOV
Definition
SCR_ZoomManualCameraComponent.c:10
SCR_ZoomManualCameraComponent::EOnCameraInit
override bool EOnCameraInit()
Definition
SCR_ZoomManualCameraComponent.c:95
SCR_ZoomManualCameraComponent::m_fMaxFOV
float m_fMaxFOV
Definition
SCR_ZoomManualCameraComponent.c:13
SCR_ZoomManualCameraComponent::EOnCameraReset
override void EOnCameraReset()
Definition
SCR_ZoomManualCameraComponent.c:48
SCR_ZoomManualCameraComponent::EOnCameraFrame
override void EOnCameraFrame(SCR_ManualCameraParam param)
Definition
SCR_ZoomManualCameraComponent.c:55
SCR_ZoomManualCameraComponent::m_bIsAnimating
bool m_bIsAnimating
Definition
SCR_ZoomManualCameraComponent.c:22
SCR_ZoomManualCameraComponent::INERTIA_THRESHOLD
static const float INERTIA_THRESHOLD
Definition
SCR_ZoomManualCameraComponent.c:7
SCR_ZoomManualCameraComponent::GetOnZoomChange
ScriptInvoker GetOnZoomChange()
Definition
SCR_ZoomManualCameraComponent.c:28
SCR_ZoomManualCameraComponent::m_fTargetFOV
float m_fTargetFOV
Definition
SCR_ZoomManualCameraComponent.c:21
SCR_ZoomManualCameraComponent::m_fCoef
float m_fCoef
Definition
SCR_ZoomManualCameraComponent.c:16
SCR_ZoomManualCameraComponent::m_bIsInstant
bool m_bIsInstant
Definition
SCR_ZoomManualCameraComponent.c:23
SCR_ZoomManualCameraComponent::m_OnZoomChange
ref ScriptInvoker m_OnZoomChange
Definition
SCR_ZoomManualCameraComponent.c:24
SCR_ZoomManualCameraComponent::EOnCameraLoad
override void EOnCameraLoad(SCR_ManualCameraComponentSave data)
Definition
SCR_ZoomManualCameraComponent.c:41
SCR_ZoomManualCameraComponent::m_fInertiaStrength
float m_fInertiaStrength
Definition
SCR_ZoomManualCameraComponent.c:19
UIWidgets
Definition
attributes.c:40
Attribute
SCR_FieldOfViewSettings Attribute
Definition
SendGoalMessage.c:170
ScriptInvoker
ScriptInvokerBase< func > ScriptInvoker
Definition
tools.c:134
scripts
Game
Camera
Components
SCR_ZoomManualCameraComponent.c
Generated by
1.17.0