---
title: TabletopAction
framework: tabletopkit
role: symbol
role_heading: Protocol
path: tabletopkit/tabletopaction
---

# TabletopAction

A protocol for objects that describe an action in a tabletop game.

## Declaration

```swift
protocol TabletopAction
```

## Topics

### Getting the player

- [playerID](tabletopkit/tabletopaction/playerid.md)

### Getting game-specific information

- [context](tabletopkit/tabletopaction/context.md)

### Moving equipment

- [moveEquipment(_:childOf:order:pose:context:)](tabletopkit/tabletopaction/moveequipment(_:childof:order:pose:context:).md)
- [moveEquipment(matching:childOf:order:pose:context:)](tabletopkit/tabletopaction/moveequipment(matching:childof:order:pose:context:).md)

### Changing equipment state properties

- [updateEquipment(_:faceUp:seatControl:pose:boundingBox:context:)](tabletopkit/tabletopaction/updateequipment(_:faceup:seatcontrol:pose:boundingbox:context:).md)
- [updateEquipment(_:rawValue:seatControl:pose:boundingBox:context:)](tabletopkit/tabletopaction/updateequipment(_:rawvalue:seatcontrol:pose:boundingbox:context:).md)
- [updateEquipment(_:seatControl:pose:boundingBox:context:)](tabletopkit/tabletopaction/updateequipment(_:seatcontrol:pose:boundingbox:context:).md)
- [updateEquipment(_:state:context:)](tabletopkit/tabletopaction/updateequipment(_:state:context:)-6kawf.md)
- [updateEquipment(_:state:context:)](tabletopkit/tabletopaction/updateequipment(_:state:context:)-88v3m.md)
- [updateEquipment(_:state:context:)](tabletopkit/tabletopaction/updateequipment(_:state:context:)-8tmnn.md)
- [updateEquipment(_:state:context:)](tabletopkit/tabletopaction/updateequipment(_:state:context:)-j62v.md)
- [updateEquipment(_:value:seatControl:pose:boundingBox:context:)](tabletopkit/tabletopaction/updateequipment(_:value:seatcontrol:pose:boundingbox:context:).md)

### Taking turns

- [setTurn(forSeat:context:)](tabletopkit/tabletopaction/setturn(forseat:context:).md)
- [setTurn(forSeats:context:)](tabletopkit/tabletopaction/setturn(forseats:context:)-3msxi.md)
- [setTurn(forSeats:context:)](tabletopkit/tabletopaction/setturn(forseats:context:)-4sgng.md)
- [setTurn(matching:context:)](tabletopkit/tabletopaction/setturn(matching:context:)-6mq07.md)
- [setTurn(matching:context:)](tabletopkit/tabletopaction/setturn(matching:context:)-88ymv.md)

### Keeping score

- [updateCounter(_:context:)](tabletopkit/tabletopaction/updatecounter(_:context:).md)
- [updateCounter(matching:value:context:)](tabletopkit/tabletopaction/updatecounter(matching:value:context:).md)

### Creating bookmarks

- [createBookmark(_:context:)](tabletopkit/tabletopaction/createbookmark(_:context:).md)
- [createBookmark(id:context:)](tabletopkit/tabletopaction/createbookmark(id:context:).md)

### Adding actions

- [customAction(_:context:)](tabletopkit/tabletopaction/customaction(_:context:).md)

## Relationships

### Conforming Types

- [CreateBookmarkAction](tabletopkit/createbookmarkaction.md)
- [MoveEquipmentAction](tabletopkit/moveequipmentaction.md)
- [SetTurnAction](tabletopkit/setturnaction.md)
- [UpdateCounterAction](tabletopkit/updatecounteraction.md)
- [UpdateEquipmentAction](tabletopkit/updateequipmentaction.md)

## See Also

### Actions

- [MoveEquipmentAction](tabletopkit/moveequipmentaction.md)
- [UpdateEquipmentAction](tabletopkit/updateequipmentaction.md)
- [SetTurnAction](tabletopkit/setturnaction.md)
- [UpdateCounterAction](tabletopkit/updatecounteraction.md)
- [CreateBookmarkAction](tabletopkit/createbookmarkaction.md)
- [CustomAction](tabletopkit/customaction.md)
