private void Update() { if (works && !isDead) { wiggleBlend = Mathf.MoveTowards(wiggleBlend, 1f, Time.deltaTime); Vector2 pos2d = wiggle.GetPosition() * wiggleBlend; spriteTransform.localPosition = pos2d; } }
void FixedUpdate() { float lerpAmount = Time.fixedDeltaTime / T; Vector3 fromPos = transform.position; Vector3 toPos = player.transform.position; float percentage = 95; if (ScreenCalculations.IsNearScreenBoundry(cursorObj.transform.position, percentage)) { float amount = 1 - ( ScreenCalculations.DistanceToNearestScreenBoundry(cursorObj.transform.position) / ((ScreenCalculations.GetScreenSizeFromNearestToTheOtherSide(cursorObj.transform.position)) * (1 - (percentage / 100))) ); amount = Mathf.Clamp(amount, 0, 1); toPos = Vector3.Lerp(player.transform.position, cursorObj.transform.position, amount * cursorFollowStrength); } centralPosition = Vector3.Lerp(fromPos, toPos, lerpAmount); Vector3 cameraOffset = myWiggle.GetPosition(shakeCurve); transform.position = new Vector3(centralPosition.x + cameraOffset.x, centralPosition.y + cameraOffset.y, transform.position.z); //Debug.Log(ScreenCalculations.GetScreenSizeFromNearestToTheOtherSide(cursorObj.transform.position)); }