From Test-Scratch-Wiki

Revision as of 12:58, 14 July 2021 by AdrielCrafter (talk | contribs) (→‎Exemplos de Uso)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Este artigo é sobre o bloco. Para mais informações sobre o valor que este bloco reporta, veja Posição X (valor).
Posição X
(posição x :: motion)


Tipo: Reportador
Categoria: Movimento

O bloco Posição X é um bloco de Movimento e um bloco Reportador. Este bloco informa a posição X de um ator. Este bloco pode ser exibido no Palco.

Exemplos de Uso

Como esse bloco armazena a posição X do ator, ele pode ser usado num script detectando a posição X do ator. Existem muitos casos disso — por exemplo, você pode detectar o quão longe o ator está na esquerda ou direita do palco.

sempre {
  espere até que <(x position) > [220]> :: control
  adicione (1) a [Hits v] :: variables
} :: cap control

Outro uso é usando um slider para mudar a posição sem ser o padrão do Scratch — O código muda a X para a posição do slider.

mude [worms v] para (x position) :: variables

Outros usos comuns são:

  • Comparando a X com uma gravação para checar movimento
quando green flag for clicada :: hat events
mude [x_pos prev v] para (x position) :: variables
forever
if <not <(x_pos prev) = (x position)>> then
say [Minha posição X mudou!] for (2) secs //if the x position moved, say something
set [x_pos prev v] to (x position)
end
end
  • Constantemente armazenar a posição X do ator para que possa reencenar depois
when green flag clicked //O script só funciona em um ator!
delete (all v) of [x positions v]
delete (all v) of [y positions v]
say [Mova seu mouse e eu refarei seu movimento] for (2) secs
say [Vá!] for (1) secs
repeat (50)//Grava 50 coordenadas numa quantidade de 1 a cada 0.1 segundos
add (mouse x) to [x positions v]
add (mouse y) to [y positions v]
wait (0.1) secs
end
set [counter v] to [1]
say [Agora irei refazer!] for (2) secs
repeat (50)
go to x:(item (counter) of [x positions v]) y:(item (counter) of [y positions v])
wait (0.1) secs
change [counter v] by (1)
end
  • Mudando a velocidade do ator baseado em suas coordenadas

"Gambiarra"

Main article: List of Block Workarounds

O bloco pode ser simplesmente replicado com:

([posição x v] de [Ator1 v])

Veja também

Cookies help us deliver our services. By using our services, you agree to our use of cookies.