# Motion

## Speed&#x20;

### Set Speed To&#x20;

![](/files/-MABbNLCkmkb75wJfF9j)

Set the X or Y value for the sprite's speed to a particular value.

### Change Speed By&#x20;

![](/files/-MABbXV-bi1DnseowqsB)

Change the X or Y value for the sprite's speed by a specific amount.

### Get Speed&#x20;

![](/files/-MABbq1Qpo_GF5F3fKmN)

Get the X or Y value for the sprite's speed.

###

### Set Velocity

![](/files/-MABbyixfWcsHBbElDyb)

Set or change the sprite's velocity, by a given amount, in the pointing or moving direction.

## Position&#x20;

### Move Sprite To

![](/files/-MABcGToVFK75i9R1eIg)

Move the sprite to the x and y location specified in the block

### Set Sprite Position

![](/files/-MABca40VDesXSA7iY6w)

Set the sprite's X, Y, Z or Angle value to a specific position.

Change the sprites X, Y, Z or Angle value by a given amount.

**Note**: Sprite angle is measured in degrees, so should be a value between 0 and 360.&#x20;

### Get Sprite Position

![](/files/-MABcwfhgI4Yd5DZ_wIm)

Get the sprite's current X, Y, Z or Angle value.

**Note**: Sprite angle is measured in degrees, so should be a value between 0 and 360

## Pointer

### Get Pointer Value

![](/files/-MABi6aWncOqQ0eZB0Iz)

![](/files/-MABi8fUe-U2IZOR3Myq)

Get the X, Y, or Angle of the where the user tapped on the canvas

## Behavior

On the canvas, it's possible to make a sprite either draggable or to have it fixed in position.

Similarly, it's possible for other sprites to pass through a sprite, or it can be made impassable.&#x20;

Finally, if a sprite is moving, it's possible to programatically cause it to stop moving.&#x20;

### Set Draggable or Passable&#x20;

![](/files/-MABiY0QramOw-TbZMCP)

Set the draggability or passability of the sprit

### Get Draggable or Passable

![](/files/-MABj6A6rTza8GGAlTiI)

Get draggability of the sprite

### Stop All Sprites

![](/files/-MABjHA0ksFB-362fv06)

Stop all sprites that are moving.

## Examples

### Move Sprite to Pointer

When the user clicks on the canvas these blocks will move the `Sprite1` to the location that was touched.&#x20;

![](/files/-MDFk3tmpb10h8taV6lg)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.thunkable.com/gaming/gaming-blocks/motion.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
