Files
2026-04-10 22:50:51 +02:00

177 lines
6.5 KiB
C#

using System;
using Cpp2IlInjected;
using UnityEngine;
namespace RecRoom.Core.AvatarSkeleton
{
// Token: 0x02003041 RID: 12353
[Token(Token = "0x2003041")]
[CreateAssetMenu]
public class AvatarSkeletonContent : ScriptableObject
{
// Token: 0x06015083 RID: 86147 RVA: 0x004ED2C0 File Offset: 0x004EB4C0
[Token(Token = "0x6015083")]
[Address(RVA = "0x14265A0", Offset = "0x14253A0", VA = "0x1814265A0")]
public AvatarSkeletonContent()
{
int num = 0;
this.HeadPivotOffset.z = (float)num;
this.HeadPositionalFollowTime = 0.3f;
this.HeadPositionalDeadZoneRadius = 0.2f;
this.HeadPositionalInnerDeadZoneRadius = 0.08f;
this.HeadPositionalInnerDeadZoneDelayTime = 0.5f;
this.HeadPositionalReenterDeadZoneRadius = 0.04f;
this.HeadRotationalFollowTime = 0.2f;
this.HeadRotationalDeadZoneAngle = 40f;
this.HeadRotationalInnerDeadZoneAngle = 10f;
this.HeadRotationalInnerDeadZoneDelayTime = 0.5f;
this.HeadRotationalReenterDeadZoneAngle = 1f;
this.HeadRotationalMaxFollowAngle = 150f;
this.TypicalFollowTimeSmoothTime = 0.1f;
this.SkeletonPitchFollowTime = 0.2f;
this.MinWalkingBackwardAngleThreshold = 95f;
this.MaxWalkingForwardAngleThreshold = 90f;
this.WalkingForwardBackwardBlendTime = 0.1f;
this.SteeringBlendTime = 0.2f;
this.SpeedChangeTime = 0.1f;
this.DirectionChangeDampTime = 0.08f;
this.TurnInPlaceDampTime = 0.08f;
base..ctor();
}
// Token: 0x0400DF15 RID: 57109
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x400DF15")]
[Header("Body Geometry")]
public Vector3 HeadPivotOffset;
// Token: 0x0400DF16 RID: 57110
[FieldOffset(Offset = "0x24")]
[Token(Token = "0x400DF16")]
[Header("Head Follow")]
[Tooltip("The number of seconds it takes for a positional follow to catch up when not steering.")]
public float HeadPositionalFollowTime;
// Token: 0x0400DF17 RID: 57111
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x400DF17")]
[Tooltip("An outer dead zone that has insantaneous effect.")]
public float HeadPositionalDeadZoneRadius;
// Token: 0x0400DF18 RID: 57112
[FieldOffset(Offset = "0x2C")]
[Token(Token = "0x400DF18")]
[Tooltip("An inner dead zone that has a time-delayed effect.")]
public float HeadPositionalInnerDeadZoneRadius;
// Token: 0x0400DF19 RID: 57113
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x400DF19")]
[Tooltip("The number of seconds the inner dead zone must be exceeded before a follow begins.")]
public float HeadPositionalInnerDeadZoneDelayTime;
// Token: 0x0400DF1A RID: 57114
[FieldOffset(Offset = "0x34")]
[Token(Token = "0x400DF1A")]
[Tooltip("The value that must be reached for a follow to end.")]
public float HeadPositionalReenterDeadZoneRadius;
// Token: 0x0400DF1B RID: 57115
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x400DF1B")]
[Space]
[Tooltip("The number of seconds it takes for a rotational follow to catch up when not steering.")]
public float HeadRotationalFollowTime;
// Token: 0x0400DF1C RID: 57116
[FieldOffset(Offset = "0x3C")]
[Token(Token = "0x400DF1C")]
[Tooltip("An outer dead zone that has insantaneous effect.")]
public float HeadRotationalDeadZoneAngle;
// Token: 0x0400DF1D RID: 57117
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x400DF1D")]
[Tooltip("An inner dead zone that has a time-delayed effect.")]
public float HeadRotationalInnerDeadZoneAngle;
// Token: 0x0400DF1E RID: 57118
[FieldOffset(Offset = "0x44")]
[Token(Token = "0x400DF1E")]
[Tooltip("The number of seconds the inner dead zone must be exceeded before a follow begins.")]
public float HeadRotationalInnerDeadZoneDelayTime;
// Token: 0x0400DF1F RID: 57119
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x400DF1F")]
[Tooltip("The value that must be reached for a follow to end.")]
public float HeadRotationalReenterDeadZoneAngle;
// Token: 0x0400DF20 RID: 57120
[FieldOffset(Offset = "0x4C")]
[Token(Token = "0x400DF20")]
[Tooltip("The maximum amount the skeleton is allowed to follow behind the head.")]
public float HeadRotationalMaxFollowAngle;
// Token: 0x0400DF21 RID: 57121
[FieldOffset(Offset = "0x50")]
[Token(Token = "0x400DF21")]
[Space]
[Tooltip("When just following the head, we use the \"...FollowTime\" settings, but when steering, we use 0 as the follow time. We need a way to smoothly transition between those two different follow times, and that's what this setting is.")]
public float TypicalFollowTimeSmoothTime;
// Token: 0x0400DF22 RID: 57122
[FieldOffset(Offset = "0x54")]
[Token(Token = "0x400DF22")]
[Tooltip("Special-case smooth time for transitioning into flying to compensate for the considerably greateraccelerations and max speeds experienced while flying compared with other typical forms of locomotion.")]
public float FlyingFollowTimeSmoothTime;
// Token: 0x0400DF23 RID: 57123
[FieldOffset(Offset = "0x58")]
[Token(Token = "0x400DF23")]
[Header("Misc")]
public float SkeletonPitchFollowTime;
// Token: 0x0400DF24 RID: 57124
[FieldOffset(Offset = "0x60")]
[Token(Token = "0x400DF24")]
[Tooltip("Time axis is the normalized distance the hand effector currently is from the origin of the upper arm bone. A time of 0 implies the hand effector is directly on top of the upper arm origin (ie: up at your shoulder), a time = 1, that implies the hand effector is somewhere exactly a full arm's length away, a time of 1.7 implies the hand effector is somewhere exactly 1.7 times the arm's length away. Value axis is the effector weight from 0 to 1.")]
public AnimationCurve HandEffectorWeight;
// Token: 0x0400DF25 RID: 57125
[FieldOffset(Offset = "0x68")]
[Token(Token = "0x400DF25")]
public float MinWalkingBackwardAngleThreshold;
// Token: 0x0400DF26 RID: 57126
[FieldOffset(Offset = "0x6C")]
[Token(Token = "0x400DF26")]
public float MaxWalkingForwardAngleThreshold;
// Token: 0x0400DF27 RID: 57127
[FieldOffset(Offset = "0x70")]
[Token(Token = "0x400DF27")]
public float WalkingForwardBackwardBlendTime;
// Token: 0x0400DF28 RID: 57128
[FieldOffset(Offset = "0x74")]
[Token(Token = "0x400DF28")]
public float SteeringBlendTime;
// Token: 0x0400DF29 RID: 57129
[FieldOffset(Offset = "0x78")]
[Token(Token = "0x400DF29")]
public float SpeedChangeTime;
// Token: 0x0400DF2A RID: 57130
[FieldOffset(Offset = "0x7C")]
[Token(Token = "0x400DF2A")]
public float DirectionChangeDampTime;
// Token: 0x0400DF2B RID: 57131
[FieldOffset(Offset = "0x80")]
[Token(Token = "0x400DF2B")]
public float TurnInPlaceDampTime;
}
}