/*===========================================================================
	  C++ class	definitions	exported from UnrealScript.
	  This is automatically	generated by the tools.
	  DO NOT modify	this manually! Edit	the	corresponding .uc files	instead!
===========================================================================*/
#if SUPPORTS_PRAGMA_PACK
#pragma pack (push,4)
#endif

#ifndef IGEFFECTSSYSTEM_API
#define IGEFFECTSSYSTEM_API DLL_IMPORT
#endif

#ifndef NAMES_ONLY
#define AUTOGENERATE_NAME(name) extern IGEFFECTSSYSTEM_API	FName IGEFFECTSSYSTEM_##name;
#define AUTOGENERATE_FUNCTION(cls,idx,name)
#endif

AUTOGENERATE_NAME(FlushQueuedEvents)
AUTOGENERATE_NAME(GetSpecification)
AUTOGENERATE_NAME(OnEffectSpawned)
AUTOGENERATE_NAME(PlayEffectSpecification)
AUTOGENERATE_NAME(StopEffectSpecification)

#ifndef NAMES_ONLY


// "event"	function whose parameters correspond to	"struct AEffectsSubsystem_eventOnEffectSpawned_Parms"	is declared	in "..\IGEffectsSystem\Classes\EffectsSubsystem.uc"
struct AEffectsSubsystem_eventOnEffectSpawned_Parms
{
	  class AActor* SpawnedEffect;
};
// "event"	function whose parameters correspond to	"struct AEffectsSubsystem_eventStopEffectSpecification_Parms"	is declared	in "..\IGEffectsSystem\Classes\EffectsSubsystem.uc"
struct AEffectsSubsystem_eventStopEffectSpecification_Parms
{
	  class UEffectSpecification* EffectSpec;
	  class AActor* Source;
};
// "event"	function whose parameters correspond to	"struct AEffectsSubsystem_eventPlayEffectSpecification_Parms"	is declared	in "..\IGEffectsSystem\Classes\EffectsSubsystem.uc"
struct AEffectsSubsystem_eventPlayEffectSpecification_Parms
{
	  class UEffectSpecification* EffectSpec;
	  class AActor* Source;
	  class AActor* Target;
	  class UMaterial* TargetMaterial;
	  FVector overrideWorldLocation;
	  FRotator overrideWorldRotation;
	  class IIEffectObserver* Observer;
	  class AActor* ReturnValue;
};
// Enum EPassAsTag is declared in "..\IGEffectsSystem\Classes\AnimNotify_EffectEvent.uc"
enum EPassAsTag
{
	 PassAsTag_Tag           =0,
	 PassAsTag_StaticMesh    =1,
	 PassAsTag_Mesh          =2,
	 PassAsTag_MAX           =3,
};


// Struct FSpecificationStruct	is declared	in "..\IGEffectsSystem\Classes\EventResponse.uc"
struct IGEFFECTSSYSTEM_API FSpecificationStruct
{
    FName SpecificationType;
    class UClass* SpecificationClass;
};


// "event"	function whose parameters correspond to	"struct UEventResponse_eventGetSpecification_Parms"	is declared	in "..\IGEffectsSystem\Classes\EventResponse.uc"
struct UEventResponse_eventGetSpecification_Parms
{
	  class UEffectSpecification* ReturnValue;
};

// "event"	function whose parameters correspond to	"struct UEffectsSystem_eventFlushQueuedEvents_Parms"	is declared	in "..\IGEffectsSystem\Classes\EffectsSystem.uc"
struct UEffectsSystem_eventFlushQueuedEvents_Parms
{
};
// Class	AEffectsSubsystem is declared in "..\IGEffectsSystem\Classes\EffectsSubsystem.uc"
class IGEFFECTSSYSTEM_API	AEffectsSubsystem	: public AActor
{
public:
    class UEffectsSystem* EffectsSystem;
    TArrayNoInit<FName> EventResponse;
    class UClass* EffectSpecificationSubClass;
    BITFIELD debugSlow:1;
	   DECLARE_FUNCTION(execEffectEventTriggered);
	   DECLARE_FUNCTION(execAddEffectSpecification);
	   DECLARE_FUNCTION(execFindEffectSpecification);
	   DECLARE_FUNCTION(execAddEventResponse);
	  void	eventOnEffectSpawned(class AActor* SpawnedEffect)
	  {
        AEffectsSubsystem_eventOnEffectSpawned_Parms Parms;
		   Parms.SpawnedEffect=SpawnedEffect;
        ProcessEvent(FindFunctionChecked(IGEFFECTSSYSTEM_OnEffectSpawned),&Parms);
	  }
	  void	eventStopEffectSpecification(class UEffectSpecification* EffectSpec, class AActor* Source)
	  {
        AEffectsSubsystem_eventStopEffectSpecification_Parms Parms;
		   Parms.EffectSpec=EffectSpec;
		   Parms.Source=Source;
        ProcessEvent(FindFunctionChecked(IGEFFECTSSYSTEM_StopEffectSpecification),&Parms);
	  }
	  class AActor*	eventPlayEffectSpecification(class UEffectSpecification* EffectSpec, class AActor* Source, class AActor* Target, class UMaterial* TargetMaterial, FVector overrideWorldLocation, FRotator overrideWorldRotation, class IIEffectObserver* Observer)
	  {
        AEffectsSubsystem_eventPlayEffectSpecification_Parms Parms;
		   Parms.ReturnValue=0;
		   Parms.EffectSpec=EffectSpec;
		   Parms.Source=Source;
		   Parms.Target=Target;
		   Parms.TargetMaterial=TargetMaterial;
		   Parms.overrideWorldLocation=overrideWorldLocation;
		   Parms.overrideWorldRotation=overrideWorldRotation;
		   Parms.Observer=Observer;
        ProcessEvent(FindFunctionChecked(IGEFFECTSSYSTEM_PlayEffectSpecification),&Parms);
		   return Parms.ReturnValue;
	  }
	   DECLARE_CLASS(AEffectsSubsystem,AActor,0|CLASS_Config,IGEffectsSystem)
	   NO_DEFAULT_CONSTRUCTOR(AEffectsSubsystem)
};

// Class	UAnimNotify_EffectEvent is declared in "..\IGEffectsSystem\Classes\AnimNotify_EffectEvent.uc"
class IGEFFECTSSYSTEM_API	UAnimNotify_EffectEvent	: public UAnimNotify_Scripted
{
public:
    FName EffectEvent;
    FName Bone;
    BITFIELD UnTrigger:1;
    BITFIELD PlayerOnly:1;
    BITFIELD bTraceOnlyStaticGeometry:1;
    FLOAT MaxDistance;
    BYTE PassAsTag;
	   DECLARE_FUNCTION(execNotify);
	   DECLARE_CLASS(UAnimNotify_EffectEvent,UAnimNotify_Scripted,0,IGEffectsSystem)
	   NO_DEFAULT_CONSTRUCTOR(UAnimNotify_EffectEvent)
};

// Class	UEffectSpecification is declared in "..\IGEffectsSystem\Classes\EffectSpecification.uc"
class IGEFFECTSSYSTEM_API	UEffectSpecification	: public UObject
{
public:
    BITFIELD AttachToSource:1;
    FName AttachmentBone;
    FVector LocationOffset;
    FRotator RotationOffset;
	   DECLARE_CLASS(UEffectSpecification,UObject,0|CLASS_Config,IGEffectsSystem)
	   NO_DEFAULT_CONSTRUCTOR(UEffectSpecification)
};

// Class	UEventResponse is declared in "..\IGEffectsSystem\Classes\EventResponse.uc"
class IGEFFECTSSYSTEM_API	UEventResponse	: public UObject
{
public:
    FName Event;
    FName SourceClassName;
    class UClass* SourceClass;
    FName TargetClassName;
    FName StaticMesh;
    FName Tag;
    TArrayNoInit<INT> Chance;
    TArrayNoInit<FSpecificationStruct> Specification;
    TArrayNoInit<class UEffectSpecification*> SpecificationReference;
    TArrayNoInit<FName> Context;
    BITFIELD initDone:1;
    INT sum;
	  class UEffectSpecification*	eventGetSpecification()
	  {
        UEventResponse_eventGetSpecification_Parms Parms;
		   Parms.ReturnValue=0;
        ProcessEvent(FindFunctionChecked(IGEFFECTSSYSTEM_GetSpecification),&Parms);
		   return Parms.ReturnValue;
	  }
	   DECLARE_CLASS(UEventResponse,UObject,0|CLASS_Config,IGEffectsSystem)
	   NO_DEFAULT_CONSTRUCTOR(UEventResponse)
};

// Class	UEffectsSystem is declared in "..\IGEffectsSystem\Classes\EffectsSystem.uc"
class IGEFFECTSSYSTEM_API	UEffectsSystem	: public UIGEffectsSystemBase
{
public:
    TArrayNoInit<class UClass*> EffectsSubsystem;
    TArrayNoInit<class AEffectsSubsystem*> AllEffectsSubsystems;
    TArrayNoInit<FString> PreloadActorClass;
    BITFIELD LogEffectEvents:1;
    TArrayNoInit<FName> TemporaryContexts;
    TArrayNoInit<FName> PersistentContexts;
    BITFIELD QueueingEvents:1;
    TArrayNoInit<class AActor*> QueuedSource;
    TArrayNoInit<FName> QueuedEffectEvent;
    TArrayNoInit<class AActor*> QueuedTarget;
    TArrayNoInit<class UMaterial*> QueuedTargetMaterial;
    TArrayNoInit<FVector> QueuedOverrideWorldLocation;
    TArrayNoInit<FRotator> QueuedOverrideWorldRotation;
    TArrayNoInit<BYTE> QueuedUnTriggered;
    TArrayNoInit<FName> DebugEffectEvent;
	   DECLARE_FUNCTION(execInit);
	  void	eventFlushQueuedEvents()
	  {
		   ProcessEvent(FindFunctionChecked(IGEFFECTSSYSTEM_FlushQueuedEvents),NULL);
	  }
	   DECLARE_CLASS(UEffectsSystem,UIGEffectsSystemBase,0|CLASS_Transient|CLASS_Config,IGEffectsSystem)
	   NO_DEFAULT_CONSTRUCTOR(UEffectsSystem)
};

#endif

AUTOGENERATE_FUNCTION(UAnimNotify_EffectEvent,-1,execNotify);
AUTOGENERATE_FUNCTION(AEffectsSubsystem,-1,execEffectEventTriggered);
AUTOGENERATE_FUNCTION(AEffectsSubsystem,-1,execAddEffectSpecification);
AUTOGENERATE_FUNCTION(AEffectsSubsystem,-1,execFindEffectSpecification);
AUTOGENERATE_FUNCTION(AEffectsSubsystem,-1,execAddEventResponse);
AUTOGENERATE_FUNCTION(UEffectsSystem,-1,execInit);

#ifndef NAMES_ONLY
#undef AUTOGENERATE_NAME
#undef AUTOGENERATE_FUNCTION
#endif

#if SUPPORTS_PRAGMA_PACK
#pragma pack	(pop)
#endif

#ifdef VERIFY_CLASS_SIZES
VERIFY_CLASS_SIZE_NODIE(UAnimNotify_EffectEvent)
VERIFY_CLASS_SIZE_NODIE(UEffectSpecification)
VERIFY_CLASS_SIZE_NODIE(AEffectsSubsystem)
VERIFY_CLASS_SIZE_NODIE(UEffectsSystem)
VERIFY_CLASS_SIZE_NODIE(UEventResponse)
#endif // VERIFY_CLASS_SIZES
