Gametime api
Overview
Properties
Init
TileSize
The most important property!
Preview
Controlling the preview appearance
bUsePreviewMaterial_CanBuildHere
When false, the original material for preview item will showup when you CAN build here.
PreviewMaterial_CanBuildHere
Will use the default material this plugin provides if not set.
bUsePreviewMaterial_CanNotBuildHere
When false, nothing will showup when you CAN NOT build here
PreviewMaterial_CanNotBuildHere
Will use the default material this plugin provides if not set.
bShowAutoPaintBrush
Should show the auto paint hint (a translucent grid) If-New set false, you can still bind events such as OnItemBuilt or OnItemFailToBuild to notify your player
AutoPaintHintOpacity
Opcacity for auto paint hint
Data
GametimeData
Where the data stored. You can pass it to save game object when you need the save/load funtionality.
Restriction
bLockBuild
Should block building new placements?
bLockRemove
Should block removal of existing placements?
Auto
bUseRandomSeed
Use fixed random seed for auto paint instance?
Seed
The random seed value.
Override Function
OnBeginSystem
Will triggered after init system.
Previously, this event was triggered when the Game Instance subsystem was initialized automatically. However, we found that this didn’t match the typical use case for many developers. So, as of V4.0.2, we’ve changed it to trigger after you manually initialize the system.
OnLeaveSystemBoundary
Will triggered after leaving the boudary assuming you init system with boundary.
CanBuildItem
Override for whether you can build placement from this item.
In/Out | Name | Type | Description |
---|---|---|---|
In | Item to Build | Tiled Level Item Object Reference | The item you are trying to build |
Out | Return Value | Bool | Can build result |
CanRemoveItem
Override for whether you can remove placement from this item.
In/Out | Name | Type | Description |
---|---|---|---|
In | Item to Build | Tiled Level Item Object Reference | The item you are trying to build |
Out | Return Value | Bool | Can remove result |
CanBuildAutoItem
Override for whether you can build this auto item.
In/Out | Name | Type | Description |
---|---|---|---|
In | Auto Item to Build | Name | The item you are trying to build |
Out | Return Value | Bool | Can build result |
CanRemoveAutoItem
Override for whether you can remove this auto item.
In/Out | Name | Type | Description |
---|---|---|---|
In | Auto Item to Build | Name | The item you are trying to build |
Out | Return Value | Bool | Can remove result |
Nodes
Init
InitializeGametimeSystem
In/Out | Name | Type | Description |
---|---|---|---|
In | Startup Item Set | Tiled Item Set Object Reference | |
In | Existing Tiled Levels | Array of Tiled Level Actor Object References | Existing levels controlled by this system |
In | Unbound | Bool | Unbounded (true) or bounded (false) |
When Unbound
is false
, the boundary of the gametime system is determined by the bounds of Existing Tiled Levels
.
InitializeGametimeSystemFromData
In/Out | Name | Type | Description |
---|---|---|---|
In | Startup Item Set | Tiled Item Set Object Reference | |
In | In Data | Tiled Level Game Data Structure | The item you are trying to build |
In | Existing Tiled Levels | Array of Tiled Level Actor Object References | Existing levels controlled by this system |
In | Unbound | Bool | Unbounded (true) or bounded (false) |
When Unbound
is false
, the boundary of the gametime system is determined by the bounds of Existing Tiled Levels
.
ChangeItemSet
In/Out | Name | Type | Description |
---|---|---|---|
In | New Item Set | Tiled Item Set Object Reference | |
Out | Return Value | Bool | Change set result |
Normal
Activate preview->Move preview->Build
Preview
- ActivatePreviewItem
In/Out Name Type Description In Preview Item Tiled Item Object Reference Out Return Value Bool Activation result
- IsPreviewItemActivated
In/Out Name Type Description Out Return Value Bool
- DeactivatePreviewItem
- MovePreviewItemToWorldPosition
In/Out Name Type Description In Target Location Vector In world space Out Return Value Bool Move result
- MovePreviewItemToScreenPosition
In/Out Name Type Description In Screen Position Vector 2D Structure In Floor Position Interger In Player Index Interger Out Return Value Bool Move result
- MorePreviewItemToCursor
In/Out Name Type Description In Floor Position Interger In Player Index Interger Out Return Value Bool Move result
- RotatePreviewItem
In/Out Name Type Description In Is Clockwise Bool
Remove
- RemoveItem_LineTraceSingle
In/Out Name Type Description In Trace Start Vector In world space In Trace End Vector In world space In Show Debug Bool Out Return Value Bool Remove result
- RemoveItem_FromHit
In/Out Name Type Description In Hit Result Hit Result Structure Out Return Value Bool Remove result
- RemoveItem_UnderCursor
In/Out Name Type Description In Player Index Integer Out Return Value Bool Remove result
Build
- BuildItem
Replace
- ReplaceItemFromHit
In/Out Name Type Description In Hit Result Hit Result Structure In To Replace Tiled Level Item Object Reference Out Return Value Bool Replace result
Auto
Activate preview->Move preview->Build
Preview
- ActivateAutoRule
In/Out Name Type Description In New Rule Auto Paint Rule Object Reference In Default Active Item Name Out Return Value Bool Activation result
- ChangeActiveAutoItem
In/Out Name Type Description In Item Name Name Out Return Value Bool Change result
- IsAutoPaintActivated
In/Out Name Type Description Out Return Value Bool
- DeactivateAutoItem
- MoveAutoItemToWorldPosition
In/Out Name Type Description In Target Location Vector In world space Out Return Value Bool Move result
- MoveAutoItemToScreenPosition
In/Out Name Type Description In Screen Position Vector 2D Structure In Floor Position Interger In Player Index Interger Out Return Value Bool Move result
-
MoveAutoItemToCursor
In/Out Name Type Description In Floor Position Interger In Player Index Interger Out Return Value Bool Move result :CUSTOM_ID: auto-preview
Build
- BuildAutoItem
-
ChangeAutoItemAtLocation
In/Out Name Type Description In Tile Position Int Vector Structure In Auto Item Name Name :CUSTOM_ID: auto-build
Debug
- ToggleAutoItemHintVisibility
Query
QueryItemFromHit
In/Out | Name | Type | Description |
---|---|---|---|
In | Hit Result | Hit Result Structure | |
Out | Success | Bool | |
Out | Return Value | Tiled Level Item Object Reference |
QueryItemPlacementFromHit
In/Out | Name | Type | Description |
---|---|---|---|
In | Hit Result | Hit Result Structure | |
Out | Success | Bool | |
Out | Return Value | Item Placement Structure |
QueryItemByUID
In/Out | Name | Type | Description |
---|---|---|---|
In | Item ID | Guid Structure | |
Out | Success | Bool | |
Out | Return Value | Tiled Level Item Object Reference |
Eraser
ActivateEraserMode
In/Out | Name | Type | Description |
---|---|---|---|
In | Any | Bool | Any placed type? |
In | Target Type | EPlacedType Enum | |
In | Eraser Size | Int Vector Structure |
DeactivateEraserMode
MoveEraserToWorldPosition
In/Out | Name | Type | Description |
---|---|---|---|
In | Target Location | Vector | In world space |
Out | Return Value | Bool | Move result |
MoveEraserToScreenPosition
In/Out | Name | Type | Description |
---|---|---|---|
In | Screen Position | Vector 2D Structure | |
In | Floor Position | Interger | |
In | Player Index | Interger | |
Out | Return Value | Bool | Move result |
MoveEraserToCursor
In/Out | Name | Type | Description |
---|---|---|---|
In | Floor Position | Interger | |
In | Player Index | Interger | |
Out | Return Value | Bool | Move result |
RotateEraser
In/Out | Name | Type | Description |
---|---|---|---|
In | Is Clockwise | Bool |
EraserItem
Utility
GetActivePreviewItem
In/Out | Name | Type | Description |
---|---|---|---|
Out | Return Value | Bool |
FocusFloor
In/Out | Name | Type | Description |
---|---|---|---|
In | Floor Position | Integer |
HasAnyFocusedFloor
In/Out | Name | Type | Description |
---|---|---|---|
Out | Return Value | Bool |
Position
GetTilePosition
In/Out | Name | Type | Description |
---|---|---|---|
In | World Location | Vector | |
Out | Found | Bool | |
Out | Return Value | Int Vector Structure |
GetTilePositionOnScreen
In/Out | Name | Type | Description |
---|---|---|---|
In | Floor Position | Integer | |
In | Screen Position | Vector 2D Structure | |
In | Player Index | Integer | |
Out | Found | Bool | |
Out | Return Value | Int Vector Structure |
GetTilePositionUnderCursor
In/Out | Name | Type | Description |
---|---|---|---|
In | Floor Position | Integer | |
In | Player Index | Integer | |
Out | Found | Bool | |
Out | Return Value | Int Vector Structure |
GeEdge
In/Out | Name | Type | Description |
---|---|---|---|
In | World Location | Vector | |
In | Edge Type | EEdgeType Enum | |
Out | Found | Bool | |
Out | Return Value | Tiled Level Edge Structure |
GetEdgeOnScreen
In/Out | Name | Type | Description |
---|---|---|---|
In | Floor Position | Integer | |
In | Edge Type | EEdgeType Enum | |
In | Screen Position | Vector 2D Structure | |
In | Player Index | Integer | |
Out | Found | Bool | |
Out | Return Value | Tiled Level Edge Structure |
GetEdgeUnderCursor
In/Out | Name | Type | Description |
---|---|---|---|
In | Floor Position | Integer | |
In | Edge Type | EEdgeType Enum | |
In | Player Index | Integer | |
Out | Found | Bool | |
Out | Return Value | Tiled Level Edge Structure |
GetPoint
In/Out | Name | Type | Description |
---|---|---|---|
In | WorldLocation | Vector | |
Out | Found | Bool | |
Out | Return Value | Int Vector Structure |
GetPointOnScreen
In/Out | Name | Type | Description |
---|---|---|---|
In | Floor Position | Integer | |
In | Screen Position | Vector 2D Structure | |
In | Player Index | Integer | |
Out | Found | Bool | |
Out | Return Value | Int Vector Structure |
GetPointUnderCursor
In/Out | Name | Type | Description |
---|---|---|---|
In | Floor Position | Integer | |
In | Player Index | Integer | |
Out | Found | Bool | |
Out | Return Value | Int Vector Structure |