339 lines
10 KiB
C#
339 lines
10 KiB
C#
using System;
|
|
using Cpp2IlInjected;
|
|
using UnityEngine;
|
|
|
|
namespace RootMotion.FinalIK
|
|
{
|
|
// Token: 0x02000048 RID: 72
|
|
[Token(Token = "0x200003D")]
|
|
[HelpURL("http://www.root-motion.com/finalikdox/html/page9.html")]
|
|
[AddComponentMenu("Scripts/RootMotion.FinalIK/Grounder/Grounder Quadruped")]
|
|
public class GrounderQuadruped : Grounder
|
|
{
|
|
// Token: 0x060001C2 RID: 450 RVA: 0x00002053 File Offset: 0x00000253
|
|
[Token(Token = "0x60001B5")]
|
|
[Address(RVA = "0x2D2F690", Offset = "0x2D2E490", VA = "0x182D2F690", Slot = "5")]
|
|
[ContextMenu("User Manual")]
|
|
protected override void OpenUserManual()
|
|
{
|
|
}
|
|
|
|
// Token: 0x060001C3 RID: 451 RVA: 0x00002053 File Offset: 0x00000253
|
|
[Token(Token = "0x60001B6")]
|
|
[Address(RVA = "0x2D2F650", Offset = "0x2D2E450", VA = "0x182D2F650", Slot = "6")]
|
|
[ContextMenu("Scrpt Reference")]
|
|
protected override void OpenScriptReference()
|
|
{
|
|
}
|
|
|
|
// Token: 0x060001C4 RID: 452 RVA: 0x00002053 File Offset: 0x00000253
|
|
[Token(Token = "0x60001B7")]
|
|
[Address(RVA = "0x2D2F6D0", Offset = "0x2D2E4D0", VA = "0x182D2F6D0", Slot = "4")]
|
|
public override void ResetPosition()
|
|
{
|
|
}
|
|
|
|
// Token: 0x060001C5 RID: 453 RVA: 0x000030C0 File Offset: 0x000012C0
|
|
[Token(Token = "0x60001B8")]
|
|
[Address(RVA = "0x2D2E540", Offset = "0x2D2D340", VA = "0x182D2E540")]
|
|
private bool IsReadyToInitiate()
|
|
{
|
|
return default(bool);
|
|
}
|
|
|
|
// Token: 0x060001C6 RID: 454 RVA: 0x000030D8 File Offset: 0x000012D8
|
|
[Token(Token = "0x60001B9")]
|
|
[Address(RVA = "0x2D2E400", Offset = "0x2D2D200", VA = "0x182D2E400")]
|
|
private bool IsReadyToInitiateLegs(IK[] ikComponents)
|
|
{
|
|
return default(bool);
|
|
}
|
|
|
|
// Token: 0x060001C7 RID: 455 RVA: 0x00002053 File Offset: 0x00000253
|
|
[Token(Token = "0x60001BA")]
|
|
[Address(RVA = "0x2D2E810", Offset = "0x2D2D610", VA = "0x182D2E810")]
|
|
private void OnDisable()
|
|
{
|
|
}
|
|
|
|
// Token: 0x060001C8 RID: 456 RVA: 0x00002053 File Offset: 0x00000253
|
|
[Token(Token = "0x60001BB")]
|
|
[Address(RVA = "0x2D30240", Offset = "0x2D2F040", VA = "0x182D30240")]
|
|
private void Update()
|
|
{
|
|
}
|
|
|
|
// Token: 0x060001C9 RID: 457 RVA: 0x00002053 File Offset: 0x00000253
|
|
[Token(Token = "0x60001BC")]
|
|
[Address(RVA = "0x2D2E060", Offset = "0x2D2CE60", VA = "0x182D2E060")]
|
|
private void Initiate()
|
|
{
|
|
}
|
|
|
|
// Token: 0x060001CA RID: 458 RVA: 0x00002050 File Offset: 0x00000250
|
|
[Token(Token = "0x60001BD")]
|
|
[Address(RVA = "0x2D2DC50", Offset = "0x2D2CA50", VA = "0x182D2DC50")]
|
|
private Transform[] InitiateFeet(IK[] ikComponents, ref GrounderQuadruped.Foot[] f, int indexOffset)
|
|
{
|
|
return null;
|
|
}
|
|
|
|
// Token: 0x060001CB RID: 459 RVA: 0x00002053 File Offset: 0x00000253
|
|
[Token(Token = "0x60001BE")]
|
|
[Address(RVA = "0x2D2E690", Offset = "0x2D2D490", VA = "0x182D2E690")]
|
|
private void LateUpdate()
|
|
{
|
|
}
|
|
|
|
// Token: 0x060001CC RID: 460 RVA: 0x00002053 File Offset: 0x00000253
|
|
[Token(Token = "0x60001BF")]
|
|
[Address(RVA = "0x2D2F710", Offset = "0x2D2E510", VA = "0x182D2F710")]
|
|
private void RootRotation()
|
|
{
|
|
}
|
|
|
|
// Token: 0x060001CD RID: 461 RVA: 0x00002053 File Offset: 0x00000253
|
|
[Token(Token = "0x60001C0")]
|
|
[Address(RVA = "0x2D2EC80", Offset = "0x2D2DA80", VA = "0x182D2EC80")]
|
|
private void OnSolverUpdate()
|
|
{
|
|
}
|
|
|
|
// Token: 0x060001CE RID: 462 RVA: 0x00002053 File Offset: 0x00000253
|
|
[Token(Token = "0x60001C1")]
|
|
[Address(RVA = "0x2D2FEC0", Offset = "0x2D2ECC0", VA = "0x182D2FEC0")]
|
|
private void UpdateForefeetRoot()
|
|
{
|
|
}
|
|
|
|
// Token: 0x060001CF RID: 463 RVA: 0x00002053 File Offset: 0x00000253
|
|
[Token(Token = "0x60001C2")]
|
|
[Address(RVA = "0x2D2FCE0", Offset = "0x2D2EAE0", VA = "0x182D2FCE0")]
|
|
private void SetFootIK(GrounderQuadruped.Foot foot, float maxOffset)
|
|
{
|
|
}
|
|
|
|
// Token: 0x060001D0 RID: 464 RVA: 0x00002053 File Offset: 0x00000253
|
|
[Token(Token = "0x60001C3")]
|
|
[Address(RVA = "0x2D2E890", Offset = "0x2D2D690", VA = "0x182D2E890")]
|
|
private void OnPostSolverUpdate()
|
|
{
|
|
}
|
|
|
|
// Token: 0x060001D1 RID: 465 RVA: 0x00002053 File Offset: 0x00000253
|
|
[Token(Token = "0x60001C4")]
|
|
[Address(RVA = "0x2D2E7D0", Offset = "0x2D2D5D0", VA = "0x182D2E7D0")]
|
|
private void OnDestroy()
|
|
{
|
|
}
|
|
|
|
// Token: 0x060001D2 RID: 466 RVA: 0x00002053 File Offset: 0x00000253
|
|
[Token(Token = "0x60001C5")]
|
|
[Address(RVA = "0x2D2DA50", Offset = "0x2D2C850", VA = "0x182D2DA50")]
|
|
private void DestroyLegs(IK[] ikComponents)
|
|
{
|
|
}
|
|
|
|
// Token: 0x060001D3 RID: 467 RVA: 0x00002053 File Offset: 0x00000253
|
|
[Token(Token = "0x60001C6")]
|
|
[Address(RVA = "0x2D30410", Offset = "0x2D2F210", VA = "0x182D30410")]
|
|
public GrounderQuadruped()
|
|
{
|
|
}
|
|
|
|
// Token: 0x04000196 RID: 406
|
|
[FieldOffset(Offset = "0x40")]
|
|
[Token(Token = "0x4000152")]
|
|
[Tooltip("The Grounding solver for the forelegs.")]
|
|
public Grounding forelegSolver;
|
|
|
|
// Token: 0x04000197 RID: 407
|
|
[FieldOffset(Offset = "0x48")]
|
|
[Token(Token = "0x4000153")]
|
|
[Tooltip("The weight of rotating the character root to the ground angle (range: 0 - 1).")]
|
|
[Range(0f, 1f)]
|
|
public float rootRotationWeight;
|
|
|
|
// Token: 0x04000198 RID: 408
|
|
[FieldOffset(Offset = "0x4C")]
|
|
[Token(Token = "0x4000154")]
|
|
[Tooltip("The maximum angle of rotating the quadruped downwards (going downhill, range: -90 - 0).")]
|
|
[Range(-90f, 0f)]
|
|
public float minRootRotation;
|
|
|
|
// Token: 0x04000199 RID: 409
|
|
[FieldOffset(Offset = "0x50")]
|
|
[Token(Token = "0x4000155")]
|
|
[Tooltip("The maximum angle of rotating the quadruped upwards (going uphill, range: 0 - 90).")]
|
|
[Range(0f, 90f)]
|
|
public float maxRootRotation;
|
|
|
|
// Token: 0x0400019A RID: 410
|
|
[FieldOffset(Offset = "0x54")]
|
|
[Token(Token = "0x4000156")]
|
|
[Tooltip("The speed of interpolating the character root rotation (range: 0 - inf).")]
|
|
public float rootRotationSpeed;
|
|
|
|
// Token: 0x0400019B RID: 411
|
|
[FieldOffset(Offset = "0x58")]
|
|
[Token(Token = "0x4000157")]
|
|
[Tooltip("The maximum IK offset for the legs (range: 0 - inf).")]
|
|
public float maxLegOffset;
|
|
|
|
// Token: 0x0400019C RID: 412
|
|
[FieldOffset(Offset = "0x5C")]
|
|
[Token(Token = "0x4000158")]
|
|
[Tooltip("The maximum IK offset for the forelegs (range: 0 - inf).")]
|
|
public float maxForeLegOffset;
|
|
|
|
// Token: 0x0400019D RID: 413
|
|
[FieldOffset(Offset = "0x60")]
|
|
[Token(Token = "0x4000159")]
|
|
[Tooltip("The weight of maintaining the head's rotation as it was before solving the Grounding (range: 0 - 1).")]
|
|
[Range(0f, 1f)]
|
|
public float maintainHeadRotationWeight;
|
|
|
|
// Token: 0x0400019E RID: 414
|
|
[FieldOffset(Offset = "0x68")]
|
|
[Token(Token = "0x400015A")]
|
|
[Tooltip("The root Transform of the character, with the rigidbody and the collider.")]
|
|
public Transform characterRoot;
|
|
|
|
// Token: 0x0400019F RID: 415
|
|
[FieldOffset(Offset = "0x70")]
|
|
[Token(Token = "0x400015B")]
|
|
[Tooltip("The pelvis transform. Common ancestor of both legs and the spine.")]
|
|
public Transform pelvis;
|
|
|
|
// Token: 0x040001A0 RID: 416
|
|
[FieldOffset(Offset = "0x78")]
|
|
[Token(Token = "0x400015C")]
|
|
[Tooltip("The last bone in the spine that is the common parent for both forelegs.")]
|
|
public Transform lastSpineBone;
|
|
|
|
// Token: 0x040001A1 RID: 417
|
|
[FieldOffset(Offset = "0x80")]
|
|
[Token(Token = "0x400015D")]
|
|
[Tooltip("The head (optional, if you intend to maintain it's rotation).")]
|
|
public Transform head;
|
|
|
|
// Token: 0x040001A2 RID: 418
|
|
[FieldOffset(Offset = "0x88")]
|
|
[Token(Token = "0x400015E")]
|
|
public IK[] legs;
|
|
|
|
// Token: 0x040001A3 RID: 419
|
|
[FieldOffset(Offset = "0x90")]
|
|
[Token(Token = "0x400015F")]
|
|
public IK[] forelegs;
|
|
|
|
// Token: 0x040001A4 RID: 420
|
|
[FieldOffset(Offset = "0x98")]
|
|
[Token(Token = "0x4000160")]
|
|
[HideInInspector]
|
|
public Vector3 gravity;
|
|
|
|
// Token: 0x040001A5 RID: 421
|
|
[FieldOffset(Offset = "0xA8")]
|
|
[Token(Token = "0x4000161")]
|
|
private GrounderQuadruped.Foot[] feet;
|
|
|
|
// Token: 0x040001A6 RID: 422
|
|
[FieldOffset(Offset = "0xB0")]
|
|
[Token(Token = "0x4000162")]
|
|
private Vector3 animatedPelvisLocalPosition;
|
|
|
|
// Token: 0x040001A7 RID: 423
|
|
[FieldOffset(Offset = "0xBC")]
|
|
[Token(Token = "0x4000163")]
|
|
private Quaternion animatedPelvisLocalRotation;
|
|
|
|
// Token: 0x040001A8 RID: 424
|
|
[FieldOffset(Offset = "0xCC")]
|
|
[Token(Token = "0x4000164")]
|
|
private Quaternion animatedHeadLocalRotation;
|
|
|
|
// Token: 0x040001A9 RID: 425
|
|
[FieldOffset(Offset = "0xDC")]
|
|
[Token(Token = "0x4000165")]
|
|
private Vector3 solvedPelvisLocalPosition;
|
|
|
|
// Token: 0x040001AA RID: 426
|
|
[FieldOffset(Offset = "0xE8")]
|
|
[Token(Token = "0x4000166")]
|
|
private Quaternion solvedPelvisLocalRotation;
|
|
|
|
// Token: 0x040001AB RID: 427
|
|
[FieldOffset(Offset = "0xF8")]
|
|
[Token(Token = "0x4000167")]
|
|
private Quaternion solvedHeadLocalRotation;
|
|
|
|
// Token: 0x040001AC RID: 428
|
|
[FieldOffset(Offset = "0x108")]
|
|
[Token(Token = "0x4000168")]
|
|
private int solvedFeet;
|
|
|
|
// Token: 0x040001AD RID: 429
|
|
[FieldOffset(Offset = "0x10C")]
|
|
[Token(Token = "0x4000169")]
|
|
private bool solved;
|
|
|
|
// Token: 0x040001AE RID: 430
|
|
[FieldOffset(Offset = "0x110")]
|
|
[Token(Token = "0x400016A")]
|
|
private float angle;
|
|
|
|
// Token: 0x040001AF RID: 431
|
|
[FieldOffset(Offset = "0x118")]
|
|
[Token(Token = "0x400016B")]
|
|
private Transform forefeetRoot;
|
|
|
|
// Token: 0x040001B0 RID: 432
|
|
[FieldOffset(Offset = "0x120")]
|
|
[Token(Token = "0x400016C")]
|
|
private Quaternion headRotation;
|
|
|
|
// Token: 0x040001B1 RID: 433
|
|
[FieldOffset(Offset = "0x130")]
|
|
[Token(Token = "0x400016D")]
|
|
private float lastWeight;
|
|
|
|
// Token: 0x040001B2 RID: 434
|
|
[FieldOffset(Offset = "0x138")]
|
|
[Token(Token = "0x400016E")]
|
|
private Rigidbody characterRootRigidbody;
|
|
|
|
// Token: 0x02000049 RID: 73
|
|
[Token(Token = "0x20000D9")]
|
|
public struct Foot
|
|
{
|
|
// Token: 0x060001D4 RID: 468 RVA: 0x00002053 File Offset: 0x00000253
|
|
[Token(Token = "0x600064A")]
|
|
[Address(RVA = "0x2D287E0", Offset = "0x2D275E0", VA = "0x182D287E0")]
|
|
public Foot(IKSolver solver, Transform transform)
|
|
{
|
|
}
|
|
|
|
// Token: 0x040001B3 RID: 435
|
|
[FieldOffset(Offset = "0x0")]
|
|
[Token(Token = "0x4000611")]
|
|
public IKSolver solver;
|
|
|
|
// Token: 0x040001B4 RID: 436
|
|
[FieldOffset(Offset = "0x8")]
|
|
[Token(Token = "0x4000612")]
|
|
public Transform transform;
|
|
|
|
// Token: 0x040001B5 RID: 437
|
|
[FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x4000613")]
|
|
public Quaternion rotation;
|
|
|
|
// Token: 0x040001B6 RID: 438
|
|
[FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x4000614")]
|
|
public Grounding.Leg leg;
|
|
}
|
|
}
|
|
}
|