using System;
using Cpp2IlInjected;
using UnityEngine;

// Token: 0x0200006B RID: 107
[Token(Token = "0x200006B")]
public class AI_GhostB_Lightning : AI_NPC
{
	// Token: 0x0600046A RID: 1130 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600046A")]
	[Address(RVA = "0x1788C80", Offset = "0x1787A80", VA = "0x181788C80", Slot = "4")]
	public override void Start(GameObject This, NPCManage NPCM)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600046B RID: 1131 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600046B")]
	[Address(RVA = "0x1789570", Offset = "0x1788370", VA = "0x181789570", Slot = "5")]
	public override void Update(float fDeltaTime)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600046C RID: 1132 RVA: 0x0000B9CC File Offset: 0x00009BCC
	[Token(Token = "0x600046C")]
	[Address(RVA = "0x17879E0", Offset = "0x17867E0", VA = "0x1817879E0", Slot = "6")]
	public override void LateUpdate()
	{
		this.g_ShakeHead.Update();
		this.g_ShakeBody.Update();
	}

	// Token: 0x0600046D RID: 1133 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600046D")]
	[Address(RVA = "0x1788AB0", Offset = "0x17878B0", VA = "0x181788AB0", Slot = "9")]
	public override void Sky()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600046E RID: 1134 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600046E")]
	[Address(RVA = "0x17886E0", Offset = "0x17874E0", VA = "0x1817886E0", Slot = "29")]
	public override void ResurrectionStatus()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600046F RID: 1135 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600046F")]
	[Address(RVA = "0x1787120", Offset = "0x1785F20", VA = "0x181787120", Slot = "8")]
	public override void Idle()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000470 RID: 1136 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000470")]
	[Address(RVA = "0x1787C50", Offset = "0x1786A50", VA = "0x181787C50", Slot = "11")]
	public override void Patrol()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000471 RID: 1137 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000471")]
	[Address(RVA = "0x17825D0", Offset = "0x17813D0", VA = "0x1817825D0", Slot = "12")]
	public override void Confirming()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000472 RID: 1138 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000472")]
	[Address(RVA = "0x1787F80", Offset = "0x1786D80", VA = "0x181787F80", Slot = "18")]
	public override void Prediction()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000473 RID: 1139 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000473")]
	[Address(RVA = "0x1787A20", Offset = "0x1786820", VA = "0x181787A20", Slot = "16")]
	public override void LookFor()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000474 RID: 1140 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000474")]
	[Address(RVA = "0x17855C0", Offset = "0x17843C0", VA = "0x1817855C0", Slot = "19")]
	public override void GoHome()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000475 RID: 1141 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000475")]
	[Address(RVA = "0x1785D40", Offset = "0x1784B40", VA = "0x181785D40", Slot = "20")]
	public override void Hear()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000476 RID: 1142 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000476")]
	[Address(RVA = "0x1785920", Offset = "0x1784720", VA = "0x181785920", Slot = "21")]
	public override void HearCheck()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000477 RID: 1143 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000477")]
	[Address(RVA = "0x17830C0", Offset = "0x1781EC0", VA = "0x1817830C0", Slot = "23")]
	public override void Damaged()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000478 RID: 1144 RVA: 0x0000B9F8 File Offset: 0x00009BF8
	[Token(Token = "0x6000478")]
	[Address(RVA = "0x1782C40", Offset = "0x1781A40", VA = "0x181782C40", Slot = "24")]
	public override void DamagedDown()
	{
		base.Initialize();
		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();
		this.g_Effect.StopAllMagic();
		ParticleSystem particleSystem = this.g_BodyEffect;
		this.g_bNavigation = false;
		this.g_fWaitTime = 3.5f;
		particleSystem.Stop(true);
		this.g_bLookAtEnable = false;
	}

	// Token: 0x06000479 RID: 1145 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000479")]
	[Address(RVA = "0x1782E60", Offset = "0x1781C60", VA = "0x181782E60", Slot = "25")]
	public override void DamagedFly()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600047A RID: 1146 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600047A")]
	[Address(RVA = "0x1785400", Offset = "0x1784200", VA = "0x181785400", Slot = "26")]
	public override void GetUp()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600047B RID: 1147 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600047B")]
	[Address(RVA = "0x17832F0", Offset = "0x17820F0", VA = "0x1817832F0", Slot = "27")]
	public override void Death()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600047C RID: 1148 RVA: 0x0000BAD4 File Offset: 0x00009CD4
	[Token(Token = "0x600047C")]
	[Address(RVA = "0x1783570", Offset = "0x1782370", VA = "0x181783570", 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);
			base.Initialize();
			return;
		}
		this.g_fWaitTime = g_fWaitTime;
		base.Initialize();
	}

	// Token: 0x0600047D RID: 1149 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600047D")]
	[Address(RVA = "0x1787340", Offset = "0x1786140", VA = "0x181787340")]
	protected void InitStatus(AI_NPC.AIStatus Status)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600047E RID: 1150 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600047E")]
	[Address(RVA = "0x17849E0", Offset = "0x17837E0", VA = "0x1817849E0")]
	private void FightStatusInit(AI_GhostB_Lightning.AIFighting FightStatus)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600047F RID: 1151 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600047F")]
	[Address(RVA = "0x17835F0", Offset = "0x17823F0", VA = "0x1817835F0")]
	private void FAmbush()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000480 RID: 1152 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000480")]
	[Address(RVA = "0x1783E10", Offset = "0x1782C10", VA = "0x181783E10")]
	private void FDodgeReady()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000481 RID: 1153 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000481")]
	[Address(RVA = "0x1783FB0", Offset = "0x1782DB0", VA = "0x181783FB0")]
	private void FDodge()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000482 RID: 1154 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000482")]
	[Address(RVA = "0x17848D0", Offset = "0x17836D0", VA = "0x1817848D0")]
	private void FSong()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000483 RID: 1155 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000483")]
	[Address(RVA = "0x17844F0", Offset = "0x17832F0", VA = "0x1817844F0")]
	private void FMagic()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000484 RID: 1156 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000484")]
	[Address(RVA = "0x1784120", Offset = "0x1782F20", VA = "0x181784120")]
	private void FMagicEnd()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000485 RID: 1157 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000485")]
	[Address(RVA = "0x1784F90", Offset = "0x1783D90", VA = "0x181784F90", Slot = "22")]
	public override void Fighting()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000486 RID: 1158 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000486")]
	[Address(RVA = "0x1786120", Offset = "0x1784F20", VA = "0x181786120", Slot = "33")]
	public override void Hit(AttackData Data)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000487 RID: 1159 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000487")]
	[Address(RVA = "0x1788450", Offset = "0x1787250", VA = "0x181788450", 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: 0x06000488 RID: 1160 RVA: 0x0000BB24 File Offset: 0x00009D24
	[Token(Token = "0x6000488")]
	[Address(RVA = "0x1788840", Offset = "0x1787640", VA = "0x181788840", 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: 0x06000489 RID: 1161 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000489")]
	[Address(RVA = "0x1782930", Offset = "0x1781730", VA = "0x181782930", Slot = "31")]
	public override void Create()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600048A RID: 1162 RVA: 0x0000BB7C File Offset: 0x00009D7C
	[Token(Token = "0x600048A")]
	[Address(RVA = "0x1788640", Offset = "0x1787440", VA = "0x181788640", Slot = "32")]
	public override void Remove()
	{
		base.Initialize();
		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: 0x0600048B RID: 1163 RVA: 0x0000BC00 File Offset: 0x00009E00
	[Token(Token = "0x600048B")]
	[Address(RVA = "0x1788A40", Offset = "0x1787840", VA = "0x181788A40", Slot = "35")]
	public override void SetTimeScale(float fTimeScale)
	{
		base.SetTimeScale(fTimeScale);
		Common.SetEffectTimeScale(this.g_BodyEffect, fTimeScale);
		Common.SetEffectTimeScale(this.g_DeathEffect, fTimeScale);
		this.g_Effect.SetTimeScale(fTimeScale);
	}

	// Token: 0x0600048C RID: 1164 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600048C")]
	[Address(RVA = "0x1788920", Offset = "0x1787720", VA = "0x181788920", Slot = "36")]
	public override void SetAiStatus(AI_NPC.AIStatus Status)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600048D RID: 1165 RVA: 0x0000BC40 File Offset: 0x00009E40
	[Token(Token = "0x600048D")]
	[Address(RVA = "0x1789A80", Offset = "0x1788880", VA = "0x181789A80")]
	public AI_GhostB_Lightning()
	{
		float z = Vector3.zero.z;
		this.g_v3SeePlayerDirection.z = z;
		base..ctor();
	}

	// Token: 0x0400055C RID: 1372
	[FieldOffset(Offset = "0x170")]
	[Token(Token = "0x400055C")]
	protected GhostBLightningEffectPlay g_Effect;

	// Token: 0x0400055D RID: 1373
	[FieldOffset(Offset = "0x178")]
	[Token(Token = "0x400055D")]
	private float g_fAniMoveSpeed;

	// Token: 0x0400055E RID: 1374
	[FieldOffset(Offset = "0x17C")]
	[Token(Token = "0x400055E")]
	private float g_fAniMoveAngle;

	// Token: 0x0400055F RID: 1375
	[FieldOffset(Offset = "0x180")]
	[Token(Token = "0x400055F")]
	private Vector3 g_v3PrePosition;

	// Token: 0x04000560 RID: 1376
	[FieldOffset(Offset = "0x18C")]
	[Token(Token = "0x4000560")]
	protected bool g_bDamagedDownDirection = true;

	// Token: 0x04000561 RID: 1377
	[FieldOffset(Offset = "0x190")]
	[Token(Token = "0x4000561")]
	protected Material g_Mat;

	// Token: 0x04000562 RID: 1378
	[FieldOffset(Offset = "0x198")]
	[Token(Token = "0x4000562")]
	private Color g_EyeColor;

	// Token: 0x04000563 RID: 1379
	[FieldOffset(Offset = "0x1A8")]
	[Token(Token = "0x4000563")]
	private Color g_BodyColor;

	// Token: 0x04000564 RID: 1380
	[FieldOffset(Offset = "0x1B8")]
	[Token(Token = "0x4000564")]
	private Color g_DefaultColor;

	// Token: 0x04000565 RID: 1381
	[FieldOffset(Offset = "0x1C8")]
	[Token(Token = "0x4000565")]
	private SkinnedMeshRenderer g_MeshRender01;

	// Token: 0x04000566 RID: 1382
	[FieldOffset(Offset = "0x1D0")]
	[Token(Token = "0x4000566")]
	private CCController g_CCC;

	// Token: 0x04000567 RID: 1383
	[FieldOffset(Offset = "0x1D8")]
	[Token(Token = "0x4000567")]
	private SphereCollider g_CC02;

	// Token: 0x04000568 RID: 1384
	[FieldOffset(Offset = "0x1E0")]
	[Token(Token = "0x4000568")]
	private ParticleSystem g_BodyEffect;

	// Token: 0x04000569 RID: 1385
	[FieldOffset(Offset = "0x1E8")]
	[Token(Token = "0x4000569")]
	private ParticleSystem g_DeathEffect;

	// Token: 0x0400056A RID: 1386
	[FieldOffset(Offset = "0x1F0")]
	[Token(Token = "0x400056A")]
	protected Shake g_ShakeHead;

	// Token: 0x0400056B RID: 1387
	[FieldOffset(Offset = "0x1F8")]
	[Token(Token = "0x400056B")]
	protected Shake g_ShakeBody;

	// Token: 0x0400056C RID: 1388
	[FieldOffset(Offset = "0x200")]
	[Token(Token = "0x400056C")]
	private AI_GhostB_Lightning.AIFighting g_Fighting;

	// Token: 0x0400056D RID: 1389
	[FieldOffset(Offset = "0x204")]
	[Token(Token = "0x400056D")]
	private float g_fFightTempTime;

	// Token: 0x0400056E RID: 1390
	[FieldOffset(Offset = "0x208")]
	[Token(Token = "0x400056E")]
	private Vector3 g_v3MagicPint;

	// Token: 0x0400056F RID: 1391
	[FieldOffset(Offset = "0x214")]
	[Token(Token = "0x400056F")]
	private Vector3 g_v3SeePlayerDirection;

	// Token: 0x04000570 RID: 1392
	[FieldOffset(Offset = "0x220")]
	[Token(Token = "0x4000570")]
	private float g_fSeePlayerDistance;

	// Token: 0x0200006C RID: 108
	[Token(Token = "0x200006C")]
	private enum AIFighting
	{
		// Token: 0x04000572 RID: 1394
		[Token(Token = "0x4000572")]
		Null,
		// Token: 0x04000573 RID: 1395
		[Token(Token = "0x4000573")]
		AmbushNear,
		// Token: 0x04000574 RID: 1396
		[Token(Token = "0x4000574")]
		AmbushRange,
		// Token: 0x04000575 RID: 1397
		[Token(Token = "0x4000575")]
		DodgeReady,
		// Token: 0x04000576 RID: 1398
		[Token(Token = "0x4000576")]
		Dodge,
		// Token: 0x04000577 RID: 1399
		[Token(Token = "0x4000577")]
		Song,
		// Token: 0x04000578 RID: 1400
		[Token(Token = "0x4000578")]
		Magic,
		// Token: 0x04000579 RID: 1401
		[Token(Token = "0x4000579")]
		MagicEnd
	}
}
