Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ Update()

void Terraria.Graphics.CameraModifiers.PunchCameraModifier.Update ( ref CameraInfo cameraInfo)
inline

Implements Terraria.Graphics.CameraModifiers.ICameraModifier.

Definition at line 37 of file PunchCameraModifier.cs.

38 {
39 float num = (float)Math.Cos((float)_framesLasted / 60f * _vibrationCyclesPerSecond * ((float)Math.PI * 2f));
40 float num2 = Utils.Remap(_framesLasted, 0f, _framesToLast, 1f, 0f);
41 float num3 = Utils.Remap(Vector2.Distance(_startPosition, cameraInfo.OriginalCameraCenter), 0f, _distanceFalloff, 1f, 0f);
42 if (_distanceFalloff == -1f)
43 {
44 num3 = 1f;
45 }
46 cameraInfo.CameraPosition += _direction * num * _strength * num2 * num3;
49 {
50 Finished = true;
51 }
52 }
static double Cos(double d)
const double PI
Definition Math.cs:16
static float Distance(Vector2 value1, Vector2 value2)
Definition Vector2.cs:91

References Terraria.Graphics.CameraModifiers.PunchCameraModifier._direction, Terraria.Graphics.CameraModifiers.PunchCameraModifier._distanceFalloff, Terraria.Graphics.CameraModifiers.PunchCameraModifier._framesLasted, Terraria.Graphics.CameraModifiers.PunchCameraModifier._framesToLast, Terraria.Graphics.CameraModifiers.PunchCameraModifier._startPosition, Terraria.Graphics.CameraModifiers.PunchCameraModifier._strength, Terraria.Graphics.CameraModifiers.PunchCameraModifier._vibrationCyclesPerSecond, System.Math.Cos(), Microsoft.Xna.Framework.Vector2.Distance(), Terraria.Graphics.CameraModifiers.PunchCameraModifier.Finished, System.Math.PI, and Terraria.Utils.Remap().