using System; using Cpp2IlInjected; using RootMotion.FinalIK; using UnityEngine; using UnityEngine.AI; // Token: 0x020000AB RID: 171 [Token(Token = "0x20000AB")] public class NPC_GhostB : NPC { // Token: 0x0600079F RID: 1951 RVA: 0x00011AB0 File Offset: 0x0000FCB0 [Token(Token = "0x600079F")] [Address(RVA = "0xFC6B60", Offset = "0xFC5360", VA = "0x180FC6B60", Slot = "4")] public override void Init() { Animator component = base.GetComponent(); this.g_Ani = component; MoveController moveController = new MoveController(); this.g_Move = moveController; MoveController g_Move = this.g_Move; Transform transform = base.transform; g_Move.Init(transform); this.g_Move.gravity = 10f; this.g_Move.SetDragRotation(0.6f); NavMeshPath navMeshPath = new NavMeshPath(); this.g_NavPath = navMeshPath; float g_fWalkSpeed = this.g_fWalkSpeed; this.g_fNavMoveSpeed = g_fWalkSpeed; Transform transform2 = base.transform.Find("IK"); int num = 0; bool flag = transform2 != num; int num2 = 0; if (flag) { LookAtIK component2 = transform2.GetComponent(); this.g_LookAt = component2; Transform target = this.g_LookAt.solver.target; this.g_LookAtTarget = target; this.g_LookAtTargetSet = num2; } this.g_bLookAtEnable = num2 != 0; this.g_fLookAtWeight = (float)num2; Transform transform3 = base.transform.Find("Dialogue"); int num3 = 0; Dialogue g_Dialog; if (!(transform3 == num3)) { Dialogue component3 = transform3.GetComponent(); this.g_Dialog = component3; g_Dialog = this.g_Dialog; int num4 = 0; if (g_Dialog == num4) { Debug.LogError("Dialogue錯誤"); } this.g_Dialog.Init(); GameObject gameObject = this.g_Dialog.gameObject; int num5 = 0; gameObject.SetActive(num5 != 0); } this.g_Dialog = g_Dialog; GameObject semoveObject = this.SEMoveObject; int num6 = 0; if (semoveObject != num6) { GameObject semoveObject2 = this.SEMoveObject; Transform transform4 = base.transform; SoundEffect soundEffectOfPrefabs = Common.GetSoundEffectOfPrefabs(semoveObject2, transform4); this.g_SEMove = soundEffectOfPrefabs; Game.BindStageTimeScale(this.g_SEMove); this.g_SEMove.DistanceMin = 6f; this.g_SEMove.DistanceMax = 30f; } } // Token: 0x060007A0 RID: 1952 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x60007A0")] [Address(RVA = "0xFC7070", Offset = "0xFC5870", VA = "0x180FC7070", Slot = "6")] protected override void Update() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x060007A1 RID: 1953 RVA: 0x00011C84 File Offset: 0x0000FE84 [Token(Token = "0x60007A1")] [Address(RVA = "0xFC6FD0", Offset = "0xFC57D0", VA = "0x180FC6FD0", Slot = "5")] protected override void OnEnable() { base.OnEnable(); SoundEffect soundEffect = this.g_SEMove; int num = 0; if (soundEffect != num) { this.g_SEMove.PlayRandom(1f, 1f); } } // Token: 0x060007A2 RID: 1954 RVA: 0x000020D3 File Offset: 0x000002D3 [Token(Token = "0x60007A2")] [Address(RVA = "0x29E8B0", Offset = "0x29D0B0", VA = "0x18029E8B0")] public void PlayFireMagicShot() { throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method."); } // Token: 0x060007A3 RID: 1955 RVA: 0x00011CC8 File Offset: 0x0000FEC8 [Token(Token = "0x60007A3")] [Address(RVA = "0xFC5D50", Offset = "0xFC4550", VA = "0x180FC5D50")] public NPC_GhostB() { } // Token: 0x040008F6 RID: 2294 [FieldOffset(Offset = "0x100")] [Token(Token = "0x40008F6")] public GameObject SEMoveObject; // Token: 0x040008F7 RID: 2295 [FieldOffset(Offset = "0x108")] [Token(Token = "0x40008F7")] public GameObject SEChargeObject; // Token: 0x040008F8 RID: 2296 [FieldOffset(Offset = "0x110")] [Token(Token = "0x40008F8")] private SoundEffect g_SEMove; // Token: 0x040008F9 RID: 2297 [FieldOffset(Offset = "0x118")] [Token(Token = "0x40008F9")] private SoundEffect g_SECharge; }