using System;
using Cpp2IlInjected;
using UnityEngine;

namespace Obi
{
	// Token: 0x0200053C RID: 1340
	[Token(Token = "0x200053C")]
	public abstract class ObiExternalForce : MonoBehaviour
	{
		// Token: 0x06002EAA RID: 11946 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002EAA")]
		[Address(RVA = "0x10A4F30", Offset = "0x10A3F30", VA = "0x1810A4F30")]
		public void LateUpdate()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002EAB RID: 11947 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002EAB")]
		[Address(RVA = "0x10A4EF0", Offset = "0x10A3EF0", VA = "0x1810A4EF0")]
		protected float GetTurbulence(float turbulenceIntensity)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002EAC RID: 11948
		[Token(Token = "0x6002EAC")]
		[Address(Slot = "4")]
		public abstract void ApplyForcesToActor(ObiActor actor);

		// Token: 0x06002EAD RID: 11949 RVA: 0x00065C04 File Offset: 0x00063E04
		[Token(Token = "0x6002EAD")]
		[Address(RVA = "0x79FD70", Offset = "0x79ED70", VA = "0x18079FD70")]
		protected ObiExternalForce()
		{
		}

		// Token: 0x0400373E RID: 14142
		[FieldOffset(Offset = "0x18")]
		[Token(Token = "0x400373E")]
		public float intensity;

		// Token: 0x0400373F RID: 14143
		[FieldOffset(Offset = "0x1C")]
		[Token(Token = "0x400373F")]
		public float turbulence;

		// Token: 0x04003740 RID: 14144
		[FieldOffset(Offset = "0x20")]
		[Token(Token = "0x4003740")]
		public float turbulenceFrequency = 1f;

		// Token: 0x04003741 RID: 14145
		[FieldOffset(Offset = "0x24")]
		[Token(Token = "0x4003741")]
		public float turbulenceSeed;

		// Token: 0x04003742 RID: 14146
		[FieldOffset(Offset = "0x28")]
		[Token(Token = "0x4003742")]
		public ObiSolver[] affectedSolvers;
	}
}
