Arma Reforger Script API
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | List of all members
SightsComponent Interface Reference
Inheritance diagram for SightsComponent:
[legend]

Public Member Functions

void ApplyRecoilToCamera (inout vector pOutCameraTransform[4], vector aimModAngles)
 Applies the given recoil angles to the camera transform according to the type of sight By default this method is empty.
 
bool CanFreelook ()
 
bool GetDOFRelatedPrefabData (out int opticDOFDistanceScale=-1, out bool forceSimpleDOF=false)
 Used by SCR_DepthOfFieldEffect to scale the DOF based on each particular ironsight-distance.
 
- Public Member Functions inherited from BaseSightsComponent
proto external IEntity GetOwner ()
 
proto external void ForceSightsZeroValue (vector offset, vector angles, vector turnOffset)
 Allow to override Zeroing via aim modifier (only works in Workbench)
 
proto external void ForceSightsZeroValueEnablel (bool bOnOff)
 Disable forced zeroing data.
 
proto external bool IsSightADSActive ()
 
proto external float GetADSActivationPercentage ()
 
proto external float GetADSDeactivationPercentage ()
 
proto external bool AreSightsValid (bool front=true, bool rear=true)
 
proto external vector GetSightsRearPosition (bool localSpace=false)
 Returns additional sights position used for calculating zeroing A vector is calculated from start position to end position and used as direction for calculating zeroing offsets Start position should be the one closer to eye position than end position.
 
proto external vector GetSightsFrontPosition (bool localSpace=false)
 Returns additional sights position used for calculating zeroing A vector is calculated from start position to end position and used as direction for calculating zeroing offsets End position should be the one further from eye position than start position.
 
proto external vector GetSightsDirection (bool localSpace=false, bool normalize=true)
 Returns a direction vector from the rear sight position to the front sight position A vector is calculated from the rear sight to the front sight in such a way that GetSightsRearPosition() + GetSightsDirection() == GetSightsFrontPosition()
 
proto external vector GetSightsDirectionUntransformed (bool localSpace=false, bool normalize=true)
 Like GetSightsDirection, but ignores and bones associated with the sight points.
 
proto external vector GetSightsOffset ()
 Returns the local sights reference point offset.
 
proto external bool GetSightsTransform (out vector transform[4], bool localSpace=false)
 Returns the transform matrix of the local sights.
 
proto external float GetFOV ()
 Returns current value of field of view.
 
proto external vector GetCurrentSightsRange ()
 Returns current range info value where x: animation value y: distance z: unused.
 
proto external SightsFOVInfo GetFOVInfo ()
 Returns currently selected sights FOV info or null if none.
 
proto external float GetCameraRecoilAmount ()
 Percentage 0...1 of recoil that should be applied to camera when using this sights component.
 
proto external bool GetSightsPriority ()
 Boolean indicating whether this sight component is prioritized.
 
proto external bool GetSightsSkipSwitch ()
 Return true if the sights can be switched to.
 
proto external void SetSightsVisibility (float visFactor)
 Hide parts of the sight on ADS. 0 means completely visible, 1 means completely hidden.
 
proto external PointInfo GetPositionPointInfo ()
 
proto external PointInfo GetRearPositionPointInfo ()
 
proto external PointInfo GetFrontPositionPointInfo ()
 
- Public Member Functions inherited from GameComponent
bool OnTicksOnRemoteProxy ()
 

Static Public Member Functions

static ZeroingGeneratedData CalculateDataWithParent (BaseSightsComponent sights, IEntity owner, IEntity parent, float desiredAngle)
 Takes front sights position as the anchor around which it rotates both the owner and the parent under desiredAngle (or rather negative desired angle, as we are pivoting around our target) and calculates new transformation that needs to be applied to reach desired angle.
 

Static Public Attributes

const string EYE_BONE = "eye"
 

Protected Member Functions

override bool WB_GetZeroingData (IEntity owner, BaseSightsComponent sights, float weaponAngle, out vector offset, out vector angles)
 Positive weapon angle tilts weapon upwards (muzzle goes up, stock goes down) Negative weapon angle tilts weapon downwards (muzzle goes down, stock goes up) Called from GameCode, do not remove!
 
bool FindParent (IEntity owner, string eyeBoneName, out IEntity parentWeapon, out int boneIndex)
 
bool WB_GetZeroingData (IEntity owner, BaseSightsComponent sights, float weaponAngle, out vector offset, out vector angles)
 Positive weapon angle tilts weapon upwards (muzzle goes up, stock goes down) Negative weapon angle tilts weapon downwards (muzzle goes down, stock goes up) Called from GameCode, do not remove!
 

Member Function Documentation

◆ ApplyRecoilToCamera()

void SightsComponent.ApplyRecoilToCamera ( inout vector  pOutCameraTransform[4],
vector  aimModAngles 
)

Applies the given recoil angles to the camera transform according to the type of sight By default this method is empty.

It should be overridden by each sight to make the appropriate adjustments

Implemented in SCR_2DPIPSightsComponent, and SCR_2DSightsComponent.

◆ CalculateDataWithParent()

static ZeroingGeneratedData SightsComponent.CalculateDataWithParent ( BaseSightsComponent  sights,
IEntity  owner,
IEntity  parent,
float  desiredAngle 
)
static

Takes front sights position as the anchor around which it rotates both the owner and the parent under desiredAngle (or rather negative desired angle, as we are pivoting around our target) and calculates new transformation that needs to be applied to reach desired angle.

Store original data prior to modification

Re:zero weapon and attachment

Get desired pivot point in WS

Rotate parent around pivot point

Apply new transformation

◆ CanFreelook()

bool SightsComponent.CanFreelook ( )

◆ FindParent()

bool SightsComponent.FindParent ( IEntity  owner,
string  eyeBoneName,
out IEntity  parentWeapon,
out int  boneIndex 
)
protected

◆ GetDOFRelatedPrefabData()

bool SightsComponent.GetDOFRelatedPrefabData ( out int  opticDOFDistanceScale = -1,
out bool  forceSimpleDOF = false 
)

Used by SCR_DepthOfFieldEffect to scale the DOF based on each particular ironsight-distance.

◆ WB_GetZeroingData()

override bool SightsComponent.WB_GetZeroingData ( IEntity  owner,
BaseSightsComponent  sights,
float  weaponAngle,
out vector  offset,
out vector  angles 
)
protected

Positive weapon angle tilts weapon upwards (muzzle goes up, stock goes down) Negative weapon angle tilts weapon downwards (muzzle goes down, stock goes up) Called from GameCode, do not remove!

Implements BaseSightsComponent.

Member Data Documentation

◆ EYE_BONE

const string SightsComponent.EYE_BONE = "eye"
static

The documentation for this interface was generated from the following file: