using System; using Cpp2IlInjected; using RecRoom.Core; using UnityEngine; namespace RecRoom.Content.VFX { // Token: 0x0200274A RID: 10058 [Token(Token = "0x200274A")] [ExecuteInEditMode] [RequireComponent(typeof(Light))] public class WaterCausticsLight : MonoBehaviour { // Token: 0x0601052E RID: 66862 RVA: 0x003AE510 File Offset: 0x003AC710 [Token(Token = "0x601052E")] [Address(RVA = "0x1ECCFF0", Offset = "0x1ECBFF0", VA = "0x181ECCFF0")] private void Start() { Light component = base.GetComponent(); 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: 0x0601052F RID: 66863 RVA: 0x003AE564 File Offset: 0x003AC764 [Token(Token = "0x601052F")] [Address(RVA = "0x1ECD0D0", Offset = "0x1ECC0D0", VA = "0x181ECD0D0")] private void Update() { if (this.alphaMap && this.cookie && this.IDANKLAHBBD) { int num = 0; CameraRig instance = SingletonMonoBehaviour.ONCPNMDGGKG; int num2 = 0; if (instance != num2) { Transform transform = SingletonMonoBehaviour.ONCPNMDGGKG.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: 0x06010530 RID: 66864 RVA: 0x003AE738 File Offset: 0x003AC938 [Token(Token = "0x6010530")] [Address(RVA = "0x1ECCBD0", Offset = "0x1ECBBD0", VA = "0x181ECCBD0")] private void OnDestroy() { OMCHJHPFBDN.KBFLHNONOHF(this.IDANKLAHBBD); } // Token: 0x06010531 RID: 66865 RVA: 0x003AE750 File Offset: 0x003AC950 [Token(Token = "0x6010531")] [Address(RVA = "0x1ECCBE0", Offset = "0x1ECBBE0", VA = "0x181ECCBE0")] 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: 0x06010532 RID: 66866 RVA: 0x003AE7E4 File Offset: 0x003AC9E4 [Token(Token = "0x6010532")] [Address(RVA = "0x1ECD630", Offset = "0x1ECC630", VA = "0x181ECD630")] public WaterCausticsLight() { Color white = Color.white; this.heightBlendEnd = -0.5f; Color white2 = Color.white; base..ctor(); } // Token: 0x0400AB06 RID: 43782 [FieldOffset(Offset = "0x18")] [Token(Token = "0x400AB06")] [SerializeField] [Header("Textures")] private Texture alphaMap; // Token: 0x0400AB07 RID: 43783 [FieldOffset(Offset = "0x20")] [Token(Token = "0x400AB07")] [SerializeField] private Texture displacementNormals; // Token: 0x0400AB08 RID: 43784 [FieldOffset(Offset = "0x28")] [Token(Token = "0x400AB08")] [SerializeField] private RenderTexture cookie; // Token: 0x0400AB09 RID: 43785 [FieldOffset(Offset = "0x30")] [Token(Token = "0x400AB09")] [SerializeField] private Shader causticsShader; // Token: 0x0400AB0A RID: 43786 [FieldOffset(Offset = "0x38")] [Token(Token = "0x400AB0A")] [SerializeField] [Header("Motion")] [Range(0f, 1f)] private float distortAmount; // Token: 0x0400AB0B RID: 43787 [FieldOffset(Offset = "0x3C")] [Token(Token = "0x400AB0B")] [SerializeField] private Vector2 alphaSpeed; // Token: 0x0400AB0C RID: 43788 [FieldOffset(Offset = "0x44")] [Token(Token = "0x400AB0C")] [SerializeField] private Vector2 distortSpeed; // Token: 0x0400AB0D RID: 43789 [FieldOffset(Offset = "0x4C")] [Token(Token = "0x400AB0D")] private Vector4 JIIHEKOMFJP; // Token: 0x0400AB0E RID: 43790 [FieldOffset(Offset = "0x5C")] [Token(Token = "0x400AB0E")] [SerializeField] [Range(0f, 1f)] [Header("World Integration")] private float causticsAmount; // Token: 0x0400AB0F RID: 43791 [FieldOffset(Offset = "0x60")] [Token(Token = "0x400AB0F")] [SerializeField] private bool useHeightBlend; // Token: 0x0400AB10 RID: 43792 [FieldOffset(Offset = "0x64")] [Token(Token = "0x400AB10")] [SerializeField] private float heightBlendStart = 0.5f; // Token: 0x0400AB11 RID: 43793 [FieldOffset(Offset = "0x68")] [Token(Token = "0x400AB11")] [SerializeField] private Color heightBlendStartLightColor; // Token: 0x0400AB12 RID: 43794 [FieldOffset(Offset = "0x78")] [Token(Token = "0x400AB12")] [SerializeField] private float heightBlendEnd; // Token: 0x0400AB13 RID: 43795 [FieldOffset(Offset = "0x7C")] [Token(Token = "0x400AB13")] [SerializeField] private Color heightBlendEndLightColor; // Token: 0x0400AB14 RID: 43796 [FieldOffset(Offset = "0x90")] [Token(Token = "0x400AB14")] private Material IDANKLAHBBD; // Token: 0x0400AB15 RID: 43797 [Token(Token = "0x400AB15")] private static readonly int GHBGCBCELFE = Shader.PropertyToID("_NormalMap"); // Token: 0x0400AB16 RID: 43798 [Token(Token = "0x400AB16")] private static readonly int BBJNKGCIKKN = Shader.PropertyToID("_DistortAmount"); // Token: 0x0400AB17 RID: 43799 [Token(Token = "0x400AB17")] private static readonly int KGCFGNHHEJD = Shader.PropertyToID("_Speeds"); // Token: 0x0400AB18 RID: 43800 [Token(Token = "0x400AB18")] private static readonly int CHFDEOKNKGI = Shader.PropertyToID("_CausticsAmount"); // Token: 0x0400AB19 RID: 43801 [FieldOffset(Offset = "0x98")] [Token(Token = "0x400AB19")] private Light KOBMAHGNLDC; } }