using System;
using Cpp2IlInjected;
using UnityEngine;

// Token: 0x02000045 RID: 69
[Token(Token = "0x2000045")]
public class AI_BossLevel03_Big : AI_NPC
{
	// Token: 0x0600020F RID: 527 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600020F")]
	[Address(RVA = "0x1564890", Offset = "0x1563690", VA = "0x181564890", Slot = "4")]
	public override void Start(GameObject This, NPCManage NPCM)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000210 RID: 528 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000210")]
	[Address(RVA = "0x1564F60", Offset = "0x1563D60", VA = "0x181564F60", Slot = "5")]
	public override void Update(float fDeltaTime)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000211 RID: 529 RVA: 0x00007458 File Offset: 0x00005658
	[Token(Token = "0x6000211")]
	[Address(RVA = "0x15642A0", Offset = "0x15630A0", VA = "0x1815642A0", Slot = "6")]
	public override void LateUpdate()
	{
		this.AEnd();
		this.g_ShakeHead.Update();
		this.g_ShakeLUA.Update();
		this.g_ShakeRUA.Update();
		this.g_ShakeLHand.Update();
		this.g_ShakeRHand.Update();
		this.g_ShakeLThigh.Update();
		this.g_ShakeRThigh.Update();
		this.g_ShakeBody.Update();
	}

	// Token: 0x06000212 RID: 530 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000212")]
	[Address(RVA = "0x1561870", Offset = "0x1560670", VA = "0x181561870", Slot = "22")]
	public override void Fighting()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000213 RID: 531 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000213")]
	[Address(RVA = "0x1562AF0", Offset = "0x15618F0", VA = "0x181562AF0")]
	private void InitFightStatus(AI_BossLevel03_Big.AIFighting Status)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000214 RID: 532 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000214")]
	[Address(RVA = "0x1561750", Offset = "0x1560550", VA = "0x181561750")]
	private void FIdle()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000215 RID: 533 RVA: 0x000074CC File Offset: 0x000056CC
	[Token(Token = "0x6000215")]
	[Address(RVA = "0x15647E0", Offset = "0x15635E0", VA = "0x1815647E0")]
	private void StartBattle()
	{
		float g_fWaitTime = this.g_fWaitTime;
		int num = 0;
		if (g_fWaitTime <= (float)num)
		{
			this.InitFightStatus(AI_BossLevel03_Big.AIFighting.WalkForward);
			BossLevel03BigEffectPlay bossLevel03BigEffectPlay = this.g_Effect;
			this.g_FightNext = (AI_BossLevel03_Big.AIFighting)((ulong)2L);
			bossLevel03BigEffectPlay.PlayEffBodyLave();
			return;
		}
		this.g_fWaitTime = g_fWaitTime;
		float num2 = this.g_fAttackCombo;
		while (num2 <= (float)num)
		{
		}
		this.g_fAttackCombo = num2;
		this.g_Effect.PlayEffOpeningLava();
		this.g_Effect.StopSEEarthQuake();
	}

	// Token: 0x06000216 RID: 534 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000216")]
	[Address(RVA = "0x15654D0", Offset = "0x15642D0", VA = "0x1815654D0")]
	private void Watch()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000217 RID: 535 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000217")]
	[Address(RVA = "0x1565340", Offset = "0x1564140", VA = "0x181565340")]
	private void WalkForward()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000218 RID: 536 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000218")]
	[Address(RVA = "0x1560720", Offset = "0x155F520", VA = "0x181560720")]
	private void Attack01()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000219 RID: 537 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000219")]
	[Address(RVA = "0x1560EC0", Offset = "0x155FCC0", VA = "0x181560EC0")]
	private void AttackSweep()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600021A RID: 538 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600021A")]
	[Address(RVA = "0x1560AE0", Offset = "0x155F8E0", VA = "0x181560AE0")]
	private void Attack02()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600021B RID: 539 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600021B")]
	[Address(RVA = "0x1560E50", Offset = "0x155FC50", VA = "0x181560E50")]
	private void AttackSplashDouble()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600021C RID: 540 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600021C")]
	[Address(RVA = "0x1560E50", Offset = "0x155FC50", VA = "0x181560E50")]
	private void AttackThrow()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600021D RID: 541 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600021D")]
	[Address(RVA = "0x1561480", Offset = "0x1560280", VA = "0x181561480")]
	private void Charge()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600021E RID: 542 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600021E")]
	[Address(RVA = "0x1561190", Offset = "0x155FF90", VA = "0x181561190")]
	private void ChargeAttack()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600021F RID: 543 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600021F")]
	[Address(RVA = "0x15612C0", Offset = "0x15600C0", VA = "0x1815612C0")]
	private void ChargeFar()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000220 RID: 544 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000220")]
	[Address(RVA = "0x1561090", Offset = "0x155FE90", VA = "0x181561090")]
	private void ChargeAttackFar()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000221 RID: 545 RVA: 0x0000753C File Offset: 0x0000573C
	[Token(Token = "0x6000221")]
	[Address(RVA = "0x1561290", Offset = "0x1560090", VA = "0x181561290")]
	private void ChargeDamaged()
	{
		float g_fWaitTime = this.g_fWaitTime;
		int num = 0;
		if (g_fWaitTime <= (float)num)
		{
			this.InitFightStatus(AI_BossLevel03_Big.AIFighting.Watch);
			return;
		}
		this.g_fWaitTime = g_fWaitTime;
	}

	// Token: 0x06000222 RID: 546 RVA: 0x00007568 File Offset: 0x00005768
	[Token(Token = "0x6000222")]
	[Address(RVA = "0x15606C0", Offset = "0x155F4C0", VA = "0x1815606C0")]
	private void ADeath()
	{
		float g_fWaitTime = this.g_fWaitTime;
		int num = 0;
		if (g_fWaitTime <= (float)num)
		{
			this.InitFightStatus(AI_BossLevel03_Big.AIFighting.Destory);
			return;
		}
		this.g_fWaitTime = g_fWaitTime;
	}

	// Token: 0x06000223 RID: 547 RVA: 0x00007594 File Offset: 0x00005794
	[Token(Token = "0x6000223")]
	[Address(RVA = "0x15606F0", Offset = "0x155F4F0", VA = "0x1815606F0")]
	private void ADestory()
	{
		float g_fWaitTime = this.g_fWaitTime;
		int num = 0;
		if (g_fWaitTime <= (float)num)
		{
			this.InitFightStatus(AI_BossLevel03_Big.AIFighting.End);
			return;
		}
		this.g_fWaitTime = g_fWaitTime;
	}

	// Token: 0x06000224 RID: 548 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000224")]
	[Address(RVA = "0x297F00", Offset = "0x296D00", VA = "0x180297F00")]
	private void AEnd()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000225 RID: 549 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6000225")]
	[Address(RVA = "0x15622C0", Offset = "0x15610C0", VA = "0x1815622C0", Slot = "33")]
	public override void Hit(AttackData Data)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06000226 RID: 550 RVA: 0x000075C0 File Offset: 0x000057C0
	[Token(Token = "0x6000226")]
	[Address(RVA = "0x1564780", Offset = "0x1563580", VA = "0x181564780", Slot = "35")]
	public override void SetTimeScale(float fTimeScale)
	{
		base.SetTimeScale(fTimeScale);
		this.g_FaceAnim.speed = fTimeScale;
		this.g_Effect.SetTimeScale(fTimeScale);
	}

	// Token: 0x06000227 RID: 551 RVA: 0x000075F4 File Offset: 0x000057F4
	[Token(Token = "0x6000227")]
	[Address(RVA = "0x1495E30", Offset = "0x1494C30", VA = "0x181495E30", Slot = "32")]
	public override void Remove()
	{
		this.AEnd();
		GameObject g_This = this.g_This;
		int num = 0;
		g_This.SetActive(num != 0);
	}

	// Token: 0x06000228 RID: 552 RVA: 0x00007620 File Offset: 0x00005820
	[Token(Token = "0x6000228")]
	[Address(RVA = "0x15616A0", Offset = "0x15604A0", VA = "0x1815616A0", Slot = "31")]
	public override void Create()
	{
		this.AEnd();
		this.g_This.SetActive(true);
		this.g_Effect.Create();
		NPCManage g_NPCM = this.g_NPCM;
		int num = 0;
		g_NPCM.SetLockPoint(num != 0);
		float stageTimeScale = Game.GetStageTimeScale();
		this.g_fTimeScale = stageTimeScale;
		int num2 = 0;
		this.InitFightStatus((AI_BossLevel03_Big.AIFighting)num2);
	}

	// Token: 0x06000229 RID: 553 RVA: 0x0000767C File Offset: 0x0000587C
	[Token(Token = "0x6000229")]
	[Address(RVA = "0x1495E60", Offset = "0x1494C60", VA = "0x181495E60", Slot = "30")]
	public override void Resurrection()
	{
		base.Resurrection();
		this.g_NPCM.SetLockPoint(true);
	}

	// Token: 0x0600022A RID: 554 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x600022A")]
	[Address(RVA = "0x1564360", Offset = "0x1563160", VA = "0x181564360", Slot = "36")]
	public override void SetAiStatus(AI_NPC.AIStatus Status)
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x0600022B RID: 555 RVA: 0x000076A4 File Offset: 0x000058A4
	[Token(Token = "0x600022B")]
	[Address(RVA = "0x1564690", Offset = "0x1563490", VA = "0x181564690", Slot = "37")]
	public override void SetSpeakLayerWeight(bool bEnable, string Name = "")
	{
		Animator animator;
		for (;;)
		{
			animator = this.g_FaceAnim;
			if (!bEnable)
			{
				break;
			}
			animator.SetLayerWeight(1, 1f);
			if (Name != "")
			{
				goto Block_1;
			}
		}
		int num = 0;
		animator.SetLayerWeight(1, (float)num);
		return;
		Block_1:
		Animator animator2 = this.g_FaceAnim;
		int num2 = 0;
		animator2.CrossFade(Name, 0.05f, 1, (float)num2);
	}

	// Token: 0x0600022C RID: 556 RVA: 0x00007700 File Offset: 0x00005900
	[Token(Token = "0x600022C")]
	[Address(RVA = "0x1565630", Offset = "0x1564430", VA = "0x181565630")]
	public AI_BossLevel03_Big()
	{
	}

	// Token: 0x0400027B RID: 635
	[FieldOffset(Offset = "0x170")]
	[Token(Token = "0x400027B")]
	private BossLevel03BigEffectPlay g_Effect;

	// Token: 0x0400027C RID: 636
	[FieldOffset(Offset = "0x178")]
	[Token(Token = "0x400027C")]
	private VoiceBoss03Big g_Voice;

	// Token: 0x0400027D RID: 637
	[FieldOffset(Offset = "0x180")]
	[Token(Token = "0x400027D")]
	private Animator g_FaceAnim;

	// Token: 0x0400027E RID: 638
	[FieldOffset(Offset = "0x188")]
	[Token(Token = "0x400027E")]
	private float g_fAniMoveSpeed;

	// Token: 0x0400027F RID: 639
	[FieldOffset(Offset = "0x18C")]
	[Token(Token = "0x400027F")]
	private float g_fAniMoveAngle;

	// Token: 0x04000280 RID: 640
	[FieldOffset(Offset = "0x190")]
	[Token(Token = "0x4000280")]
	private Vector3 g_v3PreForward;

	// Token: 0x04000281 RID: 641
	[FieldOffset(Offset = "0x1A0")]
	[Token(Token = "0x4000281")]
	private Shake g_ShakeHead;

	// Token: 0x04000282 RID: 642
	[FieldOffset(Offset = "0x1A8")]
	[Token(Token = "0x4000282")]
	private Shake g_ShakeLUA;

	// Token: 0x04000283 RID: 643
	[FieldOffset(Offset = "0x1B0")]
	[Token(Token = "0x4000283")]
	private Shake g_ShakeRUA;

	// Token: 0x04000284 RID: 644
	[FieldOffset(Offset = "0x1B8")]
	[Token(Token = "0x4000284")]
	private Shake g_ShakeLHand;

	// Token: 0x04000285 RID: 645
	[FieldOffset(Offset = "0x1C0")]
	[Token(Token = "0x4000285")]
	private Shake g_ShakeRHand;

	// Token: 0x04000286 RID: 646
	[FieldOffset(Offset = "0x1C8")]
	[Token(Token = "0x4000286")]
	private Shake g_ShakeLThigh;

	// Token: 0x04000287 RID: 647
	[FieldOffset(Offset = "0x1D0")]
	[Token(Token = "0x4000287")]
	private Shake g_ShakeRThigh;

	// Token: 0x04000288 RID: 648
	[FieldOffset(Offset = "0x1D8")]
	[Token(Token = "0x4000288")]
	private Shake g_ShakeBody;

	// Token: 0x04000289 RID: 649
	[FieldOffset(Offset = "0x1E0")]
	[Token(Token = "0x4000289")]
	private AI_BossLevel03_Big.AIFighting g_Fighting = (AI_BossLevel03_Big.AIFighting)((ulong)1L);

	// Token: 0x0400028A RID: 650
	[FieldOffset(Offset = "0x1E4")]
	[Token(Token = "0x400028A")]
	private AI_BossLevel03_Big.AIFighting g_FightNext;

	// Token: 0x0400028B RID: 651
	[FieldOffset(Offset = "0x1E8")]
	[Token(Token = "0x400028B")]
	private float g_fFightTime;

	// Token: 0x0400028C RID: 652
	[FieldOffset(Offset = "0x1EC")]
	[Token(Token = "0x400028C")]
	private float g_fAttackCombo;

	// Token: 0x0400028D RID: 653
	[FieldOffset(Offset = "0x1F0")]
	[Token(Token = "0x400028D")]
	private float g_fAttackCombo02;

	// Token: 0x0400028E RID: 654
	[FieldOffset(Offset = "0x1F4")]
	[Token(Token = "0x400028E")]
	private float g_fAttackRotate;

	// Token: 0x0400028F RID: 655
	[FieldOffset(Offset = "0x1F8")]
	[Token(Token = "0x400028F")]
	private float g_fAniChage;

	// Token: 0x04000290 RID: 656
	[FieldOffset(Offset = "0x1FC")]
	[Token(Token = "0x4000290")]
	private Vector3 g_v3ChargeAttackDirection;

	// Token: 0x04000291 RID: 657
	[Token(Token = "0x4000291")]
	private const float g_fChargeValMax = 3f;

	// Token: 0x04000292 RID: 658
	[FieldOffset(Offset = "0x208")]
	[Token(Token = "0x4000292")]
	private float g_fChargeVal;

	// Token: 0x04000293 RID: 659
	[FieldOffset(Offset = "0x20C")]
	[Token(Token = "0x4000293")]
	private float g_fChargeExplosionTime;

	// Token: 0x04000294 RID: 660
	[FieldOffset(Offset = "0x210")]
	[Token(Token = "0x4000294")]
	private Vector3 g_v3MoveTarget;

	// Token: 0x04000295 RID: 661
	[FieldOffset(Offset = "0x21C")]
	[Token(Token = "0x4000295")]
	private bool g_bChargeFarDamage;

	// Token: 0x04000296 RID: 662
	[FieldOffset(Offset = "0x220")]
	[Token(Token = "0x4000296")]
	private int g_iScriptStep;

	// Token: 0x04000297 RID: 663
	[FieldOffset(Offset = "0x224")]
	[Token(Token = "0x4000297")]
	private bool g_bCatTip;

	// Token: 0x04000298 RID: 664
	[FieldOffset(Offset = "0x225")]
	[Token(Token = "0x4000298")]
	private bool g_bPushPlayer;

	// Token: 0x02000046 RID: 70
	[Token(Token = "0x2000046")]
	private enum AIFighting
	{
		// Token: 0x0400029A RID: 666
		[Token(Token = "0x400029A")]
		Null,
		// Token: 0x0400029B RID: 667
		[Token(Token = "0x400029B")]
		Watch,
		// Token: 0x0400029C RID: 668
		[Token(Token = "0x400029C")]
		Attack01,
		// Token: 0x0400029D RID: 669
		[Token(Token = "0x400029D")]
		AttackSweep,
		// Token: 0x0400029E RID: 670
		[Token(Token = "0x400029E")]
		Attack02,
		// Token: 0x0400029F RID: 671
		[Token(Token = "0x400029F")]
		Charge,
		// Token: 0x040002A0 RID: 672
		[Token(Token = "0x40002A0")]
		ChargeAttack,
		// Token: 0x040002A1 RID: 673
		[Token(Token = "0x40002A1")]
		ChargeDamaged,
		// Token: 0x040002A2 RID: 674
		[Token(Token = "0x40002A2")]
		AttackSplashDouble,
		// Token: 0x040002A3 RID: 675
		[Token(Token = "0x40002A3")]
		AttackThrow,
		// Token: 0x040002A4 RID: 676
		[Token(Token = "0x40002A4")]
		WalkForward,
		// Token: 0x040002A5 RID: 677
		[Token(Token = "0x40002A5")]
		ChargeFar,
		// Token: 0x040002A6 RID: 678
		[Token(Token = "0x40002A6")]
		ChargeAttackFar,
		// Token: 0x040002A7 RID: 679
		[Token(Token = "0x40002A7")]
		Idle,
		// Token: 0x040002A8 RID: 680
		[Token(Token = "0x40002A8")]
		StartBattle,
		// Token: 0x040002A9 RID: 681
		[Token(Token = "0x40002A9")]
		Death,
		// Token: 0x040002AA RID: 682
		[Token(Token = "0x40002AA")]
		Destory,
		// Token: 0x040002AB RID: 683
		[Token(Token = "0x40002AB")]
		End
	}
}
