36 m_iBoneIndex = pPlayer.GetBoneIndexByName(
"RightHand_Dummy");
40 Print(
"DayZPlayerCamera1stPerson: main bone not found");
89 super.OnActivate(pPrevCamera, pPrevCameraResult);
93 vector baseAngles = pPrevCamera.GetBaseAngles();
97 vector addAngles = pPrevCamera.GetAdditiveAngles();
184 hia.WeaponGetAimingModelDirTm(aimingMatTM);
223 pOutResult.m_iDirectBoneMode = 4;
227 pOutResult.m_bUpdateWhenBlendOut =
false;
228 pOutResult.m_fDistance = 0;
229 pOutResult.m_fUseHeading = 0;
230 pOutResult.m_fInsideCamera = 1.0;
233 pOutResult.m_fNearPlane = 0.04;
281 temp_array = {
false, 0.0, 0.0, 0.0, 0.0, 1.0};
294 temp_array = {
false, 0.0, 0.0, 0.0, 0.0, 1.0};
317 return "DayZPlayerCameraIronsights";
322 if (pPrevCamera.GetCameraName() ==
"DayZPlayerCamera1stPerson")
327 else if (pPrevCamera.GetCameraName() ==
"DayZPlayerCameraOptics")
402 super.OnActivate(pPrevCamera,pPrevCameraResult);
414 pOutResult.m_iDirectBoneMode = 4;
418 pOutResult.m_bUpdateWhenBlendOut =
false;
419 pOutResult.m_fDistance = 0;
420 pOutResult.m_fUseHeading = 0;
421 pOutResult.m_fInsideCamera = 1.0;
444 else if (m_isEntering)
447 m_isEntering =
false;
474 m_RequesterADS.Stop();
495 temp_array = {
false, 0.0, 0.0, 0.0, 0.0, 1.0};
511 if (temp_array.Count() != 6)
512 temp_array = {
false, 0.0, 0.0, 0.0, 0.0, 1.0};
515 m_RequesterADS.SetValuesIronsights(temp_array);
555 m_RequesterADS.SetValuesOptics(mask_values,lens_values,gauss);
578 return "DayZPlayerCameraOptics";
583 if (pPrevCamera.GetCameraName() ==
"DayZPlayerCameraIronsights")
587 else if (pPrevCamera.GetCameraName() ==
"DayZPlayerCamera1stPerson")
591 else if (!pPrevCamera.IsCamera3rdRaised())
int m_iBoneIndex
main bone
static const float CONST_UD_MAX
up limit
static const float CONST_UD_MIN
down limit
float UpdateLRAngleUnlocked(out float pAngle, out float pAngleAdd, float pMin, float pMax, float pDt)
ref CameraShake m_CameraShake
float m_CurrentCameraPitch
float UpdateUDAngleUnlocked(out float pAngle, out float pAngleAdd, float pMin, float pMax, float pDt)
void SetNVPostprocess(int NVtype)
DayZPlayerCameraOptics handles this separately, otherwise it takes active NVType from PlayerBase::Get...
void SetCameraPP(bool state, DayZPlayerCamera launchedFrom)
by default sets camera PP to zero, regardless of parameter. Override if needed.
void SetCameraNV(bool nightvision)
float m_WeaponSwayModifier
void UpdateCameraNV(PlayerBase player)
void SetCameraPPDelay(DayZPlayerCamera pPrevCamera)
void DayZPlayerCameraOptics(DayZPlayer pPlayer, HumanInputController pInput)
override bool GetCurrentSightInfo(out vector camPos, out vector camDir)
override float HoldBreathFOVEffect(float pDt)
override EntityAI GetCurrentSightEntity()
override void Init()
Launched from 'DayZGame.DeferredInit' to make earlier access, use, and updates impossible (downside o...
override void AdjustCameraParameters(float pDt, inout DayZPlayerCameraResult pOutResult)
class DayZPlayerCameraIronsights extends DayZPlayerCameraBase CONST_NEARPLANE_OPTICS
override ScriptCallQueue GetCallQueue(int call_category)
Super root of all classes in Enforce script.
EntityAI GetCurrentSightEntity()
void SetupSightEntities()
float m_movementFrequencyY
float m_fLeftRightAngleAdd
left right angle in rad (in freelook only)
override void SetCameraPP(bool state, DayZPlayerCamera launchedFrom)
override void SetCameraPPDelay(DayZPlayerCamera pPrevCamera)
float m_movementFrequencyX
override vector GetAdditiveAngles()
float m_dynamicsSmoothTime
float m_movementAmplitudeY
ref array< float > temp_array
float m_fShootFromCamera
settings
static const float CONST_UD_MIN_BACK
down limit on back
PPERequester_CameraADS m_RequesterADS
override vector GetBaseAngles()
float m_movementAmplitudeX
override void OnActivate(DayZPlayerCamera pPrevCamera, DayZPlayerCameraResult pPrevCameraResult)
override string GetCameraName()
int m_iBoneIndex
main bone
void AdjustCameraParameters(float pDt, inout DayZPlayerCameraResult pOutResult)
static const float CONST_LR_MIN
down limit
vector m_SightMisalignmentModifier
static const float CONST_UD_MAX
up limit
bool GetCurrentSightInfo(out vector camPos, out vector camDir)
static const float CONST_UD_MIN
down limit
float m_velocityYaw[1]
camera dynamics
void DayZPlayerCameraIronsights(DayZPlayer pPlayer, HumanInputController pInput)
override void OnUpdate(float pDt, out DayZPlayerCameraResult pOutResult)
float m_fUpDownAngleAdd
up down angle in rad
float m_fLeftRightAngle
left right angle in rad (in freelook only)
bool m_opticsHasWeaponOverride
float HoldBreathFOVEffect(float pDt)
static const float CONST_LR_MAX
up limit
void UpdateBatteryOptics(EntityAI entity)
float m_fUpDownAngle
up down angle in rad
this is main camera class
static const float TIME_CAMERACHANGE_03
static const float TIME_CAMERACHANGE_02
static const float TIME_CAMERACHANGE_01
for two handed items
proto native float GetCurrentMovementSpeed()
0,1,2..3 idle, walk, run, sprint
void UpdateOpticsReddotVisibility()
proto native float GetCurrentStepFOV()
returns fov value at current index, or 'OpticsInfo.opticsZoomInit' config value (non-zooming optics)
proto void CallLater(func fn, int delay=0, bool repeat=false, void param1=NULL, void param2=NULL, void param3=NULL, void param4=NULL, void param5=NULL, void param6=NULL, void param7=NULL, void param8=NULL, void param9=NULL)
adds call into the queue with given parameters and arguments (arguments are held in memory until the ...
Result for an object found in CGame.IsBoxCollidingGeometryProxy.
DayZPlayerConstants
defined in C++
void SendRecoilOffsetZ(float offset)
m_fCamPosOffsetZ info, used to adjust near plane in DayZPlayerCameraIronsights now
HumanInputController m_pInput
human input
float m_fShootFromCamera
1(default) - uses shoot from camera (+aiming sway), 0 pure weapon shoot (ironsights == 0)
class DayZPlayerCameraResult DayZPlayerCamera(DayZPlayer pPlayer, HumanInputController pInput)
float m_fFovAbsolute
fov absolute value override - -1.0 default, if set - overrides absolute fov setting
proto native CGame GetGame()
proto void Print(void var)
Prints content of variable to console/log.
const float DZPLAYER_CAMERA_FOV_EYEZOOM
FOV (vertical angle/2) in radians. Take care to modify also in "basicDefines.hpp".
const float DZPLAYER_CAMERA_FOV_IRONSIGHTS
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.
static proto void MatrixMultiply4(vector mat0[4], vector mat1[4], out vector res[4])
Transforms matrix.
static proto void YawPitchRollMatrix(vector ang, out vector mat[3])
Creates rotation matrix from angles.
static proto float Clamp(float value, float min, float max)
Clamps 'value' to 'min' if it is lower than 'min', or to 'max' if it is higher than 'max'.
static proto float Sin(float angle)
Returns sinus of angle in radians.
static const float RAD2DEG
static proto float SmoothCD(float val, float target, inout float velocity[], float smoothTime, float maxVelocity, float dt)
Does the CD smoothing function - easy in | easy out / S shaped smoothing.