using System;
using Il2CppInterop.Common.Attributes;
using Il2CppInterop.Runtime;
using UnityEngine;

// Token: 0x02000354 RID: 852
public class Portal : MonoBehaviour
{
	// Token: 0x060070C2 RID: 28866 RVA: 0x001C96EC File Offset: 0x001C78EC
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 585087, XrefRangeEnd = 585103, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void OnTriggerEnter(Collider other)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = IL2CPP.Il2CppObjectBaseToPtr(other);
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(Portal.NativeMethodInfoPtr_OnTriggerEnter_Public_Void_Collider_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}
	}

	// Token: 0x060070C3 RID: 28867 RVA: 0x001C9748 File Offset: 0x001C7948
	[CallerCount(63)]
	[CachedScanResults(RefRangeStart = 222154, RefRangeEnd = 222217, XrefRangeStart = 222154, XrefRangeEnd = 222217, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe Portal()
		: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<Portal>.NativeClassPtr))
	{
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(Portal.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x060070C4 RID: 28868 RVA: 0x001C9794 File Offset: 0x001C7994
	// Note: this type is marked as 'beforefieldinit'.
	static Portal()
	{
		Il2CppClassPointerStore<Portal>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "", "Portal");
		IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<Portal>.NativeClassPtr);
		Portal.NativeFieldInfoPtr_PortalEndPoint = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<Portal>.NativeClassPtr, "PortalEndPoint");
		Portal.NativeMethodInfoPtr_OnTriggerEnter_Public_Void_Collider_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<Portal>.NativeClassPtr, 100671679);
		Portal.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<Portal>.NativeClassPtr, 100671680);
	}

	// Token: 0x060070C5 RID: 28869 RVA: 0x0000351C File Offset: 0x0000171C
	public Portal(IntPtr pointer)
		: base(pointer)
	{
	}

	// Token: 0x170026EA RID: 9962
	// (get) Token: 0x060070C6 RID: 28870 RVA: 0x001C9800 File Offset: 0x001C7A00
	// (set) Token: 0x060070C7 RID: 28871 RVA: 0x001C9834 File Offset: 0x001C7A34
	public unsafe Transform PortalEndPoint
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(Portal.NativeFieldInfoPtr_PortalEndPoint);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new Transform(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(Portal.NativeFieldInfoPtr_PortalEndPoint), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x04004ACD RID: 19149
	private static readonly IntPtr NativeFieldInfoPtr_PortalEndPoint;

	// Token: 0x04004ACE RID: 19150
	private static readonly IntPtr NativeMethodInfoPtr_OnTriggerEnter_Public_Void_Collider_0;

	// Token: 0x04004ACF RID: 19151
	private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
}
