using System;
using Cpp2IlInjected;
using UnityEngine;

// Token: 0x02000191 RID: 401
[Token(Token = "0x2000191")]
public class DamagedObjectFloor_BossBig03 : AttackableObject
{
	// Token: 0x06001290 RID: 4752 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001290")]
	[Address(RVA = "0x13C7A00", Offset = "0x13C6800", VA = "0x1813C7A00", Slot = "4")]
	public override void Init()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001291 RID: 4753 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001291")]
	[Address(RVA = "0x13C8290", Offset = "0x13C7090", VA = "0x1813C8290", Slot = "6")]
	protected override void Update()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001292 RID: 4754 RVA: 0x0002A8D8 File Offset: 0x00028AD8
	[Token(Token = "0x6001292")]
	[Address(RVA = "0x13C7C50", Offset = "0x13C6A50", VA = "0x1813C7C50", Slot = "12")]
	protected virtual void SetDamageColor()
	{
		float num = this.g_fDisTimeVal;
		int num2 = 0;
		if (num <= (float)num2)
		{
			float num3 = this.g_fAlpha;
			if (num3 <= (float)num2)
			{
				GameObject gameObject = base.gameObject;
				int num4 = 0;
				gameObject.SetActive(num4 != 0);
			}
			this.g_fAlpha = num3;
			GameObject damageObject = this.DamageObject;
			int num5 = 0;
			int childCount = damageObject.transform.childCount;
			if (num5 >= childCount)
			{
				return;
			}
			MeshRenderer component = this.DamageObject.transform.GetChild(num5).GetComponent<MeshRenderer>();
			int num6 = 0;
			if (component != num6)
			{
				Material material = component.GetMaterial();
				float num7 = this.g_fAlpha;
				material.SetFloat("_Alpha", num7);
			}
			GameObject damageObject2 = this.DamageObject;
			num5++;
		}
		if (this.DamageObject.GetComponent<SphereCollider>().enabled)
		{
			SphereCollider component2 = this.DamageObject.GetComponent<SphereCollider>();
			int num8 = 0;
			component2.enabled = num8 != 0;
		}
		float num9 = this.g_fDisTimeVal;
		this.g_fDisTimeVal = num9;
	}

	// Token: 0x06001293 RID: 4755 RVA: 0x000020D3 File Offset: 0x000002D3
	[Token(Token = "0x6001293")]
	[Address(RVA = "0x13C7E80", Offset = "0x13C6C80", VA = "0x1813C7E80")]
	public void SetDamage()
	{
		throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
	}

	// Token: 0x06001294 RID: 4756 RVA: 0x0002A9D4 File Offset: 0x00028BD4
	[Token(Token = "0x6001294")]
	[Address(RVA = "0x13C8140", Offset = "0x13C6F40", VA = "0x1813C8140", Slot = "11")]
	public override void SetTimeScale(float fTimeScale)
	{
		/*
An exception occurred when decompiling this method (06001294)

ICSharpCode.Decompiler.DecompilerException: Error decompiling System.Void DamagedObjectFloor_BossBig03::SetTimeScale(System.Single)

 ---> System.ArgumentOutOfRangeException: Non-negative number required. (Parameter 'length')
   at System.Array.Copy(Array sourceArray, Int32 sourceIndex, Array destinationArray, Int32 destinationIndex, Int32 length, Boolean reliable)
   at System.Array.Copy(Array sourceArray, Array destinationArray, Int32 length)
   at ICSharpCode.Decompiler.ILAst.ILAstBuilder.StackSlot.ModifyStack(StackSlot[] stack, Int32 popCount, Int32 pushCount, ByteCode pushDefinition) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstBuilder.cs:line 51
   at ICSharpCode.Decompiler.ILAst.ILAstBuilder.StackAnalysis(MethodDef methodDef) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstBuilder.cs:line 401
   at ICSharpCode.Decompiler.ILAst.ILAstBuilder.Build(MethodDef methodDef, Boolean optimize, DecompilerContext context) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\ILAst\ILAstBuilder.cs:line 276
   at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(IEnumerable`1 parameters, MethodDebugInfoBuilder& builder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 112
   at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 88
   --- End of inner exception stack trace ---
   at ICSharpCode.Decompiler.Ast.AstMethodBodyBuilder.CreateMethodBody(MethodDef methodDef, DecompilerContext context, AutoPropertyProvider autoPropertyProvider, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, StringBuilder sb, MethodDebugInfoBuilder& stmtsBuilder) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstMethodBodyBuilder.cs:line 92
   at ICSharpCode.Decompiler.Ast.AstBuilder.AddMethodBody(EntityDeclaration methodNode, EntityDeclaration& updatedNode, MethodDef method, IEnumerable`1 parameters, Boolean valueParameterIsKeyword, MethodKind methodKind) in D:\a\dnSpy\dnSpy\Extensions\ILSpy.Decompiler\ICSharpCode.Decompiler\ICSharpCode.Decompiler\Ast\AstBuilder.cs:line 1618
*/;
	}

	// Token: 0x06001295 RID: 4757 RVA: 0x0002AA58 File Offset: 0x00028C58
	[Token(Token = "0x6001295")]
	[Address(RVA = "0x8E98D0", Offset = "0x8E86D0", VA = "0x1808E98D0")]
	public bool GetIsDamage()
	{
		return this.g_bDamage;
	}

	// Token: 0x06001296 RID: 4758 RVA: 0x0002AA6C File Offset: 0x00028C6C
	[Token(Token = "0x6001296")]
	[Address(RVA = "0x13C82E0", Offset = "0x13C70E0", VA = "0x1813C82E0")]
	public DamagedObjectFloor_BossBig03()
	{
	}

	// Token: 0x04001CC8 RID: 7368
	[FieldOffset(Offset = "0x68")]
	[Token(Token = "0x4001CC8")]
	public GameObject DamageObject;

	// Token: 0x04001CC9 RID: 7369
	[FieldOffset(Offset = "0x70")]
	[Token(Token = "0x4001CC9")]
	public GameObject DamageEffectObject;

	// Token: 0x04001CCA RID: 7370
	[FieldOffset(Offset = "0x78")]
	[Token(Token = "0x4001CCA")]
	public GameObject HitEffectObject;

	// Token: 0x04001CCB RID: 7371
	[FieldOffset(Offset = "0x80")]
	[Token(Token = "0x4001CCB")]
	private float g_fOriginalMass = 1f;

	// Token: 0x04001CCC RID: 7372
	[FieldOffset(Offset = "0x84")]
	[Token(Token = "0x4001CCC")]
	private float g_fOriginalAngularDrag = 0.05f;

	// Token: 0x04001CCD RID: 7373
	[FieldOffset(Offset = "0x88")]
	[Token(Token = "0x4001CCD")]
	protected bool g_bDamage;

	// Token: 0x04001CCE RID: 7374
	[Token(Token = "0x4001CCE")]
	protected const float g_fDisTime = 5f;

	// Token: 0x04001CCF RID: 7375
	[FieldOffset(Offset = "0x8C")]
	[Token(Token = "0x4001CCF")]
	protected float g_fDisTimeVal;

	// Token: 0x04001CD0 RID: 7376
	[FieldOffset(Offset = "0x90")]
	[Token(Token = "0x4001CD0")]
	protected float g_fAlpha = 1f;

	// Token: 0x04001CD1 RID: 7377
	[FieldOffset(Offset = "0x98")]
	[Token(Token = "0x4001CD1")]
	private EffectPool g_DamageEffect;

	// Token: 0x04001CD2 RID: 7378
	[FieldOffset(Offset = "0xA0")]
	[Token(Token = "0x4001CD2")]
	private EffectPool g_HitEffect;
}
