using System; using System.Collections; using System.Collections.Generic; using System.Runtime.CompilerServices; using Cpp2IlInjected; using UnityEngine; namespace Obi { // Token: 0x02000534 RID: 1332 [Token(Token = "0x2000534")] [DisallowMultipleComponent] [ExecuteInEditMode] [AddComponentMenu("Physics/Obi/Obi Solver")] public sealed class ObiSolver : MonoBehaviour { // Token: 0x14000015 RID: 21 // (add) Token: 0x06002E67 RID: 11879 RVA: 0x0006540C File Offset: 0x0006360C // (remove) Token: 0x06002E68 RID: 11880 RVA: 0x0006543C File Offset: 0x0006363C [Token(Token = "0x14000015")] public event EventHandler OnFrameBegin { [Token(Token = "0x6002E67")] [Address(RVA = "0xE5E080", Offset = "0xE5D080", VA = "0x180E5E080")] [CompilerGenerated] add { EventHandler onFrameBegin = this.OnFrameBegin; Delegate @delegate = Delegate.Combine(onFrameBegin, value); if (@delegate == 0 || @delegate != 0) { while (@delegate != onFrameBegin) { } return; } throw new InvalidCastException(); } [Token(Token = "0x6002E68")] [Address(RVA = "0xE5E840", Offset = "0xE5D840", VA = "0x180E5E840")] [CompilerGenerated] remove { EventHandler onFrameBegin = this.OnFrameBegin; Delegate @delegate = Delegate.Remove(onFrameBegin, value); if (@delegate == 0 || @delegate != 0) { while (@delegate != onFrameBegin) { } return; } throw new InvalidCastException(); } } // Token: 0x14000016 RID: 22 // (add) Token: 0x06002E69 RID: 11881 RVA: 0x000020D3 File Offset: 0x000002D3 // (remove) Token: 0x06002E6A RID: 11882 RVA: 0x0006546C File Offset: 0x0006366C [Token(Token = "0x14000016")] public event EventHandler OnStepBegin { [Token(Token = "0x6002E69")] [Address(RVA = "0xE5E1C0", Offset = "0xE5D1C0", VA = "0x180E5E1C0")] [CompilerGenerated] add { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } [Token(Token = "0x6002E6A")] [Address(RVA = "0xE5E980", Offset = "0xE5D980", VA = "0x180E5E980")] [CompilerGenerated] remove { EventHandler onStepBegin = this.OnStepBegin; Delegate @delegate = Delegate.Remove(onStepBegin, value); if (@delegate == 0 || @delegate != 0) { while (@delegate != onStepBegin) { } return; } throw new InvalidCastException(); } } // Token: 0x14000017 RID: 23 // (add) Token: 0x06002E6B RID: 11883 RVA: 0x0006549C File Offset: 0x0006369C // (remove) Token: 0x06002E6C RID: 11884 RVA: 0x000654CC File Offset: 0x000636CC [Token(Token = "0x14000017")] public event EventHandler OnFixedParticlesUpdated { [Token(Token = "0x6002E6B")] [Address(RVA = "0xE5DF40", Offset = "0xE5CF40", VA = "0x180E5DF40")] [CompilerGenerated] add { EventHandler onFixedParticlesUpdated = this.OnFixedParticlesUpdated; Delegate @delegate = Delegate.Combine(onFixedParticlesUpdated, value); if (@delegate == 0 || @delegate != 0) { while (@delegate != onFixedParticlesUpdated) { } return; } throw new InvalidCastException(); } [Token(Token = "0x6002E6C")] [Address(RVA = "0xE5E700", Offset = "0xE5D700", VA = "0x180E5E700")] [CompilerGenerated] remove { EventHandler onFixedParticlesUpdated = this.OnFixedParticlesUpdated; Delegate @delegate = Delegate.Remove(onFixedParticlesUpdated, value); if (@delegate == 0 || @delegate != 0) { while (@delegate != onFixedParticlesUpdated) { } return; } throw new InvalidCastException(); } } // Token: 0x14000018 RID: 24 // (add) Token: 0x06002E6D RID: 11885 RVA: 0x000654FC File Offset: 0x000636FC // (remove) Token: 0x06002E6E RID: 11886 RVA: 0x0006552C File Offset: 0x0006372C [Token(Token = "0x14000018")] public event EventHandler OnStepEnd { [Token(Token = "0x6002E6D")] [Address(RVA = "0xE5E260", Offset = "0xE5D260", VA = "0x180E5E260")] [CompilerGenerated] add { EventHandler onStepEnd = this.OnStepEnd; Delegate @delegate = Delegate.Combine(onStepEnd, value); if (@delegate == 0 || @delegate != 0) { while (@delegate != onStepEnd) { } return; } throw new InvalidCastException(); } [Token(Token = "0x6002E6E")] [Address(RVA = "0xE5EA20", Offset = "0xE5DA20", VA = "0x180E5EA20")] [CompilerGenerated] remove { EventHandler onStepEnd = this.OnStepEnd; Delegate @delegate = Delegate.Remove(onStepEnd, value); if (@delegate == 0 || @delegate != 0) { while (@delegate != onStepEnd) { } return; } throw new InvalidCastException(); } } // Token: 0x14000019 RID: 25 // (add) Token: 0x06002E6F RID: 11887 RVA: 0x0006555C File Offset: 0x0006375C // (remove) Token: 0x06002E70 RID: 11888 RVA: 0x0006558C File Offset: 0x0006378C [Token(Token = "0x14000019")] public event EventHandler OnBeforePositionInterpolation { [Token(Token = "0x6002E6F")] [Address(RVA = "0xE5DE00", Offset = "0xE5CE00", VA = "0x180E5DE00")] [CompilerGenerated] add { EventHandler onBeforePositionInterpolation = this.OnBeforePositionInterpolation; Delegate @delegate = Delegate.Combine(onBeforePositionInterpolation, value); if (@delegate == 0 || @delegate != 0) { while (@delegate != onBeforePositionInterpolation) { } return; } throw new InvalidCastException(); } [Token(Token = "0x6002E70")] [Address(RVA = "0xE5E5C0", Offset = "0xE5D5C0", VA = "0x180E5E5C0")] [CompilerGenerated] remove { EventHandler onBeforePositionInterpolation = this.OnBeforePositionInterpolation; Delegate @delegate = Delegate.Remove(onBeforePositionInterpolation, value); if (@delegate == 0 || @delegate != 0) { while (@delegate != onBeforePositionInterpolation) { } return; } throw new InvalidCastException(); } } // Token: 0x1400001A RID: 26 // (add) Token: 0x06002E71 RID: 11889 RVA: 0x000655BC File Offset: 0x000637BC // (remove) Token: 0x06002E72 RID: 11890 RVA: 0x000655EC File Offset: 0x000637EC [Token(Token = "0x1400001A")] public event EventHandler OnBeforeActorsFrameEnd { [Token(Token = "0x6002E71")] [Address(RVA = "0xE5DD60", Offset = "0xE5CD60", VA = "0x180E5DD60")] [CompilerGenerated] add { EventHandler onBeforeActorsFrameEnd = this.OnBeforeActorsFrameEnd; Delegate @delegate = Delegate.Combine(onBeforeActorsFrameEnd, value); if (@delegate == 0 || @delegate != 0) { while (@delegate != onBeforeActorsFrameEnd) { } return; } throw new InvalidCastException(); } [Token(Token = "0x6002E72")] [Address(RVA = "0xE5E520", Offset = "0xE5D520", VA = "0x180E5E520")] [CompilerGenerated] remove { EventHandler onBeforeActorsFrameEnd = this.OnBeforeActorsFrameEnd; Delegate @delegate = Delegate.Remove(onBeforeActorsFrameEnd, value); if (@delegate == 0 || @delegate != 0) { while (@delegate != onBeforeActorsFrameEnd) { } return; } throw new InvalidCastException(); } } // Token: 0x1400001B RID: 27 // (add) Token: 0x06002E73 RID: 11891 RVA: 0x0006561C File Offset: 0x0006381C // (remove) Token: 0x06002E74 RID: 11892 RVA: 0x0006564C File Offset: 0x0006384C [Token(Token = "0x1400001B")] public event EventHandler OnFrameEnd { [Token(Token = "0x6002E73")] [Address(RVA = "0xE5E120", Offset = "0xE5D120", VA = "0x180E5E120")] [CompilerGenerated] add { EventHandler onFrameEnd = this.OnFrameEnd; Delegate @delegate = Delegate.Combine(onFrameEnd, value); if (@delegate == 0 || @delegate != 0) { while (@delegate != onFrameEnd) { } return; } throw new InvalidCastException(); } [Token(Token = "0x6002E74")] [Address(RVA = "0xE5E8E0", Offset = "0xE5D8E0", VA = "0x180E5E8E0")] [CompilerGenerated] remove { EventHandler onFrameEnd = this.OnFrameEnd; Delegate @delegate = Delegate.Remove(onFrameEnd, value); if (@delegate == 0 || @delegate != 0) { while (@delegate != onFrameEnd) { } return; } throw new InvalidCastException(); } } // Token: 0x1400001C RID: 28 // (add) Token: 0x06002E75 RID: 11893 RVA: 0x0006567C File Offset: 0x0006387C // (remove) Token: 0x06002E76 RID: 11894 RVA: 0x000656AC File Offset: 0x000638AC [Token(Token = "0x1400001C")] public event EventHandler OnCollision { [Token(Token = "0x6002E75")] [Address(RVA = "0xE5DEA0", Offset = "0xE5CEA0", VA = "0x180E5DEA0")] [CompilerGenerated] add { EventHandler onCollision = this.OnCollision; Delegate @delegate = Delegate.Combine(onCollision, value); if (@delegate == 0 || @delegate != 0) { while (@delegate != onCollision) { } return; } throw new InvalidCastException(); } [Token(Token = "0x6002E76")] [Address(RVA = "0xE5E660", Offset = "0xE5D660", VA = "0x180E5E660")] [CompilerGenerated] remove { EventHandler onCollision = this.OnCollision; Delegate @delegate = Delegate.Remove(onCollision, value); if (@delegate == 0 || @delegate != 0) { while (@delegate != onCollision) { } return; } throw new InvalidCastException(); } } // Token: 0x1400001D RID: 29 // (add) Token: 0x06002E77 RID: 11895 RVA: 0x000656DC File Offset: 0x000638DC // (remove) Token: 0x06002E78 RID: 11896 RVA: 0x0006570C File Offset: 0x0006390C [Token(Token = "0x1400001D")] public event EventHandler OnFluidUpdated { [Token(Token = "0x6002E77")] [Address(RVA = "0xE5DFE0", Offset = "0xE5CFE0", VA = "0x180E5DFE0")] [CompilerGenerated] add { EventHandler onFluidUpdated = this.OnFluidUpdated; Delegate @delegate = Delegate.Combine(onFluidUpdated, value); if (@delegate == 0 || @delegate != 0) { while (@delegate != onFluidUpdated) { } return; } throw new InvalidCastException(); } [Token(Token = "0x6002E78")] [Address(RVA = "0xE5E7A0", Offset = "0xE5D7A0", VA = "0x180E5E7A0")] [CompilerGenerated] remove { EventHandler onFluidUpdated = this.OnFluidUpdated; Delegate @delegate = Delegate.Remove(onFluidUpdated, value); if (@delegate == 0 || @delegate != 0) { while (@delegate != onFluidUpdated) { } return; } throw new InvalidCastException(); } } // Token: 0x17000329 RID: 809 // (get) Token: 0x06002E79 RID: 11897 RVA: 0x0006573C File Offset: 0x0006393C [Token(Token = "0x17000329")] public IntPtr OniSolver { [Token(Token = "0x6002E79")] [Address(RVA = "0x339D60", Offset = "0x338D60", VA = "0x180339D60")] get { return this.oniSolver; } } // Token: 0x1700032A RID: 810 // (get) Token: 0x06002E7A RID: 11898 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x1700032A")] public Bounds Bounds { [Token(Token = "0x6002E7A")] [Address(RVA = "0xE5E490", Offset = "0xE5D490", VA = "0x180E5E490")] get { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } } // Token: 0x1700032B RID: 811 // (get) Token: 0x06002E7B RID: 11899 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x1700032B")] public Matrix4x4 LastTransform { [Token(Token = "0x6002E7B")] [Address(RVA = "0xE5E4F0", Offset = "0xE5D4F0", VA = "0x180E5E4F0")] get { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } } // Token: 0x1700032C RID: 812 // (get) Token: 0x06002E7C RID: 11900 RVA: 0x00065750 File Offset: 0x00063950 [Token(Token = "0x1700032C")] public bool IsVisible { [Token(Token = "0x6002E7C")] [Address(RVA = "0xE5E4E0", Offset = "0xE5D4E0", VA = "0x180E5E4E0")] get { return this.isVisible; } } // Token: 0x1700032D RID: 813 // (get) Token: 0x06002E7D RID: 11901 RVA: 0x00065764 File Offset: 0x00063964 [Token(Token = "0x1700032D")] public int AllocParticleCount { [Token(Token = "0x6002E7D")] [Address(RVA = "0xE5E480", Offset = "0xE5D480", VA = "0x180E5E480")] get { return this.allocatedParticleCount; } } // Token: 0x1700032E RID: 814 // (get) Token: 0x06002E7E RID: 11902 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x1700032E")] public bool IsUpdating { [Token(Token = "0x6002E7E")] [Address(RVA = "0xE5E4B0", Offset = "0xE5D4B0", VA = "0x180E5E4B0")] get { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } } // Token: 0x06002E7F RID: 11903 RVA: 0x00065778 File Offset: 0x00063978 [Token(Token = "0x6002E7F")] [Address(RVA = "0xE5C7B0", Offset = "0xE5B7B0", VA = "0x180E5C7B0")] public void RequireRenderablePositions() { } // Token: 0x06002E80 RID: 11904 RVA: 0x00065788 File Offset: 0x00063988 [Token(Token = "0x6002E80")] [Address(RVA = "0xE5C5C0", Offset = "0xE5B5C0", VA = "0x180E5C5C0")] public void RelinquishRenderablePositions() { int num = this.renderablePositionsClients; if (num > 0) { this.renderablePositionsClients = num; } } // Token: 0x06002E81 RID: 11905 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6002E81")] [Address(RVA = "0xE5B5B0", Offset = "0xE5A5B0", VA = "0x180E5B5B0")] private void Awake() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002E82 RID: 11906 RVA: 0x000657A8 File Offset: 0x000639A8 [Token(Token = "0x6002E82")] [Address(RVA = "0xE5CA00", Offset = "0xE5BA00", VA = "0x180E5CA00")] private void Start() { if (Application.isPlaying) { ObiColliderBase[] array = UnityEngine.Object.FindObjectsOfType(); int num = 0; int length = array.Length; if (num < length) { array[num].RegisterInSolver(this, true); num++; } } } // Token: 0x06002E83 RID: 11907 RVA: 0x000657EC File Offset: 0x000639EC [Token(Token = "0x6002E83")] [Address(RVA = "0xE5C3C0", Offset = "0xE5B3C0", VA = "0x180E5C3C0")] private void OnDestroy() { if (Application.isPlaying) { this.Teardown(); ObiColliderBase[] array = UnityEngine.Object.FindObjectsOfType(); int num = 0; int length = array.Length; if (num < length) { array[num].RemoveFromSolver(this); num++; } } } // Token: 0x06002E84 RID: 11908 RVA: 0x00065834 File Offset: 0x00063A34 [Token(Token = "0x6002E84")] [Address(RVA = "0xE5C530", Offset = "0xE5B530", VA = "0x180E5C530")] private void OnEnable() { if (!Application.isPlaying) { this.Initialize(); } Coroutine coroutine = base.StartCoroutine("RunLateFixedUpdate"); ObiArbiter.RegisterSolver(this); } // Token: 0x06002E85 RID: 11909 RVA: 0x00065864 File Offset: 0x00063A64 [Token(Token = "0x6002E85")] [Address(RVA = "0xE5C4A0", Offset = "0xE5B4A0", VA = "0x180E5C4A0")] private void OnDisable() { if (!Application.isPlaying) { this.Teardown(); } base.StopCoroutine("RunLateFixedUpdate"); ObiArbiter.UnregisterSolver(this); } // Token: 0x06002E86 RID: 11910 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6002E86")] [Address(RVA = "0xE5BF10", Offset = "0xE5AF10", VA = "0x180E5BF10")] public void Initialize() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002E87 RID: 11911 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6002E87")] [Address(RVA = "0xE5CAE0", Offset = "0xE5BAE0", VA = "0x180E5CAE0")] private void Teardown() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002E88 RID: 11912 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6002E88")] [Address(RVA = "0xE5AFB0", Offset = "0xE59FB0", VA = "0x180E5AFB0")] public bool AddActor(ObiActor actor, int numParticles) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002E89 RID: 11913 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6002E89")] [Address(RVA = "0xE5C5E0", Offset = "0xE5B5E0", VA = "0x180E5C5E0")] public int RemoveActor(ObiActor actor) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002E8A RID: 11914 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6002E8A")] [Address(RVA = "0xE5D5C0", Offset = "0xE5C5C0", VA = "0x180E5D5C0")] public void UpdateParameters() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002E8B RID: 11915 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6002E8B")] [Address(RVA = "0xE5CF80", Offset = "0xE5BF80", VA = "0x180E5CF80")] public void UpdateActiveParticles() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002E8C RID: 11916 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6002E8C")] [Address(RVA = "0xE5D110", Offset = "0xE5C110", VA = "0x180E5D110")] public void UpdateEmitterMaterials() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002E8D RID: 11917 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6002E8D")] [Address(RVA = "0xE5E300", Offset = "0xE5D300", VA = "0x180E5E300")] private void emitterMaterial_OnChangesMade(object sender, ObiEmitterMaterial.MaterialChangeEventArgs e) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002E8E RID: 11918 RVA: 0x00065894 File Offset: 0x00063A94 [Token(Token = "0x6002E8E")] [Address(RVA = "0xE5AFA0", Offset = "0xE59FA0", VA = "0x180E5AFA0")] public void AccumulateSimulationTime(float dt) { Oni.AddSimulationTime(this.oniSolver, dt); } // Token: 0x06002E8F RID: 11919 RVA: 0x000658B0 File Offset: 0x00063AB0 [Token(Token = "0x6002E8F")] [Address(RVA = "0xE5C7C0", Offset = "0xE5B7C0", VA = "0x180E5C7C0")] public void ResetSimulationTime() { Oni.ResetSimulationTime(this.oniSolver); } // Token: 0x06002E90 RID: 11920 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6002E90")] [Address(RVA = "0xE5C840", Offset = "0xE5B840", VA = "0x180E5C840")] public void SimulateStep(float stepTime) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002E91 RID: 11921 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6002E91")] [Address(RVA = "0xE5B950", Offset = "0xE5A950", VA = "0x180E5B950")] public void EndFrame(float frameDelta) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002E92 RID: 11922 RVA: 0x000658C8 File Offset: 0x00063AC8 [Token(Token = "0x6002E92")] [Address(RVA = "0xE5CD90", Offset = "0xE5BD90", VA = "0x180E5CD90")] private void TriggerFluidUpdateEvents() { int constraintCount = Oni.GetConstraintCount(this.oniSolver, 6); if (constraintCount > 0 && this.OnFluidUpdated != (ulong)0L) { int[] array = new int[constraintCount]; Vector4[] array2 = new Vector4[this.maxParticles]; float[] array3 = new float[this.maxParticles]; IntPtr intPtr = this.oniSolver; Oni.GetActiveConstraintIndices(intPtr, array, constraintCount, 6); int num = this.maxParticles; int num2 = 0; int particleVorticities = Oni.GetParticleVorticities(this.oniSolver, array2, num, num2); int num3 = this.maxParticles; int num4 = 0; int particleDensities = Oni.GetParticleDensities(this.oniSolver, array3, num3, num4); EventHandler onFluidUpdated = this.OnFluidUpdated; ObiSolver.ObiFluidEventArgs obiFluidEventArgs = new ObiSolver.ObiFluidEventArgs(array, array2, array3); onFluidUpdated(this, obiFluidEventArgs); } } // Token: 0x06002E93 RID: 11923 RVA: 0x00065988 File Offset: 0x00063B88 [Token(Token = "0x6002E93")] [Address(RVA = "0xE5CCA0", Offset = "0xE5BCA0", VA = "0x180E5CCA0")] private void TriggerCollisionEvents() { int constraintCount = Oni.GetConstraintCount(this.oniSolver, 7); if (this.OnCollision != (ulong)0L) { Oni.Contact[] array = new Oni.Contact[constraintCount]; if (constraintCount > 0) { Oni.GetCollisionContacts(this.oniSolver, array, constraintCount); } EventHandler onCollision = this.OnCollision; ObiSolver.ObiCollisionEventArgs obiCollisionEventArgs = new ObiSolver.ObiCollisionEventArgs(array); onCollision(this, obiCollisionEventArgs); } } // Token: 0x06002E94 RID: 11924 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6002E94")] [Address(RVA = "0xE5B4A0", Offset = "0xE5A4A0", VA = "0x180E5B4A0")] private bool AreBoundsValid(Bounds bounds) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002E95 RID: 11925 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6002E95")] [Address(RVA = "0xE5B630", Offset = "0xE5A630", VA = "0x180E5B630")] private void CheckVisibility() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002E96 RID: 11926 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6002E96")] [Address(RVA = "0xE5D770", Offset = "0xE5C770", VA = "0x180E5D770")] private void Update() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002E97 RID: 11927 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6002E97")] [Address(RVA = "0xE5C7D0", Offset = "0xE5B7D0", VA = "0x180E5C7D0")] private IEnumerator RunLateFixedUpdate() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002E98 RID: 11928 RVA: 0x000659E4 File Offset: 0x00063BE4 [Token(Token = "0x6002E98")] [Address(RVA = "0xE5BEB0", Offset = "0xE5AEB0", VA = "0x180E5BEB0")] private void FixedUpdate() { if (Application.isPlaying && this.initialized && this.simulate && (this.simulateWhenInvisible || this.isVisible) && this.simulationOrder == ObiSolver.SimulationOrder.FixedUpdate) { float fixedDeltaTime = Time.fixedDeltaTime; this.SimulateStep(fixedDeltaTime); } } // Token: 0x06002E99 RID: 11929 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6002E99")] [Address(RVA = "0xE5B250", Offset = "0xE5A250", VA = "0x180E5B250")] public void AllSolversStepEnd() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002E9A RID: 11930 RVA: 0x00065A38 File Offset: 0x00063C38 [Token(Token = "0x6002E9A")] [Address(RVA = "0xE5C2E0", Offset = "0xE5B2E0", VA = "0x180E5C2E0")] private void LateUpdate() { if (Application.isPlaying && this.initialized && this.simulate && (this.simulateWhenInvisible || this.isVisible) && this.simulationOrder == ObiSolver.SimulationOrder.LateUpdate) { float deltaTime = Time.deltaTime; float num = this.smoothDelta; float num2 = Mathf.Lerp(deltaTime, num, 0.95f); IntPtr intPtr = this.oniSolver; num = num2; this.smoothDelta = num2; Oni.AddSimulationTime(intPtr, num); float num3 = this.smoothDelta; this.SimulateStep(num3); } if (Application.isPlaying) { if (this.simulationOrder == ObiSolver.SimulationOrder.LateUpdate) { } float fixedDeltaTime = Time.fixedDeltaTime; this.EndFrame(fixedDeltaTime); EventHandler onFrameEnd = this.OnFrameEnd; if (onFrameEnd != 0) { int num4 = 0; onFrameEnd(this, num4); return; } } } // Token: 0x06002E9B RID: 11931 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6002E9B")] [Address(RVA = "0xE5D8F0", Offset = "0xE5C8F0", VA = "0x180E5D8F0")] public ObiSolver() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x04003703 RID: 14083 [Token(Token = "0x4003703")] public const int MAX_NEIGHBOURS = 92; // Token: 0x04003704 RID: 14084 [Token(Token = "0x4003704")] public const int CONSTRAINT_GROUPS = 12; // Token: 0x0400370E RID: 14094 [FieldOffset(Offset = "0x60")] [Token(Token = "0x400370E")] public int maxParticles; // Token: 0x0400370F RID: 14095 [FieldOffset(Offset = "0x64")] [Token(Token = "0x400370F")] [HideInInspector] [NonSerialized] public bool simulate; // Token: 0x04003710 RID: 14096 [FieldOffset(Offset = "0x65")] [Token(Token = "0x4003710")] [Tooltip("If enabled, will force the solver to keep simulating even when not visible from any camera.")] public bool simulateWhenInvisible; // Token: 0x04003711 RID: 14097 [FieldOffset(Offset = "0x66")] [Token(Token = "0x4003711")] [Tooltip("If enabled, the solver object transform will be used as the frame of reference for all actors using this solver, instead of the world's frame.")] public bool simulateInLocalSpace; // Token: 0x04003712 RID: 14098 [FieldOffset(Offset = "0x68")] [Token(Token = "0x4003712")] [Tooltip("Determines when will the solver update particles.")] public ObiSolver.SimulationOrder simulationOrder; // Token: 0x04003713 RID: 14099 [FieldOffset(Offset = "0x6C")] [Token(Token = "0x4003713")] public LayerMask collisionLayers; // Token: 0x04003714 RID: 14100 [FieldOffset(Offset = "0x70")] [Token(Token = "0x4003714")] public Oni.SolverParameters parameters; // Token: 0x04003715 RID: 14101 [FieldOffset(Offset = "0x98")] [Token(Token = "0x4003715")] [HideInInspector] [NonSerialized] public List actors; // Token: 0x04003716 RID: 14102 [FieldOffset(Offset = "0xA0")] [Token(Token = "0x4003716")] private int allocatedParticleCount; // Token: 0x04003717 RID: 14103 [FieldOffset(Offset = "0xA8")] [Token(Token = "0x4003717")] [HideInInspector] [NonSerialized] public ObiSolver.ParticleInActor[] particleToActor; // Token: 0x04003718 RID: 14104 [FieldOffset(Offset = "0xB0")] [Token(Token = "0x4003718")] [HideInInspector] [NonSerialized] public int[] materialIndices; // Token: 0x04003719 RID: 14105 [FieldOffset(Offset = "0xB8")] [Token(Token = "0x4003719")] [HideInInspector] [NonSerialized] public int[] fluidMaterialIndices; // Token: 0x0400371A RID: 14106 [FieldOffset(Offset = "0xC0")] [Token(Token = "0x400371A")] private int[] activeParticles; // Token: 0x0400371B RID: 14107 [FieldOffset(Offset = "0xC8")] [Token(Token = "0x400371B")] private List emitterMaterials; // Token: 0x0400371C RID: 14108 [FieldOffset(Offset = "0xD0")] [Token(Token = "0x400371C")] [HideInInspector] [NonSerialized] public Vector4[] renderablePositions; // Token: 0x0400371D RID: 14109 [FieldOffset(Offset = "0xD8")] [Token(Token = "0x400371D")] [HideInInspector] public int[] constraintsOrder; // Token: 0x0400371E RID: 14110 [FieldOffset(Offset = "0xE0")] [Token(Token = "0x400371E")] public Oni.ConstraintParameters distanceConstraintParameters; // Token: 0x0400371F RID: 14111 [FieldOffset(Offset = "0xED")] [Token(Token = "0x400371F")] public Oni.ConstraintParameters bendingConstraintParameters; // Token: 0x04003720 RID: 14112 [FieldOffset(Offset = "0xFA")] [Token(Token = "0x4003720")] public Oni.ConstraintParameters particleCollisionConstraintParameters; // Token: 0x04003721 RID: 14113 [FieldOffset(Offset = "0x107")] [Token(Token = "0x4003721")] public Oni.ConstraintParameters collisionConstraintParameters; // Token: 0x04003722 RID: 14114 [FieldOffset(Offset = "0x114")] [Token(Token = "0x4003722")] public Oni.ConstraintParameters skinConstraintParameters; // Token: 0x04003723 RID: 14115 [FieldOffset(Offset = "0x121")] [Token(Token = "0x4003723")] public Oni.ConstraintParameters volumeConstraintParameters; // Token: 0x04003724 RID: 14116 [FieldOffset(Offset = "0x12E")] [Token(Token = "0x4003724")] public Oni.ConstraintParameters tetherConstraintParameters; // Token: 0x04003725 RID: 14117 [FieldOffset(Offset = "0x13B")] [Token(Token = "0x4003725")] public Oni.ConstraintParameters pinConstraintParameters; // Token: 0x04003726 RID: 14118 [FieldOffset(Offset = "0x148")] [Token(Token = "0x4003726")] public Oni.ConstraintParameters stitchConstraintParameters; // Token: 0x04003727 RID: 14119 [FieldOffset(Offset = "0x155")] [Token(Token = "0x4003727")] public Oni.ConstraintParameters densityConstraintParameters; // Token: 0x04003728 RID: 14120 [FieldOffset(Offset = "0x168")] [Token(Token = "0x4003728")] private IntPtr oniSolver; // Token: 0x04003729 RID: 14121 [FieldOffset(Offset = "0x170")] [Token(Token = "0x4003729")] private ObiEmitterMaterial defaultFluidMaterial; // Token: 0x0400372A RID: 14122 [FieldOffset(Offset = "0x178")] [Token(Token = "0x400372A")] private Bounds bounds; // Token: 0x0400372B RID: 14123 [FieldOffset(Offset = "0x190")] [Token(Token = "0x400372B")] private Matrix4x4 lastTransform; // Token: 0x0400372C RID: 14124 [FieldOffset(Offset = "0x1D0")] [Token(Token = "0x400372C")] private bool initialized; // Token: 0x0400372D RID: 14125 [FieldOffset(Offset = "0x1D1")] [Token(Token = "0x400372D")] private bool isVisible; // Token: 0x0400372E RID: 14126 [FieldOffset(Offset = "0x1D4")] [Token(Token = "0x400372E")] private float smoothDelta; // Token: 0x0400372F RID: 14127 [FieldOffset(Offset = "0x1D8")] [Token(Token = "0x400372F")] private int renderablePositionsClients; // Token: 0x02000535 RID: 1333 [Token(Token = "0x2000535")] public enum SimulationOrder { // Token: 0x04003731 RID: 14129 [Token(Token = "0x4003731")] FixedUpdate, // Token: 0x04003732 RID: 14130 [Token(Token = "0x4003732")] AfterFixedUpdate, // Token: 0x04003733 RID: 14131 [Token(Token = "0x4003733")] LateUpdate } // Token: 0x02000536 RID: 1334 [Token(Token = "0x2000536")] public class ObiCollisionEventArgs : EventArgs { // Token: 0x06002E9D RID: 11933 RVA: 0x00065B08 File Offset: 0x00063D08 [Token(Token = "0x6002E9D")] [Address(RVA = "0x69A010", Offset = "0x699010", VA = "0x18069A010")] public ObiCollisionEventArgs(Oni.Contact[] contacts) { /* An exception occurred when decompiling this method (06002E9D) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void Obi.ObiSolver/ObiCollisionEventArgs::.ctor(Oni/Contact[]) ---> System.Exception: Basic block has to end with unconditional control flow. {; Block_0:; call:void(EventArgs::.ctor, ldloc:ObiCollisionEventArgs[exp:EventArgs](this)); stfld:valuetype Oni/Contact[](ObiCollisionEventArgs::contacts, ldloc:ObiCollisionEventArgs(this), ldloc:valuetype Oni/Contact[](contacts)); }; at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1810 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 344 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 1618 */; } // Token: 0x04003734 RID: 14132 [FieldOffset(Offset = "0x10")] [Token(Token = "0x4003734")] public Oni.Contact[] contacts; } // Token: 0x02000537 RID: 1335 [Token(Token = "0x2000537")] public class ObiFluidEventArgs : EventArgs { // Token: 0x06002E9E RID: 11934 RVA: 0x00065B24 File Offset: 0x00063D24 [Token(Token = "0x6002E9E")] [Address(RVA = "0x69A080", Offset = "0x699080", VA = "0x18069A080")] public ObiFluidEventArgs(int[] indices, Vector4[] vorticities, float[] densities) { /* An exception occurred when decompiling this method (06002E9E) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void Obi.ObiSolver/ObiFluidEventArgs::.ctor(System.Int32[],UnityEngine.Vector4[],System.Single[]) ---> System.Exception: Basic block has to end with unconditional control flow. {; Block_0:; call:void(EventArgs::.ctor, ldloc:ObiFluidEventArgs[exp:EventArgs](this)); stfld:int32[](ObiFluidEventArgs::indices, ldloc:ObiFluidEventArgs(this), ldloc:int32[](indices)); stfld:valuetype [UnityEngine.CoreModule]UnityEngine.Vector4[](ObiFluidEventArgs::vorticities, ldloc:ObiFluidEventArgs(this), ldloc:valuetype [UnityEngine.CoreModule]UnityEngine.Vector4[](vorticities)); stfld:float32[](ObiFluidEventArgs::densities, ldloc:ObiFluidEventArgs(this), ldloc:float32[](densities)); }; at ICSharpCode.Decompiler.ILAst.ILAstOptimizer.FlattenBasicBlocks(ILNode node) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstOptimizer.cs:line 1810 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 344 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 1618 */; } // Token: 0x04003735 RID: 14133 [FieldOffset(Offset = "0x10")] [Token(Token = "0x4003735")] public int[] indices; // Token: 0x04003736 RID: 14134 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4003736")] public Vector4[] vorticities; // Token: 0x04003737 RID: 14135 [FieldOffset(Offset = "0x20")] [Token(Token = "0x4003737")] public float[] densities; } // Token: 0x02000538 RID: 1336 [Token(Token = "0x2000538")] public class ParticleInActor { // Token: 0x06002E9F RID: 11935 RVA: 0x00065B4C File Offset: 0x00063D4C [Token(Token = "0x6002E9F")] [Address(RVA = "0x69A3F0", Offset = "0x6993F0", VA = "0x18069A3F0")] public ParticleInActor(ObiActor actor, int indexInActor) { this.actor = actor; this.indexInActor = indexInActor; } // Token: 0x04003738 RID: 14136 [FieldOffset(Offset = "0x10")] [Token(Token = "0x4003738")] public ObiActor actor; // Token: 0x04003739 RID: 14137 [FieldOffset(Offset = "0x18")] [Token(Token = "0x4003739")] public int indexInActor; } } }