#pragma once

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

// Package: MissionDetailsModifierList

#include "Basic.hpp"

#include "MissionDetailsModifierList_classes.hpp"
#include "MissionDetailsModifierList_parameters.hpp"


namespace SDK
{

// Function MissionDetailsModifierList.MissionDetailsModifierList_C.PopulateModifiers
// (Public, HasOutParams, HasDefaults, BlueprintCallable, BlueprintEvent)
// Parameters:
// bool                                    UseTrunctatedList                                      (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor)
// class UClass*                           NameTextStyle                                          (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
// class UClass*                           DescriptionTextStyle                                   (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
// bool                                    ShowMinusDescriptions                                  (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor)
// TArray<class UFortGameplayModifierItemDefinition*>ModifierItems                                          (BlueprintVisible, BlueprintReadOnly, Parm, OutParm, ZeroConstructor, ReferenceParm)
// bool                                    UseSmallIcons                                          (BlueprintVisible, BlueprintReadOnly, Parm, ZeroConstructor, IsPlainOldData, NoDestructor)

void UMissionDetailsModifierList_C::PopulateModifiers(bool UseTrunctatedList, class UClass* NameTextStyle, class UClass* DescriptionTextStyle, bool ShowMinusDescriptions, TArray<class UFortGameplayModifierItemDefinition*>& ModifierItems, bool UseSmallIcons)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("MissionDetailsModifierList_C", "PopulateModifiers");

	Params::MissionDetailsModifierList_C_PopulateModifiers Parms{};

	Parms.UseTrunctatedList = UseTrunctatedList;
	Parms.NameTextStyle = NameTextStyle;
	Parms.DescriptionTextStyle = DescriptionTextStyle;
	Parms.ShowMinusDescriptions = ShowMinusDescriptions;
	Parms.ModifierItems = std::move(ModifierItems);
	Parms.UseSmallIcons = UseSmallIcons;

	UObject::ProcessEvent(Func, &Parms);

	ModifierItems = std::move(Parms.ModifierItems);
}


// Function MissionDetailsModifierList.MissionDetailsModifierList_C.CreateDebugModifiers
// (Public, HasOutParams, BlueprintCallable, BlueprintEvent)
// Parameters:
// TArray<class UFortGameplayModifierItemDefinition*>Modifiers                                              (Parm, OutParm, ZeroConstructor)

void UMissionDetailsModifierList_C::CreateDebugModifiers(TArray<class UFortGameplayModifierItemDefinition*>* Modifiers)
{
	static class UFunction* Func = nullptr;

	if (Func == nullptr)
		Func = Class->GetFunction("MissionDetailsModifierList_C", "CreateDebugModifiers");

	Params::MissionDetailsModifierList_C_CreateDebugModifiers Parms{};

	UObject::ProcessEvent(Func, &Parms);

	if (Modifiers != nullptr)
		*Modifiers = std::move(Parms.Modifiers);
}

}

