Files
Jan2021-Cpp2Il-Dump/Assembly-CSharp/RecRoom/VFX/JitteringSprite.cs
T
2026-04-08 23:40:05 +02:00

296 lines
10 KiB
C#

using System;
using System.Runtime.InteropServices;
using Cpp2IlInjected;
using UnityEngine;
using UnityEngine.Experimental.Rendering;
using UnityEngine.Rendering;
namespace RecRoom.VFX
{
// Token: 0x02001FEC RID: 8172
[Token(Token = "0x2001FEC")]
[Serializable]
[StructLayout(3)]
public class JitteringSprite
{
// Token: 0x170025CC RID: 9676
// (get) Token: 0x0600E270 RID: 57968 RVA: 0x0035DE5C File Offset: 0x0035C05C
[Token(Token = "0x170025CC")]
public bool UseOneMaterialMode
{
[Token(Token = "0x600E270")]
[Address(RVA = "0x13261B0", Offset = "0x1324BB0", VA = "0x1813261B0")]
get
{
if (this.applyToOnlyOneRendererMaterial)
{
int num = this.rendererMaterialIndex;
Material[] materialArray = this.renderer.GetMaterialArray();
return num < materialArray.Length;
}
throw new NullReferenceException();
}
}
// Token: 0x170025CD RID: 9677
// (get) Token: 0x0600E271 RID: 57969 RVA: 0x0035DE98 File Offset: 0x0035C098
// (set) Token: 0x0600E272 RID: 57970 RVA: 0x0035DEAC File Offset: 0x0035C0AC
[Token(Token = "0x170025CD")]
public MaterialPropertyBlock MaterialProperties
{
[Token(Token = "0x600E271")]
[Address(RVA = "0x48F050", Offset = "0x48DA50", VA = "0x18048F050")]
get;
[Token(Token = "0x600E272")]
[Address(RVA = "0x52F860", Offset = "0x52E260", VA = "0x18052F860")]
private set;
}
// Token: 0x0600E273 RID: 57971 RVA: 0x0035DEC0 File Offset: 0x0035C0C0
[Token(Token = "0x600E273")]
[Address(RVA = "0x1325F80", Offset = "0x1324980", VA = "0x181325F80")]
public void ILJAJHKIHFO(BlendMode PMDCFMEPFJM, BlendMode KAGOFBONLNN)
{
this.srcBlend = (int)PMDCFMEPFJM;
this.destBlend = (int)KAGOFBONLNN;
if (this.applyToOnlyOneRendererMaterial)
{
int num = this.rendererMaterialIndex;
Material[] materialArray = this.renderer.GetMaterialArray();
}
int num2 = this.rendererMaterialIndex;
Material[] materialArray2 = this.renderer.GetMaterialArray();
if (num2 < materialArray2.Length)
{
Material[] sharedMaterialArray = this.renderer.GetSharedMaterialArray();
int num3 = this.rendererMaterialIndex;
Material material = sharedMaterialArray[num3];
int num4 = this.srcBlend;
material.SetInt("_SrcBlend", num4);
Material[] sharedMaterialArray2 = this.renderer.GetSharedMaterialArray();
int num5 = this.rendererMaterialIndex;
Material material2 = sharedMaterialArray2[num5];
int num6 = this.destBlend;
material2.SetInt("_DstBlend", num6);
}
}
// Token: 0x0600E274 RID: 57972 RVA: 0x0035DF90 File Offset: 0x0035C190
[Token(Token = "0x600E274")]
[Address(RVA = "0x1325960", Offset = "0x1324360", VA = "0x181325960")]
public void FPPDOGCMPEN([Optional] Sprite GAGHBADKMMH)
{
int num = 0;
int num2 = 0;
if (GAGHBADKMMH != num2)
{
this.sprite = GAGHBADKMMH;
}
float time = Time.time;
this.lastJitterPhase = time;
float num3;
this.jitterOffset = num3;
float y = this.maxJitterOffset.y;
num3 = y;
float num4 = global::UnityEngine.Random.Range(num3, y);
this.jitterOffset.y = num4;
float num5;
this.jitterScale = num5;
float y2 = this.maxJitterScale.y;
num5 = y2;
float num6 = global::UnityEngine.Random.Range(num5, y2);
this.jitterScale.y = num6;
Sprite sprite = this.sprite;
int num7 = 0;
if (sprite != num7)
{
Renderer renderer = this.renderer;
int num8 = 0;
if (renderer != num8)
{
Sprite sprite2 = this.sprite;
if (this.offsetMode == (OKKJGFPHFLL)num)
{
}
GraphicsFormat graphicsFormat = this.sprite.texture.graphicsFormat;
Texture2D texture = this.sprite.texture;
GraphicsFormat graphicsFormat2 = this.sprite.texture.graphicsFormat;
Texture2D texture2 = this.sprite.texture;
int num9 = 0;
if ((this.applyToOnlyOneRendererMaterial ? 1 : 0) != num)
{
int num10 = this.rendererMaterialIndex;
Renderer renderer2 = this.renderer;
int num11 = 0;
Material[] materialArray = renderer2.GetMaterialArray();
if (num10 < materialArray.Length)
{
this.AHBLNBHJCOF(num11, num9);
}
}
MaterialPropertyBlock materialPropertyBlock;
if (this.<MaterialProperties>k__BackingField == 0)
{
materialPropertyBlock = new MaterialPropertyBlock();
this.<MaterialProperties>k__BackingField = materialPropertyBlock;
}
Sprite sprite3 = this.sprite;
int num12 = JitteringSprite.mainTexId;
Texture2D texture3 = sprite3.texture;
materialPropertyBlock.SetTextureImpl(num12, texture3);
MaterialPropertyBlock materialPropertyBlock2 = this.<MaterialProperties>k__BackingField;
Renderer renderer3 = this.renderer;
MaterialPropertyBlock materialPropertyBlock3 = this.<MaterialProperties>k__BackingField;
renderer3.Internal_SetPropertyBlock(materialPropertyBlock3);
}
}
}
// Token: 0x0600E275 RID: 57973 RVA: 0x0035E14C File Offset: 0x0035C34C
[Token(Token = "0x600E275")]
[Address(RVA = "0x1325800", Offset = "0x1324200", VA = "0x181325800")]
private void FPDCENFIHOE(Vector2 GPDGCLIOACB, Vector2 FNJKKNKLDPB)
{
MaterialPropertyBlock materialPropertyBlock = this.<MaterialProperties>k__BackingField;
if (materialPropertyBlock == 0)
{
MaterialPropertyBlock materialPropertyBlock2 = new MaterialPropertyBlock();
this.<MaterialProperties>k__BackingField = materialPropertyBlock2;
}
Sprite sprite = this.sprite;
int num = JitteringSprite.mainTexId;
Texture2D texture = sprite.texture;
materialPropertyBlock.SetTextureImpl(num, texture);
int num2 = 0;
this.<MaterialProperties>k__BackingField.SetVector(num, num2);
Renderer renderer = this.renderer;
MaterialPropertyBlock materialPropertyBlock3 = this.<MaterialProperties>k__BackingField;
renderer.Internal_SetPropertyBlock(materialPropertyBlock3);
}
// Token: 0x0600E276 RID: 57974 RVA: 0x0035E1C0 File Offset: 0x0035C3C0
[Token(Token = "0x600E276")]
[Address(RVA = "0x13255B0", Offset = "0x1323FB0", VA = "0x1813255B0")]
private void AHBLNBHJCOF(Vector2 GPDGCLIOACB, Vector2 FNJKKNKLDPB)
{
Material[] materialArray = this.renderer.GetMaterialArray();
int num = this.rendererMaterialIndex;
Material material = materialArray[num];
Sprite sprite = this.sprite;
int num2 = JitteringSprite.mainTexId;
Texture2D texture = sprite.texture;
material.SetTextureImpl(num2, texture);
Material[] materialArray2 = this.renderer.GetMaterialArray();
int num3 = this.rendererMaterialIndex;
Material material2 = materialArray2[num3];
int num4 = 0;
int num5 = JitteringSprite.scaleOffsetId;
material2.SetVector(num5, num4);
Material[] materialArray3 = this.renderer.GetMaterialArray();
int num6 = this.rendererMaterialIndex;
Material material3 = materialArray3[num6];
int num7 = this.srcBlend;
material3.SetInt("_SrcBlend", num7);
Material[] materialArray4 = this.renderer.GetMaterialArray();
int num8 = this.rendererMaterialIndex;
Material material4 = materialArray4[num8];
int num9 = this.destBlend;
material4.SetInt("_DstBlend", num9);
}
// Token: 0x0600E277 RID: 57975 RVA: 0x0035E2B0 File Offset: 0x0035C4B0
[Token(Token = "0x600E277")]
[Address(RVA = "0x1326180", Offset = "0x1324B80", VA = "0x181326180")]
public JitteringSprite()
{
}
// Token: 0x04009470 RID: 38000
[global::Cpp2IlInjected.FieldOffset(Offset = "0x10")]
[Token(Token = "0x4009470")]
public Renderer renderer;
// Token: 0x04009471 RID: 38001
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
[Token(Token = "0x4009471")]
public bool applyToOnlyOneRendererMaterial;
// Token: 0x04009472 RID: 38002
[global::Cpp2IlInjected.FieldOffset(Offset = "0x1C")]
[Token(Token = "0x4009472")]
public int rendererMaterialIndex = (int)((ulong)4294967295L);
// Token: 0x04009473 RID: 38003
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
[Token(Token = "0x4009473")]
public Sprite sprite;
// Token: 0x04009474 RID: 38004
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
[Token(Token = "0x4009474")]
public int jitterFPS = (int)((ulong)6L);
// Token: 0x04009475 RID: 38005
[global::Cpp2IlInjected.FieldOffset(Offset = "0x2C")]
[Token(Token = "0x4009475")]
public Vector2 maxJitterOffset;
// Token: 0x04009476 RID: 38006
[global::Cpp2IlInjected.FieldOffset(Offset = "0x34")]
[Token(Token = "0x4009476")]
public Vector2 maxJitterScale;
// Token: 0x04009477 RID: 38007
[global::Cpp2IlInjected.FieldOffset(Offset = "0x3C")]
[Token(Token = "0x4009477")]
[Tooltip("Whether to use original texture rect or atlas rect for offset and scale of jitter")]
public OKKJGFPHFLL offsetMode;
// Token: 0x04009478 RID: 38008
[global::Cpp2IlInjected.FieldOffset(Offset = "0x40")]
[Token(Token = "0x4009478")]
public float phaseOffset;
// Token: 0x04009479 RID: 38009
[global::Cpp2IlInjected.FieldOffset(Offset = "0x44")]
[Token(Token = "0x4009479")]
private float lastJitterPhase = float.MinValue;
// Token: 0x0400947A RID: 38010
[global::Cpp2IlInjected.FieldOffset(Offset = "0x48")]
[Token(Token = "0x400947A")]
private Vector2 jitterOffset;
// Token: 0x0400947B RID: 38011
[global::Cpp2IlInjected.FieldOffset(Offset = "0x50")]
[Token(Token = "0x400947B")]
private Vector3 jitterScale;
// Token: 0x0400947C RID: 38012
[Token(Token = "0x400947C")]
private static int mainTexId = Shader.PropertyToID("_MainTex");
// Token: 0x0400947D RID: 38013
[Token(Token = "0x400947D")]
private static int scaleOffsetId = Shader.PropertyToID("_MainTex_ST");
// Token: 0x0400947E RID: 38014
[Token(Token = "0x400947E")]
private static int srcBlendId = Shader.PropertyToID("_SrcBlend");
// Token: 0x0400947F RID: 38015
[Token(Token = "0x400947F")]
private static int destBlendId = Shader.PropertyToID("_DstBlend");
// Token: 0x04009480 RID: 38016
[global::Cpp2IlInjected.FieldOffset(Offset = "0x5C")]
[Token(Token = "0x4009480")]
private int srcBlend = (int)((ulong)1L);
// Token: 0x04009481 RID: 38017
[global::Cpp2IlInjected.FieldOffset(Offset = "0x60")]
[Token(Token = "0x4009481")]
private int destBlend;
}
}