using System; using System.Collections.Generic; using System.Runtime.CompilerServices; using Cpp2IlInjected; using UnityEngine; namespace Obi { // Token: 0x0200048A RID: 1162 [Token(Token = "0x200048A")] [ExecuteInEditMode] [DisallowMultipleComponent] public abstract class ObiActor : MonoBehaviour, IObiSolverClient { // Token: 0x1400000C RID: 12 // (add) Token: 0x0600292A RID: 10538 RVA: 0x0005A778 File Offset: 0x00058978 // (remove) Token: 0x0600292B RID: 10539 RVA: 0x0005A7A8 File Offset: 0x000589A8 [Token(Token = "0x1400000C")] public event EventHandler OnAddedToSolver { [Token(Token = "0x600292A")] [Address(RVA = "0xED8540", Offset = "0xED7340", VA = "0x180ED8540")] [CompilerGenerated] add { EventHandler onAddedToSolver = this.OnAddedToSolver; Delegate @delegate = Delegate.Combine(onAddedToSolver, value); if (@delegate == 0 || @delegate != 0) { while (@delegate != onAddedToSolver) { } return; } throw new InvalidCastException(); } [Token(Token = "0x600292B")] [Address(RVA = "0xED8770", Offset = "0xED7570", VA = "0x180ED8770")] [CompilerGenerated] remove { EventHandler onAddedToSolver = this.OnAddedToSolver; Delegate @delegate = Delegate.Remove(onAddedToSolver, value); if (@delegate == 0 || @delegate != 0) { while (@delegate != onAddedToSolver) { } return; } throw new InvalidCastException(); } } // Token: 0x1400000D RID: 13 // (add) Token: 0x0600292C RID: 10540 RVA: 0x0005A7D8 File Offset: 0x000589D8 // (remove) Token: 0x0600292D RID: 10541 RVA: 0x0005A808 File Offset: 0x00058A08 [Token(Token = "0x1400000D")] public event EventHandler OnRemovedFromSolver { [Token(Token = "0x600292C")] [Address(RVA = "0xED85E0", Offset = "0xED73E0", VA = "0x180ED85E0")] [CompilerGenerated] add { EventHandler onRemovedFromSolver = this.OnRemovedFromSolver; Delegate @delegate = Delegate.Combine(onRemovedFromSolver, value); if (@delegate == 0 || @delegate != 0) { while (@delegate != onRemovedFromSolver) { } return; } throw new InvalidCastException(); } [Token(Token = "0x600292D")] [Address(RVA = "0xED8810", Offset = "0xED7610", VA = "0x180ED8810")] [CompilerGenerated] remove { EventHandler onRemovedFromSolver = this.OnRemovedFromSolver; Delegate @delegate = Delegate.Remove(onRemovedFromSolver, value); if (@delegate == 0 || @delegate != 0) { while (@delegate != onRemovedFromSolver) { } return; } throw new InvalidCastException(); } } // Token: 0x170002A7 RID: 679 // (get) Token: 0x0600292E RID: 10542 RVA: 0x0005A838 File Offset: 0x00058A38 // (set) Token: 0x0600292F RID: 10543 RVA: 0x0005A84C File Offset: 0x00058A4C [Token(Token = "0x170002A7")] public ObiSolver Solver { [Token(Token = "0x600292E")] [Address(RVA = "0x4754F0", Offset = "0x4742F0", VA = "0x1804754F0")] get { return this.solver; } [Token(Token = "0x600292F")] [Address(RVA = "0xED8980", Offset = "0xED7780", VA = "0x180ED8980")] set { if (this.solver != value) { int num = 0; bool flag = this.RemoveFromSolver(num); this.solver = value; } } } // Token: 0x170002A8 RID: 680 // (get) Token: 0x06002930 RID: 10544 RVA: 0x0005A87C File Offset: 0x00058A7C // (set) Token: 0x06002931 RID: 10545 RVA: 0x0005A890 File Offset: 0x00058A90 [Token(Token = "0x170002A8")] public ObiCollisionMaterial CollisionMaterial { [Token(Token = "0x6002930")] [Address(RVA = "0x31E490", Offset = "0x31D290", VA = "0x18031E490")] get { return this.collisionMaterial; } [Token(Token = "0x6002931")] [Address(RVA = "0xED88B0", Offset = "0xED76B0", VA = "0x180ED88B0")] set { if (this.collisionMaterial != value) { this.collisionMaterial = value; this.PushDataToSolver((ParticleData)((uint)512)); } } } // Token: 0x170002A9 RID: 681 // (get) Token: 0x06002932 RID: 10546 RVA: 0x0005A8C0 File Offset: 0x00058AC0 [Token(Token = "0x170002A9")] public bool Initializing { [Token(Token = "0x6002932")] [Address(RVA = "0xED8760", Offset = "0xED7560", VA = "0x180ED8760")] get { return this.initializing; } } // Token: 0x170002AA RID: 682 // (get) Token: 0x06002933 RID: 10547 RVA: 0x0005A8D4 File Offset: 0x00058AD4 [Token(Token = "0x170002AA")] public bool Initialized { [Token(Token = "0x6002933")] [Address(RVA = "0xED8750", Offset = "0xED7550", VA = "0x180ED8750")] get { return this.initialized; } } // Token: 0x170002AB RID: 683 // (get) Token: 0x06002934 RID: 10548 RVA: 0x0005A8E8 File Offset: 0x00058AE8 [Token(Token = "0x170002AB")] public bool InSolver { [Token(Token = "0x6002934")] [Address(RVA = "0xED8740", Offset = "0xED7540", VA = "0x180ED8740")] get { return this.inSolver; } } // Token: 0x170002AC RID: 684 // (get) Token: 0x06002935 RID: 10549 RVA: 0x0005A8FC File Offset: 0x00058AFC // (set) Token: 0x06002936 RID: 10550 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x170002AC")] public virtual bool SelfCollisions { [Token(Token = "0x6002935")] [Address(RVA = "0xAB46B0", Offset = "0xAB34B0", VA = "0x180AB46B0", Slot = "8")] get { return this.selfCollisions; } [Token(Token = "0x6002936")] [Address(RVA = "0xED8960", Offset = "0xED7760", VA = "0x180ED8960", Slot = "9")] set { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } } // Token: 0x170002AD RID: 685 // (get) Token: 0x06002937 RID: 10551 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x170002AD")] public virtual Matrix4x4 ActorLocalToWorldMatrix { [Token(Token = "0x6002937")] [Address(RVA = "0xED8680", Offset = "0xED7480", VA = "0x180ED8680", Slot = "10")] get { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } } // Token: 0x170002AE RID: 686 // (get) Token: 0x06002938 RID: 10552 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x170002AE")] public virtual Matrix4x4 ActorWorldToLocalMatrix { [Token(Token = "0x6002938")] [Address(RVA = "0xED86E0", Offset = "0xED74E0", VA = "0x180ED86E0", Slot = "11")] get { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } } // Token: 0x170002AF RID: 687 // (get) Token: 0x06002939 RID: 10553 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x170002AF")] public virtual bool UsesCustomExternalForces { [Token(Token = "0x6002939")] [Address(RVA = "0x290BB0", Offset = "0x28F9B0", VA = "0x180290BB0", Slot = "12")] get { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } } // Token: 0x0600293A RID: 10554 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x600293A")] [Address(RVA = "0x297F00", Offset = "0x296D00", VA = "0x180297F00", Slot = "13")] public virtual void Awake() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600293B RID: 10555 RVA: 0x0005A910 File Offset: 0x00058B10 [Token(Token = "0x600293B")] [Address(RVA = "0xED8210", Offset = "0xED7010", VA = "0x180ED8210", Slot = "14")] public virtual void Start() { if (Application.isPlaying) { int num = 0; bool flag = ((IObiSolverClient)this).AddToSolver(num); return; } } // Token: 0x0600293C RID: 10556 RVA: 0x0005A934 File Offset: 0x00058B34 [Token(Token = "0x600293C")] [Address(RVA = "0xED6790", Offset = "0xED5590", VA = "0x180ED6790", Slot = "15")] public virtual void OnDestroy() { int num = 0; bool flag = ((IObiSolverClient)this).AddToSolver(num); } // Token: 0x0600293D RID: 10557 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x600293D")] [Address(RVA = "0x297F00", Offset = "0x296D00", VA = "0x180297F00", Slot = "16")] public virtual void DestroyRequiredComponents() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600293E RID: 10558 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x600293E")] [Address(RVA = "0xED6900", Offset = "0xED5700", VA = "0x180ED6900", Slot = "17")] public virtual void OnEnable() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600293F RID: 10559 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x600293F")] [Address(RVA = "0xED67B0", Offset = "0xED55B0", VA = "0x180ED67B0", Slot = "18")] public virtual void OnDisable() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002940 RID: 10560 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6002940")] [Address(RVA = "0x297F00", Offset = "0x296D00", VA = "0x180297F00", Slot = "19")] public virtual void ResetActor() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002941 RID: 10561 RVA: 0x0005A94C File Offset: 0x00058B4C [Token(Token = "0x6002941")] [Address(RVA = "0xED83A0", Offset = "0xED71A0", VA = "0x180ED83A0", Slot = "20")] public virtual void UpdateParticlePhases() { if (this.inSolver) { int[] array = this.phases; int num = 0; if (num < array.Length) { int num2 = array[num]; int num3 = 0; int num4 = Oni.MakePhase(Oni.GetGroupFromPhase(num2), (Oni.ParticlePhase)num3); array[0] = num4; num++; int[] array2 = this.phases; } this.PushDataToSolver((ParticleData)((uint)128)); } } // Token: 0x06002942 RID: 10562 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6002942")] [Address(RVA = "0xED6140", Offset = "0xED4F40", VA = "0x180ED6140", Slot = "21")] public virtual bool AddToSolver(object info) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002943 RID: 10563 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6002943")] [Address(RVA = "0xED8250", Offset = "0xED7050", VA = "0x180ED8250")] public void UpdateDeformableTriangles() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002944 RID: 10564 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6002944")] [Address(RVA = "0xED7DB0", Offset = "0xED6BB0", VA = "0x180ED7DB0", Slot = "22")] public virtual bool RemoveFromSolver(object info) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002945 RID: 10565 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6002945")] [Address(RVA = "0xED7580", Offset = "0xED6380", VA = "0x180ED7580", Slot = "23")] public virtual void PushDataToSolver(ParticleData data = ParticleData.NONE) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002946 RID: 10566 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6002946")] [Address(RVA = "0xED7140", Offset = "0xED5F40", VA = "0x180ED7140", Slot = "24")] public virtual void PullDataFromSolver(ParticleData data = ParticleData.NONE) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002947 RID: 10567 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6002947")] [Address(RVA = "0xED6630", Offset = "0xED5430", VA = "0x180ED6630")] public Vector3 GetParticlePosition(int index) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002948 RID: 10568 RVA: 0x0005A9B4 File Offset: 0x00058BB4 [Token(Token = "0x6002948")] [Address(RVA = "0x454840", Offset = "0x453640", VA = "0x180454840", Slot = "25")] public virtual bool GenerateTethers(ObiActor.TetherType type) { return true; } // Token: 0x06002949 RID: 10569 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6002949")] [Address(RVA = "0xED6570", Offset = "0xED5370", VA = "0x180ED6570")] public void ClearTethers() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600294A RID: 10570 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x600294A")] [Address(RVA = "0x297F00", Offset = "0x296D00", VA = "0x180297F00", Slot = "26")] public virtual void OnSolverPreInterpolation() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600294B RID: 10571 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x600294B")] [Address(RVA = "0xED6A60", Offset = "0xED5860", VA = "0x180ED6A60", Slot = "27")] public virtual void OnSolverStepBegin() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600294C RID: 10572 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x600294C")] [Address(RVA = "0x297F00", Offset = "0x296D00", VA = "0x180297F00", Slot = "28")] public virtual void OnSolverStepEnd() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600294D RID: 10573 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x600294D")] [Address(RVA = "0x297F00", Offset = "0x296D00", VA = "0x180297F00", Slot = "29")] public virtual void OnSolverFrameBegin() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600294E RID: 10574 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x600294E")] [Address(RVA = "0x297F00", Offset = "0x296D00", VA = "0x180297F00", Slot = "30")] public virtual void OnSolverFrameEnd() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x0600294F RID: 10575 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x600294F")] [Address(RVA = "0x290BB0", Offset = "0x28F9B0", VA = "0x180290BB0", Slot = "31")] public virtual bool ReadParticlePropertyFromTexture(Texture2D source, Action onReadProperty) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06002950 RID: 10576 RVA: 0x0005A9C4 File Offset: 0x00058BC4 [Token(Token = "0x6002950")] [Address(RVA = "0xED8490", Offset = "0xED7290", VA = "0x180ED8490")] protected ObiActor() { Dictionary dictionary = new Dictionary(); this.constraints = dictionary; int[] array = new int[0]; this.deformableTriangles = array; base..ctor(); } // Token: 0x04003277 RID: 12919 [FieldOffset(Offset = "0x28")] [Token(Token = "0x4003277")] [Range(0f, 1f)] public float worldVelocityScale; // Token: 0x04003278 RID: 12920 [FieldOffset(Offset = "0x30")] [Token(Token = "0x4003278")] [HideInInspector] public ObiCollisionMaterial collisionMaterial; // Token: 0x04003279 RID: 12921 [FieldOffset(Offset = "0x38")] [Token(Token = "0x4003279")] [HideInInspector] [NonSerialized] public int[] particleIndices; // Token: 0x0400327A RID: 12922 [FieldOffset(Offset = "0x40")] [Token(Token = "0x400327A")] protected Dictionary constraints; // Token: 0x0400327B RID: 12923 [FieldOffset(Offset = "0x48")] [Token(Token = "0x400327B")] [HideInInspector] public bool[] active; // Token: 0x0400327C RID: 12924 [FieldOffset(Offset = "0x50")] [Token(Token = "0x400327C")] [HideInInspector] public Vector3[] positions; // Token: 0x0400327D RID: 12925 [FieldOffset(Offset = "0x58")] [Token(Token = "0x400327D")] [HideInInspector] public Vector4[] restPositions; // Token: 0x0400327E RID: 12926 [FieldOffset(Offset = "0x60")] [Token(Token = "0x400327E")] [HideInInspector] public Vector3[] velocities; // Token: 0x0400327F RID: 12927 [FieldOffset(Offset = "0x68")] [Token(Token = "0x400327F")] [HideInInspector] public float[] invMasses; // Token: 0x04003280 RID: 12928 [FieldOffset(Offset = "0x70")] [Token(Token = "0x4003280")] [HideInInspector] public float[] solidRadii; // Token: 0x04003281 RID: 12929 [FieldOffset(Offset = "0x78")] [Token(Token = "0x4003281")] [HideInInspector] public int[] phases; // Token: 0x04003282 RID: 12930 [FieldOffset(Offset = "0x80")] [Token(Token = "0x4003282")] [HideInInspector] public Color[] colors; // Token: 0x04003283 RID: 12931 [FieldOffset(Offset = "0x88")] [Token(Token = "0x4003283")] [HideInInspector] public int[] deformableTriangles; // Token: 0x04003284 RID: 12932 [FieldOffset(Offset = "0x90")] [Token(Token = "0x4003284")] [NonSerialized] protected int trianglesOffset; // Token: 0x04003285 RID: 12933 [FieldOffset(Offset = "0x94")] [Token(Token = "0x4003285")] private bool inSolver; // Token: 0x04003286 RID: 12934 [FieldOffset(Offset = "0x95")] [Token(Token = "0x4003286")] protected bool initializing; // Token: 0x04003287 RID: 12935 [FieldOffset(Offset = "0x98")] [Token(Token = "0x4003287")] [HideInInspector] [SerializeField] protected ObiSolver solver; // Token: 0x04003288 RID: 12936 [FieldOffset(Offset = "0xA0")] [Token(Token = "0x4003288")] [HideInInspector] [SerializeField] protected bool selfCollisions; // Token: 0x04003289 RID: 12937 [FieldOffset(Offset = "0xA1")] [Token(Token = "0x4003289")] [SerializeField] [HideInInspector] protected bool initialized; // Token: 0x0200048B RID: 1163 [Token(Token = "0x200048B")] public class ObiActorSolverArgs : EventArgs { // Token: 0x170002B0 RID: 688 // (get) Token: 0x06002951 RID: 10577 RVA: 0x0005A9F4 File Offset: 0x00058BF4 [Token(Token = "0x170002B0")] public ObiSolver Solver { [Token(Token = "0x6002951")] [Address(RVA = "0x2B4010", Offset = "0x2B2E10", VA = "0x1802B4010")] get { return this.solver; } } // Token: 0x06002952 RID: 10578 RVA: 0x0005AA08 File Offset: 0x00058C08 [Token(Token = "0x6002952")] [Address(RVA = "0x69F370", Offset = "0x69E170", VA = "0x18069F370")] public ObiActorSolverArgs(ObiSolver solver) { /* An exception occurred when decompiling this method (06002952) ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void Obi.ObiActor/ObiActorSolverArgs::.ctor(Obi.ObiSolver) ---> System.Exception: Basic block has to end with unconditional control flow. {; Block_0:; call:void(EventArgs::.ctor, ldloc:ObiActorSolverArgs[exp:EventArgs](this)); stfld:ObiSolver(ObiActorSolverArgs::solver, ldloc:ObiActorSolverArgs(this), ldloc:ObiSolver(solver)); }; 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: 0x0400328A RID: 12938 [FieldOffset(Offset = "0x10")] [Token(Token = "0x400328A")] private ObiSolver solver; } // Token: 0x0200048C RID: 1164 [Token(Token = "0x200048C")] public enum TetherType { // Token: 0x0400328C RID: 12940 [Token(Token = "0x400328C")] AnchorToFixed, // Token: 0x0400328D RID: 12941 [Token(Token = "0x400328D")] Hierarchical } } }