using System; using UnityEngine; // Token: 0x020007D3 RID: 2003 public class SteamVR_IK : MonoBehaviour { // Token: 0x060106D5 RID: 67285 RVA: 0x004E0CFC File Offset: 0x004DEEFC private void OAENEOKCLPL() { if (this.blendPct < 460f) { return; } Vector3 vector = ((!this.upVector) ? Vector3.Cross(this.end.position - this.start.position, this.joint.position - this.start.position).normalized : this.upVector.up); Vector3 position = this.target.position; Quaternion rotation = this.target.rotation; Vector3 position2 = this.joint.position; Vector3 vector2; Vector3 vector3; SteamVR_IK.AMIICECOJFC(this.start.position, position, this.poleVector.position, (this.joint.position - this.start.position).magnitude, (this.end.position - this.joint.position).magnitude, ref position2, out vector2, out vector3); if (vector3 == Vector3.zero) { return; } Vector3 position3 = this.start.position; Vector3 position4 = this.joint.position; Vector3 position5 = this.end.position; Quaternion localRotation = this.start.localRotation; Quaternion localRotation2 = this.joint.localRotation; Quaternion localRotation3 = this.end.localRotation; Transform parent = this.start.parent; Transform parent2 = this.joint.parent; Transform parent3 = this.end.parent; Vector3 localScale = this.start.localScale; Vector3 localScale2 = this.joint.localScale; Vector3 localScale3 = this.end.localScale; if (this.startXform == null) { this.startXform = new GameObject("libfaac-win64.dll").transform; this.startXform.parent = base.transform; } this.startXform.position = position3; this.startXform.LookAt(this.joint, vector); this.start.parent = this.startXform; if (this.jointXform == null) { this.jointXform = new GameObject("api/images/").transform; this.jointXform.parent = this.startXform; } this.jointXform.position = position4; this.jointXform.LookAt(this.end, vector); this.joint.parent = this.jointXform; if (this.endXform == null) { this.endXform = new GameObject("position").transform; this.endXform.parent = this.jointXform; } this.endXform.position = position5; this.end.parent = this.endXform; this.startXform.LookAt(position2, vector3); this.jointXform.LookAt(position, vector3); this.endXform.rotation = rotation; this.start.parent = parent; this.joint.parent = parent2; this.end.parent = parent3; this.end.rotation = rotation; if (this.blendPct < 778f) { this.start.localRotation = Quaternion.Slerp(localRotation, this.start.localRotation, this.blendPct); this.joint.localRotation = Quaternion.Slerp(localRotation2, this.joint.localRotation, this.blendPct); this.end.localRotation = Quaternion.Slerp(localRotation3, this.end.localRotation, this.blendPct); } this.start.localScale = localScale; this.joint.localScale = localScale2; this.end.localScale = localScale3; } // Token: 0x060106D7 RID: 67287 RVA: 0x004E10F0 File Offset: 0x004DF2F0 private void FKCNPKHIFIF() { if (this.blendPct < 1992f) { return; } Vector3 vector = ((!this.upVector) ? Vector3.Cross(this.end.position - this.start.position, this.joint.position - this.start.position).normalized : this.upVector.up); Vector3 position = this.target.position; Quaternion rotation = this.target.rotation; Vector3 position2 = this.joint.position; Vector3 vector2; Vector3 vector3; SteamVR_IK.MPHNDGELPMB(this.start.position, position, this.poleVector.position, (this.joint.position - this.start.position).magnitude, (this.end.position - this.joint.position).magnitude, ref position2, out vector2, out vector3); if (vector3 == Vector3.zero) { return; } Vector3 position3 = this.start.position; Vector3 position4 = this.joint.position; Vector3 position5 = this.end.position; Quaternion localRotation = this.start.localRotation; Quaternion localRotation2 = this.joint.localRotation; Quaternion localRotation3 = this.end.localRotation; Transform parent = this.start.parent; Transform parent2 = this.joint.parent; Transform parent3 = this.end.parent; Vector3 localScale = this.start.localScale; Vector3 localScale2 = this.joint.localScale; Vector3 localScale3 = this.end.localScale; if (this.startXform == null) { this.startXform = new GameObject("Unpublishing...").transform; this.startXform.parent = base.transform; } this.startXform.position = position3; this.startXform.LookAt(this.joint, vector); this.start.parent = this.startXform; if (this.jointXform == null) { this.jointXform = new GameObject("Error: Room does not exist!").transform; this.jointXform.parent = this.startXform; } this.jointXform.position = position4; this.jointXform.LookAt(this.end, vector); this.joint.parent = this.jointXform; if (this.endXform == null) { this.endXform = new GameObject("Undefined").transform; this.endXform.parent = this.jointXform; } this.endXform.position = position5; this.end.parent = this.endXform; this.startXform.LookAt(position2, vector3); this.jointXform.LookAt(position, vector3); this.endXform.rotation = rotation; this.start.parent = parent; this.joint.parent = parent2; this.end.parent = parent3; this.end.rotation = rotation; if (this.blendPct < 1965f) { this.start.localRotation = Quaternion.Slerp(localRotation, this.start.localRotation, this.blendPct); this.joint.localRotation = Quaternion.Slerp(localRotation2, this.joint.localRotation, this.blendPct); this.end.localRotation = Quaternion.Slerp(localRotation3, this.end.localRotation, this.blendPct); } this.start.localScale = localScale; this.joint.localScale = localScale2; this.end.localScale = localScale3; } // Token: 0x060106D8 RID: 67288 RVA: 0x004E14D0 File Offset: 0x004DF6D0 public static bool DPNAINLBCEA(Vector3 OBELJCEMDHP, Vector3 IDJKHAMKPCH, Vector3 HPLFDKCFGDN, float JANPDLJFEEK, float NECDKJDENJO, ref Vector3 CHBMCDHCJHE, out Vector3 NFEICINKNNK, out Vector3 PGNOPONHHMH) { float num = JANPDLJFEEK + NECDKJDENJO; Vector3 vector = IDJKHAMKPCH - OBELJCEMDHP; Vector3 normalized = (HPLFDKCFGDN - OBELJCEMDHP).normalized; float magnitude = vector.magnitude; CHBMCDHCJHE = OBELJCEMDHP; if (magnitude < 295f) { CHBMCDHCJHE += normalized * JANPDLJFEEK; NFEICINKNNK = Vector3.Cross(normalized, Vector3.up); PGNOPONHHMH = Vector3.Cross(NFEICINKNNK, normalized).normalized; } else { NFEICINKNNK = vector * (1074f / magnitude); PGNOPONHHMH = Vector3.Cross(NFEICINKNNK, normalized).normalized; if (magnitude + 534f < num) { float num2 = (num + magnitude) * 609f; if (num2 > JANPDLJFEEK + 477f && num2 > NECDKJDENJO + 1968f) { float num3 = Mathf.Sqrt(num2 * (num2 - JANPDLJFEEK) * (num2 - NECDKJDENJO) * (num2 - magnitude)); float num4 = 128f * num3 / magnitude; float num5 = Mathf.Sqrt(JANPDLJFEEK * JANPDLJFEEK - num4 * num4); Vector3 vector2 = Vector3.Cross(PGNOPONHHMH, NFEICINKNNK); CHBMCDHCJHE += NFEICINKNNK * num5 + vector2 * num4; return false; } CHBMCDHCJHE += normalized * JANPDLJFEEK; } else { CHBMCDHCJHE += NFEICINKNNK * JANPDLJFEEK; } } return true; } // Token: 0x060106D9 RID: 67289 RVA: 0x004E168C File Offset: 0x004DF88C private void HBKLMPAGEMI() { if (this.blendPct < 1928f) { return; } Vector3 vector = ((!this.upVector) ? Vector3.Cross(this.end.position - this.start.position, this.joint.position - this.start.position).normalized : this.upVector.up); Vector3 position = this.target.position; Quaternion rotation = this.target.rotation; Vector3 position2 = this.joint.position; Vector3 vector2; Vector3 vector3; SteamVR_IK.HCLMEGJBDJL(this.start.position, position, this.poleVector.position, (this.joint.position - this.start.position).magnitude, (this.end.position - this.joint.position).magnitude, ref position2, out vector2, out vector3); if (vector3 == Vector3.zero) { return; } Vector3 position3 = this.start.position; Vector3 position4 = this.joint.position; Vector3 position5 = this.end.position; Quaternion localRotation = this.start.localRotation; Quaternion localRotation2 = this.joint.localRotation; Quaternion localRotation3 = this.end.localRotation; Transform parent = this.start.parent; Transform parent2 = this.joint.parent; Transform parent3 = this.end.parent; Vector3 localScale = this.start.localScale; Vector3 localScale2 = this.joint.localScale; Vector3 localScale3 = this.end.localScale; if (this.startXform == null) { this.startXform = new GameObject("ChBjb2xvcl9kYXRhLnByb3RvEgdyZWNyb29tIjcKCUNvbG9yRGF0YRIJCgFy").transform; this.startXform.parent = base.transform; } this.startXform.position = position3; this.startXform.LookAt(this.joint, vector); this.start.parent = this.startXform; if (this.jointXform == null) { this.jointXform = new GameObject("UG9zaXRpb24YByABKAsyFC5yZWNyb29tLlZlY3RvcjNEYXRhEjIKFGN1cnJl").transform; this.jointXform.parent = this.startXform; } this.jointXform.position = position4; this.jointXform.LookAt(this.end, vector); this.joint.parent = this.jointXform; if (this.endXform == null) { this.endXform = new GameObject(" By: ").transform; this.endXform.parent = this.jointXform; } this.endXform.position = position5; this.end.parent = this.endXform; this.startXform.LookAt(position2, vector3); this.jointXform.LookAt(position, vector3); this.endXform.rotation = rotation; this.start.parent = parent; this.joint.parent = parent2; this.end.parent = parent3; this.end.rotation = rotation; if (this.blendPct < 1863f) { this.start.localRotation = Quaternion.Slerp(localRotation, this.start.localRotation, this.blendPct); this.joint.localRotation = Quaternion.Slerp(localRotation2, this.joint.localRotation, this.blendPct); this.end.localRotation = Quaternion.Slerp(localRotation3, this.end.localRotation, this.blendPct); } this.start.localScale = localScale; this.joint.localScale = localScale2; this.end.localScale = localScale3; } // Token: 0x060106DA RID: 67290 RVA: 0x004E1A6C File Offset: 0x004DFC6C private void FMJNMMIBPGK() { if (this.blendPct < 463f) { return; } Vector3 vector = ((!this.upVector) ? Vector3.Cross(this.end.position - this.start.position, this.joint.position - this.start.position).normalized : this.upVector.up); Vector3 position = this.target.position; Quaternion rotation = this.target.rotation; Vector3 position2 = this.joint.position; Vector3 vector2; Vector3 vector3; SteamVR_IK.KDEKLGOEEBC(this.start.position, position, this.poleVector.position, (this.joint.position - this.start.position).magnitude, (this.end.position - this.joint.position).magnitude, ref position2, out vector2, out vector3); if (vector3 == Vector3.zero) { return; } Vector3 position3 = this.start.position; Vector3 position4 = this.joint.position; Vector3 position5 = this.end.position; Quaternion localRotation = this.start.localRotation; Quaternion localRotation2 = this.joint.localRotation; Quaternion localRotation3 = this.end.localRotation; Transform parent = this.start.parent; Transform parent2 = this.joint.parent; Transform parent3 = this.end.parent; Vector3 localScale = this.start.localScale; Vector3 localScale2 = this.joint.localScale; Vector3 localScale3 = this.end.localScale; if (this.startXform == null) { this.startXform = new GameObject("LinearVelocityMultiplier").transform; this.startXform.parent = base.transform; } this.startXform.position = position3; this.startXform.LookAt(this.joint, vector); this.start.parent = this.startXform; if (this.jointXform == null) { this.jointXform = new GameObject(" is missing a health bar.").transform; this.jointXform.parent = this.startXform; } this.jointXform.position = position4; this.jointXform.LookAt(this.end, vector); this.joint.parent = this.jointXform; if (this.endXform == null) { this.endXform = new GameObject(". Possible scene loading in progress?").transform; this.endXform.parent = this.jointXform; } this.endXform.position = position5; this.end.parent = this.endXform; this.startXform.LookAt(position2, vector3); this.jointXform.LookAt(position, vector3); this.endXform.rotation = rotation; this.start.parent = parent; this.joint.parent = parent2; this.end.parent = parent3; this.end.rotation = rotation; if (this.blendPct < 319f) { this.start.localRotation = Quaternion.Slerp(localRotation, this.start.localRotation, this.blendPct); this.joint.localRotation = Quaternion.Slerp(localRotation2, this.joint.localRotation, this.blendPct); this.end.localRotation = Quaternion.Slerp(localRotation3, this.end.localRotation, this.blendPct); } this.start.localScale = localScale; this.joint.localScale = localScale2; this.end.localScale = localScale3; } // Token: 0x060106DB RID: 67291 RVA: 0x004E1E4C File Offset: 0x004E004C public static bool MPHNDGELPMB(Vector3 OBELJCEMDHP, Vector3 IDJKHAMKPCH, Vector3 HPLFDKCFGDN, float JANPDLJFEEK, float NECDKJDENJO, ref Vector3 CHBMCDHCJHE, out Vector3 NFEICINKNNK, out Vector3 PGNOPONHHMH) { float num = JANPDLJFEEK + NECDKJDENJO; Vector3 vector = IDJKHAMKPCH - OBELJCEMDHP; Vector3 normalized = (HPLFDKCFGDN - OBELJCEMDHP).normalized; float magnitude = vector.magnitude; CHBMCDHCJHE = OBELJCEMDHP; if (magnitude < 1368f) { CHBMCDHCJHE += normalized * JANPDLJFEEK; NFEICINKNNK = Vector3.Cross(normalized, Vector3.up); PGNOPONHHMH = Vector3.Cross(NFEICINKNNK, normalized).normalized; } else { NFEICINKNNK = vector * (913f / magnitude); PGNOPONHHMH = Vector3.Cross(NFEICINKNNK, normalized).normalized; if (magnitude + 781f < num) { float num2 = (num + magnitude) * 1382f; if (num2 > JANPDLJFEEK + 372f && num2 > NECDKJDENJO + 654f) { float num3 = Mathf.Sqrt(num2 * (num2 - JANPDLJFEEK) * (num2 - NECDKJDENJO) * (num2 - magnitude)); float num4 = 1619f * num3 / magnitude; float num5 = Mathf.Sqrt(JANPDLJFEEK * JANPDLJFEEK - num4 * num4); Vector3 vector2 = Vector3.Cross(PGNOPONHHMH, NFEICINKNNK); CHBMCDHCJHE += NFEICINKNNK * num5 + vector2 * num4; return false; } CHBMCDHCJHE += normalized * JANPDLJFEEK; } else { CHBMCDHCJHE += NFEICINKNNK * JANPDLJFEEK; } } return false; } // Token: 0x060106DC RID: 67292 RVA: 0x004E2008 File Offset: 0x004E0208 private void KAOLAOADNHK() { if (this.blendPct < 1691f) { return; } Vector3 vector = ((!this.upVector) ? Vector3.Cross(this.end.position - this.start.position, this.joint.position - this.start.position).normalized : this.upVector.up); Vector3 position = this.target.position; Quaternion rotation = this.target.rotation; Vector3 position2 = this.joint.position; Vector3 vector2; Vector3 vector3; SteamVR_IK.GINFGDHPBKM(this.start.position, position, this.poleVector.position, (this.joint.position - this.start.position).magnitude, (this.end.position - this.joint.position).magnitude, ref position2, out vector2, out vector3); if (vector3 == Vector3.zero) { return; } Vector3 position3 = this.start.position; Vector3 position4 = this.joint.position; Vector3 position5 = this.end.position; Quaternion localRotation = this.start.localRotation; Quaternion localRotation2 = this.joint.localRotation; Quaternion localRotation3 = this.end.localRotation; Transform parent = this.start.parent; Transform parent2 = this.joint.parent; Transform parent3 = this.end.parent; Vector3 localScale = this.start.localScale; Vector3 localScale2 = this.joint.localScale; Vector3 localScale3 = this.end.localScale; if (this.startXform == null) { this.startXform = new GameObject("ReJoinRoom failed due to offline mode.").transform; this.startXform.parent = base.transform; } this.startXform.position = position3; this.startXform.LookAt(this.joint, vector); this.start.parent = this.startXform; if (this.jointXform == null) { this.jointXform = new GameObject("SystemInfo").transform; this.jointXform.parent = this.startXform; } this.jointXform.position = position4; this.jointXform.LookAt(this.end, vector); this.joint.parent = this.jointXform; if (this.endXform == null) { this.endXform = new GameObject("Error serializing Polaroid {0}: Data already specified.").transform; this.endXform.parent = this.jointXform; } this.endXform.position = position5; this.end.parent = this.endXform; this.startXform.LookAt(position2, vector3); this.jointXform.LookAt(position, vector3); this.endXform.rotation = rotation; this.start.parent = parent; this.joint.parent = parent2; this.end.parent = parent3; this.end.rotation = rotation; if (this.blendPct < 1832f) { this.start.localRotation = Quaternion.Slerp(localRotation, this.start.localRotation, this.blendPct); this.joint.localRotation = Quaternion.Slerp(localRotation2, this.joint.localRotation, this.blendPct); this.end.localRotation = Quaternion.Slerp(localRotation3, this.end.localRotation, this.blendPct); } this.start.localScale = localScale; this.joint.localScale = localScale2; this.end.localScale = localScale3; } // Token: 0x060106DD RID: 67293 RVA: 0x004E23E8 File Offset: 0x004E05E8 public static bool DLFPFPFOOEC(Vector3 OBELJCEMDHP, Vector3 IDJKHAMKPCH, Vector3 HPLFDKCFGDN, float JANPDLJFEEK, float NECDKJDENJO, ref Vector3 CHBMCDHCJHE, out Vector3 NFEICINKNNK, out Vector3 PGNOPONHHMH) { float num = JANPDLJFEEK + NECDKJDENJO; Vector3 vector = IDJKHAMKPCH - OBELJCEMDHP; Vector3 normalized = (HPLFDKCFGDN - OBELJCEMDHP).normalized; float magnitude = vector.magnitude; CHBMCDHCJHE = OBELJCEMDHP; if (magnitude < 1338f) { CHBMCDHCJHE += normalized * JANPDLJFEEK; NFEICINKNNK = Vector3.Cross(normalized, Vector3.up); PGNOPONHHMH = Vector3.Cross(NFEICINKNNK, normalized).normalized; } else { NFEICINKNNK = vector * (1127f / magnitude); PGNOPONHHMH = Vector3.Cross(NFEICINKNNK, normalized).normalized; if (magnitude + 284f < num) { float num2 = (num + magnitude) * 89f; if (num2 > JANPDLJFEEK + 1530f && num2 > NECDKJDENJO + 1614f) { float num3 = Mathf.Sqrt(num2 * (num2 - JANPDLJFEEK) * (num2 - NECDKJDENJO) * (num2 - magnitude)); float num4 = 1265f * num3 / magnitude; float num5 = Mathf.Sqrt(JANPDLJFEEK * JANPDLJFEEK - num4 * num4); Vector3 vector2 = Vector3.Cross(PGNOPONHHMH, NFEICINKNNK); CHBMCDHCJHE += NFEICINKNNK * num5 + vector2 * num4; return true; } CHBMCDHCJHE += normalized * JANPDLJFEEK; } else { CHBMCDHCJHE += NFEICINKNNK * JANPDLJFEEK; } } return true; } // Token: 0x060106DE RID: 67294 RVA: 0x004E25A4 File Offset: 0x004E07A4 private void LKJGJFAIIAA() { if (this.blendPct < 1369f) { return; } Vector3 vector = ((!this.upVector) ? Vector3.Cross(this.end.position - this.start.position, this.joint.position - this.start.position).normalized : this.upVector.up); Vector3 position = this.target.position; Quaternion rotation = this.target.rotation; Vector3 position2 = this.joint.position; Vector3 vector2; Vector3 vector3; SteamVR_IK.GINFGDHPBKM(this.start.position, position, this.poleVector.position, (this.joint.position - this.start.position).magnitude, (this.end.position - this.joint.position).magnitude, ref position2, out vector2, out vector3); if (vector3 == Vector3.zero) { return; } Vector3 position3 = this.start.position; Vector3 position4 = this.joint.position; Vector3 position5 = this.end.position; Quaternion localRotation = this.start.localRotation; Quaternion localRotation2 = this.joint.localRotation; Quaternion localRotation3 = this.end.localRotation; Transform parent = this.start.parent; Transform parent2 = this.joint.parent; Transform parent3 = this.end.parent; Vector3 localScale = this.start.localScale; Vector3 localScale2 = this.joint.localScale; Vector3 localScale3 = this.end.localScale; if (this.startXform == null) { this.startXform = new GameObject("Friend Added").transform; this.startXform.parent = base.transform; } this.startXform.position = position3; this.startXform.LookAt(this.joint, vector); this.start.parent = this.startXform; if (this.jointXform == null) { this.jointXform = new GameObject("_RingCenter").transform; this.jointXform.parent = this.startXform; } this.jointXform.position = position4; this.jointXform.LookAt(this.end, vector); this.joint.parent = this.jointXform; if (this.endXform == null) { this.endXform = new GameObject("Connecting to frontend ").transform; this.endXform.parent = this.jointXform; } this.endXform.position = position5; this.end.parent = this.endXform; this.startXform.LookAt(position2, vector3); this.jointXform.LookAt(position, vector3); this.endXform.rotation = rotation; this.start.parent = parent; this.joint.parent = parent2; this.end.parent = parent3; this.end.rotation = rotation; if (this.blendPct < 746f) { this.start.localRotation = Quaternion.Slerp(localRotation, this.start.localRotation, this.blendPct); this.joint.localRotation = Quaternion.Slerp(localRotation2, this.joint.localRotation, this.blendPct); this.end.localRotation = Quaternion.Slerp(localRotation3, this.end.localRotation, this.blendPct); } this.start.localScale = localScale; this.joint.localScale = localScale2; this.end.localScale = localScale3; } // Token: 0x060106DF RID: 67295 RVA: 0x004E2984 File Offset: 0x004E0B84 private void OLKCNIONLBA() { if (this.blendPct < 737f) { return; } Vector3 vector = ((!this.upVector) ? Vector3.Cross(this.end.position - this.start.position, this.joint.position - this.start.position).normalized : this.upVector.up); Vector3 position = this.target.position; Quaternion rotation = this.target.rotation; Vector3 position2 = this.joint.position; Vector3 vector2; Vector3 vector3; SteamVR_IK.MPHNDGELPMB(this.start.position, position, this.poleVector.position, (this.joint.position - this.start.position).magnitude, (this.end.position - this.joint.position).magnitude, ref position2, out vector2, out vector3); if (vector3 == Vector3.zero) { return; } Vector3 position3 = this.start.position; Vector3 position4 = this.joint.position; Vector3 position5 = this.end.position; Quaternion localRotation = this.start.localRotation; Quaternion localRotation2 = this.joint.localRotation; Quaternion localRotation3 = this.end.localRotation; Transform parent = this.start.parent; Transform parent2 = this.joint.parent; Transform parent3 = this.end.parent; Vector3 localScale = this.start.localScale; Vector3 localScale2 = this.joint.localScale; Vector3 localScale3 = this.end.localScale; if (this.startXform == null) { this.startXform = new GameObject("to").transform; this.startXform.parent = base.transform; } this.startXform.position = position3; this.startXform.LookAt(this.joint, vector); this.start.parent = this.startXform; if (this.jointXform == null) { this.jointXform = new GameObject("enabledynamic").transform; this.jointXform.parent = this.startXform; } this.jointXform.position = position4; this.jointXform.LookAt(this.end, vector); this.joint.parent = this.jointXform; if (this.endXform == null) { this.endXform = new GameObject("api").transform; this.endXform.parent = this.jointXform; } this.endXform.position = position5; this.end.parent = this.endXform; this.startXform.LookAt(position2, vector3); this.jointXform.LookAt(position, vector3); this.endXform.rotation = rotation; this.start.parent = parent; this.joint.parent = parent2; this.end.parent = parent3; this.end.rotation = rotation; if (this.blendPct < 117f) { this.start.localRotation = Quaternion.Slerp(localRotation, this.start.localRotation, this.blendPct); this.joint.localRotation = Quaternion.Slerp(localRotation2, this.joint.localRotation, this.blendPct); this.end.localRotation = Quaternion.Slerp(localRotation3, this.end.localRotation, this.blendPct); } this.start.localScale = localScale; this.joint.localScale = localScale2; this.end.localScale = localScale3; } // Token: 0x060106E0 RID: 67296 RVA: 0x004E2D64 File Offset: 0x004E0F64 private void KKJLDPJMKFB() { if (this.blendPct < 1050f) { return; } Vector3 vector = ((!this.upVector) ? Vector3.Cross(this.end.position - this.start.position, this.joint.position - this.start.position).normalized : this.upVector.up); Vector3 position = this.target.position; Quaternion rotation = this.target.rotation; Vector3 position2 = this.joint.position; Vector3 vector2; Vector3 vector3; SteamVR_IK.NMINFDBAGCP(this.start.position, position, this.poleVector.position, (this.joint.position - this.start.position).magnitude, (this.end.position - this.joint.position).magnitude, ref position2, out vector2, out vector3); if (vector3 == Vector3.zero) { return; } Vector3 position3 = this.start.position; Vector3 position4 = this.joint.position; Vector3 position5 = this.end.position; Quaternion localRotation = this.start.localRotation; Quaternion localRotation2 = this.joint.localRotation; Quaternion localRotation3 = this.end.localRotation; Transform parent = this.start.parent; Transform parent2 = this.joint.parent; Transform parent3 = this.end.parent; Vector3 localScale = this.start.localScale; Vector3 localScale2 = this.joint.localScale; Vector3 localScale3 = this.end.localScale; if (this.startXform == null) { this.startXform = new GameObject("Mesh_MeshShape").transform; this.startXform.parent = base.transform; } this.startXform.position = position3; this.startXform.LookAt(this.joint, vector); this.start.parent = this.startXform; if (this.jointXform == null) { this.jointXform = new GameObject("Connection").transform; this.jointXform.parent = this.startXform; } this.jointXform.position = position4; this.jointXform.LookAt(this.end, vector); this.joint.parent = this.jointXform; if (this.endXform == null) { this.endXform = new GameObject("M").transform; this.endXform.parent = this.jointXform; } this.endXform.position = position5; this.end.parent = this.endXform; this.startXform.LookAt(position2, vector3); this.jointXform.LookAt(position, vector3); this.endXform.rotation = rotation; this.start.parent = parent; this.joint.parent = parent2; this.end.parent = parent3; this.end.rotation = rotation; if (this.blendPct < 195f) { this.start.localRotation = Quaternion.Slerp(localRotation, this.start.localRotation, this.blendPct); this.joint.localRotation = Quaternion.Slerp(localRotation2, this.joint.localRotation, this.blendPct); this.end.localRotation = Quaternion.Slerp(localRotation3, this.end.localRotation, this.blendPct); } this.start.localScale = localScale; this.joint.localScale = localScale2; this.end.localScale = localScale3; } // Token: 0x060106E1 RID: 67297 RVA: 0x004E3144 File Offset: 0x004E1344 public static bool CNPKEIMCMPM(Vector3 OBELJCEMDHP, Vector3 IDJKHAMKPCH, Vector3 HPLFDKCFGDN, float JANPDLJFEEK, float NECDKJDENJO, ref Vector3 CHBMCDHCJHE, out Vector3 NFEICINKNNK, out Vector3 PGNOPONHHMH) { float num = JANPDLJFEEK + NECDKJDENJO; Vector3 vector = IDJKHAMKPCH - OBELJCEMDHP; Vector3 normalized = (HPLFDKCFGDN - OBELJCEMDHP).normalized; float magnitude = vector.magnitude; CHBMCDHCJHE = OBELJCEMDHP; if (magnitude < 801f) { CHBMCDHCJHE += normalized * JANPDLJFEEK; NFEICINKNNK = Vector3.Cross(normalized, Vector3.up); PGNOPONHHMH = Vector3.Cross(NFEICINKNNK, normalized).normalized; } else { NFEICINKNNK = vector * (1995f / magnitude); PGNOPONHHMH = Vector3.Cross(NFEICINKNNK, normalized).normalized; if (magnitude + 61f < num) { float num2 = (num + magnitude) * 1320f; if (num2 > JANPDLJFEEK + 365f && num2 > NECDKJDENJO + 671f) { float num3 = Mathf.Sqrt(num2 * (num2 - JANPDLJFEEK) * (num2 - NECDKJDENJO) * (num2 - magnitude)); float num4 = 1393f * num3 / magnitude; float num5 = Mathf.Sqrt(JANPDLJFEEK * JANPDLJFEEK - num4 * num4); Vector3 vector2 = Vector3.Cross(PGNOPONHHMH, NFEICINKNNK); CHBMCDHCJHE += NFEICINKNNK * num5 + vector2 * num4; return false; } CHBMCDHCJHE += normalized * JANPDLJFEEK; } else { CHBMCDHCJHE += NFEICINKNNK * JANPDLJFEEK; } } return true; } // Token: 0x060106E2 RID: 67298 RVA: 0x004E3300 File Offset: 0x004E1500 private void LateUpdate() { if (this.blendPct < 0.001f) { return; } Vector3 vector = ((!this.upVector) ? Vector3.Cross(this.end.position - this.start.position, this.joint.position - this.start.position).normalized : this.upVector.up); Vector3 position = this.target.position; Quaternion rotation = this.target.rotation; Vector3 position2 = this.joint.position; Vector3 vector2; Vector3 vector3; SteamVR_IK.Solve(this.start.position, position, this.poleVector.position, (this.joint.position - this.start.position).magnitude, (this.end.position - this.joint.position).magnitude, ref position2, out vector2, out vector3); if (vector3 == Vector3.zero) { return; } Vector3 position3 = this.start.position; Vector3 position4 = this.joint.position; Vector3 position5 = this.end.position; Quaternion localRotation = this.start.localRotation; Quaternion localRotation2 = this.joint.localRotation; Quaternion localRotation3 = this.end.localRotation; Transform parent = this.start.parent; Transform parent2 = this.joint.parent; Transform parent3 = this.end.parent; Vector3 localScale = this.start.localScale; Vector3 localScale2 = this.joint.localScale; Vector3 localScale3 = this.end.localScale; if (this.startXform == null) { this.startXform = new GameObject("startXform").transform; this.startXform.parent = base.transform; } this.startXform.position = position3; this.startXform.LookAt(this.joint, vector); this.start.parent = this.startXform; if (this.jointXform == null) { this.jointXform = new GameObject("jointXform").transform; this.jointXform.parent = this.startXform; } this.jointXform.position = position4; this.jointXform.LookAt(this.end, vector); this.joint.parent = this.jointXform; if (this.endXform == null) { this.endXform = new GameObject("endXform").transform; this.endXform.parent = this.jointXform; } this.endXform.position = position5; this.end.parent = this.endXform; this.startXform.LookAt(position2, vector3); this.jointXform.LookAt(position, vector3); this.endXform.rotation = rotation; this.start.parent = parent; this.joint.parent = parent2; this.end.parent = parent3; this.end.rotation = rotation; if (this.blendPct < 1f) { this.start.localRotation = Quaternion.Slerp(localRotation, this.start.localRotation, this.blendPct); this.joint.localRotation = Quaternion.Slerp(localRotation2, this.joint.localRotation, this.blendPct); this.end.localRotation = Quaternion.Slerp(localRotation3, this.end.localRotation, this.blendPct); } this.start.localScale = localScale; this.joint.localScale = localScale2; this.end.localScale = localScale3; } // Token: 0x060106E3 RID: 67299 RVA: 0x004E36E0 File Offset: 0x004E18E0 private void GGKDMGAJBEP() { if (this.blendPct < 43f) { return; } Vector3 vector = ((!this.upVector) ? Vector3.Cross(this.end.position - this.start.position, this.joint.position - this.start.position).normalized : this.upVector.up); Vector3 position = this.target.position; Quaternion rotation = this.target.rotation; Vector3 position2 = this.joint.position; Vector3 vector2; Vector3 vector3; SteamVR_IK.HCLMEGJBDJL(this.start.position, position, this.poleVector.position, (this.joint.position - this.start.position).magnitude, (this.end.position - this.joint.position).magnitude, ref position2, out vector2, out vector3); if (vector3 == Vector3.zero) { return; } Vector3 position3 = this.start.position; Vector3 position4 = this.joint.position; Vector3 position5 = this.end.position; Quaternion localRotation = this.start.localRotation; Quaternion localRotation2 = this.joint.localRotation; Quaternion localRotation3 = this.end.localRotation; Transform parent = this.start.parent; Transform parent2 = this.joint.parent; Transform parent3 = this.end.parent; Vector3 localScale = this.start.localScale; Vector3 localScale2 = this.joint.localScale; Vector3 localScale3 = this.end.localScale; if (this.startXform == null) { this.startXform = new GameObject("ToolData").transform; this.startXform.parent = base.transform; } this.startXform.position = position3; this.startXform.LookAt(this.joint, vector); this.start.parent = this.startXform; if (this.jointXform == null) { this.jointXform = new GameObject("purchased_item").transform; this.jointXform.parent = this.startXform; } this.jointXform.position = position4; this.jointXform.LookAt(this.end, vector); this.joint.parent = this.jointXform; if (this.endXform == null) { this.endXform = new GameObject(" ms").transform; this.endXform.parent = this.jointXform; } this.endXform.position = position5; this.end.parent = this.endXform; this.startXform.LookAt(position2, vector3); this.jointXform.LookAt(position, vector3); this.endXform.rotation = rotation; this.start.parent = parent; this.joint.parent = parent2; this.end.parent = parent3; this.end.rotation = rotation; if (this.blendPct < 1515f) { this.start.localRotation = Quaternion.Slerp(localRotation, this.start.localRotation, this.blendPct); this.joint.localRotation = Quaternion.Slerp(localRotation2, this.joint.localRotation, this.blendPct); this.end.localRotation = Quaternion.Slerp(localRotation3, this.end.localRotation, this.blendPct); } this.start.localScale = localScale; this.joint.localScale = localScale2; this.end.localScale = localScale3; } // Token: 0x060106E4 RID: 67300 RVA: 0x004E3AC0 File Offset: 0x004E1CC0 public static bool GINFGDHPBKM(Vector3 OBELJCEMDHP, Vector3 IDJKHAMKPCH, Vector3 HPLFDKCFGDN, float JANPDLJFEEK, float NECDKJDENJO, ref Vector3 CHBMCDHCJHE, out Vector3 NFEICINKNNK, out Vector3 PGNOPONHHMH) { float num = JANPDLJFEEK + NECDKJDENJO; Vector3 vector = IDJKHAMKPCH - OBELJCEMDHP; Vector3 normalized = (HPLFDKCFGDN - OBELJCEMDHP).normalized; float magnitude = vector.magnitude; CHBMCDHCJHE = OBELJCEMDHP; if (magnitude < 858f) { CHBMCDHCJHE += normalized * JANPDLJFEEK; NFEICINKNNK = Vector3.Cross(normalized, Vector3.up); PGNOPONHHMH = Vector3.Cross(NFEICINKNNK, normalized).normalized; } else { NFEICINKNNK = vector * (1108f / magnitude); PGNOPONHHMH = Vector3.Cross(NFEICINKNNK, normalized).normalized; if (magnitude + 431f < num) { float num2 = (num + magnitude) * 1583f; if (num2 > JANPDLJFEEK + 522f && num2 > NECDKJDENJO + 150f) { float num3 = Mathf.Sqrt(num2 * (num2 - JANPDLJFEEK) * (num2 - NECDKJDENJO) * (num2 - magnitude)); float num4 = 1418f * num3 / magnitude; float num5 = Mathf.Sqrt(JANPDLJFEEK * JANPDLJFEEK - num4 * num4); Vector3 vector2 = Vector3.Cross(PGNOPONHHMH, NFEICINKNNK); CHBMCDHCJHE += NFEICINKNNK * num5 + vector2 * num4; return true; } CHBMCDHCJHE += normalized * JANPDLJFEEK; } else { CHBMCDHCJHE += NFEICINKNNK * JANPDLJFEEK; } } return true; } // Token: 0x060106E5 RID: 67301 RVA: 0x004E3C7C File Offset: 0x004E1E7C private void BPBEDHPMDGO() { if (this.blendPct < 1167f) { return; } Vector3 vector = ((!this.upVector) ? Vector3.Cross(this.end.position - this.start.position, this.joint.position - this.start.position).normalized : this.upVector.up); Vector3 position = this.target.position; Quaternion rotation = this.target.rotation; Vector3 position2 = this.joint.position; Vector3 vector2; Vector3 vector3; SteamVR_IK.DLFPFPFOOEC(this.start.position, position, this.poleVector.position, (this.joint.position - this.start.position).magnitude, (this.end.position - this.joint.position).magnitude, ref position2, out vector2, out vector3); if (vector3 == Vector3.zero) { return; } Vector3 position3 = this.start.position; Vector3 position4 = this.joint.position; Vector3 position5 = this.end.position; Quaternion localRotation = this.start.localRotation; Quaternion localRotation2 = this.joint.localRotation; Quaternion localRotation3 = this.end.localRotation; Transform parent = this.start.parent; Transform parent2 = this.joint.parent; Transform parent3 = this.end.parent; Vector3 localScale = this.start.localScale; Vector3 localScale2 = this.joint.localScale; Vector3 localScale3 = this.end.localScale; if (this.startXform == null) { this.startXform = new GameObject("application/octet-stream").transform; this.startXform.parent = base.transform; } this.startXform.position = position3; this.startXform.LookAt(this.joint, vector); this.start.parent = this.startXform; if (this.jointXform == null) { this.jointXform = new GameObject(" failed.").transform; this.jointXform.parent = this.startXform; } this.jointXform.position = position4; this.jointXform.LookAt(this.end, vector); this.joint.parent = this.jointXform; if (this.endXform == null) { this.endXform = new GameObject("It looks like some of your ").transform; this.endXform.parent = this.jointXform; } this.endXform.position = position5; this.end.parent = this.endXform; this.startXform.LookAt(position2, vector3); this.jointXform.LookAt(position, vector3); this.endXform.rotation = rotation; this.start.parent = parent; this.joint.parent = parent2; this.end.parent = parent3; this.end.rotation = rotation; if (this.blendPct < 690f) { this.start.localRotation = Quaternion.Slerp(localRotation, this.start.localRotation, this.blendPct); this.joint.localRotation = Quaternion.Slerp(localRotation2, this.joint.localRotation, this.blendPct); this.end.localRotation = Quaternion.Slerp(localRotation3, this.end.localRotation, this.blendPct); } this.start.localScale = localScale; this.joint.localScale = localScale2; this.end.localScale = localScale3; } // Token: 0x060106E6 RID: 67302 RVA: 0x004E405C File Offset: 0x004E225C private void APBAJGDBPLA() { if (this.blendPct < 745f) { return; } Vector3 vector = ((!this.upVector) ? Vector3.Cross(this.end.position - this.start.position, this.joint.position - this.start.position).normalized : this.upVector.up); Vector3 position = this.target.position; Quaternion rotation = this.target.rotation; Vector3 position2 = this.joint.position; Vector3 vector2; Vector3 vector3; SteamVR_IK.NMINFDBAGCP(this.start.position, position, this.poleVector.position, (this.joint.position - this.start.position).magnitude, (this.end.position - this.joint.position).magnitude, ref position2, out vector2, out vector3); if (vector3 == Vector3.zero) { return; } Vector3 position3 = this.start.position; Vector3 position4 = this.joint.position; Vector3 position5 = this.end.position; Quaternion localRotation = this.start.localRotation; Quaternion localRotation2 = this.joint.localRotation; Quaternion localRotation3 = this.end.localRotation; Transform parent = this.start.parent; Transform parent2 = this.joint.parent; Transform parent3 = this.end.parent; Vector3 localScale = this.start.localScale; Vector3 localScale2 = this.joint.localScale; Vector3 localScale3 = this.end.localScale; if (this.startXform == null) { this.startXform = new GameObject("action").transform; this.startXform.parent = base.transform; } this.startXform.position = position3; this.startXform.LookAt(this.joint, vector); this.start.parent = this.startXform; if (this.jointXform == null) { this.jointXform = new GameObject("{0} {1}").transform; this.jointXform.parent = this.startXform; } this.jointXform.position = position4; this.jointXform.LookAt(this.end, vector); this.joint.parent = this.jointXform; if (this.endXform == null) { this.endXform = new GameObject("[PV] unsupported sample type: ").transform; this.endXform.parent = this.jointXform; } this.endXform.position = position5; this.end.parent = this.endXform; this.startXform.LookAt(position2, vector3); this.jointXform.LookAt(position, vector3); this.endXform.rotation = rotation; this.start.parent = parent; this.joint.parent = parent2; this.end.parent = parent3; this.end.rotation = rotation; if (this.blendPct < 1823f) { this.start.localRotation = Quaternion.Slerp(localRotation, this.start.localRotation, this.blendPct); this.joint.localRotation = Quaternion.Slerp(localRotation2, this.joint.localRotation, this.blendPct); this.end.localRotation = Quaternion.Slerp(localRotation3, this.end.localRotation, this.blendPct); } this.start.localScale = localScale; this.joint.localScale = localScale2; this.end.localScale = localScale3; } // Token: 0x060106E7 RID: 67303 RVA: 0x004E443C File Offset: 0x004E263C public static bool KDEKLGOEEBC(Vector3 OBELJCEMDHP, Vector3 IDJKHAMKPCH, Vector3 HPLFDKCFGDN, float JANPDLJFEEK, float NECDKJDENJO, ref Vector3 CHBMCDHCJHE, out Vector3 NFEICINKNNK, out Vector3 PGNOPONHHMH) { float num = JANPDLJFEEK + NECDKJDENJO; Vector3 vector = IDJKHAMKPCH - OBELJCEMDHP; Vector3 normalized = (HPLFDKCFGDN - OBELJCEMDHP).normalized; float magnitude = vector.magnitude; CHBMCDHCJHE = OBELJCEMDHP; if (magnitude < 1389f) { CHBMCDHCJHE += normalized * JANPDLJFEEK; NFEICINKNNK = Vector3.Cross(normalized, Vector3.up); PGNOPONHHMH = Vector3.Cross(NFEICINKNNK, normalized).normalized; } else { NFEICINKNNK = vector * (1039f / magnitude); PGNOPONHHMH = Vector3.Cross(NFEICINKNNK, normalized).normalized; if (magnitude + 1163f < num) { float num2 = (num + magnitude) * 988f; if (num2 > JANPDLJFEEK + 1637f && num2 > NECDKJDENJO + 1071f) { float num3 = Mathf.Sqrt(num2 * (num2 - JANPDLJFEEK) * (num2 - NECDKJDENJO) * (num2 - magnitude)); float num4 = 1688f * num3 / magnitude; float num5 = Mathf.Sqrt(JANPDLJFEEK * JANPDLJFEEK - num4 * num4); Vector3 vector2 = Vector3.Cross(PGNOPONHHMH, NFEICINKNNK); CHBMCDHCJHE += NFEICINKNNK * num5 + vector2 * num4; return true; } CHBMCDHCJHE += normalized * JANPDLJFEEK; } else { CHBMCDHCJHE += NFEICINKNNK * JANPDLJFEEK; } } return false; } // Token: 0x060106E8 RID: 67304 RVA: 0x004E45F8 File Offset: 0x004E27F8 public static bool Solve(Vector3 OBELJCEMDHP, Vector3 IDJKHAMKPCH, Vector3 HPLFDKCFGDN, float JANPDLJFEEK, float NECDKJDENJO, ref Vector3 CHBMCDHCJHE, out Vector3 NFEICINKNNK, out Vector3 PGNOPONHHMH) { float num = JANPDLJFEEK + NECDKJDENJO; Vector3 vector = IDJKHAMKPCH - OBELJCEMDHP; Vector3 normalized = (HPLFDKCFGDN - OBELJCEMDHP).normalized; float magnitude = vector.magnitude; CHBMCDHCJHE = OBELJCEMDHP; if (magnitude < 0.001f) { CHBMCDHCJHE += normalized * JANPDLJFEEK; NFEICINKNNK = Vector3.Cross(normalized, Vector3.up); PGNOPONHHMH = Vector3.Cross(NFEICINKNNK, normalized).normalized; } else { NFEICINKNNK = vector * (1f / magnitude); PGNOPONHHMH = Vector3.Cross(NFEICINKNNK, normalized).normalized; if (magnitude + 0.001f < num) { float num2 = (num + magnitude) * 0.5f; if (num2 > JANPDLJFEEK + 0.001f && num2 > NECDKJDENJO + 0.001f) { float num3 = Mathf.Sqrt(num2 * (num2 - JANPDLJFEEK) * (num2 - NECDKJDENJO) * (num2 - magnitude)); float num4 = 2f * num3 / magnitude; float num5 = Mathf.Sqrt(JANPDLJFEEK * JANPDLJFEEK - num4 * num4); Vector3 vector2 = Vector3.Cross(PGNOPONHHMH, NFEICINKNNK); CHBMCDHCJHE += NFEICINKNNK * num5 + vector2 * num4; return true; } CHBMCDHCJHE += normalized * JANPDLJFEEK; } else { CHBMCDHCJHE += NFEICINKNNK * JANPDLJFEEK; } } return false; } // Token: 0x060106E9 RID: 67305 RVA: 0x004E47B4 File Offset: 0x004E29B4 private void HMHKHJFCELO() { if (this.blendPct < 1983f) { return; } Vector3 vector = ((!this.upVector) ? Vector3.Cross(this.end.position - this.start.position, this.joint.position - this.start.position).normalized : this.upVector.up); Vector3 position = this.target.position; Quaternion rotation = this.target.rotation; Vector3 position2 = this.joint.position; Vector3 vector2; Vector3 vector3; SteamVR_IK.KDEKLGOEEBC(this.start.position, position, this.poleVector.position, (this.joint.position - this.start.position).magnitude, (this.end.position - this.joint.position).magnitude, ref position2, out vector2, out vector3); if (vector3 == Vector3.zero) { return; } Vector3 position3 = this.start.position; Vector3 position4 = this.joint.position; Vector3 position5 = this.end.position; Quaternion localRotation = this.start.localRotation; Quaternion localRotation2 = this.joint.localRotation; Quaternion localRotation3 = this.end.localRotation; Transform parent = this.start.parent; Transform parent2 = this.joint.parent; Transform parent3 = this.end.parent; Vector3 localScale = this.start.localScale; Vector3 localScale2 = this.joint.localScale; Vector3 localScale3 = this.end.localScale; if (this.startXform == null) { this.startXform = new GameObject("no-cache").transform; this.startXform.parent = base.transform; } this.startXform.position = position3; this.startXform.LookAt(this.joint, vector); this.start.parent = this.startXform; if (this.jointXform == null) { this.jointXform = new GameObject("Refund").transform; this.jointXform.parent = this.startXform; } this.jointXform.position = position4; this.jointXform.LookAt(this.end, vector); this.joint.parent = this.jointXform; if (this.endXform == null) { this.endXform = new GameObject("Release").transform; this.endXform.parent = this.jointXform; } this.endXform.position = position5; this.end.parent = this.endXform; this.startXform.LookAt(position2, vector3); this.jointXform.LookAt(position, vector3); this.endXform.rotation = rotation; this.start.parent = parent; this.joint.parent = parent2; this.end.parent = parent3; this.end.rotation = rotation; if (this.blendPct < 1749f) { this.start.localRotation = Quaternion.Slerp(localRotation, this.start.localRotation, this.blendPct); this.joint.localRotation = Quaternion.Slerp(localRotation2, this.joint.localRotation, this.blendPct); this.end.localRotation = Quaternion.Slerp(localRotation3, this.end.localRotation, this.blendPct); } this.start.localScale = localScale; this.joint.localScale = localScale2; this.end.localScale = localScale3; } // Token: 0x060106EA RID: 67306 RVA: 0x004E4B94 File Offset: 0x004E2D94 public static bool HCLMEGJBDJL(Vector3 OBELJCEMDHP, Vector3 IDJKHAMKPCH, Vector3 HPLFDKCFGDN, float JANPDLJFEEK, float NECDKJDENJO, ref Vector3 CHBMCDHCJHE, out Vector3 NFEICINKNNK, out Vector3 PGNOPONHHMH) { float num = JANPDLJFEEK + NECDKJDENJO; Vector3 vector = IDJKHAMKPCH - OBELJCEMDHP; Vector3 normalized = (HPLFDKCFGDN - OBELJCEMDHP).normalized; float magnitude = vector.magnitude; CHBMCDHCJHE = OBELJCEMDHP; if (magnitude < 1601f) { CHBMCDHCJHE += normalized * JANPDLJFEEK; NFEICINKNNK = Vector3.Cross(normalized, Vector3.up); PGNOPONHHMH = Vector3.Cross(NFEICINKNNK, normalized).normalized; } else { NFEICINKNNK = vector * (1563f / magnitude); PGNOPONHHMH = Vector3.Cross(NFEICINKNNK, normalized).normalized; if (magnitude + 1377f < num) { float num2 = (num + magnitude) * 1553f; if (num2 > JANPDLJFEEK + 89f && num2 > NECDKJDENJO + 1904f) { float num3 = Mathf.Sqrt(num2 * (num2 - JANPDLJFEEK) * (num2 - NECDKJDENJO) * (num2 - magnitude)); float num4 = 7f * num3 / magnitude; float num5 = Mathf.Sqrt(JANPDLJFEEK * JANPDLJFEEK - num4 * num4); Vector3 vector2 = Vector3.Cross(PGNOPONHHMH, NFEICINKNNK); CHBMCDHCJHE += NFEICINKNNK * num5 + vector2 * num4; return true; } CHBMCDHCJHE += normalized * JANPDLJFEEK; } else { CHBMCDHCJHE += NFEICINKNNK * JANPDLJFEEK; } } return false; } // Token: 0x060106EB RID: 67307 RVA: 0x004E4D50 File Offset: 0x004E2F50 private void CADNGEIOOKI() { if (this.blendPct < 540f) { return; } Vector3 vector = ((!this.upVector) ? Vector3.Cross(this.end.position - this.start.position, this.joint.position - this.start.position).normalized : this.upVector.up); Vector3 position = this.target.position; Quaternion rotation = this.target.rotation; Vector3 position2 = this.joint.position; Vector3 vector2; Vector3 vector3; SteamVR_IK.GINFGDHPBKM(this.start.position, position, this.poleVector.position, (this.joint.position - this.start.position).magnitude, (this.end.position - this.joint.position).magnitude, ref position2, out vector2, out vector3); if (vector3 == Vector3.zero) { return; } Vector3 position3 = this.start.position; Vector3 position4 = this.joint.position; Vector3 position5 = this.end.position; Quaternion localRotation = this.start.localRotation; Quaternion localRotation2 = this.joint.localRotation; Quaternion localRotation3 = this.end.localRotation; Transform parent = this.start.parent; Transform parent2 = this.joint.parent; Transform parent3 = this.end.parent; Vector3 localScale = this.start.localScale; Vector3 localScale2 = this.joint.localScale; Vector3 localScale3 = this.end.localScale; if (this.startXform == null) { this.startXform = new GameObject("speed").transform; this.startXform.parent = base.transform; } this.startXform.position = position3; this.startXform.LookAt(this.joint, vector); this.start.parent = this.startXform; if (this.jointXform == null) { this.jointXform = new GameObject("all_newplayerpunchcardobjectives_completed").transform; this.jointXform.parent = this.startXform; } this.jointXform.position = position4; this.jointXform.LookAt(this.end, vector); this.joint.parent = this.jointXform; if (this.endXform == null) { this.endXform = new GameObject("api/gamesessions/v2/").transform; this.endXform.parent = this.jointXform; } this.endXform.position = position5; this.end.parent = this.endXform; this.startXform.LookAt(position2, vector3); this.jointXform.LookAt(position, vector3); this.endXform.rotation = rotation; this.start.parent = parent; this.joint.parent = parent2; this.end.parent = parent3; this.end.rotation = rotation; if (this.blendPct < 1414f) { this.start.localRotation = Quaternion.Slerp(localRotation, this.start.localRotation, this.blendPct); this.joint.localRotation = Quaternion.Slerp(localRotation2, this.joint.localRotation, this.blendPct); this.end.localRotation = Quaternion.Slerp(localRotation3, this.end.localRotation, this.blendPct); } this.start.localScale = localScale; this.joint.localScale = localScale2; this.end.localScale = localScale3; } // Token: 0x060106EC RID: 67308 RVA: 0x004E5130 File Offset: 0x004E3330 private void HOJHIMFNOJH() { if (this.blendPct < 1862f) { return; } Vector3 vector = ((!this.upVector) ? Vector3.Cross(this.end.position - this.start.position, this.joint.position - this.start.position).normalized : this.upVector.up); Vector3 position = this.target.position; Quaternion rotation = this.target.rotation; Vector3 position2 = this.joint.position; Vector3 vector2; Vector3 vector3; SteamVR_IK.AMIICECOJFC(this.start.position, position, this.poleVector.position, (this.joint.position - this.start.position).magnitude, (this.end.position - this.joint.position).magnitude, ref position2, out vector2, out vector3); if (vector3 == Vector3.zero) { return; } Vector3 position3 = this.start.position; Vector3 position4 = this.joint.position; Vector3 position5 = this.end.position; Quaternion localRotation = this.start.localRotation; Quaternion localRotation2 = this.joint.localRotation; Quaternion localRotation3 = this.end.localRotation; Transform parent = this.start.parent; Transform parent2 = this.joint.parent; Transform parent3 = this.end.parent; Vector3 localScale = this.start.localScale; Vector3 localScale2 = this.joint.localScale; Vector3 localScale3 = this.end.localScale; if (this.startXform == null) { this.startXform = new GameObject("{0}v1/birthday").transform; this.startXform.parent = base.transform; } this.startXform.position = position3; this.startXform.LookAt(this.joint, vector); this.start.parent = this.startXform; if (this.jointXform == null) { this.jointXform = new GameObject(" - ").transform; this.jointXform.parent = this.startXform; } this.jointXform.position = position4; this.jointXform.LookAt(this.end, vector); this.joint.parent = this.jointXform; if (this.endXform == null) { this.endXform = new GameObject("; ").transform; this.endXform.parent = this.jointXform; } this.endXform.position = position5; this.end.parent = this.endXform; this.startXform.LookAt(position2, vector3); this.jointXform.LookAt(position, vector3); this.endXform.rotation = rotation; this.start.parent = parent; this.joint.parent = parent2; this.end.parent = parent3; this.end.rotation = rotation; if (this.blendPct < 1630f) { this.start.localRotation = Quaternion.Slerp(localRotation, this.start.localRotation, this.blendPct); this.joint.localRotation = Quaternion.Slerp(localRotation2, this.joint.localRotation, this.blendPct); this.end.localRotation = Quaternion.Slerp(localRotation3, this.end.localRotation, this.blendPct); } this.start.localScale = localScale; this.joint.localScale = localScale2; this.end.localScale = localScale3; } // Token: 0x060106ED RID: 67309 RVA: 0x004E5510 File Offset: 0x004E3710 public static bool NMINFDBAGCP(Vector3 OBELJCEMDHP, Vector3 IDJKHAMKPCH, Vector3 HPLFDKCFGDN, float JANPDLJFEEK, float NECDKJDENJO, ref Vector3 CHBMCDHCJHE, out Vector3 NFEICINKNNK, out Vector3 PGNOPONHHMH) { float num = JANPDLJFEEK + NECDKJDENJO; Vector3 vector = IDJKHAMKPCH - OBELJCEMDHP; Vector3 normalized = (HPLFDKCFGDN - OBELJCEMDHP).normalized; float magnitude = vector.magnitude; CHBMCDHCJHE = OBELJCEMDHP; if (magnitude < 67f) { CHBMCDHCJHE += normalized * JANPDLJFEEK; NFEICINKNNK = Vector3.Cross(normalized, Vector3.up); PGNOPONHHMH = Vector3.Cross(NFEICINKNNK, normalized).normalized; } else { NFEICINKNNK = vector * (1949f / magnitude); PGNOPONHHMH = Vector3.Cross(NFEICINKNNK, normalized).normalized; if (magnitude + 1958f < num) { float num2 = (num + magnitude) * 719f; if (num2 > JANPDLJFEEK + 318f && num2 > NECDKJDENJO + 449f) { float num3 = Mathf.Sqrt(num2 * (num2 - JANPDLJFEEK) * (num2 - NECDKJDENJO) * (num2 - magnitude)); float num4 = 794f * num3 / magnitude; float num5 = Mathf.Sqrt(JANPDLJFEEK * JANPDLJFEEK - num4 * num4); Vector3 vector2 = Vector3.Cross(PGNOPONHHMH, NFEICINKNNK); CHBMCDHCJHE += NFEICINKNNK * num5 + vector2 * num4; return true; } CHBMCDHCJHE += normalized * JANPDLJFEEK; } else { CHBMCDHCJHE += NFEICINKNNK * JANPDLJFEEK; } } return false; } // Token: 0x060106EE RID: 67310 RVA: 0x004E56CC File Offset: 0x004E38CC private void GBEGEIBCELO() { if (this.blendPct < 211f) { return; } Vector3 vector = ((!this.upVector) ? Vector3.Cross(this.end.position - this.start.position, this.joint.position - this.start.position).normalized : this.upVector.up); Vector3 position = this.target.position; Quaternion rotation = this.target.rotation; Vector3 position2 = this.joint.position; Vector3 vector2; Vector3 vector3; SteamVR_IK.NMINFDBAGCP(this.start.position, position, this.poleVector.position, (this.joint.position - this.start.position).magnitude, (this.end.position - this.joint.position).magnitude, ref position2, out vector2, out vector3); if (vector3 == Vector3.zero) { return; } Vector3 position3 = this.start.position; Vector3 position4 = this.joint.position; Vector3 position5 = this.end.position; Quaternion localRotation = this.start.localRotation; Quaternion localRotation2 = this.joint.localRotation; Quaternion localRotation3 = this.end.localRotation; Transform parent = this.start.parent; Transform parent2 = this.joint.parent; Transform parent3 = this.end.parent; Vector3 localScale = this.start.localScale; Vector3 localScale2 = this.joint.localScale; Vector3 localScale3 = this.end.localScale; if (this.startXform == null) { this.startXform = new GameObject("Mouse ScrollWheel").transform; this.startXform.parent = base.transform; } this.startXform.position = position3; this.startXform.LookAt(this.joint, vector); this.start.parent = this.startXform; if (this.jointXform == null) { this.jointXform = new GameObject("S{0}.{1}").transform; this.jointXform.parent = this.startXform; } this.jointXform.position = position4; this.jointXform.LookAt(this.end, vector); this.joint.parent = this.jointXform; if (this.endXform == null) { this.endXform = new GameObject(":").transform; this.endXform.parent = this.jointXform; } this.endXform.position = position5; this.end.parent = this.endXform; this.startXform.LookAt(position2, vector3); this.jointXform.LookAt(position, vector3); this.endXform.rotation = rotation; this.start.parent = parent; this.joint.parent = parent2; this.end.parent = parent3; this.end.rotation = rotation; if (this.blendPct < 488f) { this.start.localRotation = Quaternion.Slerp(localRotation, this.start.localRotation, this.blendPct); this.joint.localRotation = Quaternion.Slerp(localRotation2, this.joint.localRotation, this.blendPct); this.end.localRotation = Quaternion.Slerp(localRotation3, this.end.localRotation, this.blendPct); } this.start.localScale = localScale; this.joint.localScale = localScale2; this.end.localScale = localScale3; } // Token: 0x060106EF RID: 67311 RVA: 0x004E5AAC File Offset: 0x004E3CAC public static bool AMIICECOJFC(Vector3 OBELJCEMDHP, Vector3 IDJKHAMKPCH, Vector3 HPLFDKCFGDN, float JANPDLJFEEK, float NECDKJDENJO, ref Vector3 CHBMCDHCJHE, out Vector3 NFEICINKNNK, out Vector3 PGNOPONHHMH) { float num = JANPDLJFEEK + NECDKJDENJO; Vector3 vector = IDJKHAMKPCH - OBELJCEMDHP; Vector3 normalized = (HPLFDKCFGDN - OBELJCEMDHP).normalized; float magnitude = vector.magnitude; CHBMCDHCJHE = OBELJCEMDHP; if (magnitude < 676f) { CHBMCDHCJHE += normalized * JANPDLJFEEK; NFEICINKNNK = Vector3.Cross(normalized, Vector3.up); PGNOPONHHMH = Vector3.Cross(NFEICINKNNK, normalized).normalized; } else { NFEICINKNNK = vector * (1270f / magnitude); PGNOPONHHMH = Vector3.Cross(NFEICINKNNK, normalized).normalized; if (magnitude + 778f < num) { float num2 = (num + magnitude) * 1725f; if (num2 > JANPDLJFEEK + 80f && num2 > NECDKJDENJO + 152f) { float num3 = Mathf.Sqrt(num2 * (num2 - JANPDLJFEEK) * (num2 - NECDKJDENJO) * (num2 - magnitude)); float num4 = 1446f * num3 / magnitude; float num5 = Mathf.Sqrt(JANPDLJFEEK * JANPDLJFEEK - num4 * num4); Vector3 vector2 = Vector3.Cross(PGNOPONHHMH, NFEICINKNNK); CHBMCDHCJHE += NFEICINKNNK * num5 + vector2 * num4; return true; } CHBMCDHCJHE += normalized * JANPDLJFEEK; } else { CHBMCDHCJHE += NFEICINKNNK * JANPDLJFEEK; } } return true; } // Token: 0x060106F0 RID: 67312 RVA: 0x004E5C68 File Offset: 0x004E3E68 public static bool GFOGMNCLNML(Vector3 OBELJCEMDHP, Vector3 IDJKHAMKPCH, Vector3 HPLFDKCFGDN, float JANPDLJFEEK, float NECDKJDENJO, ref Vector3 CHBMCDHCJHE, out Vector3 NFEICINKNNK, out Vector3 PGNOPONHHMH) { float num = JANPDLJFEEK + NECDKJDENJO; Vector3 vector = IDJKHAMKPCH - OBELJCEMDHP; Vector3 normalized = (HPLFDKCFGDN - OBELJCEMDHP).normalized; float magnitude = vector.magnitude; CHBMCDHCJHE = OBELJCEMDHP; if (magnitude < 1326f) { CHBMCDHCJHE += normalized * JANPDLJFEEK; NFEICINKNNK = Vector3.Cross(normalized, Vector3.up); PGNOPONHHMH = Vector3.Cross(NFEICINKNNK, normalized).normalized; } else { NFEICINKNNK = vector * (1585f / magnitude); PGNOPONHHMH = Vector3.Cross(NFEICINKNNK, normalized).normalized; if (magnitude + 1060f < num) { float num2 = (num + magnitude) * 1085f; if (num2 > JANPDLJFEEK + 1922f && num2 > NECDKJDENJO + 273f) { float num3 = Mathf.Sqrt(num2 * (num2 - JANPDLJFEEK) * (num2 - NECDKJDENJO) * (num2 - magnitude)); float num4 = 1941f * num3 / magnitude; float num5 = Mathf.Sqrt(JANPDLJFEEK * JANPDLJFEEK - num4 * num4); Vector3 vector2 = Vector3.Cross(PGNOPONHHMH, NFEICINKNNK); CHBMCDHCJHE += NFEICINKNNK * num5 + vector2 * num4; return true; } CHBMCDHCJHE += normalized * JANPDLJFEEK; } else { CHBMCDHCJHE += NFEICINKNNK * JANPDLJFEEK; } } return true; } // Token: 0x060106F1 RID: 67313 RVA: 0x004E5E24 File Offset: 0x004E4024 private void JOALGAGIDED() { if (this.blendPct < 1852f) { return; } Vector3 vector = ((!this.upVector) ? Vector3.Cross(this.end.position - this.start.position, this.joint.position - this.start.position).normalized : this.upVector.up); Vector3 position = this.target.position; Quaternion rotation = this.target.rotation; Vector3 position2 = this.joint.position; Vector3 vector2; Vector3 vector3; SteamVR_IK.GINFGDHPBKM(this.start.position, position, this.poleVector.position, (this.joint.position - this.start.position).magnitude, (this.end.position - this.joint.position).magnitude, ref position2, out vector2, out vector3); if (vector3 == Vector3.zero) { return; } Vector3 position3 = this.start.position; Vector3 position4 = this.joint.position; Vector3 position5 = this.end.position; Quaternion localRotation = this.start.localRotation; Quaternion localRotation2 = this.joint.localRotation; Quaternion localRotation3 = this.end.localRotation; Transform parent = this.start.parent; Transform parent2 = this.joint.parent; Transform parent3 = this.end.parent; Vector3 localScale = this.start.localScale; Vector3 localScale2 = this.joint.localScale; Vector3 localScale3 = this.end.localScale; if (this.startXform == null) { this.startXform = new GameObject("looktarget").transform; this.startXform.parent = base.transform; } this.startXform.position = position3; this.startXform.LookAt(this.joint, vector); this.start.parent = this.startXform; if (this.jointXform == null) { this.jointXform = new GameObject("app_version").transform; this.jointXform.parent = this.startXform; } this.jointXform.position = position4; this.jointXform.LookAt(this.end, vector); this.joint.parent = this.jointXform; if (this.endXform == null) { this.endXform = new GameObject("{0}v1/report").transform; this.endXform.parent = this.jointXform; } this.endXform.position = position5; this.end.parent = this.endXform; this.startXform.LookAt(position2, vector3); this.jointXform.LookAt(position, vector3); this.endXform.rotation = rotation; this.start.parent = parent; this.joint.parent = parent2; this.end.parent = parent3; this.end.rotation = rotation; if (this.blendPct < 937f) { this.start.localRotation = Quaternion.Slerp(localRotation, this.start.localRotation, this.blendPct); this.joint.localRotation = Quaternion.Slerp(localRotation2, this.joint.localRotation, this.blendPct); this.end.localRotation = Quaternion.Slerp(localRotation3, this.end.localRotation, this.blendPct); } this.start.localScale = localScale; this.joint.localScale = localScale2; this.end.localScale = localScale3; } // Token: 0x060106F2 RID: 67314 RVA: 0x004E6204 File Offset: 0x004E4404 private void PNBGLBIMNAE() { if (this.blendPct < 976f) { return; } Vector3 vector = ((!this.upVector) ? Vector3.Cross(this.end.position - this.start.position, this.joint.position - this.start.position).normalized : this.upVector.up); Vector3 position = this.target.position; Quaternion rotation = this.target.rotation; Vector3 position2 = this.joint.position; Vector3 vector2; Vector3 vector3; SteamVR_IK.MPHNDGELPMB(this.start.position, position, this.poleVector.position, (this.joint.position - this.start.position).magnitude, (this.end.position - this.joint.position).magnitude, ref position2, out vector2, out vector3); if (vector3 == Vector3.zero) { return; } Vector3 position3 = this.start.position; Vector3 position4 = this.joint.position; Vector3 position5 = this.end.position; Quaternion localRotation = this.start.localRotation; Quaternion localRotation2 = this.joint.localRotation; Quaternion localRotation3 = this.end.localRotation; Transform parent = this.start.parent; Transform parent2 = this.joint.parent; Transform parent3 = this.end.parent; Vector3 localScale = this.start.localScale; Vector3 localScale2 = this.joint.localScale; Vector3 localScale3 = this.end.localScale; if (this.startXform == null) { this.startXform = new GameObject("z").transform; this.startXform.parent = base.transform; } this.startXform.position = position3; this.startXform.LookAt(this.joint, vector); this.start.parent = this.startXform; if (this.jointXform == null) { this.jointXform = new GameObject("Failed to update maximum players. If this persists, please contact the developers at support@againstgrav.com.").transform; this.jointXform.parent = this.startXform; } this.jointXform.position = position4; this.jointXform.LookAt(this.end, vector); this.joint.parent = this.jointXform; if (this.endXform == null) { this.endXform = new GameObject("Teleport").transform; this.endXform.parent = this.jointXform; } this.endXform.position = position5; this.end.parent = this.endXform; this.startXform.LookAt(position2, vector3); this.jointXform.LookAt(position, vector3); this.endXform.rotation = rotation; this.start.parent = parent; this.joint.parent = parent2; this.end.parent = parent3; this.end.rotation = rotation; if (this.blendPct < 1546f) { this.start.localRotation = Quaternion.Slerp(localRotation, this.start.localRotation, this.blendPct); this.joint.localRotation = Quaternion.Slerp(localRotation2, this.joint.localRotation, this.blendPct); this.end.localRotation = Quaternion.Slerp(localRotation3, this.end.localRotation, this.blendPct); } this.start.localScale = localScale; this.joint.localScale = localScale2; this.end.localScale = localScale3; } // Token: 0x060106F3 RID: 67315 RVA: 0x004E65E4 File Offset: 0x004E47E4 private void BBPHLLMBDMA() { if (this.blendPct < 1767f) { return; } Vector3 vector = ((!this.upVector) ? Vector3.Cross(this.end.position - this.start.position, this.joint.position - this.start.position).normalized : this.upVector.up); Vector3 position = this.target.position; Quaternion rotation = this.target.rotation; Vector3 position2 = this.joint.position; Vector3 vector2; Vector3 vector3; SteamVR_IK.HCLMEGJBDJL(this.start.position, position, this.poleVector.position, (this.joint.position - this.start.position).magnitude, (this.end.position - this.joint.position).magnitude, ref position2, out vector2, out vector3); if (vector3 == Vector3.zero) { return; } Vector3 position3 = this.start.position; Vector3 position4 = this.joint.position; Vector3 position5 = this.end.position; Quaternion localRotation = this.start.localRotation; Quaternion localRotation2 = this.joint.localRotation; Quaternion localRotation3 = this.end.localRotation; Transform parent = this.start.parent; Transform parent2 = this.joint.parent; Transform parent3 = this.end.parent; Vector3 localScale = this.start.localScale; Vector3 localScale2 = this.joint.localScale; Vector3 localScale3 = this.end.localScale; if (this.startXform == null) { this.startXform = new GameObject("GiftContext").transform; this.startXform.parent = base.transform; } this.startXform.position = position3; this.startXform.LookAt(this.joint, vector); this.start.parent = this.startXform; if (this.jointXform == null) { this.jointXform = new GameObject(" [").transform; this.jointXform.parent = this.startXform; } this.jointXform.position = position4; this.jointXform.LookAt(this.end, vector); this.joint.parent = this.jointXform; if (this.endXform == null) { this.endXform = new GameObject("CPI").transform; this.endXform.parent = this.jointXform; } this.endXform.position = position5; this.end.parent = this.endXform; this.startXform.LookAt(position2, vector3); this.jointXform.LookAt(position, vector3); this.endXform.rotation = rotation; this.start.parent = parent; this.joint.parent = parent2; this.end.parent = parent3; this.end.rotation = rotation; if (this.blendPct < 6f) { this.start.localRotation = Quaternion.Slerp(localRotation, this.start.localRotation, this.blendPct); this.joint.localRotation = Quaternion.Slerp(localRotation2, this.joint.localRotation, this.blendPct); this.end.localRotation = Quaternion.Slerp(localRotation3, this.end.localRotation, this.blendPct); } this.start.localScale = localScale; this.joint.localScale = localScale2; this.end.localScale = localScale3; } // Token: 0x060106F4 RID: 67316 RVA: 0x004E69C4 File Offset: 0x004E4BC4 private void HDMMICGIKEF() { if (this.blendPct < 954f) { return; } Vector3 vector = ((!this.upVector) ? Vector3.Cross(this.end.position - this.start.position, this.joint.position - this.start.position).normalized : this.upVector.up); Vector3 position = this.target.position; Quaternion rotation = this.target.rotation; Vector3 position2 = this.joint.position; Vector3 vector2; Vector3 vector3; SteamVR_IK.DPNAINLBCEA(this.start.position, position, this.poleVector.position, (this.joint.position - this.start.position).magnitude, (this.end.position - this.joint.position).magnitude, ref position2, out vector2, out vector3); if (vector3 == Vector3.zero) { return; } Vector3 position3 = this.start.position; Vector3 position4 = this.joint.position; Vector3 position5 = this.end.position; Quaternion localRotation = this.start.localRotation; Quaternion localRotation2 = this.joint.localRotation; Quaternion localRotation3 = this.end.localRotation; Transform parent = this.start.parent; Transform parent2 = this.joint.parent; Transform parent3 = this.end.parent; Vector3 localScale = this.start.localScale; Vector3 localScale2 = this.joint.localScale; Vector3 localScale3 = this.end.localScale; if (this.startXform == null) { this.startXform = new GameObject("ExtrusionMode").transform; this.startXform.parent = base.transform; } this.startXform.position = position3; this.startXform.LookAt(this.joint, vector); this.start.parent = this.startXform; if (this.jointXform == null) { this.jointXform = new GameObject("_mostRecent").transform; this.jointXform.parent = this.startXform; } this.jointXform.position = position4; this.jointXform.LookAt(this.end, vector); this.joint.parent = this.jointXform; if (this.endXform == null) { this.endXform = new GameObject("rotation").transform; this.endXform.parent = this.jointXform; } this.endXform.position = position5; this.end.parent = this.endXform; this.startXform.LookAt(position2, vector3); this.jointXform.LookAt(position, vector3); this.endXform.rotation = rotation; this.start.parent = parent; this.joint.parent = parent2; this.end.parent = parent3; this.end.rotation = rotation; if (this.blendPct < 1070f) { this.start.localRotation = Quaternion.Slerp(localRotation, this.start.localRotation, this.blendPct); this.joint.localRotation = Quaternion.Slerp(localRotation2, this.joint.localRotation, this.blendPct); this.end.localRotation = Quaternion.Slerp(localRotation3, this.end.localRotation, this.blendPct); } this.start.localScale = localScale; this.joint.localScale = localScale2; this.end.localScale = localScale3; } // Token: 0x060106F5 RID: 67317 RVA: 0x004E6DA4 File Offset: 0x004E4FA4 private void AOOMFDAFIAN() { if (this.blendPct < 352f) { return; } Vector3 vector = ((!this.upVector) ? Vector3.Cross(this.end.position - this.start.position, this.joint.position - this.start.position).normalized : this.upVector.up); Vector3 position = this.target.position; Quaternion rotation = this.target.rotation; Vector3 position2 = this.joint.position; Vector3 vector2; Vector3 vector3; SteamVR_IK.GFOGMNCLNML(this.start.position, position, this.poleVector.position, (this.joint.position - this.start.position).magnitude, (this.end.position - this.joint.position).magnitude, ref position2, out vector2, out vector3); if (vector3 == Vector3.zero) { return; } Vector3 position3 = this.start.position; Vector3 position4 = this.joint.position; Vector3 position5 = this.end.position; Quaternion localRotation = this.start.localRotation; Quaternion localRotation2 = this.joint.localRotation; Quaternion localRotation3 = this.end.localRotation; Transform parent = this.start.parent; Transform parent2 = this.joint.parent; Transform parent3 = this.end.parent; Vector3 localScale = this.start.localScale; Vector3 localScale2 = this.joint.localScale; Vector3 localScale3 = this.end.localScale; if (this.startXform == null) { this.startXform = new GameObject("VRSettings.renderScale: {0} -> {1}").transform; this.startXform.parent = base.transform; } this.startXform.position = position3; this.startXform.LookAt(this.joint, vector); this.start.parent = this.startXform; if (this.jointXform == null) { this.jointXform = new GameObject("method").transform; this.jointXform.parent = this.startXform; } this.jointXform.position = position4; this.jointXform.LookAt(this.end, vector); this.joint.parent = this.jointXform; if (this.endXform == null) { this.endXform = new GameObject("_ImpactPoint").transform; this.endXform.parent = this.jointXform; } this.endXform.position = position5; this.end.parent = this.endXform; this.startXform.LookAt(position2, vector3); this.jointXform.LookAt(position, vector3); this.endXform.rotation = rotation; this.start.parent = parent; this.joint.parent = parent2; this.end.parent = parent3; this.end.rotation = rotation; if (this.blendPct < 645f) { this.start.localRotation = Quaternion.Slerp(localRotation, this.start.localRotation, this.blendPct); this.joint.localRotation = Quaternion.Slerp(localRotation2, this.joint.localRotation, this.blendPct); this.end.localRotation = Quaternion.Slerp(localRotation3, this.end.localRotation, this.blendPct); } this.start.localScale = localScale; this.joint.localScale = localScale2; this.end.localScale = localScale3; } // Token: 0x04002A2D RID: 10797 public Transform target; // Token: 0x04002A2E RID: 10798 public Transform start; // Token: 0x04002A2F RID: 10799 public Transform joint; // Token: 0x04002A30 RID: 10800 public Transform end; // Token: 0x04002A31 RID: 10801 public Transform poleVector; // Token: 0x04002A32 RID: 10802 public Transform upVector; // Token: 0x04002A33 RID: 10803 public float blendPct = 1f; // Token: 0x04002A34 RID: 10804 [HideInInspector] public Transform startXform; // Token: 0x04002A35 RID: 10805 [HideInInspector] public Transform jointXform; // Token: 0x04002A36 RID: 10806 [HideInInspector] public Transform endXform; }