Files
NobetaSource/Cpp2IL/Assembly-CSharp/RootMotion/FinalIK/OffsetModifier.cs
2023-09-06 22:09:22 +02:00

238 lines
7.0 KiB
C#

using System;
using System.Collections;
using Cpp2IlInjected;
using UnityEngine;
namespace RootMotion.FinalIK
{
// Token: 0x02000485 RID: 1157
[Token(Token = "0x2000485")]
public abstract class OffsetModifier : MonoBehaviour
{
// Token: 0x17000294 RID: 660
// (get) Token: 0x06002910 RID: 10512 RVA: 0x0005A24C File Offset: 0x0005844C
[Token(Token = "0x17000294")]
protected float deltaTime
{
[Token(Token = "0x6002910")]
[Address(RVA = "0xE867C0", Offset = "0xE84FC0", VA = "0x180E867C0")]
get
{
return Time.time;
}
}
// Token: 0x06002911 RID: 10513
[Token(Token = "0x6002911")]
[Address(Slot = "4")]
protected abstract void OnModifyOffset();
// Token: 0x06002912 RID: 10514 RVA: 0x0005A260 File Offset: 0x00058460
[Token(Token = "0x6002912")]
[Address(RVA = "0xE86B40", Offset = "0xE85340", VA = "0x180E86B40", Slot = "5")]
protected virtual void Start()
{
int num;
OffsetModifier.<Initiate>d__8 <Initiate>d__ = new OffsetModifier.<Initiate>d__8(num);
num = 0;
<Initiate>d__.<>4__this = this;
Coroutine coroutine = base.StartCoroutine(<Initiate>d__);
}
// Token: 0x06002913 RID: 10515 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6002913")]
[Address(RVA = "0xE868D0", Offset = "0xE850D0", VA = "0x180E868D0")]
private IEnumerator Initiate()
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06002914 RID: 10516 RVA: 0x0005A28C File Offset: 0x0005848C
[Token(Token = "0x6002914")]
[Address(RVA = "0xE86940", Offset = "0xE85140", VA = "0x180E86940")]
private void ModifyOffset()
{
if (base.enabled)
{
int num = 0;
if (num < (int)this.weight)
{
float time = Time.time;
if (num < (int)time)
{
FullBodyBipedIK fullBodyBipedIK = this.ik;
int num2 = 0;
if (!(fullBodyBipedIK == num2))
{
float num3 = this.weight;
int num4 = 0;
float num5 = Mathf.Clamp(num3, (float)num4, 1f);
this.weight = num5;
this.OnModifyOffset();
float time2 = Time.time;
this.lastTime = time2;
}
}
}
}
}
// Token: 0x06002915 RID: 10517 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6002915")]
[Address(RVA = "0xE867E0", Offset = "0xE84FE0", VA = "0x180E867E0")]
protected void ApplyLimits(OffsetModifier.OffsetLimits[] limits)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06002916 RID: 10518 RVA: 0x0005A30C File Offset: 0x0005850C
[Token(Token = "0x6002916")]
[Address(RVA = "0xE86A20", Offset = "0xE85220", VA = "0x180E86A20", Slot = "6")]
protected virtual void OnDestroy()
{
FullBodyBipedIK fullBodyBipedIK = this.ik;
int num = 0;
if (fullBodyBipedIK != num)
{
IKSolverFullBodyBiped solver = this.ik.solver;
IKSolver.UpdateDelegate onPreUpdate = solver.OnPreUpdate;
IKSolver.UpdateDelegate updateDelegate = new IKSolver.UpdateDelegate(this.ModifyOffset);
Delegate @delegate = Delegate.Remove(onPreUpdate, updateDelegate);
int num2 = 0;
if (@delegate != 0 && @delegate == 0)
{
throw new InvalidCastException();
}
solver.OnPreUpdate = num2;
}
}
// Token: 0x06002917 RID: 10519 RVA: 0x0005A378 File Offset: 0x00058578
[Token(Token = "0x6002917")]
[Address(RVA = "0xCB58D0", Offset = "0xCB40D0", VA = "0x180CB58D0")]
protected OffsetModifier()
{
}
// Token: 0x04003265 RID: 12901
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4003265")]
[Tooltip("The master weight")]
public float weight = 1f;
// Token: 0x04003266 RID: 12902
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4003266")]
[Tooltip("Reference to the FBBIK component")]
public FullBodyBipedIK ik;
// Token: 0x04003267 RID: 12903
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4003267")]
protected float lastTime;
// Token: 0x02000486 RID: 1158
[Token(Token = "0x2000486")]
[Serializable]
public class OffsetLimits
{
// Token: 0x06002918 RID: 10520 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6002918")]
[Address(RVA = "0x697B50", Offset = "0x696350", VA = "0x180697B50")]
public void Apply(IKEffector e, Quaternion rootRotation)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x06002919 RID: 10521 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x6002919")]
[Address(RVA = "0x697D20", Offset = "0x696520", VA = "0x180697D20")]
private float SpringAxis(float value, float min, float max)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600291A RID: 10522 RVA: 0x000020D3 File Offset: 0x000002D3
[Token(Token = "0x600291A")]
[Address(RVA = "0x697DA0", Offset = "0x6965A0", VA = "0x180697DA0")]
private float Spring(float value, float limit, bool negative)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600291B RID: 10523 RVA: 0x0005A398 File Offset: 0x00058598
[Token(Token = "0x600291B")]
[Address(RVA = "0x43A830", Offset = "0x439030", VA = "0x18043A830")]
public OffsetLimits()
{
}
// Token: 0x04003268 RID: 12904
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4003268")]
[Tooltip("The effector type (this is just an enum)")]
public FullBodyBipedEffector effector;
// Token: 0x04003269 RID: 12905
[FieldOffset(Offset = "0x14")]
[Token(Token = "0x4003269")]
[Tooltip("Spring force, if zero then this is a hard limit, if not, offset can exceed the limit.")]
public float spring;
// Token: 0x0400326A RID: 12906
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x400326A")]
[Tooltip("Which axes to limit the offset on?")]
public bool x;
// Token: 0x0400326B RID: 12907
[FieldOffset(Offset = "0x19")]
[Token(Token = "0x400326B")]
[Tooltip("Which axes to limit the offset on?")]
public bool y;
// Token: 0x0400326C RID: 12908
[FieldOffset(Offset = "0x1A")]
[Token(Token = "0x400326C")]
[Tooltip("Which axes to limit the offset on?")]
public bool z;
// Token: 0x0400326D RID: 12909
[FieldOffset(Offset = "0x1C")]
[Token(Token = "0x400326D")]
[Tooltip("The limits")]
public float minX;
// Token: 0x0400326E RID: 12910
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x400326E")]
[Tooltip("The limits")]
public float maxX;
// Token: 0x0400326F RID: 12911
[FieldOffset(Offset = "0x24")]
[Token(Token = "0x400326F")]
[Tooltip("The limits")]
public float minY;
// Token: 0x04003270 RID: 12912
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4003270")]
[Tooltip("The limits")]
public float maxY;
// Token: 0x04003271 RID: 12913
[FieldOffset(Offset = "0x2C")]
[Token(Token = "0x4003271")]
[Tooltip("The limits")]
public float minZ;
// Token: 0x04003272 RID: 12914
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x4003272")]
[Tooltip("The limits")]
public float maxZ;
}
}
}