#pragma once

/*
* SDK generated by Dumper-7
*
* https://github.com/Encryqed/Dumper-7
*/

// Package: BPC_HitOnConnect

#include "Basic.hpp"

#include "BPC_HitOnConnect_classes.hpp"
#include "BPC_HitOnConnect_parameters.hpp"


SDK_NAMESPACE_START

// Function BPC_HitOnConnect.BPC_HitOnConnect_C.DestroySafe
// (BlueprintCallable, BlueprintEvent)

void UBPC_HitOnConnect_C::DestroySafe()
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BPC_HitOnConnect_C", "DestroySafe");

	UObject::ProcessEvent(Func, nullptr);
}


// Function BPC_HitOnConnect.BPC_HitOnConnect_C.ExecuteUbergraph_BPC_HitOnConnect
// (Final, UbergraphFunction, HasDefaults)
// Parameters:
// int32                                   EntryPoint                                             (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)

void UBPC_HitOnConnect_C::ExecuteUbergraph_BPC_HitOnConnect(int32 EntryPoint)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BPC_HitOnConnect_C", "ExecuteUbergraph_BPC_HitOnConnect");

	Params::BPC_HitOnConnect_C_ExecuteUbergraph_BPC_HitOnConnect Parms{};

	Parms.EntryPoint = EntryPoint;

	UObject::ProcessEvent(Func, &Parms);
}


// Function BPC_HitOnConnect.BPC_HitOnConnect_C.HitEvent
// (HasOutParams, BlueprintCallable, BlueprintEvent)
// Parameters:
// class UPrimitiveComponent*              HitComponent                                           (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, InstancedReference, NoDestructor, HasGetValueTypeHash)
// class AActor*                           OtherActor                                             (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash)
// class UPrimitiveComponent*              OtherComp                                              (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, InstancedReference, NoDestructor, HasGetValueTypeHash)
// const struct FVector&                   NormalImpulse                                          (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
// const struct FHitResult&                Hit                                                    (ConstParm, BlueprintVisible, BlueprintReadOnly, Parm, OutParm, ReferenceParm, IsPlainOldData, NoDestructor, ContainsInstancedReference)

void UBPC_HitOnConnect_C::HitEvent(class UPrimitiveComponent* HitComponent, class AActor* OtherActor, class UPrimitiveComponent* OtherComp, const struct FVector& NormalImpulse, const struct FHitResult& Hit)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BPC_HitOnConnect_C", "HitEvent");

	Params::BPC_HitOnConnect_C_HitEvent Parms{};

	Parms.HitComponent = HitComponent;
	Parms.OtherActor = OtherActor;
	Parms.OtherComp = OtherComp;
	Parms.NormalImpulse = std::move(NormalImpulse);
	Parms.Hit = std::move(Hit);

	UObject::ProcessEvent(Func, &Parms);
}


// Function BPC_HitOnConnect.BPC_HitOnConnect_C.IsCanConnect
// (Public, HasOutParams, BlueprintCallable, BlueprintEvent, BlueprintPure)
// Parameters:
// class UPrimitiveComponent*              HitPrimitive                                           (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, InstancedReference, NoDestructor, HasGetValueTypeHash)
// class ABP_FirstPersonGameMode_Online_LINK_C*GameModeLINK                                           (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, NoDestructor, HasGetValueTypeHash)
// bool*                                   Rezult                                                 (Parm, OutParm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)

void UBPC_HitOnConnect_C::IsCanConnect(class UPrimitiveComponent* HitPrimitive, class ABP_FirstPersonGameMode_Online_LINK_C* GameModeLINK, bool* Rezult)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BPC_HitOnConnect_C", "IsCanConnect");

	Params::BPC_HitOnConnect_C_IsCanConnect Parms{};

	Parms.HitPrimitive = HitPrimitive;
	Parms.GameModeLINK = GameModeLINK;

	UObject::ProcessEvent(Func, &Parms);

	if (Rezult != nullptr)
		*Rezult = Parms.Rezult;
}


// Function BPC_HitOnConnect.BPC_HitOnConnect_C.ReceiveBeginPlay
// (Event, Public, BlueprintEvent)

void UBPC_HitOnConnect_C::ReceiveBeginPlay()
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BPC_HitOnConnect_C", "ReceiveBeginPlay");

	UObject::ProcessEvent(Func, nullptr);
}


// Function BPC_HitOnConnect.BPC_HitOnConnect_C.ReceiveEndPlay
// (Event, Public, BlueprintEvent)
// Parameters:
// EEndPlayReason                          EndPlayReason                                          (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)

void UBPC_HitOnConnect_C::ReceiveEndPlay(EEndPlayReason EndPlayReason)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BPC_HitOnConnect_C", "ReceiveEndPlay");

	Params::BPC_HitOnConnect_C_ReceiveEndPlay Parms{};

	Parms.EndPlayReason = EndPlayReason;

	UObject::ProcessEvent(Func, &Parms);
}


// Function BPC_HitOnConnect.BPC_HitOnConnect_C.SleepEvent
// (BlueprintCallable, BlueprintEvent)
// Parameters:
// class UPrimitiveComponent*              SleepingComponent                                      (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, InstancedReference, NoDestructor, HasGetValueTypeHash)
// class FName                             BoneName                                               (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)

void UBPC_HitOnConnect_C::SleepEvent(class UPrimitiveComponent* SleepingComponent, class FName BoneName)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BPC_HitOnConnect_C", "SleepEvent");

	Params::BPC_HitOnConnect_C_SleepEvent Parms{};

	Parms.SleepingComponent = SleepingComponent;
	Parms.BoneName = BoneName;

	UObject::ProcessEvent(Func, &Parms);
}


SDK_NAMESPACE_END
