415 lines
15 KiB
C#
415 lines
15 KiB
C#
using System;
|
|
using Cpp2IlInjected;
|
|
using UnityEngine;
|
|
|
|
// Token: 0x020002AC RID: 684
|
|
[Token(Token = "0x20002AC")]
|
|
public class SphericalConstraintRigidbodyPickup : RigidbodyPickup
|
|
{
|
|
// Token: 0x17000331 RID: 817
|
|
// (get) Token: 0x060014D3 RID: 5331 RVA: 0x00057FE8 File Offset: 0x000561E8
|
|
[Token(Token = "0x17000331")]
|
|
public override Vector3 EHAINJEAMKF
|
|
{
|
|
[Token(Token = "0x60014D3")]
|
|
[Address(RVA = "0x2116500", Offset = "0x2115500", VA = "0x182116500", Slot = "16")]
|
|
get
|
|
{
|
|
Vector3 vector;
|
|
float z = vector.z;
|
|
int num = 0;
|
|
int num2 = 0;
|
|
bool flag;
|
|
if (!flag)
|
|
{
|
|
Vector3 vector2;
|
|
float z2 = vector2.z;
|
|
float num4;
|
|
if (z2 != 0f)
|
|
{
|
|
float num3 = Mathf.Min(num4, (float)num2);
|
|
}
|
|
Vector3 vector3 = FJFHDHBBFKE.FNKFOCAIBGE(num4, (float)num2, (float)num);
|
|
Vector3 vector4;
|
|
float z3 = vector4.z;
|
|
}
|
|
throw new NullReferenceException();
|
|
}
|
|
}
|
|
|
|
// Token: 0x17000332 RID: 818
|
|
// (get) Token: 0x060014D4 RID: 5332 RVA: 0x00058040 File Offset: 0x00056240
|
|
[Token(Token = "0x17000332")]
|
|
public override Quaternion IKNMCIEGEHH
|
|
{
|
|
[Token(Token = "0x60014D4")]
|
|
[Address(RVA = "0x21167C0", Offset = "0x21157C0", VA = "0x1821167C0", Slot = "17")]
|
|
get
|
|
{
|
|
bool flag;
|
|
if (!flag)
|
|
{
|
|
Vector3 vector;
|
|
float z = vector.z;
|
|
Vector3 vector2;
|
|
float z2 = vector2.z;
|
|
Vector3 vector3;
|
|
float z3 = vector3.z;
|
|
}
|
|
throw new NullReferenceException();
|
|
}
|
|
}
|
|
|
|
// Token: 0x060014D5 RID: 5333 RVA: 0x00058074 File Offset: 0x00056274
|
|
[Token(Token = "0x60014D5")]
|
|
[Address(RVA = "0x2115720", Offset = "0x2114720", VA = "0x182115720", Slot = "13")]
|
|
protected override void Awake()
|
|
{
|
|
base.Awake();
|
|
Transform transform = this.sphereOrigin;
|
|
int num = 0;
|
|
if (transform != num && this.automaticallyCalculateSphereRadius)
|
|
{
|
|
Transform transform2 = this.sphereOrigin;
|
|
Transform transform3 = base.transform;
|
|
Vector3 vector;
|
|
float z = vector.z;
|
|
Vector3 vector2;
|
|
float z2 = vector2.z;
|
|
float num2;
|
|
this.sphereRadius = num2;
|
|
}
|
|
}
|
|
|
|
// Token: 0x060014D6 RID: 5334 RVA: 0x000580D4 File Offset: 0x000562D4
|
|
[Token(Token = "0x60014D6")]
|
|
[Address(RVA = "0x2115A40", Offset = "0x2114A40", VA = "0x182115A40")]
|
|
public void GetCurrentNormalizedPitchYaw(out float IFGAIOODCCB, out float IHGEPMLDNIF)
|
|
{
|
|
Transform transform = this.sphereOrigin;
|
|
int num = 0;
|
|
if (!(transform == num))
|
|
{
|
|
RigidbodyEx afebljoibbc = this.AFEBLJOIBBC;
|
|
Transform transform2 = this.sphereOrigin;
|
|
Vector3 vector;
|
|
float z = vector.z;
|
|
Vector3 vector2;
|
|
float z2 = vector2.z;
|
|
float maxLimitedAngle = this.pitchConstraint.MaxLimitedAngle;
|
|
float num2;
|
|
IFGAIOODCCB.m_value = num2;
|
|
float maxLimitedAngle2 = this.yawConstraint.MaxLimitedAngle;
|
|
float num3;
|
|
IHGEPMLDNIF.m_value = num3;
|
|
}
|
|
int num4 = 0;
|
|
IFGAIOODCCB.m_value = (float)num4;
|
|
IHGEPMLDNIF.m_value = (float)num4;
|
|
}
|
|
|
|
// Token: 0x060014D7 RID: 5335 RVA: 0x00058160 File Offset: 0x00056360
|
|
[Token(Token = "0x60014D7")]
|
|
[Address(RVA = "0x2115A10", Offset = "0x2114A10", VA = "0x182115A10")]
|
|
public float GetAbsoluteYawFromNormalizedYaw(float IHGEPMLDNIF)
|
|
{
|
|
float maxLimitedAngle = this.yawConstraint.MaxLimitedAngle;
|
|
float num;
|
|
return num;
|
|
}
|
|
|
|
// Token: 0x060014D8 RID: 5336 RVA: 0x0005817C File Offset: 0x0005637C
|
|
[Token(Token = "0x60014D8")]
|
|
[Address(RVA = "0x21159E0", Offset = "0x21149E0", VA = "0x1821159E0")]
|
|
public float GetAbsolutePitchFromNormalizedPitch(float IFGAIOODCCB)
|
|
{
|
|
float maxLimitedAngle = this.pitchConstraint.MaxLimitedAngle;
|
|
float num;
|
|
return num;
|
|
}
|
|
|
|
// Token: 0x060014D9 RID: 5337 RVA: 0x00058198 File Offset: 0x00056398
|
|
[Token(Token = "0x60014D9")]
|
|
[Address(RVA = "0x2115C60", Offset = "0x2114C60", VA = "0x182115C60")]
|
|
public float GetNormalizedYawFromAbsoluteYaw(float HCHMEANOIBI)
|
|
{
|
|
float maxLimitedAngle = this.yawConstraint.MaxLimitedAngle;
|
|
float num;
|
|
return num;
|
|
}
|
|
|
|
// Token: 0x060014DA RID: 5338 RVA: 0x000581B4 File Offset: 0x000563B4
|
|
[Token(Token = "0x60014DA")]
|
|
[Address(RVA = "0x2115C30", Offset = "0x2114C30", VA = "0x182115C30")]
|
|
public float GetNormalizedPitchFromAbsolutePitch(float DOHLECBFEKL)
|
|
{
|
|
float maxLimitedAngle = this.pitchConstraint.MaxLimitedAngle;
|
|
float num;
|
|
return num;
|
|
}
|
|
|
|
// Token: 0x060014DB RID: 5339 RVA: 0x000581D0 File Offset: 0x000563D0
|
|
[Token(Token = "0x60014DB")]
|
|
[Address(RVA = "0x21155D0", Offset = "0x21145D0", VA = "0x1821155D0")]
|
|
public void AuthoritySetNormalizedPitchYaw(float LOAODMKBMDC, float KDGKECCHEPD)
|
|
{
|
|
int num = 0;
|
|
this.OnDestroy();
|
|
if (base.OGIBLNIIHDK)
|
|
{
|
|
Transform transform = this.sphereOrigin;
|
|
int num2 = 0;
|
|
if (!(transform == num2))
|
|
{
|
|
RigidbodyEx afebljoibbc = this.AFEBLJOIBBC;
|
|
this.AFEBLJOIBBC.MEJCMIKAJCD = num;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x060014DC RID: 5340 RVA: 0x0005821C File Offset: 0x0005641C
|
|
[Token(Token = "0x60014DC")]
|
|
[Address(RVA = "0x2115C90", Offset = "0x2114C90", VA = "0x182115C90")]
|
|
public Quaternion GetRotationFromNormalizedYawPitch(float NGKDOBJANBC, float NALPFONGMIK)
|
|
{
|
|
}
|
|
|
|
// Token: 0x060014DD RID: 5341 RVA: 0x0005822C File Offset: 0x0005642C
|
|
[Token(Token = "0x60014DD")]
|
|
[Address(RVA = "0x2115CE0", Offset = "0x2114CE0", VA = "0x182115CE0")]
|
|
public void GetTransformFromNormalizedYawPitch(float LOAODMKBMDC, float KDGKECCHEPD, out Vector3 DDHPAFKBMON, out Quaternion IGPENJBJADK)
|
|
{
|
|
RigidbodyEx afebljoibbc = this.AFEBLJOIBBC;
|
|
Transform transform = this.sphereOrigin;
|
|
int num = 0;
|
|
float num2 = this.MGIFAIEOOMG(LOAODMKBMDC, num);
|
|
float num3 = this.MGIFAIEOOMG(LOAODMKBMDC, num);
|
|
float num4 = this.DJCFIBHPJOH(LOAODMKBMDC, num);
|
|
float num5 = this.DJCFIBHPJOH(LOAODMKBMDC, num);
|
|
if (this.positionConstraint != SphericalConstraintRigidbodyPickup.CCMCOINFNBP.SPHERE_SURFACE)
|
|
{
|
|
num5 = LOAODMKBMDC;
|
|
float num6 = Mathf.Min(num5, LOAODMKBMDC);
|
|
}
|
|
Vector3 vector = FJFHDHBBFKE.FNKFOCAIBGE(num5, LOAODMKBMDC, KDGKECCHEPD);
|
|
Transform transform2 = this.sphereOrigin;
|
|
Vector3 vector2;
|
|
float z = vector2.z;
|
|
DDHPAFKBMON.z = z;
|
|
Transform transform3 = this.sphereOrigin;
|
|
}
|
|
|
|
// Token: 0x060014DE RID: 5342 RVA: 0x000582BC File Offset: 0x000564BC
|
|
[Token(Token = "0x60014DE")]
|
|
[Address(RVA = "0x21161B0", Offset = "0x21151B0", VA = "0x1821161B0")]
|
|
private void LAFCIJFNLHL(Vector3 GHBPCACOCOL, out float HJKLGANFOPL, out float MDKCMHIBFAD, out float OMLBPICLALA)
|
|
{
|
|
float z = GHBPCACOCOL.z;
|
|
}
|
|
|
|
// Token: 0x060014DF RID: 5343 RVA: 0x000582D0 File Offset: 0x000564D0
|
|
[Token(Token = "0x60014DF")]
|
|
[Address(RVA = "0x2116370", Offset = "0x2115370", VA = "0x182116370")]
|
|
private Vector3 MJPKINGIPEF(float HJKLGANFOPL, float MDKCMHIBFAD, float OMLBPICLALA)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (060014DF)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling UnityEngine.Vector3 SphericalConstraintRigidbodyPickup::MJPKINGIPEF(System.Single,System.Single,System.Single)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{
|
|
Block_0:
|
|
stloc:float32(var_2_06, ldfld:float32(Vector3::z, ldloc:Vector3[exp:valuetype [UnityEngine.CoreModule]UnityEngine.Vector3&](var_1)))
|
|
}
|
|
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1852
|
|
at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.Optimize(DecompilerContext context, ILBlock method, AutoPropertyProvider autoPropertyProvider, StateMachineKind& stateMachineKind, MethodDef& inlinedMethod, AsyncMethodDebugInfo& asyncInfo, ILAstOptimizationStep abortBeforeStep) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 355
|
|
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 123
|
|
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
|
|
--- End of inner exception stack trace ---
|
|
at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
|
|
at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1663
|
|
*/;
|
|
}
|
|
|
|
// Token: 0x060014E0 RID: 5344 RVA: 0x000582E4 File Offset: 0x000564E4
|
|
[Token(Token = "0x60014E0")]
|
|
[Address(RVA = "0x21160A0", Offset = "0x21150A0", VA = "0x1821160A0")]
|
|
private void KEEHCHFLOEK(ref float HJKLGANFOPL, ref float MDKCMHIBFAD, ref float OMLBPICLALA)
|
|
{
|
|
float maxLimitedAngle = this.pitchConstraint.MaxLimitedAngle;
|
|
float num;
|
|
HJKLGANFOPL.m_value = num;
|
|
float maxLimitedAngle2 = this.yawConstraint.MaxLimitedAngle;
|
|
float num2;
|
|
MDKCMHIBFAD.m_value = num2;
|
|
SphericalConstraintRigidbodyPickup.CCMCOINFNBP ccmcoinfnbp = this.positionConstraint;
|
|
float num3 = this.sphereRadius;
|
|
if (ccmcoinfnbp == SphericalConstraintRigidbodyPickup.CCMCOINFNBP.SPHERE_SURFACE)
|
|
{
|
|
OMLBPICLALA.m_value = num3;
|
|
}
|
|
float num4;
|
|
OMLBPICLALA.m_value = num4;
|
|
}
|
|
|
|
// Token: 0x060014E1 RID: 5345 RVA: 0x0005833C File Offset: 0x0005653C
|
|
[Token(Token = "0x60014E1")]
|
|
[Address(RVA = "0x2115830", Offset = "0x2114830", VA = "0x182115830")]
|
|
private float DJCFIBHPJOH(float ABMABCNKBCN, SphericalConstraintRigidbodyPickup.AngularMovementConstraint MCDCCMIJPMC)
|
|
{
|
|
float maxLimitedAngle = MCDCCMIJPMC.MaxLimitedAngle;
|
|
return ABMABCNKBCN;
|
|
}
|
|
|
|
// Token: 0x060014E2 RID: 5346 RVA: 0x00058380 File Offset: 0x00056580
|
|
[Token(Token = "0x60014E2")]
|
|
[Address(RVA = "0x1A9E950", Offset = "0x1A9D950", VA = "0x181A9E950")]
|
|
private float OMLPHBMEJGI(float ABMABCNKBCN)
|
|
{
|
|
if (ABMABCNKBCN <= 180f)
|
|
{
|
|
return ABMABCNKBCN;
|
|
}
|
|
return ABMABCNKBCN;
|
|
}
|
|
|
|
// Token: 0x060014E3 RID: 5347 RVA: 0x00058398 File Offset: 0x00056598
|
|
[Token(Token = "0x60014E3")]
|
|
[Address(RVA = "0x21154A0", Offset = "0x21144A0", VA = "0x1821154A0")]
|
|
private float AGOOLMBOBMB(float ABMABCNKBCN, SphericalConstraintRigidbodyPickup.AngularMovementConstraint MCDCCMIJPMC)
|
|
{
|
|
float maxLimitedAngle = MCDCCMIJPMC.MaxLimitedAngle;
|
|
if (ABMABCNKBCN <= 180f)
|
|
{
|
|
}
|
|
if (ABMABCNKBCN <= 180f)
|
|
{
|
|
}
|
|
float num;
|
|
return num;
|
|
}
|
|
|
|
// Token: 0x060014E4 RID: 5348 RVA: 0x000583C0 File Offset: 0x000565C0
|
|
[Token(Token = "0x60014E4")]
|
|
[Address(RVA = "0x2116240", Offset = "0x2115240", VA = "0x182116240")]
|
|
private float MGIFAIEOOMG(float BHPFIKKDLJE, SphericalConstraintRigidbodyPickup.AngularMovementConstraint MCDCCMIJPMC)
|
|
{
|
|
float maxLimitedAngle = MCDCCMIJPMC.MaxLimitedAngle;
|
|
return Mathf.Lerp(-180f, 180f, BHPFIKKDLJE);
|
|
}
|
|
|
|
// Token: 0x060014E5 RID: 5349 RVA: 0x000583F4 File Offset: 0x000565F4
|
|
[Token(Token = "0x60014E5")]
|
|
[Address(RVA = "0x2115950", Offset = "0x2114950", VA = "0x182115950")]
|
|
private float EHGKCBCHKJD(float BJAKFKBMOAD, SphericalConstraintRigidbodyPickup.CCMCOINFNBP MCDCCMIJPMC)
|
|
{
|
|
if (MCDCCMIJPMC == SphericalConstraintRigidbodyPickup.CCMCOINFNBP.SPHERE_SURFACE)
|
|
{
|
|
}
|
|
return Mathf.Min(BJAKFKBMOAD, BJAKFKBMOAD);
|
|
}
|
|
|
|
// Token: 0x060014E6 RID: 5350 RVA: 0x0005840C File Offset: 0x0005660C
|
|
[Token(Token = "0x60014E6")]
|
|
[Address(RVA = "0x2116410", Offset = "0x2115410", VA = "0x182116410")]
|
|
public SphericalConstraintRigidbodyPickup()
|
|
{
|
|
this.pitchConstraint.MaxLimitedAngle = typeof(SphericalConstraintRigidbodyPickup.AngularMovementConstraint).TypeHandle;
|
|
this.rollConstraint.MaxLimitedAngle = typeof(SphericalConstraintRigidbodyPickup.AngularMovementConstraint).TypeHandle;
|
|
base..ctor();
|
|
}
|
|
|
|
// Token: 0x04001080 RID: 4224
|
|
[FieldOffset(Offset = "0xD8")]
|
|
[Token(Token = "0x4001080")]
|
|
[Header("Sphere")]
|
|
public Transform sphereOrigin;
|
|
|
|
// Token: 0x04001081 RID: 4225
|
|
[FieldOffset(Offset = "0xE0")]
|
|
[Token(Token = "0x4001081")]
|
|
[Header("Position Constraint")]
|
|
public SphericalConstraintRigidbodyPickup.CCMCOINFNBP positionConstraint;
|
|
|
|
// Token: 0x04001082 RID: 4226
|
|
[FieldOffset(Offset = "0xE4")]
|
|
[Token(Token = "0x4001082")]
|
|
public bool automaticallyCalculateSphereRadius = true;
|
|
|
|
// Token: 0x04001083 RID: 4227
|
|
[FieldOffset(Offset = "0xE8")]
|
|
[Token(Token = "0x4001083")]
|
|
public float sphereRadius = 1f;
|
|
|
|
// Token: 0x04001084 RID: 4228
|
|
[FieldOffset(Offset = "0xEC")]
|
|
[Token(Token = "0x4001084")]
|
|
[Header("Rotational Constraints")]
|
|
public SphericalConstraintRigidbodyPickup.AngularMovementConstraint yawConstraint;
|
|
|
|
// Token: 0x04001085 RID: 4229
|
|
[FieldOffset(Offset = "0xF8")]
|
|
[Token(Token = "0x4001085")]
|
|
public SphericalConstraintRigidbodyPickup.AngularMovementConstraint pitchConstraint;
|
|
|
|
// Token: 0x04001086 RID: 4230
|
|
[FieldOffset(Offset = "0x104")]
|
|
[Token(Token = "0x4001086")]
|
|
public SphericalConstraintRigidbodyPickup.AngularMovementConstraint rollConstraint;
|
|
|
|
// Token: 0x020002AD RID: 685
|
|
[Token(Token = "0x20002AD")]
|
|
public enum ONLCHPKDBCD
|
|
{
|
|
// Token: 0x04001088 RID: 4232
|
|
[Token(Token = "0x4001088")]
|
|
LOCKED,
|
|
// Token: 0x04001089 RID: 4233
|
|
[Token(Token = "0x4001089")]
|
|
LIMITED,
|
|
// Token: 0x0400108A RID: 4234
|
|
[Token(Token = "0x400108A")]
|
|
FREE
|
|
}
|
|
|
|
// Token: 0x020002AE RID: 686
|
|
[Token(Token = "0x20002AE")]
|
|
public enum CCMCOINFNBP
|
|
{
|
|
// Token: 0x0400108C RID: 4236
|
|
[Token(Token = "0x400108C")]
|
|
SPHERE_SURFACE,
|
|
// Token: 0x0400108D RID: 4237
|
|
[Token(Token = "0x400108D")]
|
|
SPHERE_VOLUME
|
|
}
|
|
|
|
// Token: 0x020002AF RID: 687
|
|
[Token(Token = "0x20002AF")]
|
|
[Serializable]
|
|
public struct AngularMovementConstraint
|
|
{
|
|
// Token: 0x0400108E RID: 4238
|
|
[FieldOffset(Offset = "0x0")]
|
|
[Token(Token = "0x400108E")]
|
|
public SphericalConstraintRigidbodyPickup.ONLCHPKDBCD Mode;
|
|
|
|
// Token: 0x0400108F RID: 4239
|
|
[FieldOffset(Offset = "0x4")]
|
|
[Token(Token = "0x400108F")]
|
|
[Header("Limited")]
|
|
public float MinLimitedAngle;
|
|
|
|
// Token: 0x04001090 RID: 4240
|
|
[FieldOffset(Offset = "0x8")]
|
|
[Token(Token = "0x4001090")]
|
|
public float MaxLimitedAngle;
|
|
|
|
// Token: 0x04001091 RID: 4241
|
|
[Token(Token = "0x4001091")]
|
|
public static SphericalConstraintRigidbodyPickup.AngularMovementConstraint Default;
|
|
}
|
|
}
|