397 lines
16 KiB
C#
397 lines
16 KiB
C#
using System;
|
|
using System.Runtime.InteropServices;
|
|
using Cpp2IlInjected;
|
|
using UnityEngine;
|
|
|
|
// Token: 0x02000200 RID: 512
|
|
[Token(Token = "0x2000200")]
|
|
public class Soul : MonoBehaviour
|
|
{
|
|
// Token: 0x170000BE RID: 190
|
|
// (get) Token: 0x06001432 RID: 5170 RVA: 0x0002E378 File Offset: 0x0002C578
|
|
[Token(Token = "0x170000BE")]
|
|
public int CollisionEffectId
|
|
{
|
|
[Token(Token = "0x6001432")]
|
|
[Address(RVA = "0x765D40", Offset = "0x764540", VA = "0x180765D40")]
|
|
get
|
|
{
|
|
return this.collisionEffectId;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06001433 RID: 5171 RVA: 0x0002E38C File Offset: 0x0002C58C
|
|
[Token(Token = "0x6001433")]
|
|
[Address(RVA = "0x11CA3E0", Offset = "0x11C8BE0", VA = "0x1811CA3E0")]
|
|
public void Init()
|
|
{
|
|
ParticleSystem[] componentsInChildren = base.GetComponentsInChildren<ParticleSystem>(true);
|
|
this.soulParticleEffects = componentsInChildren;
|
|
SoundEffect component = base.GetComponent<SoundEffect>();
|
|
this.soulSoundEffect = component;
|
|
ParticleSystem[] array = this.soulParticleEffects;
|
|
if (array != 0 && array.Length > 0)
|
|
{
|
|
array[0].Stop(true);
|
|
}
|
|
SoundEffect soundEffect = this.soulSoundEffect;
|
|
int num = 0;
|
|
if (soundEffect != num)
|
|
{
|
|
this.soulSoundEffect.InitData("SoundEffect");
|
|
}
|
|
}
|
|
|
|
// Token: 0x06001434 RID: 5172 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x6001434")]
|
|
[Address(RVA = "0x11C9ED0", Offset = "0x11C86D0", VA = "0x1811C9ED0")]
|
|
public void InitData(int collisionEffectId, Action<Soul> collisionHandler, float fCloseTime = 2f)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x06001435 RID: 5173 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x6001435")]
|
|
[Address(RVA = "0x11CA220", Offset = "0x11C8A20", VA = "0x1811CA220")]
|
|
public void InitEventData(Vector3 v3Target, int collisionEffectId, Action<Soul> collisionHandler, SwitchDevice SD, [Optional] Transform LeadObject, float fCloseTime = 2f)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x06001436 RID: 5174 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x6001436")]
|
|
[Address(RVA = "0x11CA050", Offset = "0x11C8850", VA = "0x1811CA050")]
|
|
public void InitEventData(Vector3 v3Target, int collisionEffectId, Action<Soul> collisionHandler, SceneEvent SE, Transform SEPos, [Optional] Transform LeadObject, float fCloseTime = 2f)
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x06001437 RID: 5175 RVA: 0x0002E404 File Offset: 0x0002C604
|
|
[Token(Token = "0x6001437")]
|
|
[Address(RVA = "0x558E70", Offset = "0x557670", VA = "0x180558E70")]
|
|
public void BindReturnHandlerEvent(Action returnHandler)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06001437)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void Soul::BindReturnHandlerEvent(System.Action)
|
|
|
|
---> System.Exception: Basic block has to end with unconditional control flow.
|
|
{; Block_0:; stfld:Action(Soul::returnHandler, ldloc:Soul(this), ldloc:Action(returnHandler)); };
|
|
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: 0x06001438 RID: 5176 RVA: 0x0002E418 File Offset: 0x0002C618
|
|
[Token(Token = "0x6001438")]
|
|
[Address(RVA = "0x11CA6F0", Offset = "0x11C8EF0", VA = "0x1811CA6F0")]
|
|
public void UpdateTimeScale(float timeScale)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06001438)
|
|
|
|
ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void Soul::UpdateTimeScale(System.Single)
|
|
|
|
---> System.ArgumentOutOfRangeException: Non-negative number required. (Parameter 'length')
|
|
at System.Array.Copy(Array sourceArray, Int32 sourceIndex, Array destinationArray, Int32 destinationIndex, Int32 length, Boolean reliable)
|
|
at System.Array.Copy(Array sourceArray, Array destinationArray, Int32 length)
|
|
at ICSharpCode.Decompiler.ILAst.ILAstBuilder.StackSlot.ModifyStack(StackSlot[] stack, Int32 popCount, Int32 pushCount, ByteCode pushDefinition) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstBuilder.cs:line 51
|
|
at ICSharpCode.Decompiler.ILAst.ILAstBuilder.StackAnalysis(MethodDef methodDef) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstBuilder.cs:line 401
|
|
at ICSharpCode.Decompiler.ILAst.ILAstBuilder.Build(MethodDef methodDef, Boolean optimize, DecompilerContext context) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstBuilder.cs:line 276
|
|
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 112
|
|
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: 0x06001439 RID: 5177 RVA: 0x0002E4E8 File Offset: 0x0002C6E8
|
|
[Token(Token = "0x6001439")]
|
|
[Address(RVA = "0x4AB670", Offset = "0x4A9E70", VA = "0x1804AB670")]
|
|
public bool GetIsColliding()
|
|
{
|
|
return this.isColliding;
|
|
}
|
|
|
|
// Token: 0x0600143A RID: 5178 RVA: 0x0002E4FC File Offset: 0x0002C6FC
|
|
[Token(Token = "0x600143A")]
|
|
[Address(RVA = "0x11CA500", Offset = "0x11C8D00", VA = "0x1811CA500")]
|
|
public void PlaySoulEffect(float timeScale, bool playSoundOnCreated)
|
|
{
|
|
SoundEffect soundEffect = this.soulSoundEffect;
|
|
int num = 0;
|
|
bool flag = soundEffect != num;
|
|
if (playSoundOnCreated != flag)
|
|
{
|
|
this.soulSoundEffect.PlayRandom(1f, 1f);
|
|
}
|
|
ParticleSystem[] array = this.soulParticleEffects;
|
|
if (array != 0 && array.Length > 0)
|
|
{
|
|
if (array[0].isPlaying)
|
|
{
|
|
this.soulParticleEffects[0].Stop(true);
|
|
}
|
|
this.soulParticleEffects[0].Play(true);
|
|
}
|
|
this.UpdateTimeScale(timeScale);
|
|
}
|
|
|
|
// Token: 0x0600143B RID: 5179 RVA: 0x0002E588 File Offset: 0x0002C788
|
|
[Token(Token = "0x600143B")]
|
|
[Address(RVA = "0x11CA6D0", Offset = "0x11C8ED0", VA = "0x1811CA6D0")]
|
|
public void SetAliveTime(float visibleTime, float aliveTime)
|
|
{
|
|
this.visibleTime = visibleTime;
|
|
this.aliveTime = visibleTime;
|
|
}
|
|
|
|
// Token: 0x0600143C RID: 5180 RVA: 0x0002E5A4 File Offset: 0x0002C7A4
|
|
[Token(Token = "0x600143C")]
|
|
[Address(RVA = "0x11C9DA0", Offset = "0x11C85A0", VA = "0x1811C9DA0")]
|
|
private void CheckLifeTime()
|
|
{
|
|
float num = this.aliveTime;
|
|
if (0 < (int)num)
|
|
{
|
|
this.aliveTime = num;
|
|
if (this.soulSoundEffect)
|
|
{
|
|
this.soulSoundEffect.Stop();
|
|
}
|
|
this.ReturnItem();
|
|
return;
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600143D RID: 5181 RVA: 0x0002E5EC File Offset: 0x0002C7EC
|
|
[Token(Token = "0x600143D")]
|
|
[Address(RVA = "0x11C9E60", Offset = "0x11C8660", VA = "0x1811C9E60")]
|
|
private void CheckVisibleTime()
|
|
{
|
|
float num = this.visibleTime;
|
|
if (0 < (int)num)
|
|
{
|
|
this.visibleTime = num;
|
|
ParticleSystem[] array = this.soulParticleEffects;
|
|
if (array != 0)
|
|
{
|
|
array[0].Stop(true);
|
|
return;
|
|
}
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600143E RID: 5182 RVA: 0x0002E62C File Offset: 0x0002C82C
|
|
[Token(Token = "0x600143E")]
|
|
[Address(RVA = "0x11CA650", Offset = "0x11C8E50", VA = "0x1811CA650")]
|
|
private void ReturnItem()
|
|
{
|
|
ParticleSystem[] array = this.soulParticleEffects;
|
|
if (array != 0)
|
|
{
|
|
array[0].Stop();
|
|
}
|
|
GameObject gameObject = base.gameObject;
|
|
int num = 0;
|
|
gameObject.SetActive(num != 0);
|
|
Action action = this.returnHandler;
|
|
if (action != 0)
|
|
{
|
|
action();
|
|
return;
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600143F RID: 5183 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x600143F")]
|
|
[Address(RVA = "0x11CA8E0", Offset = "0x11C90E0", VA = "0x1811CA8E0")]
|
|
private void Update()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x06001440 RID: 5184 RVA: 0x0002E678 File Offset: 0x0002C878
|
|
[Token(Token = "0x6001440")]
|
|
[Address(RVA = "0x11CB590", Offset = "0x11C9D90", VA = "0x1811CB590")]
|
|
public Soul()
|
|
{
|
|
}
|
|
|
|
// Token: 0x04001F6B RID: 8043
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x4001F6B")]
|
|
public SoulSystem.SoulType SoulType;
|
|
|
|
// Token: 0x04001F6C RID: 8044
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x1C")]
|
|
[Token(Token = "0x4001F6C")]
|
|
public float Quality = 1f;
|
|
|
|
// Token: 0x04001F6D RID: 8045
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x4001F6D")]
|
|
private float g_fPiX;
|
|
|
|
// Token: 0x04001F6E RID: 8046
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x24")]
|
|
[Token(Token = "0x4001F6E")]
|
|
private float g_fPiY;
|
|
|
|
// Token: 0x04001F6F RID: 8047
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x28")]
|
|
[Token(Token = "0x4001F6F")]
|
|
private float g_fPiZ;
|
|
|
|
// Token: 0x04001F70 RID: 8048
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x2C")]
|
|
[Token(Token = "0x4001F70")]
|
|
private float g_fSpeedX;
|
|
|
|
// Token: 0x04001F71 RID: 8049
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x30")]
|
|
[Token(Token = "0x4001F71")]
|
|
private float g_fSpeedY;
|
|
|
|
// Token: 0x04001F72 RID: 8050
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x34")]
|
|
[Token(Token = "0x4001F72")]
|
|
private float g_fSpeedZ;
|
|
|
|
// Token: 0x04001F73 RID: 8051
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x38")]
|
|
[Token(Token = "0x4001F73")]
|
|
private Vector3 g_v3CreateMoveDir;
|
|
|
|
// Token: 0x04001F74 RID: 8052
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x44")]
|
|
[Token(Token = "0x4001F74")]
|
|
private float g_fCreateMoveSpeedVal;
|
|
|
|
// Token: 0x04001F75 RID: 8053
|
|
[Token(Token = "0x4001F75")]
|
|
private const float g_fCreateMoveSpeed = 2f;
|
|
|
|
// Token: 0x04001F76 RID: 8054
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x48")]
|
|
[Token(Token = "0x4001F76")]
|
|
private float g_fFollowSpeed;
|
|
|
|
// Token: 0x04001F77 RID: 8055
|
|
[Token(Token = "0x4001F77")]
|
|
private const float g_fFollowSpeedMax = 50f;
|
|
|
|
// Token: 0x04001F78 RID: 8056
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x4C")]
|
|
[Token(Token = "0x4001F78")]
|
|
private float g_fFreeTimeVal;
|
|
|
|
// Token: 0x04001F79 RID: 8057
|
|
[Token(Token = "0x4001F79")]
|
|
private const float g_fFreeTime = 2f;
|
|
|
|
// Token: 0x04001F7A RID: 8058
|
|
[Token(Token = "0x4001F7A")]
|
|
private const float g_fPI2 = 6.2831855f;
|
|
|
|
// Token: 0x04001F7B RID: 8059
|
|
[Token(Token = "0x4001F7B")]
|
|
private const float g_fSpeedMin = 0.5f;
|
|
|
|
// Token: 0x04001F7C RID: 8060
|
|
[Token(Token = "0x4001F7C")]
|
|
private const float g_fSpeedMax = 2f;
|
|
|
|
// Token: 0x04001F7D RID: 8061
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x50")]
|
|
[Token(Token = "0x4001F7D")]
|
|
private Vector3 g_PrePosition;
|
|
|
|
// Token: 0x04001F7E RID: 8062
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x5C")]
|
|
[Token(Token = "0x4001F7E")]
|
|
private bool isColliding;
|
|
|
|
// Token: 0x04001F7F RID: 8063
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x60")]
|
|
[Token(Token = "0x4001F7F")]
|
|
private int collisionEffectId;
|
|
|
|
// Token: 0x04001F80 RID: 8064
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x68")]
|
|
[Token(Token = "0x4001F80")]
|
|
private Action<Soul> collisionHandler;
|
|
|
|
// Token: 0x04001F81 RID: 8065
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x70")]
|
|
[Token(Token = "0x4001F81")]
|
|
private Action returnHandler;
|
|
|
|
// Token: 0x04001F82 RID: 8066
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x78")]
|
|
[Token(Token = "0x4001F82")]
|
|
private float g_fCloseTime;
|
|
|
|
// Token: 0x04001F83 RID: 8067
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x7C")]
|
|
[Token(Token = "0x4001F83")]
|
|
private float visibleTime;
|
|
|
|
// Token: 0x04001F84 RID: 8068
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x80")]
|
|
[Token(Token = "0x4001F84")]
|
|
private float aliveTime;
|
|
|
|
// Token: 0x04001F85 RID: 8069
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x84")]
|
|
[Token(Token = "0x4001F85")]
|
|
private Vector3 g_v3Target;
|
|
|
|
// Token: 0x04001F86 RID: 8070
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x90")]
|
|
[Token(Token = "0x4001F86")]
|
|
private SwitchDevice g_SD;
|
|
|
|
// Token: 0x04001F87 RID: 8071
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x98")]
|
|
[Token(Token = "0x4001F87")]
|
|
private SceneEvent g_OpenSceneEvent;
|
|
|
|
// Token: 0x04001F88 RID: 8072
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0xA0")]
|
|
[Token(Token = "0x4001F88")]
|
|
private Transform g_OpenSceneEventPos;
|
|
|
|
// Token: 0x04001F89 RID: 8073
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0xA8")]
|
|
[Token(Token = "0x4001F89")]
|
|
private Transform g_LeadObject;
|
|
|
|
// Token: 0x04001F8A RID: 8074
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0xB0")]
|
|
[Token(Token = "0x4001F8A")]
|
|
private float deltaTime;
|
|
|
|
// Token: 0x04001F8B RID: 8075
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0xB4")]
|
|
[Token(Token = "0x4001F8B")]
|
|
private bool tracePlayer;
|
|
|
|
// Token: 0x04001F8C RID: 8076
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0xB8")]
|
|
[Token(Token = "0x4001F8C")]
|
|
private ParticleSystem[] soulParticleEffects;
|
|
|
|
// Token: 0x04001F8D RID: 8077
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0xC0")]
|
|
[Token(Token = "0x4001F8D")]
|
|
private SoundEffect soulSoundEffect;
|
|
}
|