# ABookMenuActor ### Properties
**Property Name****Type****Access****Description**
BookMenuDataUBookMenuDataEditAnywhereDefault Configuration Data for the Book, containing information such as the the widgets to be displayed as book pages
SkeletalMeshComponentUSkeletalMeshComponentVisibleAnywhere, BlueprintReadOnlyThe animated book mesh
StaticMeshComponentUStaticMeshComponentVisibleAnywhere, BlueprintReadOnlyA dummy static mesh component for doing traces. Needed to determine the UV coordinates based on trace hit results. The static mesh will be hidden in game. Must represent the book in a open state.
LeftPageCollisionUBoxComponentVisibleAnywhere, BlueprintReadOnlyCollision box used to determine which page of the book was traced
RightPageCollisionUBoxComponentVisibleAnywhere, BlueprintReadOnlyCollision box used to determine which page of the book was traced
InteractionActorABookMenuInteractionActorEditAnywhere, BlueprintReadOnlyReference to the actor that redirects the interaction to a widget interaction component
### Functions #### Set Book Menu Data --- Can be used to set the book menu data after begin play, during the game
**Pin****Direction****Type****Description**
In Book Menu DataInputUBookMenuDataThe new Book Menu Data. Will be cloned internally.
#### #### Get Book Menu Data --- Can be used to set the book menu data after begin play, during the game
**Pin****Direction****Type****Description**
Return ValueOutputUBookMenuDataA clone of the current Book Menu Data
#### Get Current Page Section Index --- Can be used to get the current page section index. The page section index indicates the currently shown pair of pages. (Index of the PageSection Array inside the BookMenuData)
**Pin****Direction****Type****Description**
Return ValueOutputIntegerthe current page section index; -1 in case Anim Instance is not defined
#### Get Pending Page Section Index --- Can be used to get the pending page section index. The pending page section index indicates the currently pending pair of pages while switching pages is in progress.
**Pin****Direction****Type****Description**
Return ValueOutputIntegerthe pending page section index; -1 in case Anim Instance is not defined
#### Get Current Page Index --- Can be used to get the index of the current page, where the interaction pointer points on.
**Pin****Direction****Type****Description**
Return ValueOutputIntegerthe current page index 0 = Left ; 1 = Right returns -1 in case Anim Instance is not defined
#### Get Book Is Open --- Can be used to check if the book is in an opened state
**Pin****Direction****Type****Description**
Return ValueOutputBooleantrue if the book is in open state; false if the book is in closed state
#### Get Book Should Open --- Can be used to check if the book should be in an opened state but opening is still in progress.
**Pin****Direction****Type****Description**
Return ValueOutputBooleantrue if the book should be in open state
#### Get Book Should Close --- Can be used to check of the book should be in a closed state but closing is still in progress.
**Pin****Direction****Type****Description**
Return ValueOutputBooleantrue if the book should be in closed state
#### Get Page Sections --- Can be used to get the Page Sections.
**Pin****Direction****Type****Description**
Return ValueOutputTMap<int32,FPageSectionDataStruct>an Map of the page sections of the book
#### Get Interaction Actor --- Returns the reference to the Book Menu Interaction Actor
**Pin****Direction****Type****Description**
Return ValueOutputABookMenuInteractionActorReturns the reference to the Book Menu Interaction Actor
#### Set Interaction Actor --- Registers the Book Menu Interaction Actor to be used for Interaction with the Book
**Pin****Direction****Type****Description**
In Interaction ActorInputABookMenuInteractionActorThe Book Menu Interaction Actor to be set
#### #### Register Interaction Component --- Method to register a Book Menu Interaction Component
**Pin****Direction****Type****Description**
In Interaction ComponentInputUBookMenuInteractionComponentThe Book Menu Interaction Component to be registered.
#### Register Interaction Actor --- Method to register a Book Menu Interaction Component
**Pin****Direction****Type****Description**
In Interaction ActorInputUBookMenuInteractionActorThe Book Menu Interaction Actor to be registered.
#### Jump to Page Section --- Determines if a forward or backward page turn need to be performed based on the current page section index.
**Pin****Direction****Type****Description**
Section IndexInputint32The index of the Page Section to be displayed
#### Open Book At --- If the book is closed, this triggers the open book animation and upfront sets the correct section to display.
**Pin****Direction****Type****Description**
Section IndexInputint32The Page Section Index to be displayed while opening the book
#### #### Close Book --- Triggers the Close Book animation #### Pause Book Update --- Pauses the animation update of the anim instance without closing the book first. #### Resume Book Update --- Resume the animation update of the anim instance. Will only resume if the book is already open. Closed books don't need to consume render time #### Interact --- Performs a Line Trace based on the Start and End Parameters and moves the Widget Interaction pointer of the Book Menu Interaction Actor if it is set. Also tells the Animation Blueprint which page was traced to.
**Pin****Direction****Type****Description**
StartInputFVectorStart of the Line Trace
EndInputFVectorEnd of the Line Trace
Debug TraceInputboolShows a debug trace if true.
Trace ChannelInputECollisionChannelThe Collision Channel to be used for the line trace.
SuccessOutputEXECIndicates if the Interaction was executed successfully
FailedOutputEXECIndicates if the Interaction was not executed successfully
Return ValueOutputboolreturns tru if the operation was successful. Otherwise false
#### InteractExt (Release 1.4+) --- Performs a Line Trace based on the Start and End Parameters and moves the Widget Interaction pointer of the Book Menu Interaction Actor if it is set. Also tells the Animation Blueprint which page was traced to.
**Pin****Direction****Type****Description**
StartInputFVectorStart of the Line Trace
EndInputFVectorEnd of the Line Trace
OutUVCoordinatesOutputFVectro2dThe UV coordinates of the traced page
Debug TraceInputboolShows a debug trace if true.
Trace ChannelInputECollisionChannelThe Collision Channel to be used for the line trace.
SuccessOutputEXECIndicates if the Interaction was executed successfully
FailedOutputEXECIndicates if the Interaction was not executed successfully
Return ValueOutputboolreturns tru if the operation was successful. Otherwise false
#### Set Keyboard Focus ---
**Pin****Direction****Type****Description**
In Page IndexInputIntegerThe page index to set the focus to
Debug TraceInputboolShows a debug trace if true.
SuccessOutputEXECIndicates if the Interaction was executed successfully
FailedOutputEXECIndicates if the Interaction was not executed successfully
Return ValueOutputboolreturns tru if the operation was successful. Otherwise false
#### Get Anim Instance --- Returns the Animation Instance of the Animation Blueprint
**Pin****Direction****Type****Description**
Return ValueOutputUBookMenuAnimInstance
#### #### Get Left Page Collision Box --- Returns the Collision Box of the left page
**Pin****Direction****Type****Description**
Return ValueOutputUBoxComponent
#### #### Get Right Page Collision Box --- Returns the Collision Box of the right page
**Pin****Direction****Type****Description**
Return ValueOutputUBoxComponent
#### #### Get Static Mesh Component --- Returns the Static Mesh Component
**Pin****Direction****Type****Description**
Return ValueOutputUStaticMeshComponent