using System;
using Cpp2IlInjected;
using UnityEngine;

namespace Obi
{
	// Token: 0x020004FF RID: 1279
	[Token(Token = "0x20004FF")]
	public class ObiCollisionMaterial : ScriptableObject
	{
		// Token: 0x17000303 RID: 771
		// (get) Token: 0x06002D04 RID: 11524 RVA: 0x000633C8 File Offset: 0x000615C8
		[Token(Token = "0x17000303")]
		public IntPtr OniCollisionMaterial
		{
			[Token(Token = "0x6002D04")]
			[Address(RVA = "0x2EF530", Offset = "0x2EE530", VA = "0x1802EF530")]
			get
			{
				return this.oniCollisionMaterial;
			}
		}

		// Token: 0x06002D05 RID: 11525 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002D05")]
		[Address(RVA = "0x109FEF0", Offset = "0x109EEF0", VA = "0x18109FEF0")]
		public void OnEnable()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002D06 RID: 11526 RVA: 0x000633DC File Offset: 0x000615DC
		[Token(Token = "0x6002D06")]
		[Address(RVA = "0x109FEB0", Offset = "0x109EEB0", VA = "0x18109FEB0")]
		public void OnDisable()
		{
			Oni.DestroyCollisionMaterial(this.oniCollisionMaterial);
			this.oniCollisionMaterial = (IntPtr)((ulong)0L);
		}

		// Token: 0x06002D07 RID: 11527 RVA: 0x000020D3 File Offset: 0x000002D3
		[Token(Token = "0x6002D07")]
		[Address(RVA = "0x109FF40", Offset = "0x109EF40", VA = "0x18109FF40")]
		public void OnValidate()
		{
			throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
		}

		// Token: 0x06002D08 RID: 11528 RVA: 0x00063400 File Offset: 0x00061600
		[Token(Token = "0x6002D08")]
		[Address(RVA = "0x109FF70", Offset = "0x109EF70", VA = "0x18109FF70")]
		public ObiCollisionMaterial()
		{
		}

		// Token: 0x04003616 RID: 13846
		[FieldOffset(Offset = "0x18")]
		[Token(Token = "0x4003616")]
		private IntPtr oniCollisionMaterial = (IntPtr)((ulong)0L);

		// Token: 0x04003617 RID: 13847
		[FieldOffset(Offset = "0x20")]
		[Token(Token = "0x4003617")]
		private Oni.CollisionMaterial adaptor;

		// Token: 0x04003618 RID: 13848
		[FieldOffset(Offset = "0x34")]
		[Token(Token = "0x4003618")]
		public float friction;

		// Token: 0x04003619 RID: 13849
		[FieldOffset(Offset = "0x38")]
		[Token(Token = "0x4003619")]
		public float stickiness;

		// Token: 0x0400361A RID: 13850
		[FieldOffset(Offset = "0x3C")]
		[Token(Token = "0x400361A")]
		public float stickDistance;

		// Token: 0x0400361B RID: 13851
		[FieldOffset(Offset = "0x40")]
		[Token(Token = "0x400361B")]
		public Oni.MaterialCombineMode frictionCombine;

		// Token: 0x0400361C RID: 13852
		[FieldOffset(Offset = "0x44")]
		[Token(Token = "0x400361C")]
		public Oni.MaterialCombineMode stickinessCombine;
	}
}
