Navigation
API > API/Plugins > API/Plugins/AvalancheModifiers > API/Plugins/AvalancheModifiers/Shared
Inheritance Hierarchy
- UObject
- UActorModifierCoreSharedObject
- UAvaVisibilityModifierShared
References
| Module | AvalancheModifiers |
| Header | /Engine/Plugins/Experimental/Avalanche/Source/AvalancheModifiers/Public/Shared/AvaVisibilityModifierShared.h |
| Include | #include "Shared/AvaVisibilityModifierShared.h" |
Syntax
UCLASS ()
class UAvaVisibilityModifierShared : public UActorModifierCoreSharedObject
Remarks
Singleton class for visibility modifiers to share data between each other Used because multiple modifier could be watching/updating an actor We want to save the state of that actor once before any modifier changes it and restore it when no other modifier is watching it
Variables
| Type | Name | Description | |
|---|---|---|---|
| TSet< FAvaVisibilitySharedActorState > | ActorStates | Actor state before any modifier applied to it |
Functions
| Type | Name | Description | |
|---|---|---|---|
| FAvaVisibilitySharedActorState * | FindActorState
(
AActor* InActor |
Gather original state before any modifier is applied if there is one | |
| bool | IsActorsStateSaved
(
UAvaBaseModifier* InModifierContext |
Returns true, if this modifier is tracking any actor | |
| bool | IsActorStateSaved
(
UAvaBaseModifier* InModifierContext, |
Returns true, if this modifier is tracking this actor | |
| void | PostLoad () |
||
| void | RestoreActorsState
(
UAvaBaseModifier* InModifierContext, |
Unwatch all actors states linked to this modifier | |
| void | RestoreActorsState
(
UAvaBaseModifier* InModifierContext, |
||
| void | RestoreActorState
(
UAvaBaseModifier* InModifierContext, |
Unwatch actor state, removes it if no other modifier track that actor state | |
| void | SaveActorState
(
UAvaBaseModifier* InModifierContext, |
Watch actor state, adds it if it is not tracked | |
| void | SetActorsVisibility
(
UAvaBaseModifier* InModifierContext, |
Set actors visibility in game or editor, tracks original state if not tracked | |
| void | SetActorVisibility
(
UAvaBaseModifier* InModifierContext, |
Set actor visibility in game or editor and recurse, tracks original state if not tracked |