Files
niko c12fbe3fc6 m
2026-04-12 16:51:38 +02:00

297 lines
10 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using Cpp2IlInjected;
using UnityEngine;
namespace RecRoom.Avatars.Data.Shared
{
// Token: 0x020024D1 RID: 9425
[Token(Token = "0x20024D1")]
[Serializable]
public class AvatarItemData : ISerializationCallbackReceiver
{
// Token: 0x0600F174 RID: 61812 RVA: 0x00373CDC File Offset: 0x00371EDC
[Token(Token = "0x600F174")]
[Address(RVA = "0x1D08460", Offset = "0x1D07460", VA = "0x181D08460")]
public static string EPCEJEBHDPN()
{
Guid guid = Guid.NewGuid();
string text;
return text;
}
// Token: 0x17002747 RID: 10055
// (get) Token: 0x0600F175 RID: 61813 RVA: 0x00373CF4 File Offset: 0x00371EF4
[Token(Token = "0x17002747")]
public bool IsTeamItem
{
[Token(Token = "0x600F175")]
[Address(RVA = "0x1D08C80", Offset = "0x1D07C80", VA = "0x181D08C80")]
get
{
return this.OutfitType.CHPHKOKLFEK();
}
}
// Token: 0x0600F176 RID: 61814 RVA: 0x00373D0C File Offset: 0x00371F0C
[Token(Token = "0x600F176")]
[Address(RVA = "0x1D08620", Offset = "0x1D07620", VA = "0x181D08620")]
protected bool FKCEAFNEBAM(AvatarItemData HPKICPNGMDJ)
{
string name = HPKICPNGMDJ.Name;
if (string.Equals(this.Name, name))
{
string avatarItemGuid = HPKICPNGMDJ.AvatarItemGuid;
if (string.Equals(this.AvatarItemGuid, avatarItemGuid))
{
OutfitType outfitType = HPKICPNGMDJ.OutfitType;
if (this.OutfitType == outfitType)
{
bool hidesHair = HPKICPNGMDJ.HidesHair;
if (this.HidesHair == hidesHair)
{
bool hidesLeftEar = HPKICPNGMDJ.HidesLeftEar;
if (this.HidesLeftEar == hidesLeftEar)
{
bool hidesRightEar = HPKICPNGMDJ.HidesRightEar;
if (this.HidesRightEar == hidesRightEar)
{
bool hidesHand = HPKICPNGMDJ.HidesHand;
if (this.HidesHand == hidesHand)
{
bool usesHairColor = HPKICPNGMDJ.UsesHairColor;
return this.UsesHairColor == usesHairColor;
}
}
}
}
}
}
}
throw new NullReferenceException();
}
// Token: 0x0600F177 RID: 61815 RVA: 0x00373DBC File Offset: 0x00371FBC
[Token(Token = "0x600F177")]
[Address(RVA = "0x1D084D0", Offset = "0x1D074D0", VA = "0x181D084D0", Slot = "0")]
public override bool Equals(object NLNHFEEMFBN)
{
Type type = NLNHFEEMFBN.GetType();
Type type2 = base.GetType();
bool flag = type != type2;
if (!flag)
{
string name = this.Name;
if (flag)
{
string avatarItemGuid = this.AvatarItemGuid;
if (flag && this.OutfitType == (flag ? ((OutfitType)1) : OutfitType.Hat) && this.HidesHair == flag && this.HidesLeftEar == flag && this.HidesRightEar == flag && this.HidesHand == flag)
{
return this.UsesHairColor == flag;
}
}
}
throw new NullReferenceException();
}
// Token: 0x0600F178 RID: 61816 RVA: 0x00373E3C File Offset: 0x0037203C
[Token(Token = "0x600F178")]
[Address(RVA = "0x1D086C0", Offset = "0x1D076C0", VA = "0x181D086C0", Slot = "2")]
public override int GetHashCode()
{
int num = 0;
string name = this.Name;
if (name != 0)
{
name.Finalize();
}
string avatarItemGuid = this.AvatarItemGuid;
if (avatarItemGuid != 0)
{
avatarItemGuid.Finalize();
}
long num2 = (long)(num * (int)((uint)397) * (int)((uint)397) * (int)((uint)397) * (int)((uint)397) * (int)((uint)397));
int num3;
return num3;
}
// Token: 0x0600F179 RID: 61817 RVA: 0x00373E98 File Offset: 0x00372098
[Token(Token = "0x600F179")]
[Address(RVA = "0x1273C80", Offset = "0x1272C80", VA = "0x181273C80")]
public static bool JGIMJGNAJHP(AvatarItemData EONHDDFEGMC, AvatarItemData LDFLEALOHOI)
{
return object.Equals(EONHDDFEGMC, LDFLEALOHOI);
}
// Token: 0x0600F17A RID: 61818 RVA: 0x00373EAC File Offset: 0x003720AC
[Token(Token = "0x600F17A")]
[Address(RVA = "0x12738E0", Offset = "0x12728E0", VA = "0x1812738E0")]
public static bool BDBLGMKABNK(AvatarItemData EONHDDFEGMC, AvatarItemData LDFLEALOHOI)
{
return !object.Equals(EONHDDFEGMC, LDFLEALOHOI);
}
// Token: 0x0600F17B RID: 61819 RVA: 0x00373EC4 File Offset: 0x003720C4
[Token(Token = "0x600F17B")]
[Address(RVA = "0x1D08AA0", Offset = "0x1D07AA0", VA = "0x181D08AA0", Slot = "4")]
public void OnBeforeSerialize()
{
Dictionary<AvatarHairPattern, Texture2D> hairPatternOverrideMap = this.HairPatternOverrideMap;
if (hairPatternOverrideMap != 0)
{
Func<KeyValuePair<AvatarHairPattern, Texture2D>, AvatarHairPatternOverride> <>9__21_ = AvatarItemData.<>c.<>9__21_0;
if (<>9__21_ == 0)
{
AvatarItemData.<>c.<>9__21_0 = delegate(KeyValuePair<AvatarHairPattern, Texture2D> a)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
};
}
List<AvatarHairPatternOverride> list = Enumerable.ToList<AvatarHairPatternOverride>(Enumerable.Select<KeyValuePair<AvatarHairPattern, Texture2D>, AvatarHairPatternOverride>(hairPatternOverrideMap, <>9__21_));
this.HairPatternOverrides = list;
}
Dictionary<AvatarHairPattern, Texture2D> beardPatternOverrideMap = this.BeardPatternOverrideMap;
if (beardPatternOverrideMap != 0)
{
Func<KeyValuePair<AvatarHairPattern, Texture2D>, AvatarHairPatternOverride> func;
if (AvatarItemData.<>c.<>9__21_1 == 0)
{
func = delegate(KeyValuePair<AvatarHairPattern, Texture2D> a)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
};
AvatarItemData.<>c.<>9__21_1 = func;
}
List<AvatarHairPatternOverride> list2 = Enumerable.ToList<AvatarHairPatternOverride>(Enumerable.Select<KeyValuePair<AvatarHairPattern, Texture2D>, AvatarHairPatternOverride>(beardPatternOverrideMap, func));
this.BeardPatternOverrides = list2;
}
}
// Token: 0x0600F17C RID: 61820 RVA: 0x00373F54 File Offset: 0x00372154
[Token(Token = "0x600F17C")]
[Address(RVA = "0x1D087B0", Offset = "0x1D077B0", VA = "0x181D087B0", Slot = "5")]
public void OnAfterDeserialize()
{
List<AvatarHairPatternOverride> hairPatternOverrides = this.HairPatternOverrides;
Func<AvatarHairPatternOverride, AvatarHairPattern> <>9__22_ = AvatarItemData.<>c.<>9__22_0;
if (<>9__22_ == 0)
{
AvatarItemData.<>c.<>9__22_0 = delegate(AvatarHairPatternOverride a)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
};
}
Func<AvatarHairPatternOverride, Texture2D> func;
if (AvatarItemData.<>c.<>9__22_1 == 0)
{
func = delegate(AvatarHairPatternOverride a)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
};
AvatarItemData.<>c.<>9__22_1 = func;
}
Dictionary<AvatarHairPatternOverride, AvatarHairPattern> dictionary = Enumerable.ToDictionary<AvatarHairPatternOverride, AvatarHairPattern, Texture2D>(hairPatternOverrides, <>9__22_, func);
this.HairPatternOverrideMap = dictionary;
List<AvatarHairPatternOverride> beardPatternOverrides = this.BeardPatternOverrides;
Func<AvatarHairPatternOverride, AvatarHairPattern> func2;
if (AvatarItemData.<>c.<>9__22_2 == 0)
{
func2 = delegate(AvatarHairPatternOverride a)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
};
AvatarItemData.<>c.<>9__22_2 = func2;
}
Func<AvatarHairPatternOverride, Texture2D> func3;
if (AvatarItemData.<>c.<>9__22_3 == 0)
{
func3 = delegate(AvatarHairPatternOverride a)
{
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
};
AvatarItemData.<>c.<>9__22_3 = func3;
}
Dictionary<AvatarHairPatternOverride, AvatarHairPattern> dictionary2 = Enumerable.ToDictionary<AvatarHairPatternOverride, AvatarHairPattern, Texture2D>(beardPatternOverrides, func2, func3);
this.BeardPatternOverrideMap = dictionary2;
}
// Token: 0x0600F17D RID: 61821 RVA: 0x00374018 File Offset: 0x00372218
[Token(Token = "0x600F17D")]
[Address(RVA = "0x412370", Offset = "0x411370", VA = "0x180412370")]
public AvatarItemData()
{
}
// Token: 0x04009F0A RID: 40714
[FieldOffset(Offset = "0x10")]
[Token(Token = "0x4009F0A")]
public string Name;
// Token: 0x04009F0B RID: 40715
[FieldOffset(Offset = "0x18")]
[Token(Token = "0x4009F0B")]
public string AvatarItemGuid;
// Token: 0x04009F0C RID: 40716
[FieldOffset(Offset = "0x20")]
[Token(Token = "0x4009F0C")]
public OutfitType OutfitType;
// Token: 0x04009F0D RID: 40717
[FieldOffset(Offset = "0x24")]
[Token(Token = "0x4009F0D")]
[Header("Mesh Generation")]
public bool HidesHair;
// Token: 0x04009F0E RID: 40718
[FieldOffset(Offset = "0x25")]
[Token(Token = "0x4009F0E")]
public bool HidesHand;
// Token: 0x04009F0F RID: 40719
[FieldOffset(Offset = "0x26")]
[Token(Token = "0x4009F0F")]
public bool HidesLeftEar;
// Token: 0x04009F10 RID: 40720
[FieldOffset(Offset = "0x27")]
[Token(Token = "0x4009F10")]
public bool HidesRightEar;
// Token: 0x04009F11 RID: 40721
[FieldOffset(Offset = "0x28")]
[Token(Token = "0x4009F11")]
[Header("Appearance")]
[Tooltip("Defines if this item is effected by the global hair color changes.")]
public bool UsesHairColor;
// Token: 0x04009F12 RID: 40722
[FieldOffset(Offset = "0x29")]
[Token(Token = "0x4009F12")]
public bool UsesTeamColor;
// Token: 0x04009F13 RID: 40723
[FieldOffset(Offset = "0x30")]
[Token(Token = "0x4009F13")]
[SerializeField]
private List<AvatarHairPatternOverride> HairPatternOverrides;
// Token: 0x04009F14 RID: 40724
[FieldOffset(Offset = "0x38")]
[Token(Token = "0x4009F14")]
public Dictionary<AvatarHairPattern, Texture2D> HairPatternOverrideMap;
// Token: 0x04009F15 RID: 40725
[FieldOffset(Offset = "0x40")]
[Token(Token = "0x4009F15")]
[SerializeField]
private List<AvatarHairPatternOverride> BeardPatternOverrides;
// Token: 0x04009F16 RID: 40726
[FieldOffset(Offset = "0x48")]
[Token(Token = "0x4009F16")]
public Dictionary<AvatarHairPattern, Texture2D> BeardPatternOverrideMap;
}
}