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

// Token: 0x020000C3 RID: 195
public class NPC_GhostB : NPC
{
	// Token: 0x06001681 RID: 5761 RVA: 0x000616FC File Offset: 0x0005F8FC
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 512145, XrefRangeEnd = 512210, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe override void Init()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), NPC_GhostB.NativeMethodInfoPtr_Init_Public_Virtual_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06001682 RID: 5762 RVA: 0x0006174C File Offset: 0x0005F94C
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 512210, XrefRangeEnd = 512266, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe override void Update()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), NPC_GhostB.NativeMethodInfoPtr_Update_Protected_Virtual_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06001683 RID: 5763 RVA: 0x0006179C File Offset: 0x0005F99C
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 512266, XrefRangeEnd = 512272, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe override void OnEnable()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), NPC_GhostB.NativeMethodInfoPtr_OnEnable_Protected_Virtual_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06001684 RID: 5764 RVA: 0x000617EC File Offset: 0x0005F9EC
	[CallerCount(5874)]
	[CachedScanResults(RefRangeStart = 24, RefRangeEnd = 5898, XrefRangeStart = 24, XrefRangeEnd = 5898, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void PlayFireMagicShot()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(NPC_GhostB.NativeMethodInfoPtr_PlayFireMagicShot_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06001685 RID: 5765 RVA: 0x00061830 File Offset: 0x0005FA30
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 0, XrefRangeEnd = 0, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe NPC_GhostB()
		: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<NPC_GhostB>.NativeClassPtr))
	{
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(NPC_GhostB.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06001686 RID: 5766 RVA: 0x0006187C File Offset: 0x0005FA7C
	// Note: this type is marked as 'beforefieldinit'.
	static NPC_GhostB()
	{
		Il2CppClassPointerStore<NPC_GhostB>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "", "NPC_GhostB");
		IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<NPC_GhostB>.NativeClassPtr);
		NPC_GhostB.NativeFieldInfoPtr_SEMoveObject = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<NPC_GhostB>.NativeClassPtr, "SEMoveObject");
		NPC_GhostB.NativeFieldInfoPtr_SEChargeObject = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<NPC_GhostB>.NativeClassPtr, "SEChargeObject");
		NPC_GhostB.NativeFieldInfoPtr_g_SEMove = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<NPC_GhostB>.NativeClassPtr, "g_SEMove");
		NPC_GhostB.NativeFieldInfoPtr_g_SECharge = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<NPC_GhostB>.NativeClassPtr, "g_SECharge");
		NPC_GhostB.NativeMethodInfoPtr_Init_Public_Virtual_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<NPC_GhostB>.NativeClassPtr, 100665415);
		NPC_GhostB.NativeMethodInfoPtr_Update_Protected_Virtual_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<NPC_GhostB>.NativeClassPtr, 100665416);
		NPC_GhostB.NativeMethodInfoPtr_OnEnable_Protected_Virtual_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<NPC_GhostB>.NativeClassPtr, 100665417);
		NPC_GhostB.NativeMethodInfoPtr_PlayFireMagicShot_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<NPC_GhostB>.NativeClassPtr, 100665418);
		NPC_GhostB.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<NPC_GhostB>.NativeClassPtr, 100665419);
	}

	// Token: 0x06001687 RID: 5767 RVA: 0x00054CDC File Offset: 0x00052EDC
	public NPC_GhostB(IntPtr pointer)
		: base(pointer)
	{
	}

	// Token: 0x170006C5 RID: 1733
	// (get) Token: 0x06001688 RID: 5768 RVA: 0x00061960 File Offset: 0x0005FB60
	// (set) Token: 0x06001689 RID: 5769 RVA: 0x00061994 File Offset: 0x0005FB94
	public unsafe GameObject SEMoveObject
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(NPC_GhostB.NativeFieldInfoPtr_SEMoveObject);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new GameObject(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(NPC_GhostB.NativeFieldInfoPtr_SEMoveObject), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x170006C6 RID: 1734
	// (get) Token: 0x0600168A RID: 5770 RVA: 0x000619BC File Offset: 0x0005FBBC
	// (set) Token: 0x0600168B RID: 5771 RVA: 0x000619F0 File Offset: 0x0005FBF0
	public unsafe GameObject SEChargeObject
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(NPC_GhostB.NativeFieldInfoPtr_SEChargeObject);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new GameObject(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(NPC_GhostB.NativeFieldInfoPtr_SEChargeObject), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x170006C7 RID: 1735
	// (get) Token: 0x0600168C RID: 5772 RVA: 0x00061A18 File Offset: 0x0005FC18
	// (set) Token: 0x0600168D RID: 5773 RVA: 0x00061A4C File Offset: 0x0005FC4C
	public unsafe SoundEffect g_SEMove
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(NPC_GhostB.NativeFieldInfoPtr_g_SEMove);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new SoundEffect(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(NPC_GhostB.NativeFieldInfoPtr_g_SEMove), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x170006C8 RID: 1736
	// (get) Token: 0x0600168E RID: 5774 RVA: 0x00061A74 File Offset: 0x0005FC74
	// (set) Token: 0x0600168F RID: 5775 RVA: 0x00061AA8 File Offset: 0x0005FCA8
	public unsafe SoundEffect g_SECharge
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(NPC_GhostB.NativeFieldInfoPtr_g_SECharge);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new SoundEffect(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(NPC_GhostB.NativeFieldInfoPtr_g_SECharge), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x040011A3 RID: 4515
	private static readonly IntPtr NativeFieldInfoPtr_SEMoveObject;

	// Token: 0x040011A4 RID: 4516
	private static readonly IntPtr NativeFieldInfoPtr_SEChargeObject;

	// Token: 0x040011A5 RID: 4517
	private static readonly IntPtr NativeFieldInfoPtr_g_SEMove;

	// Token: 0x040011A6 RID: 4518
	private static readonly IntPtr NativeFieldInfoPtr_g_SECharge;

	// Token: 0x040011A7 RID: 4519
	private static readonly IntPtr NativeMethodInfoPtr_Init_Public_Virtual_Void_0;

	// Token: 0x040011A8 RID: 4520
	private static readonly IntPtr NativeMethodInfoPtr_Update_Protected_Virtual_Void_0;

	// Token: 0x040011A9 RID: 4521
	private static readonly IntPtr NativeMethodInfoPtr_OnEnable_Protected_Virtual_Void_0;

	// Token: 0x040011AA RID: 4522
	private static readonly IntPtr NativeMethodInfoPtr_PlayFireMagicShot_Public_Void_0;

	// Token: 0x040011AB RID: 4523
	private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
}
