De @towerofnix
Comportamento esperado (2.0)
"Touching color" retorna true quando o sprite se sobrepõe à cor fornecida, independentemente de o sprite estar ou não oculto. "Touching sprite" retorna true se o sprite se sobrepõe ao outro sprite, e o sprite é mostrado; se estiver oculto, "tocar no sprite" retorna falso.
Comportamento Real
"Touching color" retorna false quando o sprite está oculto. "Touching sprite" se comporta conforme descrito em 2.0.
Passos para reproduzir
Projeto de demonstração: 2.0, 3.0. Mova o sprite usando o mouse e use a barra de espaço para alternar o sprite entre mostrado e oculto. Observe o conteúdo do balão de fala enquanto arrasta.
(Nota - no balão de fala que aparece, você pode ver que, ao lado de "tocando (sprite)", às vezes "undefined" está sendo dito em vez de "false" .. undefined é um valor falsey, então está tudo bem, mas talvez algo para verificar se ainda não foi relatado em algum lugar ..)
Não sei qual é o comportamento esperado, mas acho que essa incompatibilidade pode ser uma fonte de problemas em projetos de plataforma.
Projeto de demonstração 2: 2.0, 3.0. Observe como, no Scratch 3.0, quando você esconde o sprite, ele cai no chão! 🕳
Sistema operacional e navegador
Firefox Nightly (59) em testes de Debian. Tenho quase certeza de que esse mesmo bug foi relatado aqui.
Aqui estão 4 casos que testei.
| | Oculto | Ghost 100 |
| ----------------- | -------------- | ----------- |
| Tocando sprite | não detectado | detectado |
| Cor tocante | detectado | detectado |
No scratch 2
No scratch 3
[removido, pretendia comentar sobre o PR]
Comentários muito úteis
Aqui estão 4 casos que testei.
| | Oculto | Ghost 100 |
| ----------------- | -------------- | ----------- |
| Tocando sprite | não detectado | detectado |
| Cor tocante | detectado | detectado |
No scratch 2
No scratch 3