397 lines
16 KiB
C#
397 lines
16 KiB
C#
using System;
|
|
using System.Runtime.InteropServices;
|
|
using Cpp2IlInjected;
|
|
using UnityEngine;
|
|
|
|
// Token: 0x020001F8 RID: 504
|
|
[Token(Token = "0x20001F8")]
|
|
public class Soul : MonoBehaviour
|
|
{
|
|
// Token: 0x170000C8 RID: 200
|
|
// (get) Token: 0x06001413 RID: 5139 RVA: 0x0002DC14 File Offset: 0x0002BE14
|
|
[Token(Token = "0x170000C8")]
|
|
public int CollisionEffectId
|
|
{
|
|
[Token(Token = "0x6001413")]
|
|
[Address(RVA = "0x6EB330", Offset = "0x6EA130", VA = "0x1806EB330")]
|
|
get
|
|
{
|
|
return this.collisionEffectId;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06001414 RID: 5140 RVA: 0x0002DC28 File Offset: 0x0002BE28
|
|
[Token(Token = "0x6001414")]
|
|
[Address(RVA = "0x11F7160", Offset = "0x11F5F60", VA = "0x1811F7160")]
|
|
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: 0x06001415 RID: 5141 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x6001415")]
|
|
[Address(RVA = "0x11F6C50", Offset = "0x11F5A50", VA = "0x1811F6C50")]
|
|
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: 0x06001416 RID: 5142 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x6001416")]
|
|
[Address(RVA = "0x11F6FA0", Offset = "0x11F5DA0", VA = "0x1811F6FA0")]
|
|
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: 0x06001417 RID: 5143 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x6001417")]
|
|
[Address(RVA = "0x11F6DD0", Offset = "0x11F5BD0", VA = "0x1811F6DD0")]
|
|
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: 0x06001418 RID: 5144 RVA: 0x0002DCA0 File Offset: 0x0002BEA0
|
|
[Token(Token = "0x6001418")]
|
|
[Address(RVA = "0x5296E0", Offset = "0x5284E0", VA = "0x1805296E0")]
|
|
public void BindReturnHandlerEvent(Action returnHandler)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06001418)
|
|
|
|
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: 0x06001419 RID: 5145 RVA: 0x0002DCB4 File Offset: 0x0002BEB4
|
|
[Token(Token = "0x6001419")]
|
|
[Address(RVA = "0x11F7470", Offset = "0x11F6270", VA = "0x1811F7470")]
|
|
public void UpdateTimeScale(float timeScale)
|
|
{
|
|
/*
|
|
An exception occurred when decompiling this method (06001419)
|
|
|
|
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: 0x0600141A RID: 5146 RVA: 0x0002DD84 File Offset: 0x0002BF84
|
|
[Token(Token = "0x600141A")]
|
|
[Address(RVA = "0x4681B0", Offset = "0x466FB0", VA = "0x1804681B0")]
|
|
public bool GetIsColliding()
|
|
{
|
|
return this.isColliding;
|
|
}
|
|
|
|
// Token: 0x0600141B RID: 5147 RVA: 0x0002DD98 File Offset: 0x0002BF98
|
|
[Token(Token = "0x600141B")]
|
|
[Address(RVA = "0x11F7280", Offset = "0x11F6080", VA = "0x1811F7280")]
|
|
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: 0x0600141C RID: 5148 RVA: 0x0002DE24 File Offset: 0x0002C024
|
|
[Token(Token = "0x600141C")]
|
|
[Address(RVA = "0x11F7450", Offset = "0x11F6250", VA = "0x1811F7450")]
|
|
public void SetAliveTime(float visibleTime, float aliveTime)
|
|
{
|
|
this.visibleTime = visibleTime;
|
|
this.aliveTime = visibleTime;
|
|
}
|
|
|
|
// Token: 0x0600141D RID: 5149 RVA: 0x0002DE40 File Offset: 0x0002C040
|
|
[Token(Token = "0x600141D")]
|
|
[Address(RVA = "0x11F6B20", Offset = "0x11F5920", VA = "0x1811F6B20")]
|
|
private void CheckLifeTime()
|
|
{
|
|
float num = this.aliveTime;
|
|
if (0 < (int)num)
|
|
{
|
|
this.aliveTime = num;
|
|
if (this.soulSoundEffect)
|
|
{
|
|
this.soulSoundEffect.Stop();
|
|
}
|
|
this.ReturnItem();
|
|
return;
|
|
}
|
|
}
|
|
|
|
// Token: 0x0600141E RID: 5150 RVA: 0x0002DE88 File Offset: 0x0002C088
|
|
[Token(Token = "0x600141E")]
|
|
[Address(RVA = "0x11F6BE0", Offset = "0x11F59E0", VA = "0x1811F6BE0")]
|
|
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: 0x0600141F RID: 5151 RVA: 0x0002DEC8 File Offset: 0x0002C0C8
|
|
[Token(Token = "0x600141F")]
|
|
[Address(RVA = "0x11F73D0", Offset = "0x11F61D0", VA = "0x1811F73D0")]
|
|
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: 0x06001420 RID: 5152 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x6001420")]
|
|
[Address(RVA = "0x11F7660", Offset = "0x11F6460", VA = "0x1811F7660")]
|
|
private void Update()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x06001421 RID: 5153 RVA: 0x0002DF14 File Offset: 0x0002C114
|
|
[Token(Token = "0x6001421")]
|
|
[Address(RVA = "0x11F8310", Offset = "0x11F7110", VA = "0x1811F8310")]
|
|
public Soul()
|
|
{
|
|
}
|
|
|
|
// Token: 0x04001F36 RID: 7990
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x4001F36")]
|
|
public SoulSystem.SoulType SoulType;
|
|
|
|
// Token: 0x04001F37 RID: 7991
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x1C")]
|
|
[Token(Token = "0x4001F37")]
|
|
public float Quality = 1f;
|
|
|
|
// Token: 0x04001F38 RID: 7992
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x4001F38")]
|
|
private float g_fPiX;
|
|
|
|
// Token: 0x04001F39 RID: 7993
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x24")]
|
|
[Token(Token = "0x4001F39")]
|
|
private float g_fPiY;
|
|
|
|
// Token: 0x04001F3A RID: 7994
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x28")]
|
|
[Token(Token = "0x4001F3A")]
|
|
private float g_fPiZ;
|
|
|
|
// Token: 0x04001F3B RID: 7995
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x2C")]
|
|
[Token(Token = "0x4001F3B")]
|
|
private float g_fSpeedX;
|
|
|
|
// Token: 0x04001F3C RID: 7996
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x30")]
|
|
[Token(Token = "0x4001F3C")]
|
|
private float g_fSpeedY;
|
|
|
|
// Token: 0x04001F3D RID: 7997
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x34")]
|
|
[Token(Token = "0x4001F3D")]
|
|
private float g_fSpeedZ;
|
|
|
|
// Token: 0x04001F3E RID: 7998
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x38")]
|
|
[Token(Token = "0x4001F3E")]
|
|
private Vector3 g_v3CreateMoveDir;
|
|
|
|
// Token: 0x04001F3F RID: 7999
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x44")]
|
|
[Token(Token = "0x4001F3F")]
|
|
private float g_fCreateMoveSpeedVal;
|
|
|
|
// Token: 0x04001F40 RID: 8000
|
|
[Token(Token = "0x4001F40")]
|
|
private const float g_fCreateMoveSpeed = 2f;
|
|
|
|
// Token: 0x04001F41 RID: 8001
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x48")]
|
|
[Token(Token = "0x4001F41")]
|
|
private float g_fFollowSpeed;
|
|
|
|
// Token: 0x04001F42 RID: 8002
|
|
[Token(Token = "0x4001F42")]
|
|
private const float g_fFollowSpeedMax = 50f;
|
|
|
|
// Token: 0x04001F43 RID: 8003
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x4C")]
|
|
[Token(Token = "0x4001F43")]
|
|
private float g_fFreeTimeVal;
|
|
|
|
// Token: 0x04001F44 RID: 8004
|
|
[Token(Token = "0x4001F44")]
|
|
private const float g_fFreeTime = 2f;
|
|
|
|
// Token: 0x04001F45 RID: 8005
|
|
[Token(Token = "0x4001F45")]
|
|
private const float g_fPI2 = 6.2831855f;
|
|
|
|
// Token: 0x04001F46 RID: 8006
|
|
[Token(Token = "0x4001F46")]
|
|
private const float g_fSpeedMin = 0.5f;
|
|
|
|
// Token: 0x04001F47 RID: 8007
|
|
[Token(Token = "0x4001F47")]
|
|
private const float g_fSpeedMax = 2f;
|
|
|
|
// Token: 0x04001F48 RID: 8008
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x50")]
|
|
[Token(Token = "0x4001F48")]
|
|
private Vector3 g_PrePosition;
|
|
|
|
// Token: 0x04001F49 RID: 8009
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x5C")]
|
|
[Token(Token = "0x4001F49")]
|
|
private bool isColliding;
|
|
|
|
// Token: 0x04001F4A RID: 8010
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x60")]
|
|
[Token(Token = "0x4001F4A")]
|
|
private int collisionEffectId;
|
|
|
|
// Token: 0x04001F4B RID: 8011
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x68")]
|
|
[Token(Token = "0x4001F4B")]
|
|
private Action<Soul> collisionHandler;
|
|
|
|
// Token: 0x04001F4C RID: 8012
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x70")]
|
|
[Token(Token = "0x4001F4C")]
|
|
private Action returnHandler;
|
|
|
|
// Token: 0x04001F4D RID: 8013
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x78")]
|
|
[Token(Token = "0x4001F4D")]
|
|
private float g_fCloseTime;
|
|
|
|
// Token: 0x04001F4E RID: 8014
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x7C")]
|
|
[Token(Token = "0x4001F4E")]
|
|
private float visibleTime;
|
|
|
|
// Token: 0x04001F4F RID: 8015
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x80")]
|
|
[Token(Token = "0x4001F4F")]
|
|
private float aliveTime;
|
|
|
|
// Token: 0x04001F50 RID: 8016
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x84")]
|
|
[Token(Token = "0x4001F50")]
|
|
private Vector3 g_v3Target;
|
|
|
|
// Token: 0x04001F51 RID: 8017
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x90")]
|
|
[Token(Token = "0x4001F51")]
|
|
private SwitchDevice g_SD;
|
|
|
|
// Token: 0x04001F52 RID: 8018
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0x98")]
|
|
[Token(Token = "0x4001F52")]
|
|
private SceneEvent g_OpenSceneEvent;
|
|
|
|
// Token: 0x04001F53 RID: 8019
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0xA0")]
|
|
[Token(Token = "0x4001F53")]
|
|
private Transform g_OpenSceneEventPos;
|
|
|
|
// Token: 0x04001F54 RID: 8020
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0xA8")]
|
|
[Token(Token = "0x4001F54")]
|
|
private Transform g_LeadObject;
|
|
|
|
// Token: 0x04001F55 RID: 8021
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0xB0")]
|
|
[Token(Token = "0x4001F55")]
|
|
private float deltaTime;
|
|
|
|
// Token: 0x04001F56 RID: 8022
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0xB4")]
|
|
[Token(Token = "0x4001F56")]
|
|
private bool tracePlayer;
|
|
|
|
// Token: 0x04001F57 RID: 8023
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0xB8")]
|
|
[Token(Token = "0x4001F57")]
|
|
private ParticleSystem[] soulParticleEffects;
|
|
|
|
// Token: 0x04001F58 RID: 8024
|
|
[Cpp2IlInjected.FieldOffset(Offset = "0xC0")]
|
|
[Token(Token = "0x4001F58")]
|
|
private SoundEffect soulSoundEffect;
|
|
}
|