#pragma once

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

// Package: B_Prj_Athena_SneakySnowman

#include "Basic.hpp"

#include "Engine_structs.hpp"
#include "CoreUObject_structs.hpp"
#include "GameplayAbilities_structs.hpp"
#include "FortniteGame_classes.hpp"


namespace SDK
{

// BlueprintGeneratedClass B_Prj_Athena_SneakySnowman.B_Prj_Athena_SneakySnowman_C
// 0x00A8 (0x0840 - 0x0798)
class AB_Prj_Athena_SneakySnowman_C final : public AFortProjectileBase
{
public:
	struct FPointerToUberGraphFrame               UberGraphFrame;                                    // 0x0798(0x0008)(ZeroConstructor, Transient, DuplicateTransient)
	class USkeletalMeshComponent*                 SK_Sneaky_Snowman_Throw;                           // 0x07A0(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, IsPlainOldData, NonTransactional, NoDestructor, HasGetValueTypeHash)
	class UParticleSystemComponent*               FX_Trail;                                          // 0x07A8(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, IsPlainOldData, NonTransactional, NoDestructor, HasGetValueTypeHash)
	class UFortCollisionAudioComponent*           FortCollisionAudio;                                // 0x07B0(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, IsPlainOldData, NonTransactional, NoDestructor, HasGetValueTypeHash)
	class URotatingMovementComponent*             RotatingMovement;                                  // 0x07B8(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, IsPlainOldData, NonTransactional, NoDestructor, HasGetValueTypeHash)
	class UAudioComponent*                        Audio_InAir;                                       // 0x07C0(0x0008)(BlueprintVisible, ZeroConstructor, InstancedReference, IsPlainOldData, NonTransactional, NoDestructor, HasGetValueTypeHash)
	class USoundBase*                             Cue_HitPlayer;                                     // 0x07C8(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	class UFortWorldItemDefinition*               SnowmanItemDef;                                    // 0x07D0(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	bool                                          HitPlayer;                                         // 0x07D8(0x0001)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor)
	uint8                                         Pad_7D9[0x7];                                      // 0x07D9(0x0007)(Fixing Size After Last Property [ Dumper-7 ])
	class UClass*                                 GE_ApplyEnemySnowman;                              // 0x07E0(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	class UParticleSystem*                        SnowmanSpawnFX;                                    // 0x07E8(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	struct FScalableFloat                         ShouldSnowmanEnemies;                              // 0x07F0(0x0020)(Edit, BlueprintVisible, DisableEditOnInstance)
	class USoundBase*                             SoundOnExplo;                                      // 0x0810(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	struct FVector                                HitLocation;                                       // 0x0818(0x000C)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	uint8                                         Pad_824[0x4];                                      // 0x0824(0x0004)(Fixing Size After Last Property [ Dumper-7 ])
	class AActor*                                 HitActor;                                          // 0x0828(0x0008)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnTemplate, DisableEditOnInstance, IsPlainOldData, NoDestructor, HasGetValueTypeHash)
	TArray<class UFortItem*>                      SnowmanItemInstances;                              // 0x0830(0x0010)(Edit, BlueprintVisible, ZeroConstructor, DisableEditOnInstance)

public:
	void ExecuteUbergraph_B_Prj_Athena_SneakySnowman(int32 EntryPoint);
	void Explode();
	void OnTouched(class AActor* OtherActor, class UPrimitiveComponent* OtherComp, const struct FHitResult& HitResult, bool bIsOverlap);
	void OnExploded(const TArray<class AActor*>& HitActors, const TArray<struct FHitResult>& HitResults);
	void OnStop(const struct FHitResult& Hit);
	void ReceiveBeginPlay();
	void UserConstructionScript();
	void Should_Bounce_(const struct FVector& Hit_Normal);
	bool ShouldApplySnowman_(class UObject* PlayerPawn);
	void UpdateQuest(class AFortPlayerController* FortPC);

public:
	static class UClass* StaticClass()
	{
		return StaticBPGeneratedClassImpl<"B_Prj_Athena_SneakySnowman_C">();
	}
	static class AB_Prj_Athena_SneakySnowman_C* GetDefaultObj()
	{
		return GetDefaultObjImpl<AB_Prj_Athena_SneakySnowman_C>();
	}
};
static_assert(alignof(AB_Prj_Athena_SneakySnowman_C) == 0x000008, "Wrong alignment on AB_Prj_Athena_SneakySnowman_C");
static_assert(sizeof(AB_Prj_Athena_SneakySnowman_C) == 0x000840, "Wrong size on AB_Prj_Athena_SneakySnowman_C");
static_assert(offsetof(AB_Prj_Athena_SneakySnowman_C, UberGraphFrame) == 0x000798, "Member 'AB_Prj_Athena_SneakySnowman_C::UberGraphFrame' has a wrong offset!");
static_assert(offsetof(AB_Prj_Athena_SneakySnowman_C, SK_Sneaky_Snowman_Throw) == 0x0007A0, "Member 'AB_Prj_Athena_SneakySnowman_C::SK_Sneaky_Snowman_Throw' has a wrong offset!");
static_assert(offsetof(AB_Prj_Athena_SneakySnowman_C, FX_Trail) == 0x0007A8, "Member 'AB_Prj_Athena_SneakySnowman_C::FX_Trail' has a wrong offset!");
static_assert(offsetof(AB_Prj_Athena_SneakySnowman_C, FortCollisionAudio) == 0x0007B0, "Member 'AB_Prj_Athena_SneakySnowman_C::FortCollisionAudio' has a wrong offset!");
static_assert(offsetof(AB_Prj_Athena_SneakySnowman_C, RotatingMovement) == 0x0007B8, "Member 'AB_Prj_Athena_SneakySnowman_C::RotatingMovement' has a wrong offset!");
static_assert(offsetof(AB_Prj_Athena_SneakySnowman_C, Audio_InAir) == 0x0007C0, "Member 'AB_Prj_Athena_SneakySnowman_C::Audio_InAir' has a wrong offset!");
static_assert(offsetof(AB_Prj_Athena_SneakySnowman_C, Cue_HitPlayer) == 0x0007C8, "Member 'AB_Prj_Athena_SneakySnowman_C::Cue_HitPlayer' has a wrong offset!");
static_assert(offsetof(AB_Prj_Athena_SneakySnowman_C, SnowmanItemDef) == 0x0007D0, "Member 'AB_Prj_Athena_SneakySnowman_C::SnowmanItemDef' has a wrong offset!");
static_assert(offsetof(AB_Prj_Athena_SneakySnowman_C, HitPlayer) == 0x0007D8, "Member 'AB_Prj_Athena_SneakySnowman_C::HitPlayer' has a wrong offset!");
static_assert(offsetof(AB_Prj_Athena_SneakySnowman_C, GE_ApplyEnemySnowman) == 0x0007E0, "Member 'AB_Prj_Athena_SneakySnowman_C::GE_ApplyEnemySnowman' has a wrong offset!");
static_assert(offsetof(AB_Prj_Athena_SneakySnowman_C, SnowmanSpawnFX) == 0x0007E8, "Member 'AB_Prj_Athena_SneakySnowman_C::SnowmanSpawnFX' has a wrong offset!");
static_assert(offsetof(AB_Prj_Athena_SneakySnowman_C, ShouldSnowmanEnemies) == 0x0007F0, "Member 'AB_Prj_Athena_SneakySnowman_C::ShouldSnowmanEnemies' has a wrong offset!");
static_assert(offsetof(AB_Prj_Athena_SneakySnowman_C, SoundOnExplo) == 0x000810, "Member 'AB_Prj_Athena_SneakySnowman_C::SoundOnExplo' has a wrong offset!");
static_assert(offsetof(AB_Prj_Athena_SneakySnowman_C, HitLocation) == 0x000818, "Member 'AB_Prj_Athena_SneakySnowman_C::HitLocation' has a wrong offset!");
static_assert(offsetof(AB_Prj_Athena_SneakySnowman_C, HitActor) == 0x000828, "Member 'AB_Prj_Athena_SneakySnowman_C::HitActor' has a wrong offset!");
static_assert(offsetof(AB_Prj_Athena_SneakySnowman_C, SnowmanItemInstances) == 0x000830, "Member 'AB_Prj_Athena_SneakySnowman_C::SnowmanItemInstances' has a wrong offset!");

}

