using System;
using Cpp2IlInjected;
using UnityEngine;

namespace Obi
{
	// Token: 0x020004A7 RID: 1191
	[Token(Token = "0x20004A7")]
	public class ObiCollisionMaterial : ScriptableObject
	{
		// Token: 0x170002DE RID: 734
		// (get) Token: 0x06002A3B RID: 10811 RVA: 0x0005C004 File Offset: 0x0005A204
		[Token(Token = "0x170002DE")]
		public IntPtr OniCollisionMaterial
		{
			[Token(Token = "0x6002A3B")]
			[Address(RVA = "0x2B4380", Offset = "0x2B3180", VA = "0x1802B4380")]
			get
			{
				return this.oniCollisionMaterial;
			}
		}

		// Token: 0x06002A3C RID: 10812 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002A3C")]
		[Address(RVA = "0x100CBC0", Offset = "0x100B9C0", VA = "0x18100CBC0")]
		public void OnEnable()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002A3D RID: 10813 RVA: 0x0005C018 File Offset: 0x0005A218
		[Token(Token = "0x6002A3D")]
		[Address(RVA = "0x100CB80", Offset = "0x100B980", VA = "0x18100CB80")]
		public void OnDisable()
		{
			Oni.DestroyCollisionMaterial(this.oniCollisionMaterial);
			this.oniCollisionMaterial = (IntPtr)((ulong)0L);
		}

		// Token: 0x06002A3E RID: 10814 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002A3E")]
		[Address(RVA = "0x100CC10", Offset = "0x100BA10", VA = "0x18100CC10")]
		public void OnValidate()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002A3F RID: 10815 RVA: 0x0005C03C File Offset: 0x0005A23C
		[Token(Token = "0x6002A3F")]
		[Address(RVA = "0x100CC40", Offset = "0x100BA40", VA = "0x18100CC40")]
		public ObiCollisionMaterial()
		{
		}

		// Token: 0x0400332C RID: 13100
		[FieldOffset(Offset = "0x18")]
		[Token(Token = "0x400332C")]
		private IntPtr oniCollisionMaterial = (IntPtr)((ulong)0L);

		// Token: 0x0400332D RID: 13101
		[FieldOffset(Offset = "0x20")]
		[Token(Token = "0x400332D")]
		private Oni.CollisionMaterial adaptor;

		// Token: 0x0400332E RID: 13102
		[FieldOffset(Offset = "0x34")]
		[Token(Token = "0x400332E")]
		public float friction;

		// Token: 0x0400332F RID: 13103
		[FieldOffset(Offset = "0x38")]
		[Token(Token = "0x400332F")]
		public float stickiness;

		// Token: 0x04003330 RID: 13104
		[FieldOffset(Offset = "0x3C")]
		[Token(Token = "0x4003330")]
		public float stickDistance;

		// Token: 0x04003331 RID: 13105
		[FieldOffset(Offset = "0x40")]
		[Token(Token = "0x4003331")]
		public Oni.MaterialCombineMode frictionCombine;

		// Token: 0x04003332 RID: 13106
		[FieldOffset(Offset = "0x44")]
		[Token(Token = "0x4003332")]
		public Oni.MaterialCombineMode stickinessCombine;
	}
}
