#pragma once

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

// Package: BPC_AttackCollisionControl

#include "Basic.hpp"

#include "BPC_AttackCollisionControl_classes.hpp"
#include "BPC_AttackCollisionControl_parameters.hpp"


SDK_NAMESPACE_START

// Function BPC_AttackCollisionControl.BPC_AttackCollisionControl_C.UnBindComponents
// (BlueprintCallable, BlueprintEvent)

void UBPC_AttackCollisionControl_C::UnBindComponents()
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BPC_AttackCollisionControl_C", "UnBindComponents");

	UObject::ProcessEvent(Func, nullptr);
}


// Function BPC_AttackCollisionControl.BPC_AttackCollisionControl_C.ReceiveTick
// (Event, Public, BlueprintEvent)
// Parameters:
// float                                   DeltaSeconds_ReceiveTick                               (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)

void UBPC_AttackCollisionControl_C::ReceiveTick(float DeltaSeconds_ReceiveTick)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BPC_AttackCollisionControl_C", "ReceiveTick");

	Params::BPC_AttackCollisionControl_C_ReceiveTick Parms{};

	Parms.DeltaSeconds_ReceiveTick = DeltaSeconds_ReceiveTick;

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


// Function BPC_AttackCollisionControl.BPC_AttackCollisionControl_C.OnComponentBeginOverlap
// (HasOutParams, BlueprintCallable, BlueprintEvent)
// Parameters:
// class UPrimitiveComponent*              OverlappedComponent                                    (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)
// int32                                   OtherBodyIndex                                         (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
// bool                                    bFromSweep                                             (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
// const struct FHitResult&                SweepResult                                            (ConstParm, BlueprintVisible, BlueprintReadOnly, Parm, OutParm, ReferenceParm, IsPlainOldData, NoDestructor, ContainsInstancedReference)

void UBPC_AttackCollisionControl_C::OnComponentBeginOverlap(class UPrimitiveComponent* OverlappedComponent, class AActor* OtherActor, class UPrimitiveComponent* OtherComp, int32 OtherBodyIndex, bool bFromSweep, const struct FHitResult& SweepResult)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BPC_AttackCollisionControl_C", "OnComponentBeginOverlap");

	Params::BPC_AttackCollisionControl_C_OnComponentBeginOverlap Parms{};

	Parms.OverlappedComponent = OverlappedComponent;
	Parms.OtherActor = OtherActor;
	Parms.OtherComp = OtherComp;
	Parms.OtherBodyIndex = OtherBodyIndex;
	Parms.bFromSweep = bFromSweep;
	Parms.SweepResult = std::move(SweepResult);

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


// Function BPC_AttackCollisionControl.BPC_AttackCollisionControl_C.ExecuteUbergraph_BPC_AttackCollisionControl
// (Final, UbergraphFunction, HasDefaults)
// Parameters:
// int32                                   EntryPoint                                             (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)

void UBPC_AttackCollisionControl_C::ExecuteUbergraph_BPC_AttackCollisionControl(int32 EntryPoint)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BPC_AttackCollisionControl_C", "ExecuteUbergraph_BPC_AttackCollisionControl");

	Params::BPC_AttackCollisionControl_C_ExecuteUbergraph_BPC_AttackCollisionControl Parms{};

	Parms.EntryPoint = EntryPoint;

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


// Function BPC_AttackCollisionControl.BPC_AttackCollisionControl_C.EffectStop
// (BlueprintCallable, BlueprintEvent)

void UBPC_AttackCollisionControl_C::EffectStop()
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BPC_AttackCollisionControl_C", "EffectStop");

	UObject::ProcessEvent(Func, nullptr);
}


// Function BPC_AttackCollisionControl.BPC_AttackCollisionControl_C.EffectSpawnEvent
// (BlueprintCallable, BlueprintEvent)
// Parameters:
// double                                  ActiveTime                                             (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
// class FName                             TargetTag                                              (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)

void UBPC_AttackCollisionControl_C::EffectSpawnEvent(double ActiveTime, class FName TargetTag)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BPC_AttackCollisionControl_C", "EffectSpawnEvent");

	Params::BPC_AttackCollisionControl_C_EffectSpawnEvent Parms{};

	Parms.ActiveTime = ActiveTime;
	Parms.TargetTag = TargetTag;

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


// Function BPC_AttackCollisionControl.BPC_AttackCollisionControl_C.Combo
// (Public, BlueprintCallable, BlueprintEvent)
// Parameters:
// double                                  TimeRange                                              (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
// class FName                             ComboName                                              (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)

void UBPC_AttackCollisionControl_C::Combo(double TimeRange, class FName ComboName)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BPC_AttackCollisionControl_C", "Combo");

	Params::BPC_AttackCollisionControl_C_Combo Parms{};

	Parms.TimeRange = TimeRange;
	Parms.ComboName = ComboName;

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


// Function BPC_AttackCollisionControl.BPC_AttackCollisionControl_C.CollisionReset
// (Public, BlueprintCallable, BlueprintEvent)

void UBPC_AttackCollisionControl_C::CollisionReset()
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BPC_AttackCollisionControl_C", "CollisionReset");

	UObject::ProcessEvent(Func, nullptr);
}


// Function BPC_AttackCollisionControl.BPC_AttackCollisionControl_C.CheckBlockOverlap
// (Public, HasOutParams, BlueprintCallable, BlueprintEvent)
// Parameters:
// TArray<class UPrimitiveComponent*>&     OverlapedPrimitives                                    (BlueprintVisible, BlueprintReadOnly, Parm, OutParm, ReferenceParm, ContainsInstancedReference)
// bool                                    ReturnValue                                            (Parm, OutParm, ZeroConstructor, ReturnParm, IsPlainOldData, NoDestructor, HasGetValueTypeHash)

bool UBPC_AttackCollisionControl_C::CheckBlockOverlap(TArray<class UPrimitiveComponent*>& OverlapedPrimitives)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BPC_AttackCollisionControl_C", "CheckBlockOverlap");

	Params::BPC_AttackCollisionControl_C_CheckBlockOverlap Parms{};

	Parms.OverlapedPrimitives = std::move(OverlapedPrimitives);

	UObject::ProcessEvent(Func, &Parms);

	OverlapedPrimitives = std::move(Parms.OverlapedPrimitives);

	return Parms.ReturnValue;
}


// Function BPC_AttackCollisionControl.BPC_AttackCollisionControl_C.BindComponents
// (HasOutParams, BlueprintCallable, BlueprintEvent)
// Parameters:
// const TArray<class UPrimitiveComponent*>&PrimitiveComponent                                     (ConstParm, BlueprintVisible, BlueprintReadOnly, Parm, OutParm, ReferenceParm, ContainsInstancedReference)
// double                                  ActiveTime                                             (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
// bool                                    MultipyHitPossible                                     (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
// class FName                             TargetTag                                              (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)

void UBPC_AttackCollisionControl_C::BindComponents(const TArray<class UPrimitiveComponent*>& PrimitiveComponent, double ActiveTime, bool MultipyHitPossible, class FName TargetTag)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BPC_AttackCollisionControl_C", "BindComponents");

	Params::BPC_AttackCollisionControl_C_BindComponents Parms{};

	Parms.PrimitiveComponent = std::move(PrimitiveComponent);
	Parms.ActiveTime = ActiveTime;
	Parms.MultipyHitPossible = MultipyHitPossible;
	Parms.TargetTag = TargetTag;

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


// Function BPC_AttackCollisionControl.BPC_AttackCollisionControl_C.Attack_AC_Remote
// (Public, BlueprintCallable, BlueprintEvent)
// Parameters:
// double                                  TimeRange                                              (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
// class FName                             ComponentName                                          (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
// double                                  DamageMultiply                                         (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
// double                                  StanMultiply                                           (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)

void UBPC_AttackCollisionControl_C::Attack_AC_Remote(double TimeRange, class FName ComponentName, double DamageMultiply, double StanMultiply)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BPC_AttackCollisionControl_C", "Attack_AC_Remote");

	Params::BPC_AttackCollisionControl_C_Attack_AC_Remote Parms{};

	Parms.TimeRange = TimeRange;
	Parms.ComponentName = ComponentName;
	Parms.DamageMultiply = DamageMultiply;
	Parms.StanMultiply = StanMultiply;

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


// Function BPC_AttackCollisionControl.BPC_AttackCollisionControl_C.Attack_AC
// (Public, BlueprintCallable, BlueprintEvent)
// Parameters:
// double                                  TimeRange                                              (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
// class FName                             AttackName                                             (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
// double                                  DamageMultiply                                         (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
// bool                                    MutipleHitPossible                                     (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
// double                                  StanMultiply                                           (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)

void UBPC_AttackCollisionControl_C::Attack_AC(double TimeRange, class FName AttackName, double DamageMultiply, bool MutipleHitPossible, double StanMultiply)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("BPC_AttackCollisionControl_C", "Attack_AC");

	Params::BPC_AttackCollisionControl_C_Attack_AC Parms{};

	Parms.TimeRange = TimeRange;
	Parms.AttackName = AttackName;
	Parms.DamageMultiply = DamageMultiply;
	Parms.MutipleHitPossible = MutipleHitPossible;
	Parms.StanMultiply = StanMultiply;

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


SDK_NAMESPACE_END
