using System; using Cpp2IlInjected; using UnityEngine; // Token: 0x02000190 RID: 400 [Token(Token = "0x2000190")] public class CrystalBall : AttackableObject { // Token: 0x170000B0 RID: 176 // (get) Token: 0x06001274 RID: 4724 RVA: 0x0002A450 File Offset: 0x00028650 [Token(Token = "0x170000B0")] private StageFlagData Flags { [Token(Token = "0x6001274")] [Address(RVA = "0x14894D0", Offset = "0x1487CD0", VA = "0x1814894D0")] get { return Game.GameSave.flags; } } // Token: 0x06001275 RID: 4725 RVA: 0x0002A470 File Offset: 0x00028670 [Token(Token = "0x6001275")] [Address(RVA = "0x14881A0", Offset = "0x14869A0", VA = "0x1814881A0", Slot = "4")] public override void Init() { base.Init(); float intensity = this.PLight.intensity; Light plight = this.PLight; this.g_fLightDefIntensity = intensity; this.g_fLightRandomIntensity = 0f; int num = 0; plight.intensity = (float)num; Shake g_Shake = this.g_Shake; Transform transform = base.transform; ulong num2; g_Shake.Start(transform, num2 != 0UL); ulong num3; this.PS_BlackSmoke.Play(num3 != 0UL); GameObject se_BlackSmoke = this.SE_BlackSmoke; Transform transform2 = base.transform; SoundEffect soundEffectOfPrefabs = Common.GetSoundEffectOfPrefabs(se_BlackSmoke, transform2); this.g_SEBlackSmoke = soundEffectOfPrefabs; Game.BindStageTimeScale(this.g_SEBlackSmoke); GameObject se_ReceiveLight = this.SE_ReceiveLight; Transform transform3 = base.transform; SoundEffect soundEffectOfPrefabs2 = Common.GetSoundEffectOfPrefabs(se_ReceiveLight, transform3); this.g_SEReceiveLight = soundEffectOfPrefabs2; Game.BindStageTimeScale(this.g_SEReceiveLight); GameObject se_Complete = this.SE_Complete; Transform transform4 = base.transform; SoundEffect soundEffectOfPrefabs3 = Common.GetSoundEffectOfPrefabs(se_Complete, transform4); this.g_SEComplete = soundEffectOfPrefabs3; Game.BindStageTimeScale(this.g_SEComplete); GameObject se_CompleteLoop = this.SE_CompleteLoop; Transform transform5 = base.transform; SoundEffect soundEffectOfPrefabs4 = Common.GetSoundEffectOfPrefabs(se_CompleteLoop, transform5); this.g_SECompleteLoop = soundEffectOfPrefabs4; Game.BindStageTimeScale(this.g_SECompleteLoop); CrystalBall.CystalBallPos scriptEventType = this.ScriptEventType; this.g_fRLVolume = 0f; this.g_fRLPitch = 0.6f; if (scriptEventType != CrystalBall.CystalBallPos.CrystalBall01To02) { if (scriptEventType != CrystalBall.CystalBallPos.CrystalBall01To02) { if (scriptEventType != CrystalBall.CystalBallPos.CrystalBall01To02) { if (scriptEventType != CrystalBall.CystalBallPos.CrystalBall01To02) { if (scriptEventType != CrystalBall.CystalBallPos.CrystalBall03) { return; } StageFlagData flags = this.Flags; } StageFlagData flags2 = this.Flags; } StageFlagData flags3 = this.Flags; } StageFlagData flags4 = this.Flags; } if (this.Flags.stage04Room01To02CrystalBall) { this.SaveClose(); } } // Token: 0x06001276 RID: 4726 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6001276")] [Address(RVA = "0x1489160", Offset = "0x1487960", VA = "0x181489160", Slot = "6")] protected override void Update() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06001277 RID: 4727 RVA: 0x0002A600 File Offset: 0x00028800 [Token(Token = "0x6001277")] [Address(RVA = "0x1488430", Offset = "0x1486C30", VA = "0x181488430", Slot = "8")] protected override void LateUpdate() { base.LateUpdate(); float hp = this.HP; this.g_fHPBefore = hp; } // Token: 0x06001278 RID: 4728 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x6001278")] [Address(RVA = "0x1488AC0", Offset = "0x14872C0", VA = "0x181488AC0")] public void SetReceiveLight(float fDistance) { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x06001279 RID: 4729 RVA: 0x0002A624 File Offset: 0x00028824 [Token(Token = "0x6001279")] [Address(RVA = "0x1488140", Offset = "0x1486940", VA = "0x181488140")] public bool GetIsReceiveLight() { return this.g_bIsReceiveLight; } // Token: 0x0600127A RID: 4730 RVA: 0x0002A638 File Offset: 0x00028838 [Token(Token = "0x600127A")] [Address(RVA = "0x1488150", Offset = "0x1486950", VA = "0x181488150", Slot = "9")] public override void HitPhysical(AttackData AD) { Shake g_Shake = this.g_Shake; int num = 0; ulong num2; g_Shake.SetRandomShake(0.2f, 6f, 0.6f, (float)num, num2 != 0UL); } // Token: 0x0600127B RID: 4731 RVA: 0x0002A66C File Offset: 0x0002886C [Token(Token = "0x600127B")] [Address(RVA = "0x1488150", Offset = "0x1486950", VA = "0x181488150", Slot = "10")] public override void HitMagic(AttackData AD) { Shake g_Shake = this.g_Shake; int num = 0; ulong num2; g_Shake.SetRandomShake(0.2f, 6f, 0.6f, (float)num, num2 != 0UL); } // Token: 0x0600127C RID: 4732 RVA: 0x0002A6A0 File Offset: 0x000288A0 [Token(Token = "0x600127C")] [Address(RVA = "0x1488830", Offset = "0x1487030", VA = "0x181488830")] public void SaveClose() { Light plight = this.PLight; float num = this.g_fLightDefIntensity; plight.intensity = num; ParticleSystem ps_BlackSmoke = this.PS_BlackSmoke; this.g_bIsReceiveLight = false; ps_BlackSmoke.Stop(true); this.PS_ReceiveLight.Stop(true); this.PS_Complete.Play(true); int length = this.ReleaseSceneEvent.Length; int num2 = 0; if (length > 0) { SceneEvent sceneEvent = this.ReleaseSceneEvent[num2]; int num3 = 0; if (sceneEvent != num3) { GameObject gameObject = this.ReleaseSceneEvent[num2].gameObject; int num4 = 0; gameObject.SetActive(num4 != 0); } num2++; } if (this.ReleasePSFog.Length > 0) { ParticleSystem particleSystem = this.ReleasePSFog[num2]; int num5 = 0; if (particleSystem != num5) { GameObject gameObject2 = this.ReleasePSFog[num2].gameObject; int num6 = 0; gameObject2.SetActive(num6 != 0); } num2++; } } // Token: 0x0600127D RID: 4733 RVA: 0x0002A7A0 File Offset: 0x000289A0 [Token(Token = "0x600127D")] [Address(RVA = "0x1489110", Offset = "0x1487910", VA = "0x181489110", Slot = "11")] public override void SetTimeScale(float fTimeScale) { Common.SetEffectTimeScale(this.PS_BlackSmoke, fTimeScale); Common.SetEffectTimeScale(this.PS_ReceiveLight, fTimeScale); Common.SetEffectTimeScale(this.PS_Complete, fTimeScale); } // Token: 0x0600127E RID: 4734 RVA: 0x0002A7D4 File Offset: 0x000289D4 [Token(Token = "0x600127E")] [Address(RVA = "0x1488450", Offset = "0x1486C50", VA = "0x181488450")] private new void OnEnable() { ParticleSystem ps_BlackSmoke; for (;;) { ps_BlackSmoke = this.PS_BlackSmoke; if (this.g_bIsReceiveLight) { break; } ps_BlackSmoke.Stop(true); this.PS_ReceiveLight.Stop(true); this.PS_Complete.Play(true); SoundEffect soundEffect = this.g_SEBlackSmoke; int num = 0; if (soundEffect != num) { this.g_SEBlackSmoke.Stop(); } SoundEffect soundEffect2 = this.g_SECompleteLoop; int num2 = 0; if (soundEffect2 != num2) { this.g_SECompleteLoop.PlayRandom(1f, 1f); } if (this.ReleasePSFog.Length > 0) { goto Block_7; } } ps_BlackSmoke.Play(true); this.PS_ReceiveLight.Stop(true); this.PS_Complete.Stop(true); if (this.ReleasePSFog.Length > 0) { int num3 = 0; ParticleSystem particleSystem = this.ReleasePSFog[num3]; int num4 = 0; if (particleSystem != num4) { this.ReleasePSFog[num3].Play(true); } num3++; } SoundEffect soundEffect3 = this.g_SEBlackSmoke; int num5 = 0; if (soundEffect3 != num5) { this.g_SEBlackSmoke.PlayRandom(1f, 1f); } SoundEffect soundEffect4 = this.g_SECompleteLoop; int num6 = 0; if (soundEffect4 != num6) { this.g_SECompleteLoop.Stop(); } return; Block_7: int num7 = 0; ParticleSystem particleSystem2 = this.ReleasePSFog[num7]; int num8 = 0; if (particleSystem2 != num8) { this.ReleasePSFog[num7].Stop(true); } num7++; throw new NullReferenceException(); } // Token: 0x0600127F RID: 4735 RVA: 0x0002A960 File Offset: 0x00028B60 [Token(Token = "0x600127F")] [Address(RVA = "0x14894C0", Offset = "0x1487CC0", VA = "0x1814894C0")] public CrystalBall() { } // Token: 0x04001CAA RID: 7338 [FieldOffset(Offset = "0x68")] [Token(Token = "0x4001CAA")] public Light PLight; // Token: 0x04001CAB RID: 7339 [FieldOffset(Offset = "0x70")] [Token(Token = "0x4001CAB")] private float g_fLightDefIntensity; // Token: 0x04001CAC RID: 7340 [FieldOffset(Offset = "0x74")] [Token(Token = "0x4001CAC")] private float g_fLightRandomIntensity; // Token: 0x04001CAD RID: 7341 [FieldOffset(Offset = "0x78")] [Token(Token = "0x4001CAD")] public ParticleSystem PS_BlackSmoke; // Token: 0x04001CAE RID: 7342 [FieldOffset(Offset = "0x80")] [Token(Token = "0x4001CAE")] public ParticleSystem PS_ReceiveLight; // Token: 0x04001CAF RID: 7343 [FieldOffset(Offset = "0x88")] [Token(Token = "0x4001CAF")] public ParticleSystem PS_Complete; // Token: 0x04001CB0 RID: 7344 [FieldOffset(Offset = "0x90")] [Token(Token = "0x4001CB0")] public GameObject SE_BlackSmoke; // Token: 0x04001CB1 RID: 7345 [FieldOffset(Offset = "0x98")] [Token(Token = "0x4001CB1")] public GameObject SE_ReceiveLight; // Token: 0x04001CB2 RID: 7346 [FieldOffset(Offset = "0xA0")] [Token(Token = "0x4001CB2")] public GameObject SE_Complete; // Token: 0x04001CB3 RID: 7347 [FieldOffset(Offset = "0xA8")] [Token(Token = "0x4001CB3")] public GameObject SE_CompleteLoop; // Token: 0x04001CB4 RID: 7348 [FieldOffset(Offset = "0xB0")] [Token(Token = "0x4001CB4")] private SoundEffect g_SEBlackSmoke; // Token: 0x04001CB5 RID: 7349 [FieldOffset(Offset = "0xB8")] [Token(Token = "0x4001CB5")] private SoundEffect g_SEReceiveLight; // Token: 0x04001CB6 RID: 7350 [FieldOffset(Offset = "0xC0")] [Token(Token = "0x4001CB6")] private SoundEffect g_SEComplete; // Token: 0x04001CB7 RID: 7351 [FieldOffset(Offset = "0xC8")] [Token(Token = "0x4001CB7")] private SoundEffect g_SECompleteLoop; // Token: 0x04001CB8 RID: 7352 [FieldOffset(Offset = "0xD0")] [Token(Token = "0x4001CB8")] public SceneEvent[] ReleaseSceneEvent; // Token: 0x04001CB9 RID: 7353 [FieldOffset(Offset = "0xD8")] [Token(Token = "0x4001CB9")] public SceneEvent[] OpenSceneEvent; // Token: 0x04001CBA RID: 7354 [FieldOffset(Offset = "0xE0")] [Token(Token = "0x4001CBA")] public ParticleSystem[] ReleasePSFog; // Token: 0x04001CBB RID: 7355 [FieldOffset(Offset = "0xE8")] [Token(Token = "0x4001CBB")] private float g_fHPBefore; // Token: 0x04001CBC RID: 7356 [Token(Token = "0x4001CBC")] private const float g_AutoCureHP = 0.45f; // Token: 0x04001CBD RID: 7357 [FieldOffset(Offset = "0xEC")] [Token(Token = "0x4001CBD")] private bool g_bIsReceiveLight = true; // Token: 0x04001CBE RID: 7358 [FieldOffset(Offset = "0xF0")] [Token(Token = "0x4001CBE")] private float g_fRLVolume; // Token: 0x04001CBF RID: 7359 [FieldOffset(Offset = "0xF4")] [Token(Token = "0x4001CBF")] private float g_fRLPitch; // Token: 0x04001CC0 RID: 7360 [FieldOffset(Offset = "0xF8")] [Token(Token = "0x4001CC0")] public CrystalBall.CystalBallPos ScriptEventType; // Token: 0x04001CC1 RID: 7361 [FieldOffset(Offset = "0xFC")] [Token(Token = "0x4001CC1")] private bool g_bSwitch; // Token: 0x02000191 RID: 401 [Token(Token = "0x2000191")] public enum CystalBallPos { // Token: 0x04001CC3 RID: 7363 [Token(Token = "0x4001CC3")] CrystalBall01To02, // Token: 0x04001CC4 RID: 7364 [Token(Token = "0x4001CC4")] CrystalBall03, // Token: 0x04001CC5 RID: 7365 [Token(Token = "0x4001CC5")] CrystalBall01To04, // Token: 0x04001CC6 RID: 7366 [Token(Token = "0x4001CC6")] CrystalBall04, // Token: 0x04001CC7 RID: 7367 [Token(Token = "0x4001CC7")] CrystalBall05 } }