using System;
using Cpp2IlInjected;
using UnityEngine;

// Token: 0x02000069 RID: 105
[Token(Token = "0x2000069")]
public class AI_GhostB : AI_NPC
{
	// Token: 0x06000440 RID: 1088 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000440")]
	[Address(RVA = "0x178B430", Offset = "0x178A230", VA = "0x18178B430", Slot = "4")]
	public override void Start(GameObject This, NPCManage NPCM)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000441 RID: 1089 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000441")]
	[Address(RVA = "0x178C1A0", Offset = "0x178AFA0", VA = "0x18178C1A0", Slot = "5")]
	public override void Update(float fDeltaTime)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000442 RID: 1090 RVA: 0x0000B73C File Offset: 0x0000993C
	[Token(Token = "0x6000442")]
	[Address(RVA = "0x1782590", Offset = "0x1781390", VA = "0x181782590", Slot = "6")]
	public override void LateUpdate()
	{
		this.g_ShakeHead.Update();
		this.g_ShakeBody.Update();
	}

	// Token: 0x06000443 RID: 1091 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000443")]
	[Address(RVA = "0x178B250", Offset = "0x178A050", VA = "0x18178B250", Slot = "9")]
	public override void Sky()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000444 RID: 1092 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000444")]
	[Address(RVA = "0x178AE80", Offset = "0x1789C80", VA = "0x18178AE80", Slot = "29")]
	public override void ResurrectionStatus()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000445 RID: 1093 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000445")]
	[Address(RVA = "0x1781A30", Offset = "0x1780830", VA = "0x181781A30", Slot = "8")]
	public override void Idle()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000446 RID: 1094 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000446")]
	[Address(RVA = "0x178A100", Offset = "0x1788F00", VA = "0x18178A100", Slot = "11")]
	public override void Patrol()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000447 RID: 1095 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000447")]
	[Address(RVA = "0x177CF50", Offset = "0x177BD50", VA = "0x18177CF50", Slot = "12")]
	public override void Confirming()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000448 RID: 1096 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000448")]
	[Address(RVA = "0x178BD00", Offset = "0x178AB00", VA = "0x18178BD00", Slot = "13")]
	public override void Track()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000449 RID: 1097 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000449")]
	[Address(RVA = "0x177E1B0", Offset = "0x177CFB0", VA = "0x18177E1B0", Slot = "14")]
	public override void Escape()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600044A RID: 1098 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600044A")]
	[Address(RVA = "0x177DFB0", Offset = "0x177CDB0", VA = "0x18177DFB0", Slot = "15")]
	public override void Dodge()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600044B RID: 1099 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600044B")]
	[Address(RVA = "0x178A450", Offset = "0x1789250", VA = "0x18178A450", Slot = "18")]
	public override void Prediction()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600044C RID: 1100 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600044C")]
	[Address(RVA = "0x1789AC0", Offset = "0x17888C0", VA = "0x181789AC0", Slot = "16")]
	public override void LookFor()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600044D RID: 1101 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600044D")]
	[Address(RVA = "0x1780010", Offset = "0x177EE10", VA = "0x181780010", Slot = "19")]
	public override void GoHome()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600044E RID: 1102 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600044E")]
	[Address(RVA = "0x17807E0", Offset = "0x177F5E0", VA = "0x1817807E0", Slot = "20")]
	public override void Hear()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600044F RID: 1103 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600044F")]
	[Address(RVA = "0x1780390", Offset = "0x177F190", VA = "0x181780390", Slot = "21")]
	public override void HearCheck()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000450 RID: 1104 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000450")]
	[Address(RVA = "0x177DA80", Offset = "0x177C880", VA = "0x18177DA80", Slot = "23")]
	public override void Damaged()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000451 RID: 1105 RVA: 0x0000B768 File Offset: 0x00009968
	[Token(Token = "0x6000451")]
	[Address(RVA = "0x177D5F0", Offset = "0x177C3F0", VA = "0x18177D5F0", Slot = "24")]
	public override void DamagedDown()
	{
		this.FSong02_01();
		float g_fWaitTime = this.g_fWaitTime;
		int num = 0;
		if (g_fWaitTime > (float)num)
		{
			this.g_fWaitTime = g_fWaitTime;
			return;
		}
		CharacterBaseData g_CharData = this.g_CharData;
		if (num < (int)g_CharData.g_fHP)
		{
			this.g_Status = (AI_NPC.AIStatus)((ulong)16L);
			this.g_CCC.SetOriginal();
			Animator g_Anim = this.g_Anim;
			this.g_bNavigation = false;
			if (!this.g_bDamagedDownDirection)
			{
			}
			g_Anim.CrossFade("DamagedStandUp_Front", 0.1f);
			this.g_fWaitTime = 1.85f;
			this.g_bLookAtEnable = false;
			return;
		}
		this.g_Status = (AI_NPC.AIStatus)((ulong)18L);
		base.InitDeath();
		ParticleSystem particleSystem = this.g_BodyEffect;
		this.g_bNavigation = false;
		this.g_fWaitTime = 3.5f;
		particleSystem.Stop(true);
		this.g_bLookAtEnable = false;
	}

	// Token: 0x06000452 RID: 1106 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000452")]
	[Address(RVA = "0x177D810", Offset = "0x177C610", VA = "0x18177D810", Slot = "25")]
	public override void DamagedFly()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000453 RID: 1107 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000453")]
	[Address(RVA = "0x177FE40", Offset = "0x177EC40", VA = "0x18177FE40", Slot = "26")]
	public override void GetUp()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000454 RID: 1108 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000454")]
	[Address(RVA = "0x177DCC0", Offset = "0x177CAC0", VA = "0x18177DCC0", Slot = "27")]
	public override void Death()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000455 RID: 1109 RVA: 0x0000B838 File Offset: 0x00009A38
	[Token(Token = "0x6000455")]
	[Address(RVA = "0x177DF30", Offset = "0x177CD30", VA = "0x18177DF30", Slot = "28")]
	public override void Destroy()
	{
		float g_fWaitTime = this.g_fWaitTime;
		int num = 0;
		if (g_fWaitTime <= (float)num)
		{
			this.g_DeathEffect.Stop(true);
			GameObject g_This = this.g_This;
			int num2 = 0;
			g_This.SetActive(num2 != 0);
			this.FSong02_01();
			return;
		}
		this.g_fWaitTime = g_fWaitTime;
		this.FSong02_01();
	}

	// Token: 0x06000456 RID: 1110 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000456")]
	[Address(RVA = "0x1781C70", Offset = "0x1780A70", VA = "0x181781C70")]
	protected void InitStatus(AI_NPC.AIStatus Status, AI_GhostB.AIFighting FightStatus = AI_GhostB.AIFighting.Watch)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000457 RID: 1111 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000457")]
	[Address(RVA = "0x177F730", Offset = "0x177E530", VA = "0x18177F730", Slot = "38")]
	protected virtual void FightStatusInit(AI_GhostB.AIFighting FightStatus)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000458 RID: 1112 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000458")]
	[Address(RVA = "0x177EE20", Offset = "0x177DC20", VA = "0x18177EE20", Slot = "39")]
	protected virtual void FWatch()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000459 RID: 1113 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000459")]
	[Address(RVA = "0x177E5C0", Offset = "0x177D3C0", VA = "0x18177E5C0")]
	private void FFind()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600045A RID: 1114 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600045A")]
	[Address(RVA = "0x177ED80", Offset = "0x177DB80", VA = "0x18177ED80")]
	private void FSong01()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600045B RID: 1115 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600045B")]
	[Address(RVA = "0x1789FE0", Offset = "0x1788DE0", VA = "0x181789FE0")]
	private void Magic01()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600045C RID: 1116 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600045C")]
	[Address(RVA = "0x1789D10", Offset = "0x1788B10", VA = "0x181789D10")]
	private void Magic01_02()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600045D RID: 1117 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600045D")]
	[Address(RVA = "0x297F00", Offset = "0x296D00", VA = "0x180297F00", Slot = "40")]
	protected virtual void FSong02_01()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600045E RID: 1118 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600045E")]
	[Address(RVA = "0x297F00", Offset = "0x296D00", VA = "0x180297F00", Slot = "41")]
	protected virtual void FSong02_02()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600045F RID: 1119 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600045F")]
	[Address(RVA = "0x297F00", Offset = "0x296D00", VA = "0x180297F00", Slot = "42")]
	protected virtual void FMagic02()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000460 RID: 1120 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000460")]
	[Address(RVA = "0x177FBB0", Offset = "0x177E9B0", VA = "0x18177FBB0", Slot = "22")]
	public override void Fighting()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000461 RID: 1121 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000461")]
	[Address(RVA = "0x178A8F0", Offset = "0x17896F0", VA = "0x18178A8F0")]
	protected void ReNavigationPath(float fDistance)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000462 RID: 1122 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000462")]
	[Address(RVA = "0x1780BF0", Offset = "0x177F9F0", VA = "0x181780BF0", Slot = "33")]
	public override void Hit(AttackData Data)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000463 RID: 1123 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000463")]
	[Address(RVA = "0x178ABE0", Offset = "0x17899E0", VA = "0x18178ABE0", Slot = "34")]
	public override void ReceiveSound(Vector3 v3Source, float fSize, SceneManager.SoundWaveType SoundType)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000464 RID: 1124 RVA: 0x0000B888 File Offset: 0x00009A88
	[Token(Token = "0x6000464")]
	[Address(RVA = "0x178AFF0", Offset = "0x1789DF0", VA = "0x18178AFF0", Slot = "30")]
	public override void Resurrection()
	{
		base.Resurrection();
		this.g_bDeath = false;
		this.Create();
		this.g_Status = (AI_NPC.AIStatus)((ulong)21L);
		Animator g_Anim = this.g_Anim;
		this.g_fWaitTime = 1.2f;
		int num = 0;
		int num2 = 0;
		g_Anim.CrossFade("Birth", (float)num, num2, (float)num);
	}

	// Token: 0x06000465 RID: 1125 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000465")]
	[Address(RVA = "0x177D2D0", Offset = "0x177C0D0", VA = "0x18177D2D0", Slot = "31")]
	public override void Create()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000466 RID: 1126 RVA: 0x0000B8E0 File Offset: 0x00009AE0
	[Token(Token = "0x6000466")]
	[Address(RVA = "0x178ADE0", Offset = "0x1789BE0", VA = "0x18178ADE0", Slot = "32")]
	public override void Remove()
	{
		this.FSong02_01();
		SkinnedMeshRenderer skinnedMeshRenderer = this.g_MeshRender01;
		int num = 0;
		skinnedMeshRenderer.enabled = num != 0;
		CCController cccontroller = this.g_CCC;
		int num2 = 0;
		cccontroller.SetEnable(num2 != 0);
		SphereCollider sphereCollider = this.g_CC02;
		int num3 = 0;
		sphereCollider.enabled = num3 != 0;
		NPCManage g_NPCM = this.g_NPCM;
		int num4 = 0;
		g_NPCM.SetLockPoint(num4 != 0);
		this.g_DeathEffect.Stop(true);
		GameObject g_This = this.g_This;
		int num5 = 0;
		g_This.SetActive(num5 != 0);
	}

	// Token: 0x06000467 RID: 1127 RVA: 0x0000B964 File Offset: 0x00009B64
	[Token(Token = "0x6000467")]
	[Address(RVA = "0x178B200", Offset = "0x178A000", VA = "0x18178B200", Slot = "35")]
	public override void SetTimeScale(float fTimeScale)
	{
		base.SetTimeScale(fTimeScale);
		Common.SetEffectTimeScale(this.g_BodyEffect, fTimeScale);
		Common.SetEffectTimeScale(this.g_DeathEffect, fTimeScale);
	}

	// Token: 0x06000468 RID: 1128 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000468")]
	[Address(RVA = "0x178B0E0", Offset = "0x1789EE0", VA = "0x18178B0E0", Slot = "36")]
	public override void SetAiStatus(AI_NPC.AIStatus Status)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000469 RID: 1129 RVA: 0x0000B990 File Offset: 0x00009B90
	[Token(Token = "0x6000469")]
	[Address(RVA = "0x178C6B0", Offset = "0x178B4B0", VA = "0x18178C6B0")]
	public AI_GhostB()
	{
		float z = Vector3.zero.z;
		this.g_v3SeePlayerDirection.z = z;
		base..ctor();
	}

	// Token: 0x0400053E RID: 1342
	[FieldOffset(Offset = "0x170")]
	[Token(Token = "0x400053E")]
	protected GhostBEffectPlay g_Effect;

	// Token: 0x0400053F RID: 1343
	[FieldOffset(Offset = "0x178")]
	[Token(Token = "0x400053F")]
	protected float g_fAttackRadius = 30f;

	// Token: 0x04000540 RID: 1344
	[FieldOffset(Offset = "0x17C")]
	[Token(Token = "0x4000540")]
	private float g_fAniMoveSpeed;

	// Token: 0x04000541 RID: 1345
	[FieldOffset(Offset = "0x180")]
	[Token(Token = "0x4000541")]
	private float g_fAniMoveAngle;

	// Token: 0x04000542 RID: 1346
	[FieldOffset(Offset = "0x184")]
	[Token(Token = "0x4000542")]
	private Vector3 g_v3PrePosition;

	// Token: 0x04000543 RID: 1347
	[FieldOffset(Offset = "0x190")]
	[Token(Token = "0x4000543")]
	protected bool g_bDamagedDownDirection = true;

	// Token: 0x04000544 RID: 1348
	[FieldOffset(Offset = "0x198")]
	[Token(Token = "0x4000544")]
	protected Material g_Mat;

	// Token: 0x04000545 RID: 1349
	[FieldOffset(Offset = "0x1A0")]
	[Token(Token = "0x4000545")]
	private Color g_EyeColor;

	// Token: 0x04000546 RID: 1350
	[FieldOffset(Offset = "0x1B0")]
	[Token(Token = "0x4000546")]
	private Color g_BodyColor;

	// Token: 0x04000547 RID: 1351
	[FieldOffset(Offset = "0x1C0")]
	[Token(Token = "0x4000547")]
	private Color g_DefaultColor;

	// Token: 0x04000548 RID: 1352
	[FieldOffset(Offset = "0x1D0")]
	[Token(Token = "0x4000548")]
	private SkinnedMeshRenderer g_MeshRender01;

	// Token: 0x04000549 RID: 1353
	[FieldOffset(Offset = "0x1D8")]
	[Token(Token = "0x4000549")]
	private CCController g_CCC;

	// Token: 0x0400054A RID: 1354
	[FieldOffset(Offset = "0x1E0")]
	[Token(Token = "0x400054A")]
	private SphereCollider g_CC02;

	// Token: 0x0400054B RID: 1355
	[FieldOffset(Offset = "0x1E8")]
	[Token(Token = "0x400054B")]
	private ParticleSystem g_BodyEffect;

	// Token: 0x0400054C RID: 1356
	[FieldOffset(Offset = "0x1F0")]
	[Token(Token = "0x400054C")]
	private ParticleSystem g_DeathEffect;

	// Token: 0x0400054D RID: 1357
	[FieldOffset(Offset = "0x1F8")]
	[Token(Token = "0x400054D")]
	protected Shake g_ShakeHead;

	// Token: 0x0400054E RID: 1358
	[FieldOffset(Offset = "0x200")]
	[Token(Token = "0x400054E")]
	protected Shake g_ShakeBody;

	// Token: 0x0400054F RID: 1359
	[FieldOffset(Offset = "0x208")]
	[Token(Token = "0x400054F")]
	protected AI_GhostB.AIFighting g_Fighting;

	// Token: 0x04000550 RID: 1360
	[FieldOffset(Offset = "0x20C")]
	[Token(Token = "0x4000550")]
	protected float g_fFindRange;

	// Token: 0x04000551 RID: 1361
	[FieldOffset(Offset = "0x210")]
	[Token(Token = "0x4000551")]
	protected Vector3 g_v3SeePlayerDirection;

	// Token: 0x04000552 RID: 1362
	[FieldOffset(Offset = "0x21C")]
	[Token(Token = "0x4000552")]
	protected float g_fSeePlayerDistance;

	// Token: 0x0200006A RID: 106
	[Token(Token = "0x200006A")]
	protected enum AIFighting
	{
		// Token: 0x04000554 RID: 1364
		[Token(Token = "0x4000554")]
		Watch,
		// Token: 0x04000555 RID: 1365
		[Token(Token = "0x4000555")]
		Find,
		// Token: 0x04000556 RID: 1366
		[Token(Token = "0x4000556")]
		Song01,
		// Token: 0x04000557 RID: 1367
		[Token(Token = "0x4000557")]
		Magic01,
		// Token: 0x04000558 RID: 1368
		[Token(Token = "0x4000558")]
		Magic01_02,
		// Token: 0x04000559 RID: 1369
		[Token(Token = "0x4000559")]
		Song02_01,
		// Token: 0x0400055A RID: 1370
		[Token(Token = "0x400055A")]
		Song02_02,
		// Token: 0x0400055B RID: 1371
		[Token(Token = "0x400055B")]
		Magic02
	}
}
