Files
2026-04-08 23:40:05 +02:00

189 lines
7.5 KiB
C#

using System;
using System.Collections.Generic;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
using UnityEngine;
namespace RecRoom.Avatar.Face
{
// Token: 0x020021CD RID: 8653
[Token(Token = "0x20021CD")]
[StructLayout(3)]
public abstract class FaceFeatureBase : ScriptableObject
{
// Token: 0x170027F5 RID: 10229
// (get) Token: 0x0600EE72 RID: 61042 RVA: 0x00388930 File Offset: 0x00386B30
[Token(Token = "0x170027F5")]
public string Guid
{
[Token(Token = "0x600EE72")]
[Address(RVA = "0x3C1240", Offset = "0x3BFC40", VA = "0x1803C1240")]
get
{
return this.GuidString;
}
}
// Token: 0x170027F6 RID: 10230
// (get) Token: 0x0600EE73 RID: 61043 RVA: 0x00388944 File Offset: 0x00386B44
[Token(Token = "0x170027F6")]
public IEnumerable<Sprite> SrcSprites
{
[Token(Token = "0x600EE73")]
[Address(RVA = "0x3C1220", Offset = "0x3BFC20", VA = "0x1803C1220")]
get
{
/*
An exception occurred when decompiling this method (0600EE73)
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Collections.Generic.IEnumerable`1<UnityEngine.Sprite> RecRoom.Avatar.Face.FaceFeatureBase::get_SrcSprites()
---> System.Exception: Basic block has to end with unconditional control flow.
{
Block_0:
stloc:class [UnityEngine.CoreModule]UnityEngine.Sprite[](var_0_06, ldfld:class [UnityEngine.CoreModule]UnityEngine.Sprite[](FaceFeatureBase::Sprites, ldloc:FaceFeatureBase(this)))
}
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: 0x170027F7 RID: 10231
// (get) Token: 0x0600EE74 RID: 61044 RVA: 0x00388958 File Offset: 0x00386B58
[Token(Token = "0x170027F7")]
public Sprite MenuButtonSprite
{
[Token(Token = "0x600EE74")]
[Address(RVA = "0x3C1230", Offset = "0x3BFC30", VA = "0x1803C1230")]
get
{
return this.menuButtonSprite;
}
}
// Token: 0x170027F8 RID: 10232
// (get) Token: 0x0600EE75 RID: 61045 RVA: 0x0038896C File Offset: 0x00386B6C
[Token(Token = "0x170027F8")]
public int TextureCount
{
[Token(Token = "0x600EE75")]
[Address(RVA = "0x12A32E0", Offset = "0x12A1CE0", VA = "0x1812A32E0")]
get
{
return this.Sprites.Length;
}
}
// Token: 0x170027F9 RID: 10233
// (get) Token: 0x0600EE76 RID: 61046
[Token(Token = "0x170027F9")]
public abstract FaceFeatureType FaceFeatureType
{
[Token(Token = "0x600EE76")]
[Address(Slot = "4")]
get;
}
// Token: 0x170027FA RID: 10234
// (get) Token: 0x0600EE77 RID: 61047 RVA: 0x0000220F File Offset: 0x0000040F
// (set) Token: 0x0600EE78 RID: 61048 RVA: 0x0038898C File Offset: 0x00386B8C
[Token(Token = "0x170027FA")]
public Vector2 JitteredScale
{
[Token(Token = "0x600EE77")]
[Address(RVA = "0x12A32C0", Offset = "0x12A1CC0", VA = "0x1812A32C0")]
[CompilerGenerated]
get
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
[Token(Token = "0x600EE78")]
[Address(RVA = "0x12A3300", Offset = "0x12A1D00", VA = "0x1812A3300")]
[CompilerGenerated]
private set
{
this.<JitteredScale>k__BackingField = value;
this.<JitteredScale>k__BackingField.y = (float)0;
}
}
// Token: 0x0600EE79 RID: 61049 RVA: 0x0000220F File Offset: 0x0000040F
[Token(Token = "0x600EE79")]
[Address(RVA = "0x12A30E0", Offset = "0x12A1AE0", VA = "0x1812A30E0")]
protected static Vector2 JitteredVector2(Vector2 initial, Vector2 maxJitter)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
}
// Token: 0x0600EE7A RID: 61050 RVA: 0x003889AC File Offset: 0x00386BAC
[Token(Token = "0x600EE7A")]
[Address(RVA = "0x12A3150", Offset = "0x12A1B50", VA = "0x1812A3150", Slot = "5")]
public virtual void NewJitter()
{
float y = this.DefaultScale.y;
float num = y;
float num2 = global::UnityEngine.Random.Range(num, y);
this.<JitteredScale>k__BackingField = num;
this.<JitteredScale>k__BackingField.y = num2;
}
// Token: 0x0600EE7B RID: 61051 RVA: 0x003889E4 File Offset: 0x00386BE4
[Token(Token = "0x600EE7B")]
[Address(RVA = "0x12A31D0", Offset = "0x12A1BD0", VA = "0x1812A31D0")]
protected FaceFeatureBase()
{
Guid guid = global::System.Guid.NewGuid();
string text;
this.GuidString = text;
Vector2 one = Vector2.one;
this.DefaultScale = one;
this.DefaultScale.y = (float)0;
Vector2 vector = Vector2.one * 0.025f;
this.MaxJitterScale = vector;
this.MaxJitterScale.y = (float)0;
base..ctor();
}
// Token: 0x04009E5A RID: 40538
[Token(Token = "0x4009E5A")]
private const bool HIGH_QUALTIY_COMPRESS = true;
// Token: 0x04009E5B RID: 40539
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x4009E5B")]
[SerializeField]
[Tooltip("This guid is auto generated at the time of the asset creation and should never change if you do not want to break an existing player's feature selection")]
private string GuidString;
// Token: 0x04009E5C RID: 40540
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x4009E5C")]
[SerializeField]
private Sprite[] Sprites;
// Token: 0x04009E5D RID: 40541
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x4009E5D")]
[SerializeField]
private Sprite menuButtonSprite;
// Token: 0x04009E5E RID: 40542
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
[Token(Token = "0x4009E5E")]
public Vector2 DefaultScale;
// Token: 0x04009E5F RID: 40543
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
[Token(Token = "0x4009E5F")]
public Vector2 MaxJitterScale;
}
}