using System;
using Cpp2IlInjected;
using UnityEngine;

// Token: 0x0200006C RID: 108
[Token(Token = "0x200006C")]
public class AI_GhostB_Lightning : AI_NPC
{
	// Token: 0x0600046E RID: 1134 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600046E")]
	[Address(RVA = "0x185BA50", Offset = "0x185AA50", VA = "0x18185BA50", Slot = "4")]
	public override void Start(GameObject This, NPCManage NPCM)
	{
		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 = "0x185C370", Offset = "0x185B370", VA = "0x18185C370", Slot = "5")]
	public override void Update(float fDeltaTime)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000470 RID: 1136 RVA: 0x0000B60C File Offset: 0x0000980C
	[Token(Token = "0x6000470")]
	[Address(RVA = "0x185B0F0", Offset = "0x185A0F0", VA = "0x18185B0F0", Slot = "6")]
	public override void LateUpdate()
	{
		this.g_ShakeHead.Update();
		this.g_ShakeBody.Update();
	}

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

	// Token: 0x06000472 RID: 1138 RVA: 0x0000B638 File Offset: 0x00009838
	[Token(Token = "0x6000472")]
	[Address(RVA = "0x185B750", Offset = "0x185A750", VA = "0x18185B750", Slot = "29")]
	public override void ResurrectionStatus()
	{
		base..ctor();
		float g_fWaitTime = this.g_fWaitTime;
		int num = 0;
		if (g_fWaitTime <= (float)num)
		{
			this.InitStatus(AI_NPC.AIStatus.Fighting);
			return;
		}
		this.g_fWaitTime = g_fWaitTime;
	}

	// Token: 0x06000473 RID: 1139 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000473")]
	[Address(RVA = "0x185A900", Offset = "0x1859900", VA = "0x18185A900", Slot = "8")]
	public override void Idle()
	{
		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 = "0x185B1C0", Offset = "0x185A1C0", VA = "0x18185B1C0", Slot = "11")]
	public override void Patrol()
	{
		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 = "0x1857810", Offset = "0x1856810", VA = "0x181857810", Slot = "12")]
	public override void Confirming()
	{
		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 = "0x185B340", Offset = "0x185A340", VA = "0x18185B340", Slot = "18")]
	public override void Prediction()
	{
		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 = "0x185B130", Offset = "0x185A130", VA = "0x18185B130", Slot = "16")]
	public override void LookFor()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000478 RID: 1144 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000478")]
	[Address(RVA = "0x18597A0", Offset = "0x18587A0", VA = "0x1818597A0", Slot = "19")]
	public override void GoHome()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000479 RID: 1145 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000479")]
	[Address(RVA = "0x1859AE0", Offset = "0x1858AE0", VA = "0x181859AE0", Slot = "20")]
	public override void Hear()
	{
		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 = "0x1859950", Offset = "0x1858950", VA = "0x181859950", Slot = "21")]
	public override void HearCheck()
	{
		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 = "0x1857D20", Offset = "0x1856D20", VA = "0x181857D20", Slot = "23")]
	public override void Damaged()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600047C RID: 1148 RVA: 0x0000B668 File Offset: 0x00009868
	[Token(Token = "0x600047C")]
	[Address(RVA = "0x1857BC0", Offset = "0x1856BC0", VA = "0x181857BC0", Slot = "24")]
	public override void DamagedDown()
	{
		base..ctor();
		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.InitStatus(AI_NPC.AIStatus.GetUp);
			return;
		}
		this.InitStatus((AI_NPC.AIStatus)((uint)18));
	}

	// Token: 0x0600047D RID: 1149 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600047D")]
	[Address(RVA = "0x1857C40", Offset = "0x1856C40", VA = "0x181857C40", Slot = "25")]
	public override void DamagedFly()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600047E RID: 1150 RVA: 0x0000B6B8 File Offset: 0x000098B8
	[Token(Token = "0x600047E")]
	[Address(RVA = "0x18596F0", Offset = "0x18586F0", VA = "0x1818596F0", Slot = "26")]
	public override void GetUp()
	{
		base..ctor();
		float g_fWaitTime = this.g_fWaitTime;
		int num = 0;
		if (g_fWaitTime <= (float)num)
		{
			Animator g_Anim = this.g_Anim;
			int num2 = 0;
			g_Anim.CrossFade("IdleOrMove", 0.1f, num2, (float)num);
			this.InitStatus(AI_NPC.AIStatus.Fighting);
			return;
		}
		this.g_fWaitTime = g_fWaitTime;
	}

	// Token: 0x0600047F RID: 1151 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600047F")]
	[Address(RVA = "0x1857D90", Offset = "0x1856D90", VA = "0x181857D90", Slot = "27")]
	public override void Death()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000480 RID: 1152 RVA: 0x0000B70C File Offset: 0x0000990C
	[Token(Token = "0x6000480")]
	[Address(RVA = "0x1857EB0", Offset = "0x1856EB0", VA = "0x181857EB0", 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..ctor();
			return;
		}
		this.g_fWaitTime = g_fWaitTime;
		base..ctor();
	}

	// Token: 0x06000481 RID: 1153 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000481")]
	[Address(RVA = "0x185A970", Offset = "0x1859970", VA = "0x18185A970")]
	protected void InitStatus(AI_NPC.AIStatus Status)
	{
		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 = "0x1858DC0", Offset = "0x1857DC0", VA = "0x181858DC0")]
	private void FightStatusInit(AI_GhostB_Lightning.AIFighting FightStatus)
	{
		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 = "0x1857F30", Offset = "0x1856F30", VA = "0x181857F30")]
	private void FAmbush()
	{
		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 = "0x18582D0", Offset = "0x18572D0", VA = "0x1818582D0")]
	private void FDodgeReady()
	{
		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 = "0x18583D0", Offset = "0x18573D0", VA = "0x1818583D0")]
	private void FDodge()
	{
		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 = "0x1858D70", Offset = "0x1857D70", VA = "0x181858D70")]
	private void FSong()
	{
		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 = "0x1858890", Offset = "0x1857890", VA = "0x181858890")]
	private void FMagic()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000488 RID: 1160 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000488")]
	[Address(RVA = "0x1858540", Offset = "0x1857540", VA = "0x181858540")]
	private void FMagicEnd()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000489 RID: 1161 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000489")]
	[Address(RVA = "0x18593C0", Offset = "0x18583C0", VA = "0x1818593C0", Slot = "22")]
	public override void Fighting()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600048A RID: 1162 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600048A")]
	[Address(RVA = "0x1859CA0", Offset = "0x1858CA0", VA = "0x181859CA0", Slot = "33")]
	public override void Hit(AttackData Data)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600048B RID: 1163 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600048B")]
	[Address(RVA = "0x185B500", Offset = "0x185A500", VA = "0x18185B500", 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: 0x0600048C RID: 1164 RVA: 0x0000B75C File Offset: 0x0000995C
	[Token(Token = "0x600048C")]
	[Address(RVA = "0x185B7A0", Offset = "0x185A7A0", VA = "0x18185B7A0", Slot = "30")]
	public override void Resurrection()
	{
		base.Resurrection();
		this.g_bDeath = false;
		this.Create();
		this.InitStatus(AI_NPC.AIStatus.ResurrectionStatus);
	}

	// Token: 0x0600048D RID: 1165 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600048D")]
	[Address(RVA = "0x1857930", Offset = "0x1856930", VA = "0x181857930", Slot = "31")]
	public override void Create()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600048E RID: 1166 RVA: 0x0000B784 File Offset: 0x00009984
	[Token(Token = "0x600048E")]
	[Address(RVA = "0x185B690", Offset = "0x185A690", VA = "0x18185B690", Slot = "32")]
	public override void Remove()
	{
		base..ctor();
		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;
		CapsuleCollider capsuleCollider = this.g_CCBody;
		int num4 = 0;
		capsuleCollider.enabled = num4 != 0;
		NPCManage g_NPCM = this.g_NPCM;
		int num5 = 0;
		g_NPCM.SetLockPoint(num5 != 0);
		this.g_DeathEffect.Stop(true);
		GameObject g_This = this.g_This;
		int num6 = 0;
		g_This.SetActive(num6 != 0);
	}

	// Token: 0x0600048F RID: 1167 RVA: 0x0000B81C File Offset: 0x00009A1C
	[Token(Token = "0x600048F")]
	[Address(RVA = "0x185B920", Offset = "0x185A920", VA = "0x18185B920", 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: 0x06000490 RID: 1168 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000490")]
	[Address(RVA = "0x185B7E0", Offset = "0x185A7E0", VA = "0x18185B7E0", Slot = "36")]
	public override void SetAiStatus(AI_NPC.AIStatus Status)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000491 RID: 1169 RVA: 0x0000B85C File Offset: 0x00009A5C
	[Token(Token = "0x6000491")]
	[Address(RVA = "0x185C890", Offset = "0x185B890", VA = "0x18185C890")]
	public AI_GhostB_Lightning()
	{
		float z = Vector3.zero.z;
		this.g_v3SeePlayerDirection.z = z;
		base..ctor();
	}

	// Token: 0x0400057E RID: 1406
	[FieldOffset(Offset = "0x180")]
	[Token(Token = "0x400057E")]
	protected GhostBLightningEffectPlay g_Effect;

	// Token: 0x0400057F RID: 1407
	[FieldOffset(Offset = "0x188")]
	[Token(Token = "0x400057F")]
	private float g_fAniMoveSpeed;

	// Token: 0x04000580 RID: 1408
	[FieldOffset(Offset = "0x18C")]
	[Token(Token = "0x4000580")]
	private float g_fAniMoveAngle;

	// Token: 0x04000581 RID: 1409
	[FieldOffset(Offset = "0x190")]
	[Token(Token = "0x4000581")]
	private Vector3 g_v3PrePosition;

	// Token: 0x04000582 RID: 1410
	[FieldOffset(Offset = "0x19C")]
	[Token(Token = "0x4000582")]
	protected bool g_bDamagedDownDirection = true;

	// Token: 0x04000583 RID: 1411
	[FieldOffset(Offset = "0x1A0")]
	[Token(Token = "0x4000583")]
	protected Material g_Mat;

	// Token: 0x04000584 RID: 1412
	[FieldOffset(Offset = "0x1A8")]
	[Token(Token = "0x4000584")]
	private Color g_EyeColor;

	// Token: 0x04000585 RID: 1413
	[FieldOffset(Offset = "0x1B8")]
	[Token(Token = "0x4000585")]
	private Color g_BodyColor;

	// Token: 0x04000586 RID: 1414
	[FieldOffset(Offset = "0x1C8")]
	[Token(Token = "0x4000586")]
	private Color g_DefaultColor;

	// Token: 0x04000587 RID: 1415
	[FieldOffset(Offset = "0x1D8")]
	[Token(Token = "0x4000587")]
	private SkinnedMeshRenderer g_MeshRender01;

	// Token: 0x04000588 RID: 1416
	[FieldOffset(Offset = "0x1E0")]
	[Token(Token = "0x4000588")]
	private CCController g_CCC;

	// Token: 0x04000589 RID: 1417
	[FieldOffset(Offset = "0x1E8")]
	[Token(Token = "0x4000589")]
	private SphereCollider g_CC02;

	// Token: 0x0400058A RID: 1418
	[FieldOffset(Offset = "0x1F0")]
	[Token(Token = "0x400058A")]
	private CapsuleCollider g_CCBody;

	// Token: 0x0400058B RID: 1419
	[FieldOffset(Offset = "0x1F8")]
	[Token(Token = "0x400058B")]
	private ParticleSystem g_BodyEffect;

	// Token: 0x0400058C RID: 1420
	[FieldOffset(Offset = "0x200")]
	[Token(Token = "0x400058C")]
	private ParticleSystem g_DeathEffect;

	// Token: 0x0400058D RID: 1421
	[FieldOffset(Offset = "0x208")]
	[Token(Token = "0x400058D")]
	protected Shake g_ShakeHead;

	// Token: 0x0400058E RID: 1422
	[FieldOffset(Offset = "0x210")]
	[Token(Token = "0x400058E")]
	protected Shake g_ShakeBody;

	// Token: 0x0400058F RID: 1423
	[FieldOffset(Offset = "0x218")]
	[Token(Token = "0x400058F")]
	private AI_GhostB_Lightning.AIFighting g_Fighting;

	// Token: 0x04000590 RID: 1424
	[FieldOffset(Offset = "0x21C")]
	[Token(Token = "0x4000590")]
	private float g_fFightTempTime;

	// Token: 0x04000591 RID: 1425
	[FieldOffset(Offset = "0x220")]
	[Token(Token = "0x4000591")]
	private Vector3 g_v3MagicPint;

	// Token: 0x04000592 RID: 1426
	[FieldOffset(Offset = "0x22C")]
	[Token(Token = "0x4000592")]
	private Vector3 g_v3SeePlayerDirection;

	// Token: 0x04000593 RID: 1427
	[FieldOffset(Offset = "0x238")]
	[Token(Token = "0x4000593")]
	private float g_fSeePlayerDistance;

	// Token: 0x0200006D RID: 109
	[Token(Token = "0x200006D")]
	private enum AIFighting
	{
		// Token: 0x04000595 RID: 1429
		[Token(Token = "0x4000595")]
		Null,
		// Token: 0x04000596 RID: 1430
		[Token(Token = "0x4000596")]
		AmbushNear,
		// Token: 0x04000597 RID: 1431
		[Token(Token = "0x4000597")]
		AmbushRange,
		// Token: 0x04000598 RID: 1432
		[Token(Token = "0x4000598")]
		DodgeReady,
		// Token: 0x04000599 RID: 1433
		[Token(Token = "0x4000599")]
		Dodge,
		// Token: 0x0400059A RID: 1434
		[Token(Token = "0x400059A")]
		Song,
		// Token: 0x0400059B RID: 1435
		[Token(Token = "0x400059B")]
		Magic,
		// Token: 0x0400059C RID: 1436
		[Token(Token = "0x400059C")]
		MagicEnd
	}
}
