255 lines
7.9 KiB
C#
255 lines
7.9 KiB
C#
using System;
|
|
using System.Runtime.InteropServices;
|
|
using Cpp2IlInjected;
|
|
using RecRoom.Core;
|
|
using UnityEngine;
|
|
|
|
namespace RecRoom.Content.VFX
|
|
{
|
|
// Token: 0x020023DA RID: 9178
|
|
[Token(Token = "0x20023DA")]
|
|
[ExecuteInEditMode]
|
|
[RequireComponent(typeof(Light))]
|
|
[StructLayout(3)]
|
|
public class WaterCausticsLight : MonoBehaviour
|
|
{
|
|
// Token: 0x0600FE2C RID: 65068 RVA: 0x003B76A8 File Offset: 0x003B58A8
|
|
[Token(Token = "0x600FE2C")]
|
|
[Address(RVA = "0x17B2170", Offset = "0x17B0B70", VA = "0x1817B2170")]
|
|
private void Start()
|
|
{
|
|
Light component = base.GetComponent<Light>();
|
|
this.KOBMAHGNLDC = component;
|
|
if (component.type == LightType.Directional)
|
|
{
|
|
Material material = new Material(this.causticsShader);
|
|
this.IDANKLAHBBD = material;
|
|
return;
|
|
}
|
|
Debug.LogWarning("WaterCausticsLight only works with Directional lights. Disabling effect.", this);
|
|
int num = 0;
|
|
base.enabled = num != 0;
|
|
}
|
|
|
|
// Token: 0x0600FE2D RID: 65069 RVA: 0x003B76FC File Offset: 0x003B58FC
|
|
[Token(Token = "0x600FE2D")]
|
|
[Address(RVA = "0x17B2250", Offset = "0x17B0C50", VA = "0x1817B2250")]
|
|
private void Update()
|
|
{
|
|
if (this.alphaMap && this.cookie && this.IDANKLAHBBD)
|
|
{
|
|
int num = 0;
|
|
CameraRig instance = SingletonMonoBehaviour.Instance;
|
|
int num2 = 0;
|
|
if (instance != num2)
|
|
{
|
|
Transform transform = SingletonMonoBehaviour.Instance.CHLMFLCFGFL.transform;
|
|
}
|
|
if (num && this.useHeightBlend)
|
|
{
|
|
Transform transform2 = base.transform;
|
|
Vector3 vector;
|
|
float z = vector.z;
|
|
Transform transform3 = base.transform;
|
|
Vector3 vector2;
|
|
float z2 = vector2.z;
|
|
Vector3 vector3;
|
|
float z3 = vector3.z;
|
|
Color color = this.heightBlendStartLightColor;
|
|
Light kobmahgnldc = this.KOBMAHGNLDC;
|
|
Color color2 = this.heightBlendEndLightColor;
|
|
}
|
|
Light kobmahgnldc2 = this.KOBMAHGNLDC;
|
|
RenderTexture renderTexture = this.cookie;
|
|
kobmahgnldc2.cookie = renderTexture;
|
|
Vector2 vector4 = this.alphaSpeed;
|
|
this.JIIHEKOMFJP = vector4;
|
|
float y = this.alphaSpeed.y;
|
|
this.JIIHEKOMFJP.y = y;
|
|
Vector2 vector5 = this.distortSpeed;
|
|
this.JIIHEKOMFJP.z = vector5;
|
|
float y2 = this.distortSpeed.y;
|
|
this.JIIHEKOMFJP.w = y2;
|
|
Material idanklahbbd = this.IDANKLAHBBD;
|
|
Texture texture = this.displacementNormals;
|
|
int ghbgcbcelfe = WaterCausticsLight.GHBGCBCELFE;
|
|
idanklahbbd.SetTextureImpl(ghbgcbcelfe, texture);
|
|
Material idanklahbbd2 = this.IDANKLAHBBD;
|
|
float num3 = this.distortAmount;
|
|
int bbjnkgcikkn = WaterCausticsLight.BBJNKGCIKKN;
|
|
idanklahbbd2.SetFloatImpl(bbjnkgcikkn, num3);
|
|
Material idanklahbbd3 = this.IDANKLAHBBD;
|
|
Vector4 jiihekomfjp = this.JIIHEKOMFJP;
|
|
int kgcfgnhhejd = WaterCausticsLight.KGCFGNHHEJD;
|
|
idanklahbbd3.SetVector(kgcfgnhhejd, jiihekomfjp);
|
|
Material idanklahbbd4 = this.IDANKLAHBBD;
|
|
int chfdeoknkgi = WaterCausticsLight.CHFDEOKNKGI;
|
|
idanklahbbd4.SetFloatImpl(chfdeoknkgi, num3);
|
|
Texture texture2 = this.alphaMap;
|
|
RenderTexture renderTexture2 = this.cookie;
|
|
Material idanklahbbd5 = this.IDANKLAHBBD;
|
|
Graphics.Blit(texture2, renderTexture2, idanklahbbd5);
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600FE2E RID: 65070 RVA: 0x003B78D0 File Offset: 0x003B5AD0
|
|
[Token(Token = "0x600FE2E")]
|
|
[Address(RVA = "0x17B1D50", Offset = "0x17B0750", VA = "0x1817B1D50")]
|
|
private void OnDestroy()
|
|
{
|
|
SafeDestroy.Asset(this.IDANKLAHBBD);
|
|
}
|
|
|
|
// Token: 0x0600FE2F RID: 65071 RVA: 0x003B78E8 File Offset: 0x003B5AE8
|
|
[Token(Token = "0x600FE2F")]
|
|
[Address(RVA = "0x17B1D60", Offset = "0x17B0760", VA = "0x1817B1D60")]
|
|
private void OnDrawGizmosSelected()
|
|
{
|
|
int num = 0;
|
|
if ((this.useHeightBlend ? 1 : 0) != num)
|
|
{
|
|
Transform transform = base.transform;
|
|
Transform transform2 = base.transform;
|
|
Transform transform3 = base.transform;
|
|
Transform transform4 = base.transform;
|
|
Transform transform5 = base.transform;
|
|
Transform transform6 = base.transform;
|
|
Transform transform7 = base.transform;
|
|
Transform transform8 = base.transform;
|
|
Color red = Color.red;
|
|
Color white = Color.white;
|
|
Transform transform9 = base.transform;
|
|
Color cyan = Color.cyan;
|
|
Color white2 = Color.white;
|
|
Color blue = Color.blue;
|
|
Color white3 = Color.white;
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600FE30 RID: 65072 RVA: 0x003B797C File Offset: 0x003B5B7C
|
|
[Token(Token = "0x600FE30")]
|
|
[Address(RVA = "0x17B27B0", Offset = "0x17B11B0", VA = "0x1817B27B0")]
|
|
public WaterCausticsLight()
|
|
{
|
|
Color white = Color.white;
|
|
this.heightBlendEnd = -0.5f;
|
|
Color white2 = Color.white;
|
|
base..ctor();
|
|
}
|
|
|
|
// Token: 0x0400A88A RID: 43146
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x400A88A")]
|
|
[SerializeField]
|
|
[Header("Textures")]
|
|
private Texture alphaMap;
|
|
|
|
// Token: 0x0400A88B RID: 43147
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x400A88B")]
|
|
[SerializeField]
|
|
private Texture displacementNormals;
|
|
|
|
// Token: 0x0400A88C RID: 43148
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x28")]
|
|
[Token(Token = "0x400A88C")]
|
|
[SerializeField]
|
|
private RenderTexture cookie;
|
|
|
|
// Token: 0x0400A88D RID: 43149
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x30")]
|
|
[Token(Token = "0x400A88D")]
|
|
[SerializeField]
|
|
private Shader causticsShader;
|
|
|
|
// Token: 0x0400A88E RID: 43150
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x38")]
|
|
[Token(Token = "0x400A88E")]
|
|
[SerializeField]
|
|
[Header("Motion")]
|
|
[Range(0f, 1f)]
|
|
private float distortAmount;
|
|
|
|
// Token: 0x0400A88F RID: 43151
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x3C")]
|
|
[Token(Token = "0x400A88F")]
|
|
[SerializeField]
|
|
private Vector2 alphaSpeed;
|
|
|
|
// Token: 0x0400A890 RID: 43152
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x44")]
|
|
[Token(Token = "0x400A890")]
|
|
[SerializeField]
|
|
private Vector2 distortSpeed;
|
|
|
|
// Token: 0x0400A891 RID: 43153
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x4C")]
|
|
[Token(Token = "0x400A891")]
|
|
private Vector4 JIIHEKOMFJP;
|
|
|
|
// Token: 0x0400A892 RID: 43154
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x5C")]
|
|
[Token(Token = "0x400A892")]
|
|
[SerializeField]
|
|
[Header("World Integration")]
|
|
[Range(0f, 1f)]
|
|
private float causticsAmount;
|
|
|
|
// Token: 0x0400A893 RID: 43155
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x60")]
|
|
[Token(Token = "0x400A893")]
|
|
[SerializeField]
|
|
private bool useHeightBlend;
|
|
|
|
// Token: 0x0400A894 RID: 43156
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x64")]
|
|
[Token(Token = "0x400A894")]
|
|
[SerializeField]
|
|
private float heightBlendStart = 0.5f;
|
|
|
|
// Token: 0x0400A895 RID: 43157
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x68")]
|
|
[Token(Token = "0x400A895")]
|
|
[SerializeField]
|
|
private Color heightBlendStartLightColor;
|
|
|
|
// Token: 0x0400A896 RID: 43158
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x78")]
|
|
[Token(Token = "0x400A896")]
|
|
[SerializeField]
|
|
private float heightBlendEnd;
|
|
|
|
// Token: 0x0400A897 RID: 43159
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x7C")]
|
|
[Token(Token = "0x400A897")]
|
|
[SerializeField]
|
|
private Color heightBlendEndLightColor;
|
|
|
|
// Token: 0x0400A898 RID: 43160
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x90")]
|
|
[Token(Token = "0x400A898")]
|
|
private Material IDANKLAHBBD;
|
|
|
|
// Token: 0x0400A899 RID: 43161
|
|
[Token(Token = "0x400A899")]
|
|
private static readonly int GHBGCBCELFE = Shader.PropertyToID("_NormalMap");
|
|
|
|
// Token: 0x0400A89A RID: 43162
|
|
[Token(Token = "0x400A89A")]
|
|
private static readonly int BBJNKGCIKKN = Shader.PropertyToID("_DistortAmount");
|
|
|
|
// Token: 0x0400A89B RID: 43163
|
|
[Token(Token = "0x400A89B")]
|
|
private static readonly int KGCFGNHHEJD = Shader.PropertyToID("_Speeds");
|
|
|
|
// Token: 0x0400A89C RID: 43164
|
|
[Token(Token = "0x400A89C")]
|
|
private static readonly int CHFDEOKNKGI = Shader.PropertyToID("_CausticsAmount");
|
|
|
|
// Token: 0x0400A89D RID: 43165
|
|
[global::Cpp2IlInjected.FieldOffset(Offset = "0x98")]
|
|
[Token(Token = "0x400A89D")]
|
|
private Light KOBMAHGNLDC;
|
|
}
|
|
}
|