Files
2026-06-04 11:42:34 +02:00

1335 lines
35 KiB
C#

using System;
using System.Collections;
using System.Diagnostics;
using System.Runtime.CompilerServices;
using System.Threading;
using UnityEngine;
// Token: 0x02000BC0 RID: 3008
public class StabilizedRigidbodyPickup : RigidbodyPickup
{
// Token: 0x06016D96 RID: 93590 RVA: 0x006608F8 File Offset: 0x0065EAF8
private Vector3 CMOMLHPLJBB()
{
return this.GOOIFEIJKLL.TransformPoint(this.StabilizerOffsetPosition);
}
// Token: 0x06016D97 RID: 93591 RVA: 0x0066090C File Offset: 0x0065EB0C
public Vector3 AJPHFJPDHLF()
{
Vector3 vector = (this.CBCDJCBJALH() - this.JOCPEJGANBB.position).normalized;
if (Vector3.Dot(vector, base.transform.forward) < 1895f)
{
vector *= 329f;
}
return vector;
}
// Token: 0x06016D98 RID: 93592 RVA: 0x00660960 File Offset: 0x0065EB60
private void FKDEGAFMNPH(Quaternion IKIJCFPELOA)
{
this.ILDAKBIEANL();
this.EPEBCNIJKDB = base.StartCoroutine(this.OBPEHILNCIG(IKIJCFPELOA));
}
// Token: 0x06016D99 RID: 93593 RVA: 0x0066097C File Offset: 0x0065EB7C
public Transform INMEJIFDHJH()
{
return this.EOGNNKAAOHE;
}
// Token: 0x06016D9A RID: 93594 RVA: 0x00660984 File Offset: 0x0065EB84
private IEnumerator OAIKECFMIEL(Quaternion IKIJCFPELOA)
{
this.JEIBDPLEOJC = IKIJCFPELOA;
float num = Quaternion.Angle(this.JEIBDPLEOJC, this.KOOANGEGLHH());
float num2 = num / this.returnToDestabilizedSpeed * 1.25f;
float num3 = 0f;
while (num3 < num2)
{
yield return new WaitForFixedUpdate();
num3 += Time.fixedDeltaTime;
this.JEIBDPLEOJC = Quaternion.RotateTowards(this.JEIBDPLEOJC, this.KOOANGEGLHH(), this.returnToDestabilizedSpeed * Time.fixedDeltaTime);
}
this.EPEBCNIJKDB = null;
yield break;
}
// Token: 0x170009F0 RID: 2544
// (get) Token: 0x06016D9B RID: 93595 RVA: 0x006609A8 File Offset: 0x0065EBA8
public override Quaternion INMMPMMNFJF
{
get
{
Quaternion targetRotation = base.INMMPMMNFJF;
if (!this.MEMOPCOHPLE)
{
return targetRotation;
}
if (!(this.GOOIFEIJKLL == null))
{
Vector3 vector = this.StabilizerOffsetRotation * this.GDGCNKJFCJP;
Vector3 vector2 = targetRotation * Vector3.forward;
if (Vector3.Angle(vector2, vector) >= this.separationAngle && this.DNAFPKNLEFK != null)
{
this.DNAFPKNLEFK();
}
Vector3 vector3 = targetRotation * Vector3.up;
return Quaternion.LookRotation(vector, vector3);
}
if (this.EPEBCNIJKDB != null)
{
return this.JEIBDPLEOJC;
}
return targetRotation;
}
}
// Token: 0x06016D9C RID: 93596 RVA: 0x00660A48 File Offset: 0x0065EC48
private Quaternion PFPAIHOCCJI()
{
return base.CAPJFECFOME();
}
// Token: 0x06016D9D RID: 93597 RVA: 0x00660A50 File Offset: 0x0065EC50
public Transform MMIGKGOILMK()
{
return this.EOGNNKAAOHE;
}
// Token: 0x06016D9E RID: 93598 RVA: 0x00660A58 File Offset: 0x0065EC58
public Transform FINKAEHEBGN()
{
return this.EOGNNKAAOHE;
}
// Token: 0x170009F1 RID: 2545
// (get) Token: 0x06016D9F RID: 93599 RVA: 0x00660A60 File Offset: 0x0065EC60
public Vector3 GDGCNKJFCJP
{
get
{
Vector3 vector = (this.PDPGNECABJG - this.JOCPEJGANBB.position).normalized;
if (Vector3.Dot(vector, base.transform.forward) < 0f)
{
vector *= -1f;
}
return vector;
}
}
// Token: 0x06016DA0 RID: 93600 RVA: 0x00660AB4 File Offset: 0x0065ECB4
public void CMJPJMCHMFM(Transform NOBAPCOKFIL)
{
if (NOBAPCOKFIL == null)
{
this.EOFPNAECKOG(this.GJLOMOIAHMP());
}
else
{
this.DMCBKAENBMN();
}
this.EOGNNKAAOHE = NOBAPCOKFIL;
}
// Token: 0x06016DA1 RID: 93601 RVA: 0x00660AE0 File Offset: 0x0065ECE0
public Transform HMHHDMDKLDG()
{
return this.EOGNNKAAOHE;
}
// Token: 0x06016DA2 RID: 93602 RVA: 0x00660AE8 File Offset: 0x0065ECE8
public void PMMDGKPCCJA(Transform NOBAPCOKFIL)
{
if (NOBAPCOKFIL == null)
{
this.CANMFEKEJPC(this.INMMPMMNFJF);
}
else
{
this.ABHGBLMBACA();
}
this.EOGNNKAAOHE = NOBAPCOKFIL;
}
// Token: 0x06016DA3 RID: 93603 RVA: 0x00660B14 File Offset: 0x0065ED14
private Vector3 ODABFJDPMLL()
{
return this.PKADLNBNPHD().TransformPoint(this.StabilizerOffsetPosition);
}
// Token: 0x170009EF RID: 2543
// (get) Token: 0x06016DA4 RID: 93604 RVA: 0x00660B28 File Offset: 0x0065ED28
// (set) Token: 0x06016E06 RID: 93702 RVA: 0x00661DAC File Offset: 0x0065FFAC
public Transform GOOIFEIJKLL
{
get
{
return this.EOGNNKAAOHE;
}
set
{
if (value == null)
{
this.FKDEGAFMNPH(this.INMMPMMNFJF);
}
else
{
this.ILDAKBIEANL();
}
this.EOGNNKAAOHE = value;
}
}
// Token: 0x06016DA5 RID: 93605 RVA: 0x00660B30 File Offset: 0x0065ED30
public void NBGOAMMAGPF(Action NOBAPCOKFIL)
{
Action action = this.DNAFPKNLEFK;
Action action2;
do
{
action2 = action;
action = Interlocked.CompareExchange<Action>(ref this.DNAFPKNLEFK, (Action)Delegate.Combine(action2, NOBAPCOKFIL), action);
}
while (action != action2);
}
// Token: 0x06016DA6 RID: 93606 RVA: 0x00660B68 File Offset: 0x0065ED68
private void GKMGOJFHEFP(Quaternion IKIJCFPELOA)
{
this.ILDAKBIEANL();
this.EPEBCNIJKDB = base.StartCoroutine(this.OBPEHILNCIG(IKIJCFPELOA));
}
// Token: 0x06016DA7 RID: 93607 RVA: 0x00660B84 File Offset: 0x0065ED84
public Vector3 PFNFPAEJEFC()
{
Vector3 vector = (this.NJMNEFMGLLO() - this.JOCPEJGANBB.position).normalized;
if (Vector3.Dot(vector, base.transform.forward) < 1931f)
{
vector *= 1169f;
}
return vector;
}
// Token: 0x06016DA8 RID: 93608 RVA: 0x00660BD8 File Offset: 0x0065EDD8
public Vector3 PJPMLBNFAHO()
{
Vector3 vector = (this.NJMNEFMGLLO() - this.JOCPEJGANBB.position).normalized;
if (Vector3.Dot(vector, base.transform.forward) < 187f)
{
vector *= 707f;
}
return vector;
}
// Token: 0x06016DA9 RID: 93609 RVA: 0x00660C2C File Offset: 0x0065EE2C
private void HOGBHELJHDE(Quaternion IKIJCFPELOA)
{
this.DMCBKAENBMN();
this.EPEBCNIJKDB = base.StartCoroutine(this.AFELAADIGAI(IKIJCFPELOA));
}
// Token: 0x06016DAA RID: 93610 RVA: 0x00660C48 File Offset: 0x0065EE48
private void EOFPNAECKOG(Quaternion IKIJCFPELOA)
{
this.ILDAKBIEANL();
this.EPEBCNIJKDB = base.StartCoroutine(this.OAIKECFMIEL(IKIJCFPELOA));
}
// Token: 0x06016DAB RID: 93611 RVA: 0x00660C64 File Offset: 0x0065EE64
private Vector3 CBCDJCBJALH()
{
return this.HNCCJBBFIIE().TransformPoint(this.StabilizerOffsetPosition);
}
// Token: 0x06016DAC RID: 93612 RVA: 0x00660C78 File Offset: 0x0065EE78
public Transform IHNLANFDDNA()
{
return this.EOGNNKAAOHE;
}
// Token: 0x06016DAD RID: 93613 RVA: 0x00660C80 File Offset: 0x0065EE80
public void BICGBHIMHPE(Action NOBAPCOKFIL)
{
Action action = this.DNAFPKNLEFK;
Action action2;
do
{
action2 = action;
action = Interlocked.CompareExchange<Action>(ref this.DNAFPKNLEFK, (Action)Delegate.Combine(action2, NOBAPCOKFIL), action);
}
while (action != action2);
}
// Token: 0x06016DAE RID: 93614 RVA: 0x00660CB8 File Offset: 0x0065EEB8
private IEnumerator AFELAADIGAI(Quaternion IKIJCFPELOA)
{
this.JEIBDPLEOJC = IKIJCFPELOA;
num = Quaternion.Angle(this.JEIBDPLEOJC, this.KOOANGEGLHH());
num2 = num / this.returnToDestabilizedSpeed * 1.25f;
num3 = 0f;
while (num3 < num2)
{
yield return new WaitForFixedUpdate();
num3 += Time.fixedDeltaTime;
this.JEIBDPLEOJC = Quaternion.RotateTowards(this.JEIBDPLEOJC, this.KOOANGEGLHH(), this.returnToDestabilizedSpeed * Time.fixedDeltaTime);
}
this.EPEBCNIJKDB = null;
yield break;
}
// Token: 0x06016DAF RID: 93615 RVA: 0x00660CDC File Offset: 0x0065EEDC
public Transform LPMJJGGGPKK()
{
return this.EOGNNKAAOHE;
}
// Token: 0x06016DB0 RID: 93616 RVA: 0x00660CE4 File Offset: 0x0065EEE4
private void CANMFEKEJPC(Quaternion IKIJCFPELOA)
{
this.FHFPKKJBCOE();
this.EPEBCNIJKDB = base.StartCoroutine(this.MJIMPLOIPCK(IKIJCFPELOA));
}
// Token: 0x06016DB1 RID: 93617 RVA: 0x00660D00 File Offset: 0x0065EF00
private void HIPGKALPBNI(Quaternion IKIJCFPELOA)
{
this.FOMEFDIAJPH();
this.EPEBCNIJKDB = base.StartCoroutine(this.OAIKECFMIEL(IKIJCFPELOA));
}
// Token: 0x06016DB2 RID: 93618 RVA: 0x00660D1C File Offset: 0x0065EF1C
[DebuggerHidden]
[CompilerGenerated]
private Quaternion KOOANGEGLHH()
{
return base.INMMPMMNFJF;
}
// Token: 0x06016DB3 RID: 93619 RVA: 0x00660D24 File Offset: 0x0065EF24
private Vector3 PIDKKHJMIOJ()
{
return this.MMIGKGOILMK().TransformPoint(this.StabilizerOffsetPosition);
}
// Token: 0x06016DB4 RID: 93620 RVA: 0x00660D38 File Offset: 0x0065EF38
private Vector3 NJMNEFMGLLO()
{
return this.INMEJIFDHJH().TransformPoint(this.StabilizerOffsetPosition);
}
// Token: 0x06016DB5 RID: 93621 RVA: 0x00660D4C File Offset: 0x0065EF4C
public virtual Quaternion GKJFMCNKKME()
{
Quaternion targetRotation = base.INMMPMMNFJF;
if (!this.MEOKHJEHNEP())
{
return targetRotation;
}
if (!(this.FINKAEHEBGN() == null))
{
Vector3 vector = this.StabilizerOffsetRotation * this.JGJPPMFPHFJ();
Vector3 vector2 = targetRotation * Vector3.forward;
if (Vector3.Angle(vector2, vector) >= this.separationAngle && this.DNAFPKNLEFK != null)
{
this.DNAFPKNLEFK();
}
Vector3 vector3 = targetRotation * Vector3.up;
return Quaternion.LookRotation(vector, vector3);
}
if (this.EPEBCNIJKDB != null)
{
return this.JEIBDPLEOJC;
}
return targetRotation;
}
// Token: 0x06016DB6 RID: 93622 RVA: 0x00660DEC File Offset: 0x0065EFEC
private Vector3 OGCDDPGDPLB()
{
return this.PKADLNBNPHD().TransformPoint(this.StabilizerOffsetPosition);
}
// Token: 0x140000C0 RID: 192
// (add) Token: 0x06016DC7 RID: 93639 RVA: 0x00661138 File Offset: 0x0065F338
// (remove) Token: 0x06016DB7 RID: 93623 RVA: 0x00660E00 File Offset: 0x0065F000
[field: DebuggerBrowsable(DebuggerBrowsableState.Never)]
public event Action DNAFPKNLEFK;
// Token: 0x06016DB8 RID: 93624 RVA: 0x00660E38 File Offset: 0x0065F038
public virtual Quaternion MKOLFCDOJOH()
{
Quaternion quaternion = base.FJHEHAJCKKG();
if (!this.MEOKHJEHNEP())
{
return quaternion;
}
if (!(this.INMEJIFDHJH() == null))
{
Vector3 vector = this.StabilizerOffsetRotation * this.PFNFPAEJEFC();
Vector3 vector2 = quaternion * Vector3.forward;
if (Vector3.Angle(vector2, vector) >= this.separationAngle && this.DNAFPKNLEFK != null)
{
this.DNAFPKNLEFK();
}
Vector3 vector3 = quaternion * Vector3.up;
return Quaternion.LookRotation(vector, vector3);
}
if (this.EPEBCNIJKDB != null)
{
return this.JEIBDPLEOJC;
}
return quaternion;
}
// Token: 0x06016DB9 RID: 93625 RVA: 0x00660ED8 File Offset: 0x0065F0D8
private void LMEOMLILGCG(Quaternion IKIJCFPELOA)
{
this.FOMEFDIAJPH();
this.EPEBCNIJKDB = base.StartCoroutine(this.MJIMPLOIPCK(IKIJCFPELOA));
}
// Token: 0x06016DBA RID: 93626 RVA: 0x00660EF4 File Offset: 0x0065F0F4
private Quaternion IINGINBEDDP()
{
return base.GJLOMOIAHMP();
}
// Token: 0x06016DBB RID: 93627 RVA: 0x00660EFC File Offset: 0x0065F0FC
private Quaternion OMEELEPOJKO()
{
return base.CAPJFECFOME();
}
// Token: 0x06016DBC RID: 93628 RVA: 0x00660F04 File Offset: 0x0065F104
public void IOLPDDNBKAG(Transform NOBAPCOKFIL)
{
if (NOBAPCOKFIL == null)
{
this.CANMFEKEJPC(this.CAPJFECFOME());
}
else
{
this.ABHGBLMBACA();
}
this.EOGNNKAAOHE = NOBAPCOKFIL;
}
// Token: 0x06016DBD RID: 93629 RVA: 0x00660F30 File Offset: 0x0065F130
private Vector3 DHJOGPFHBID()
{
return this.INMEJIFDHJH().TransformPoint(this.StabilizerOffsetPosition);
}
// Token: 0x06016DBE RID: 93630 RVA: 0x00660F44 File Offset: 0x0065F144
private Vector3 DKPOHHLPFJM()
{
return this.IHNLANFDDNA().TransformPoint(this.StabilizerOffsetPosition);
}
// Token: 0x06016DBF RID: 93631 RVA: 0x00660F58 File Offset: 0x0065F158
public virtual Quaternion LGEFLNBBCFG()
{
Quaternion quaternion = base.MGKEEGDPIKK();
if (!this.MEMOPCOHPLE)
{
return quaternion;
}
if (!(this.PKADLNBNPHD() == null))
{
Vector3 vector = this.StabilizerOffsetRotation * this.FJOPICFLHCG();
Vector3 vector2 = quaternion * Vector3.forward;
if (Vector3.Angle(vector2, vector) >= this.separationAngle && this.DNAFPKNLEFK != null)
{
this.DNAFPKNLEFK();
}
Vector3 vector3 = quaternion * Vector3.up;
return Quaternion.LookRotation(vector, vector3);
}
if (this.EPEBCNIJKDB != null)
{
return this.JEIBDPLEOJC;
}
return quaternion;
}
// Token: 0x06016DC0 RID: 93632 RVA: 0x00660FF8 File Offset: 0x0065F1F8
public void NGGJGFKKCJP(Transform NOBAPCOKFIL)
{
if (NOBAPCOKFIL == null)
{
this.EBOJLFJGICB(this.INMMPMMNFJF);
}
else
{
this.FHFPKKJBCOE();
}
this.EOGNNKAAOHE = NOBAPCOKFIL;
}
// Token: 0x06016DC1 RID: 93633 RVA: 0x00661024 File Offset: 0x0065F224
public Vector3 FFHIAFICMMG()
{
Vector3 vector = (this.OGCDDPGDPLB() - this.JOCPEJGANBB.position).normalized;
if (Vector3.Dot(vector, base.transform.forward) < 581f)
{
vector *= 407f;
}
return vector;
}
// Token: 0x06016DC2 RID: 93634 RVA: 0x00661078 File Offset: 0x0065F278
public void EHEABGEJKLH(Action NOBAPCOKFIL)
{
Action action = this.DNAFPKNLEFK;
Action action2;
do
{
action2 = action;
action = Interlocked.CompareExchange<Action>(ref this.DNAFPKNLEFK, (Action)Delegate.Combine(action2, NOBAPCOKFIL), action);
}
while (action != action2);
}
// Token: 0x06016DC4 RID: 93636 RVA: 0x006610F0 File Offset: 0x0065F2F0
private Quaternion HKACMAPLIDA()
{
return base.INMMPMMNFJF;
}
// Token: 0x06016DC5 RID: 93637 RVA: 0x006610F8 File Offset: 0x0065F2F8
public Transform DCHHPCEHDKO()
{
return this.EOGNNKAAOHE;
}
// Token: 0x06016DC6 RID: 93638 RVA: 0x00661100 File Offset: 0x0065F300
public void JAIAEGGAACG(Action NOBAPCOKFIL)
{
Action action = this.DNAFPKNLEFK;
Action action2;
do
{
action2 = action;
action = Interlocked.CompareExchange<Action>(ref this.DNAFPKNLEFK, (Action)Delegate.Remove(action2, NOBAPCOKFIL), action);
}
while (action != action2);
}
// Token: 0x06016DC8 RID: 93640 RVA: 0x00661170 File Offset: 0x0065F370
public virtual Quaternion ADPPCNEIFML()
{
Quaternion quaternion = base.MGKEEGDPIKK();
if (!this.MEOKHJEHNEP())
{
return quaternion;
}
if (!(this.BCIBMHJLAKA() == null))
{
Vector3 vector = this.StabilizerOffsetRotation * this.PJPMLBNFAHO();
Vector3 vector2 = quaternion * Vector3.forward;
if (Vector3.Angle(vector2, vector) >= this.separationAngle && this.DNAFPKNLEFK != null)
{
this.DNAFPKNLEFK();
}
Vector3 vector3 = quaternion * Vector3.up;
return Quaternion.LookRotation(vector, vector3);
}
if (this.EPEBCNIJKDB != null)
{
return this.JEIBDPLEOJC;
}
return quaternion;
}
// Token: 0x06016DC9 RID: 93641 RVA: 0x00661210 File Offset: 0x0065F410
private Vector3 PJKOEJBHDHH()
{
return this.HNCCJBBFIIE().TransformPoint(this.StabilizerOffsetPosition);
}
// Token: 0x06016DCA RID: 93642 RVA: 0x00661224 File Offset: 0x0065F424
public virtual Quaternion HCJFEAINIPM()
{
Quaternion targetRotation = base.INMMPMMNFJF;
if (!this.MEMOPCOHPLE)
{
return targetRotation;
}
if (!(this.BCIBMHJLAKA() == null))
{
Vector3 vector = this.StabilizerOffsetRotation * this.GDGCNKJFCJP;
Vector3 vector2 = targetRotation * Vector3.forward;
if (Vector3.Angle(vector2, vector) >= this.separationAngle && this.DNAFPKNLEFK != null)
{
this.DNAFPKNLEFK();
}
Vector3 vector3 = targetRotation * Vector3.up;
return Quaternion.LookRotation(vector, vector3);
}
if (this.EPEBCNIJKDB != null)
{
return this.JEIBDPLEOJC;
}
return targetRotation;
}
// Token: 0x06016DCB RID: 93643 RVA: 0x006612C4 File Offset: 0x0065F4C4
public void CICIPOMCMML(Action NOBAPCOKFIL)
{
Action action = this.DNAFPKNLEFK;
Action action2;
do
{
action2 = action;
action = Interlocked.CompareExchange<Action>(ref this.DNAFPKNLEFK, (Action)Delegate.Combine(action2, NOBAPCOKFIL), action);
}
while (action != action2);
}
// Token: 0x06016DCC RID: 93644 RVA: 0x006612FC File Offset: 0x0065F4FC
private IEnumerator OBPEHILNCIG(Quaternion IKIJCFPELOA)
{
this.JEIBDPLEOJC = IKIJCFPELOA;
num = Quaternion.Angle(this.JEIBDPLEOJC, this.KOOANGEGLHH());
num2 = num / this.returnToDestabilizedSpeed * 1.25f;
num3 = 0f;
while (num3 < num2)
{
yield return new WaitForFixedUpdate();
num3 += Time.fixedDeltaTime;
this.JEIBDPLEOJC = Quaternion.RotateTowards(this.JEIBDPLEOJC, this.KOOANGEGLHH(), this.returnToDestabilizedSpeed * Time.fixedDeltaTime);
}
this.EPEBCNIJKDB = null;
yield break;
}
// Token: 0x06016DCD RID: 93645 RVA: 0x00661320 File Offset: 0x0065F520
public void DKAOADJJJFH(Action NOBAPCOKFIL)
{
Action action = this.DNAFPKNLEFK;
Action action2;
do
{
action2 = action;
action = Interlocked.CompareExchange<Action>(ref this.DNAFPKNLEFK, (Action)Delegate.Remove(action2, NOBAPCOKFIL), action);
}
while (action != action2);
}
// Token: 0x06016DCE RID: 93646 RVA: 0x00661358 File Offset: 0x0065F558
private void DMCBKAENBMN()
{
if (this.EPEBCNIJKDB != null)
{
base.StopCoroutine(this.EPEBCNIJKDB);
this.EPEBCNIJKDB = null;
}
}
// Token: 0x06016DCF RID: 93647 RVA: 0x00661378 File Offset: 0x0065F578
private void ILDAKBIEANL()
{
if (this.EPEBCNIJKDB != null)
{
base.StopCoroutine(this.EPEBCNIJKDB);
this.EPEBCNIJKDB = null;
}
}
// Token: 0x06016DD0 RID: 93648 RVA: 0x00661398 File Offset: 0x0065F598
private IEnumerator FJAHGAKHLBO(Quaternion IKIJCFPELOA)
{
this.JEIBDPLEOJC = IKIJCFPELOA;
num = Quaternion.Angle(this.JEIBDPLEOJC, this.KOOANGEGLHH());
num2 = num / this.returnToDestabilizedSpeed * 1.25f;
num3 = 0f;
while (num3 < num2)
{
yield return new WaitForFixedUpdate();
num3 += Time.fixedDeltaTime;
this.JEIBDPLEOJC = Quaternion.RotateTowards(this.JEIBDPLEOJC, this.KOOANGEGLHH(), this.returnToDestabilizedSpeed * Time.fixedDeltaTime);
}
this.EPEBCNIJKDB = null;
yield break;
}
// Token: 0x06016DD1 RID: 93649 RVA: 0x006613BC File Offset: 0x0065F5BC
public Vector3 JGJPPMFPHFJ()
{
Vector3 vector = (this.DGICHGFKNMN() - this.JOCPEJGANBB.position).normalized;
if (Vector3.Dot(vector, base.transform.forward) < 851f)
{
vector *= 1232f;
}
return vector;
}
// Token: 0x06016DD2 RID: 93650 RVA: 0x00661410 File Offset: 0x0065F610
private Vector3 DGICHGFKNMN()
{
return this.MMIGKGOILMK().TransformPoint(this.StabilizerOffsetPosition);
}
// Token: 0x06016DD3 RID: 93651 RVA: 0x00661424 File Offset: 0x0065F624
private IEnumerator PPKFGNLENFE(Quaternion IKIJCFPELOA)
{
this.JEIBDPLEOJC = IKIJCFPELOA;
num = Quaternion.Angle(this.JEIBDPLEOJC, this.KOOANGEGLHH());
num2 = num / this.returnToDestabilizedSpeed * 1.25f;
num3 = 0f;
while (num3 < num2)
{
yield return new WaitForFixedUpdate();
num3 += Time.fixedDeltaTime;
this.JEIBDPLEOJC = Quaternion.RotateTowards(this.JEIBDPLEOJC, this.KOOANGEGLHH(), this.returnToDestabilizedSpeed * Time.fixedDeltaTime);
}
this.EPEBCNIJKDB = null;
yield break;
}
// Token: 0x06016DD4 RID: 93652 RVA: 0x00661448 File Offset: 0x0065F648
private void MHFINJMLFPF(Quaternion IKIJCFPELOA)
{
this.EEFKAHBNFMB();
this.EPEBCNIJKDB = base.StartCoroutine(this.ODEOKBEPJIG(IKIJCFPELOA));
}
// Token: 0x06016DD5 RID: 93653 RVA: 0x00661464 File Offset: 0x0065F664
public Transform HNCCJBBFIIE()
{
return this.EOGNNKAAOHE;
}
// Token: 0x06016DD6 RID: 93654 RVA: 0x0066146C File Offset: 0x0065F66C
private Vector3 AMBKCNKPEDO()
{
return this.HMHHDMDKLDG().TransformPoint(this.StabilizerOffsetPosition);
}
// Token: 0x06016DD7 RID: 93655 RVA: 0x00661480 File Offset: 0x0065F680
private IEnumerator IILLOJCCPIH(Quaternion IKIJCFPELOA)
{
this.JEIBDPLEOJC = IKIJCFPELOA;
num = Quaternion.Angle(this.JEIBDPLEOJC, this.KOOANGEGLHH());
num2 = num / this.returnToDestabilizedSpeed * 1.25f;
num3 = 0f;
while (num3 < num2)
{
yield return new WaitForFixedUpdate();
num3 += Time.fixedDeltaTime;
this.JEIBDPLEOJC = Quaternion.RotateTowards(this.JEIBDPLEOJC, this.KOOANGEGLHH(), this.returnToDestabilizedSpeed * Time.fixedDeltaTime);
}
this.EPEBCNIJKDB = null;
yield break;
}
// Token: 0x06016DD8 RID: 93656 RVA: 0x006614A4 File Offset: 0x0065F6A4
public virtual Quaternion FLFFACLGOIL()
{
Quaternion quaternion = base.FJHEHAJCKKG();
if (!this.MEMOPCOHPLE)
{
return quaternion;
}
if (!(this.HMHHDMDKLDG() == null))
{
Vector3 vector = this.StabilizerOffsetRotation * this.PJPMLBNFAHO();
Vector3 vector2 = quaternion * Vector3.forward;
if (Vector3.Angle(vector2, vector) >= this.separationAngle && this.DNAFPKNLEFK != null)
{
this.DNAFPKNLEFK();
}
Vector3 vector3 = quaternion * Vector3.up;
return Quaternion.LookRotation(vector, vector3);
}
if (this.EPEBCNIJKDB != null)
{
return this.JEIBDPLEOJC;
}
return quaternion;
}
// Token: 0x06016DD9 RID: 93657 RVA: 0x00661544 File Offset: 0x0065F744
public Vector3 FJOPICFLHCG()
{
Vector3 vector = (this.PDPGNECABJG - this.JOCPEJGANBB.position).normalized;
if (Vector3.Dot(vector, base.transform.forward) < 1735f)
{
vector *= 1901f;
}
return vector;
}
// Token: 0x06016DDA RID: 93658 RVA: 0x00661598 File Offset: 0x0065F798
public Transform PKADLNBNPHD()
{
return this.EOGNNKAAOHE;
}
// Token: 0x06016DDB RID: 93659 RVA: 0x006615A0 File Offset: 0x0065F7A0
public void CBJFGLECFII(Action NOBAPCOKFIL)
{
Action action = this.DNAFPKNLEFK;
Action action2;
do
{
action2 = action;
action = Interlocked.CompareExchange<Action>(ref this.DNAFPKNLEFK, (Action)Delegate.Combine(action2, NOBAPCOKFIL), action);
}
while (action != action2);
}
// Token: 0x06016DDC RID: 93660 RVA: 0x006615D8 File Offset: 0x0065F7D8
public Vector3 GMBDLENHIMF()
{
Vector3 vector = (this.OLOFCDFLPFP() - this.JOCPEJGANBB.position).normalized;
if (Vector3.Dot(vector, base.transform.forward) < 371f)
{
vector *= 1287f;
}
return vector;
}
// Token: 0x06016DDD RID: 93661 RVA: 0x0066162C File Offset: 0x0065F82C
private Quaternion OPJHHAPPIBH()
{
return base.FJHEHAJCKKG();
}
// Token: 0x06016DDE RID: 93662 RVA: 0x00661634 File Offset: 0x0065F834
private Quaternion HDPIHMBFHMH()
{
return base.CAPJFECFOME();
}
// Token: 0x06016DDF RID: 93663 RVA: 0x0066163C File Offset: 0x0065F83C
private void BDKFEEAMBCA()
{
if (this.EPEBCNIJKDB != null)
{
base.StopCoroutine(this.EPEBCNIJKDB);
this.EPEBCNIJKDB = null;
}
}
// Token: 0x06016DE0 RID: 93664 RVA: 0x0066165C File Offset: 0x0065F85C
private Vector3 FJGBMKLAHKD()
{
return this.DCHHPCEHDKO().TransformPoint(this.StabilizerOffsetPosition);
}
// Token: 0x06016DE1 RID: 93665 RVA: 0x00661670 File Offset: 0x0065F870
public void GFGKGMKIFKC(Action NOBAPCOKFIL)
{
Action action = this.DNAFPKNLEFK;
Action action2;
do
{
action2 = action;
action = Interlocked.CompareExchange<Action>(ref this.DNAFPKNLEFK, (Action)Delegate.Combine(action2, NOBAPCOKFIL), action);
}
while (action != action2);
}
// Token: 0x06016DE2 RID: 93666 RVA: 0x006616A8 File Offset: 0x0065F8A8
private Vector3 MEKFGCPEFGN()
{
return this.LPMJJGGGPKK().TransformPoint(this.StabilizerOffsetPosition);
}
// Token: 0x06016DE3 RID: 93667 RVA: 0x006616BC File Offset: 0x0065F8BC
public Transform IIPMPAHBLPO()
{
return this.EOGNNKAAOHE;
}
// Token: 0x06016DE4 RID: 93668 RVA: 0x006616C4 File Offset: 0x0065F8C4
private void FHFPKKJBCOE()
{
if (this.EPEBCNIJKDB != null)
{
base.StopCoroutine(this.EPEBCNIJKDB);
this.EPEBCNIJKDB = null;
}
}
// Token: 0x06016DE5 RID: 93669 RVA: 0x006616E4 File Offset: 0x0065F8E4
public void OGKHBNLHKEO(Action NOBAPCOKFIL)
{
Action action = this.DNAFPKNLEFK;
Action action2;
do
{
action2 = action;
action = Interlocked.CompareExchange<Action>(ref this.DNAFPKNLEFK, (Action)Delegate.Combine(action2, NOBAPCOKFIL), action);
}
while (action != action2);
}
// Token: 0x06016DE6 RID: 93670 RVA: 0x0066171C File Offset: 0x0065F91C
private Quaternion CIOANICIGEA()
{
return base.FJHEHAJCKKG();
}
// Token: 0x06016DE7 RID: 93671 RVA: 0x00661724 File Offset: 0x0065F924
private void EAEJCOOMJHH(Quaternion IKIJCFPELOA)
{
this.ILDAKBIEANL();
this.EPEBCNIJKDB = base.StartCoroutine(this.IILLOJCCPIH(IKIJCFPELOA));
}
// Token: 0x06016DE8 RID: 93672 RVA: 0x00661740 File Offset: 0x0065F940
private Quaternion AHEHCBBDCOP()
{
return base.FJHEHAJCKKG();
}
// Token: 0x06016DE9 RID: 93673 RVA: 0x00661748 File Offset: 0x0065F948
public void MDKLEHMEPCG(Transform NOBAPCOKFIL)
{
if (NOBAPCOKFIL == null)
{
this.EAEJCOOMJHH(this.CAPJFECFOME());
}
else
{
this.ABHGBLMBACA();
}
this.EOGNNKAAOHE = NOBAPCOKFIL;
}
// Token: 0x06016DEA RID: 93674 RVA: 0x00661774 File Offset: 0x0065F974
private void MNDCFONIJNM(Quaternion IKIJCFPELOA)
{
this.EEFKAHBNFMB();
this.EPEBCNIJKDB = base.StartCoroutine(this.AFELAADIGAI(IKIJCFPELOA));
}
// Token: 0x06016DEB RID: 93675 RVA: 0x00661790 File Offset: 0x0065F990
private void EBOJLFJGICB(Quaternion IKIJCFPELOA)
{
this.FHFPKKJBCOE();
this.EPEBCNIJKDB = base.StartCoroutine(this.FJAHGAKHLBO(IKIJCFPELOA));
}
// Token: 0x06016DEC RID: 93676 RVA: 0x006617AC File Offset: 0x0065F9AC
public virtual Quaternion OOHMJPDCCBF()
{
Quaternion quaternion = base.FJHEHAJCKKG();
if (!this.MEOKHJEHNEP())
{
return quaternion;
}
if (!(this.IIPMPAHBLPO() == null))
{
Vector3 vector = this.StabilizerOffsetRotation * this.GDGCNKJFCJP;
Vector3 vector2 = quaternion * Vector3.forward;
if (Vector3.Angle(vector2, vector) >= this.separationAngle && this.DNAFPKNLEFK != null)
{
this.DNAFPKNLEFK();
}
Vector3 vector3 = quaternion * Vector3.up;
return Quaternion.LookRotation(vector, vector3);
}
if (this.EPEBCNIJKDB != null)
{
return this.JEIBDPLEOJC;
}
return quaternion;
}
// Token: 0x06016DED RID: 93677 RVA: 0x0066184C File Offset: 0x0065FA4C
public void BKINFAGPPJJ(Action NOBAPCOKFIL)
{
Action action = this.DNAFPKNLEFK;
Action action2;
do
{
action2 = action;
action = Interlocked.CompareExchange<Action>(ref this.DNAFPKNLEFK, (Action)Delegate.Combine(action2, NOBAPCOKFIL), action);
}
while (action != action2);
}
// Token: 0x06016DEE RID: 93678 RVA: 0x00661884 File Offset: 0x0065FA84
public virtual Quaternion CAHBBHFBHLN()
{
Quaternion targetRotation = base.INMMPMMNFJF;
if (!this.MEMOPCOHPLE)
{
return targetRotation;
}
if (!(this.PKADLNBNPHD() == null))
{
Vector3 vector = this.StabilizerOffsetRotation * this.AJPHFJPDHLF();
Vector3 vector2 = targetRotation * Vector3.forward;
if (Vector3.Angle(vector2, vector) >= this.separationAngle && this.DNAFPKNLEFK != null)
{
this.DNAFPKNLEFK();
}
Vector3 vector3 = targetRotation * Vector3.up;
return Quaternion.LookRotation(vector, vector3);
}
if (this.EPEBCNIJKDB != null)
{
return this.JEIBDPLEOJC;
}
return targetRotation;
}
// Token: 0x06016DEF RID: 93679 RVA: 0x00661924 File Offset: 0x0065FB24
public void AKJCLBDPPFC(Action NOBAPCOKFIL)
{
Action action = this.DNAFPKNLEFK;
Action action2;
do
{
action2 = action;
action = Interlocked.CompareExchange<Action>(ref this.DNAFPKNLEFK, (Action)Delegate.Remove(action2, NOBAPCOKFIL), action);
}
while (action != action2);
}
// Token: 0x06016DF0 RID: 93680 RVA: 0x0066195C File Offset: 0x0065FB5C
public Transform CMEPKIOLDMD()
{
return this.EOGNNKAAOHE;
}
// Token: 0x06016DF1 RID: 93681 RVA: 0x00661964 File Offset: 0x0065FB64
public virtual Quaternion COLLKDBDKHE()
{
Quaternion quaternion = base.MGKEEGDPIKK();
if (!this.MEOKHJEHNEP())
{
return quaternion;
}
if (!(this.IHNLANFDDNA() == null))
{
Vector3 vector = this.StabilizerOffsetRotation * this.GMBDLENHIMF();
Vector3 vector2 = quaternion * Vector3.forward;
if (Vector3.Angle(vector2, vector) >= this.separationAngle && this.DNAFPKNLEFK != null)
{
this.DNAFPKNLEFK();
}
Vector3 vector3 = quaternion * Vector3.up;
return Quaternion.LookRotation(vector, vector3);
}
if (this.EPEBCNIJKDB != null)
{
return this.JEIBDPLEOJC;
}
return quaternion;
}
// Token: 0x06016DF2 RID: 93682 RVA: 0x00661A04 File Offset: 0x0065FC04
private IEnumerator MJIMPLOIPCK(Quaternion IKIJCFPELOA)
{
this.JEIBDPLEOJC = IKIJCFPELOA;
num = Quaternion.Angle(this.JEIBDPLEOJC, this.KOOANGEGLHH());
num2 = num / this.returnToDestabilizedSpeed * 1.25f;
num3 = 0f;
while (num3 < num2)
{
yield return new WaitForFixedUpdate();
num3 += Time.fixedDeltaTime;
this.JEIBDPLEOJC = Quaternion.RotateTowards(this.JEIBDPLEOJC, this.KOOANGEGLHH(), this.returnToDestabilizedSpeed * Time.fixedDeltaTime);
}
this.EPEBCNIJKDB = null;
yield break;
}
// Token: 0x06016DF3 RID: 93683 RVA: 0x00661A28 File Offset: 0x0065FC28
public void LAEJPCFNPND(Transform NOBAPCOKFIL)
{
if (NOBAPCOKFIL == null)
{
this.EBOJLFJGICB(this.INMMPMMNFJF);
}
else
{
this.FOMEFDIAJPH();
}
this.EOGNNKAAOHE = NOBAPCOKFIL;
}
// Token: 0x06016DF4 RID: 93684 RVA: 0x00661A54 File Offset: 0x0065FC54
private void EEFKAHBNFMB()
{
if (this.EPEBCNIJKDB != null)
{
base.StopCoroutine(this.EPEBCNIJKDB);
this.EPEBCNIJKDB = null;
}
}
// Token: 0x06016DF5 RID: 93685 RVA: 0x00661A74 File Offset: 0x0065FC74
public Transform NHMLBEIIBON()
{
return this.EOGNNKAAOHE;
}
// Token: 0x06016DF6 RID: 93686 RVA: 0x00661A7C File Offset: 0x0065FC7C
private Vector3 EFFOGOBCKIJ()
{
return this.LPMJJGGGPKK().TransformPoint(this.StabilizerOffsetPosition);
}
// Token: 0x06016DF7 RID: 93687 RVA: 0x00661A90 File Offset: 0x0065FC90
public Vector3 MNJPGDENOEF()
{
Vector3 vector = (this.PDPGNECABJG - this.JOCPEJGANBB.position).normalized;
if (Vector3.Dot(vector, base.transform.forward) < 1171f)
{
vector *= 707f;
}
return vector;
}
// Token: 0x06016DF8 RID: 93688 RVA: 0x00661AE4 File Offset: 0x0065FCE4
public void BCJNNDPAACD(Transform NOBAPCOKFIL)
{
if (NOBAPCOKFIL == null)
{
this.LMEOMLILGCG(this.MGKEEGDPIKK());
}
else
{
this.DMCBKAENBMN();
}
this.EOGNNKAAOHE = NOBAPCOKFIL;
}
// Token: 0x06016DF9 RID: 93689 RVA: 0x00661B10 File Offset: 0x0065FD10
private Quaternion FCEGHEJBIFB()
{
return base.GJLOMOIAHMP();
}
// Token: 0x06016DFA RID: 93690 RVA: 0x00661B18 File Offset: 0x0065FD18
public Transform CEPOPJLKGNJ()
{
return this.EOGNNKAAOHE;
}
// Token: 0x06016DFB RID: 93691 RVA: 0x00661B20 File Offset: 0x0065FD20
private void FOMEFDIAJPH()
{
if (this.EPEBCNIJKDB != null)
{
base.StopCoroutine(this.EPEBCNIJKDB);
this.EPEBCNIJKDB = null;
}
}
// Token: 0x06016DFC RID: 93692 RVA: 0x00661B40 File Offset: 0x0065FD40
private IEnumerator DIDEGJELNBL(Quaternion IKIJCFPELOA)
{
this.JEIBDPLEOJC = IKIJCFPELOA;
num = Quaternion.Angle(this.JEIBDPLEOJC, this.KOOANGEGLHH());
num2 = num / this.returnToDestabilizedSpeed * 1.25f;
num3 = 0f;
while (num3 < num2)
{
yield return new WaitForFixedUpdate();
num3 += Time.fixedDeltaTime;
this.JEIBDPLEOJC = Quaternion.RotateTowards(this.JEIBDPLEOJC, this.KOOANGEGLHH(), this.returnToDestabilizedSpeed * Time.fixedDeltaTime);
}
this.EPEBCNIJKDB = null;
yield break;
}
// Token: 0x170009F2 RID: 2546
// (get) Token: 0x06016DFD RID: 93693 RVA: 0x00661B64 File Offset: 0x0065FD64
private Vector3 PDPGNECABJG
{
get
{
return this.GOOIFEIJKLL.TransformPoint(this.StabilizerOffsetPosition);
}
}
// Token: 0x06016DFE RID: 93694 RVA: 0x00661B78 File Offset: 0x0065FD78
public void AHHENAOJJKF(Transform NOBAPCOKFIL)
{
if (NOBAPCOKFIL == null)
{
this.MNDCFONIJNM(this.GJLOMOIAHMP());
}
else
{
this.ABHGBLMBACA();
}
this.EOGNNKAAOHE = NOBAPCOKFIL;
}
// Token: 0x06016DFF RID: 93695 RVA: 0x00661BA4 File Offset: 0x0065FDA4
public virtual Quaternion BKIBKKKPMBO()
{
Quaternion quaternion = base.FJHEHAJCKKG();
if (!this.MEMOPCOHPLE)
{
return quaternion;
}
if (!(this.IHNLANFDDNA() == null))
{
Vector3 vector = this.StabilizerOffsetRotation * this.FFHIAFICMMG();
Vector3 vector2 = quaternion * Vector3.forward;
if (Vector3.Angle(vector2, vector) >= this.separationAngle && this.DNAFPKNLEFK != null)
{
this.DNAFPKNLEFK();
}
Vector3 vector3 = quaternion * Vector3.up;
return Quaternion.LookRotation(vector, vector3);
}
if (this.EPEBCNIJKDB != null)
{
return this.JEIBDPLEOJC;
}
return quaternion;
}
// Token: 0x06016E00 RID: 93696 RVA: 0x00661C44 File Offset: 0x0065FE44
public void HALDPNHLBDO(Action NOBAPCOKFIL)
{
Action action = this.DNAFPKNLEFK;
Action action2;
do
{
action2 = action;
action = Interlocked.CompareExchange<Action>(ref this.DNAFPKNLEFK, (Action)Delegate.Remove(action2, NOBAPCOKFIL), action);
}
while (action != action2);
}
// Token: 0x06016E01 RID: 93697 RVA: 0x00661C7C File Offset: 0x0065FE7C
public void EJGODGCCHBN(Action NOBAPCOKFIL)
{
Action action = this.DNAFPKNLEFK;
Action action2;
do
{
action2 = action;
action = Interlocked.CompareExchange<Action>(ref this.DNAFPKNLEFK, (Action)Delegate.Combine(action2, NOBAPCOKFIL), action);
}
while (action != action2);
}
// Token: 0x06016E02 RID: 93698 RVA: 0x00661CB4 File Offset: 0x0065FEB4
public virtual Quaternion FNAJGFBDHPL()
{
Quaternion quaternion = base.GJLOMOIAHMP();
if (!this.DIGCFIAANFF())
{
return quaternion;
}
if (!(this.FINKAEHEBGN() == null))
{
Vector3 vector = this.StabilizerOffsetRotation * this.AJPHFJPDHLF();
Vector3 vector2 = quaternion * Vector3.forward;
if (Vector3.Angle(vector2, vector) >= this.separationAngle && this.DNAFPKNLEFK != null)
{
this.DNAFPKNLEFK();
}
Vector3 vector3 = quaternion * Vector3.up;
return Quaternion.LookRotation(vector, vector3);
}
if (this.EPEBCNIJKDB != null)
{
return this.JEIBDPLEOJC;
}
return quaternion;
}
// Token: 0x06016E03 RID: 93699 RVA: 0x00661D54 File Offset: 0x0065FF54
private void ABHGBLMBACA()
{
if (this.EPEBCNIJKDB != null)
{
base.StopCoroutine(this.EPEBCNIJKDB);
this.EPEBCNIJKDB = null;
}
}
// Token: 0x06016E04 RID: 93700 RVA: 0x00661D74 File Offset: 0x0065FF74
private IEnumerator ODEOKBEPJIG(Quaternion IKIJCFPELOA)
{
this.JEIBDPLEOJC = IKIJCFPELOA;
num = Quaternion.Angle(this.JEIBDPLEOJC, this.KOOANGEGLHH());
num2 = num / this.returnToDestabilizedSpeed * 1.25f;
num3 = 0f;
while (num3 < num2)
{
yield return new WaitForFixedUpdate();
num3 += Time.fixedDeltaTime;
this.JEIBDPLEOJC = Quaternion.RotateTowards(this.JEIBDPLEOJC, this.KOOANGEGLHH(), this.returnToDestabilizedSpeed * Time.fixedDeltaTime);
}
this.EPEBCNIJKDB = null;
yield break;
}
// Token: 0x06016E05 RID: 93701 RVA: 0x00661D98 File Offset: 0x0065FF98
private Vector3 OLOFCDFLPFP()
{
return this.INMEJIFDHJH().TransformPoint(this.StabilizerOffsetPosition);
}
// Token: 0x06016E07 RID: 93703 RVA: 0x00661DD8 File Offset: 0x0065FFD8
private Quaternion NLCLILFBBAI()
{
return base.DBCENDGOCCK();
}
// Token: 0x06016E08 RID: 93704 RVA: 0x00661DE0 File Offset: 0x0065FFE0
private void JJJOFCHBLNL(Quaternion IKIJCFPELOA)
{
this.ABHGBLMBACA();
this.EPEBCNIJKDB = base.StartCoroutine(this.AFELAADIGAI(IKIJCFPELOA));
}
// Token: 0x06016E09 RID: 93705 RVA: 0x00661DFC File Offset: 0x0065FFFC
public Vector3 KLFAMLBDPNK()
{
Vector3 vector = (this.DGICHGFKNMN() - this.JOCPEJGANBB.position).normalized;
if (Vector3.Dot(vector, base.transform.forward) < 1069f)
{
vector *= 546f;
}
return vector;
}
// Token: 0x06016E0A RID: 93706 RVA: 0x00661E50 File Offset: 0x00660050
public Transform BCIBMHJLAKA()
{
return this.EOGNNKAAOHE;
}
// Token: 0x0400400E RID: 16398
[SerializeField]
private float separationAngle = 30f;
// Token: 0x0400400F RID: 16399
[SerializeField]
private float returnToDestabilizedSpeed = 360f;
// Token: 0x04004010 RID: 16400
private Transform EOGNNKAAOHE;
// Token: 0x04004011 RID: 16401
[NonSerialized]
public Vector3 StabilizerOffsetPosition = Vector3.zero;
// Token: 0x04004012 RID: 16402
[NonSerialized]
public Quaternion StabilizerOffsetRotation = Quaternion.identity;
// Token: 0x04004014 RID: 16404
private Coroutine EPEBCNIJKDB;
// Token: 0x04004015 RID: 16405
private Quaternion JEIBDPLEOJC = Quaternion.identity;
}