using System;
using Cpp2IlInjected;
using UnityEngine;

namespace Obi
{
	// Token: 0x020004E4 RID: 1252
	[Token(Token = "0x20004E4")]
	public abstract class ObiExternalForce : MonoBehaviour
	{
		// Token: 0x06002BE1 RID: 11233 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002BE1")]
		[Address(RVA = "0x1011C00", Offset = "0x1010A00", VA = "0x181011C00")]
		public void LateUpdate()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002BE2 RID: 11234 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002BE2")]
		[Address(RVA = "0x1011BC0", Offset = "0x10109C0", VA = "0x181011BC0")]
		protected float GetTurbulence(float turbulenceIntensity)
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002BE3 RID: 11235
		[Token(Token = "0x6002BE3")]
		[Address(Slot = "4")]
		public abstract void ApplyForcesToActor(ObiActor actor);

		// Token: 0x06002BE4 RID: 11236 RVA: 0x0005E970 File Offset: 0x0005CB70
		[Token(Token = "0x6002BE4")]
		[Address(RVA = "0x8D4180", Offset = "0x8D2F80", VA = "0x1808D4180")]
		protected ObiExternalForce()
		{
		}

		// Token: 0x04003454 RID: 13396
		[FieldOffset(Offset = "0x18")]
		[Token(Token = "0x4003454")]
		public float intensity;

		// Token: 0x04003455 RID: 13397
		[FieldOffset(Offset = "0x1C")]
		[Token(Token = "0x4003455")]
		public float turbulence;

		// Token: 0x04003456 RID: 13398
		[FieldOffset(Offset = "0x20")]
		[Token(Token = "0x4003456")]
		public float turbulenceFrequency = 1f;

		// Token: 0x04003457 RID: 13399
		[FieldOffset(Offset = "0x24")]
		[Token(Token = "0x4003457")]
		public float turbulenceSeed;

		// Token: 0x04003458 RID: 13400
		[FieldOffset(Offset = "0x28")]
		[Token(Token = "0x4003458")]
		public ObiSolver[] affectedSolvers;
	}
}
