G1R AngelScript
Scripting reference for the Gothic 1 Remake
Loading...
Searching...
No Matches
USmartObjectDefinition Class Reference

SmartObject definition asset. Contains sharable information that can be used by multiple SmartObject instances at runtime. More...

Public Member Functions

Functions
void SetActivityTags (FGameplayTagContainer Value)
 Tags identifying this Smart Object's use case. Can be used while looking for objects supporting given activity.
void SetUserTagsFilteringPolicy (const ESmartObjectTagFilteringPolicy &Value)
 Indicates how TagQueries from slots and parent object will be processed against User Tags from a find request.
void SetSlots (TArray< FSmartObjectSlotDefinition > Value)
 Where SmartObject's user needs to stay to be able to activate it. These will be used by AI to approach the object. Locations are relative to object's location.
Public Member Functions inherited from UObject
bool MarkPackageDirty () const
void RemoveFromRoot ()
bool GetIsRooted () const
bool IsTransient () const
bool Modify (bool bAlwaysMarkDirty=true)
void SetTransactional (bool bTransactional)
bool IsSupportedForNetworking () const
UClass GetClass () const
UObject GetOuter () const
UObject GetTypedOuter (TSubclassOf< UObject > Target) const
 Traverses the outer chain searching for the next object of a certain type.
UPackage GetOutermost () const
UPackage GetPackage () const
void AddToRoot ()
UWorld GetWorld () const
FName GetName () const
FString GetFullName (const UObject StopOuter=nullptr) const
FString GetPathName (const UObject StopOuter=nullptr) const
bool IsA (const UClass Class) const
 Returns true if this object is of the specified type, or a child of that type.
void SaveConfig ()
void LoadConfig ()
void ReloadConfig ()
void CopyScriptPropertiesFrom (const UObject OtherObject)
void opCast (?&Address) const
FString ToString () const

Static Public Member Functions

Static Functions
static UClass StaticClass ()
Static Public Member Functions inherited from UDataAsset
static UClass StaticClass ()
Static Public Member Functions inherited from UObject
static UClass StaticClass ()

SmartObject

ESmartObjectTagMergingPolicy ActivityTagsMergingPolicy
 Indicates how Tags from slots and parent object are combined to be evaluated by a TagQuery from a find request.
TArray< TObjectPtr< USmartObjectBehaviorDefinition > > DefaultBehaviorDefinitions
 List of behavior definitions of different types provided to SO's user if the slot does not provide one.
FWorldConditionQueryDefinition Preconditions
 Preconditions that must pass for the object to be found/used.
TArray< FSmartObjectDefinitionDataProxy > DefinitionData
 Custom definition data items (struct inheriting from SmartObjectDefinitionData) for the whole Smart Object.
TSubclassOf< USmartObjectWorldConditionSchema > WorldConditionSchemaClass
FInstancedPropertyBag Parameters
 Parameters for the SmartObject definition.
FGameplayTagContainer ActivityTags
 Tags identifying this Smart Object's use case. Can be used while looking for objects supporting given activity.
const FBox Bounds
 Return bounds encapsulating all slots.
FGameplayTagQuery UserTagFilter
 This object is available if user tags match this query; always available if query is empty.
ESmartObjectTagFilteringPolicy UserTagsFilteringPolicy
 Indicates how TagQueries from slots and parent object will be processed against User Tags from a find request.
TArray< FSmartObjectSlotDefinition > Slots
 Where SmartObject's user needs to stay to be able to activate it. These will be used by AI to approach the object. Locations are relative to object's location.
bool IsValidSlotIndex (int SlotIndex) const
FBox GetBounds () const
 Return bounds encapsulating all slots.
FSmartObjectSlotDefinition & GetMutableSlot (int Index)
void GetSlotActivityTagsByIndex (int SlotIndex, FGameplayTagContainer &OutActivityTags) const
 Fills the provided GameplayTagContainer with the activity tags associated to the slot according to the tag merging policy.
FTransform GetSlotWorldTransform (int SlotIndex, FTransform OwnerTransform) const
 Returns the transform (in world space) of the given slot index.
const FGameplayTagQuery & GetUserTagFilter () const
 Returns the tag query to run on the user tags provided by a request to accept this definition.
ESmartObjectTagFilteringPolicy GetUserTagsFilteringPolicy () const
 Returns the tag filtering policy that should be applied on User tags by this definition.
const FGameplayTagContainer & GetActivityTags () const
 Returns the list of tags describing the activity associated to this definition.
const TArray< FSmartObjectSlotDefinition > & GetSlots () const
void SetUserTagFilter (FGameplayTagQuery InUserTagFilter)
 Sets the tag query to run on the user tags provided by a request to accept this definition.

Additional Inherited Members

Public Attributes inherited from UObject
const UClass Class
const UObject Outer
const UPackage Outermost
const UPackage Package
const UWorld World
const FName Name
const bool IsRooted

Detailed Description

SmartObject definition asset. Contains sharable information that can be used by multiple SmartObject instances at runtime.

Member Function Documentation

◆ GetActivityTags()

const FGameplayTagContainer & GetActivityTags ( ) const

Returns the list of tags describing the activity associated to this definition.

◆ GetBounds()

FBox GetBounds ( ) const

Return bounds encapsulating all slots.

◆ GetMutableSlot()

FSmartObjectSlotDefinition & GetMutableSlot ( int Index)
Returns
mutable slot definition stored at a given index

◆ GetSlotActivityTagsByIndex()

void GetSlotActivityTagsByIndex ( int SlotIndex,
FGameplayTagContainer & OutActivityTags ) const

Fills the provided GameplayTagContainer with the activity tags associated to the slot according to the tag merging policy.

Parameters
SlotIndexIndex of the slot for which the tags are requested
OutActivityTagsTag container to fill with the activity tags associated to the slot

◆ GetSlots()

const TArray< FSmartObjectSlotDefinition > & GetSlots ( ) const

◆ GetSlotWorldTransform()

FTransform GetSlotWorldTransform ( int SlotIndex,
FTransform OwnerTransform ) const

Returns the transform (in world space) of the given slot index.

Parameters
SlotIndexIndex within the list of slots.
OwnerTransformTransform (in world space) of the slot owner.
Returns
Transform (in world space) of the slot associated to SlotIndex, or OwnerTransform if index is invalid.

◆ GetUserTagFilter()

const FGameplayTagQuery & GetUserTagFilter ( ) const

Returns the tag query to run on the user tags provided by a request to accept this definition.

◆ GetUserTagsFilteringPolicy()

ESmartObjectTagFilteringPolicy GetUserTagsFilteringPolicy ( ) const

Returns the tag filtering policy that should be applied on User tags by this definition.

◆ IsValidSlotIndex()

bool IsValidSlotIndex ( int SlotIndex) const
Returns
True if specified slot index is valid.

◆ SetActivityTags()

void SetActivityTags ( FGameplayTagContainer Value)

Tags identifying this Smart Object's use case. Can be used while looking for objects supporting given activity.

◆ SetSlots()

void SetSlots ( TArray< FSmartObjectSlotDefinition > Value)

Where SmartObject's user needs to stay to be able to activate it. These will be used by AI to approach the object. Locations are relative to object's location.

◆ SetUserTagFilter()

void SetUserTagFilter ( FGameplayTagQuery InUserTagFilter)

Sets the tag query to run on the user tags provided by a request to accept this definition.

◆ SetUserTagsFilteringPolicy()

void SetUserTagsFilteringPolicy ( const ESmartObjectTagFilteringPolicy & Value)

Indicates how TagQueries from slots and parent object will be processed against User Tags from a find request.

◆ StaticClass()

UClass StaticClass ( )
static

Member Data Documentation

◆ ActivityTags

FGameplayTagContainer ActivityTags

Tags identifying this Smart Object's use case. Can be used while looking for objects supporting given activity.

◆ ActivityTagsMergingPolicy

ESmartObjectTagMergingPolicy ActivityTagsMergingPolicy

Indicates how Tags from slots and parent object are combined to be evaluated by a TagQuery from a find request.

◆ Bounds

const FBox Bounds

Return bounds encapsulating all slots.

◆ DefaultBehaviorDefinitions

TArray<TObjectPtr<USmartObjectBehaviorDefinition> > DefaultBehaviorDefinitions

List of behavior definitions of different types provided to SO's user if the slot does not provide one.

◆ DefinitionData

Custom definition data items (struct inheriting from SmartObjectDefinitionData) for the whole Smart Object.

◆ Parameters

FInstancedPropertyBag Parameters

Parameters for the SmartObject definition.

◆ Preconditions

FWorldConditionQueryDefinition Preconditions

Preconditions that must pass for the object to be found/used.

◆ Slots

Where SmartObject's user needs to stay to be able to activate it. These will be used by AI to approach the object. Locations are relative to object's location.

◆ UserTagFilter

FGameplayTagQuery UserTagFilter

This object is available if user tags match this query; always available if query is empty.

◆ UserTagsFilteringPolicy

ESmartObjectTagFilteringPolicy UserTagsFilteringPolicy

Indicates how TagQueries from slots and parent object will be processed against User Tags from a find request.

◆ WorldConditionSchemaClass

TSubclassOf<USmartObjectWorldConditionSchema> WorldConditionSchemaClass