Blocos de Eventos e Controle
Eventos definem QUANDO um script roda; blocos de controle definem COMO o fluxo se comporta — repetições, decisões e pausas. Juntos, eles formam o esqueleto de qualquer programa: os outros blocos são sempre executados dentro de uma estrutura de eventos e controle.
No código gerado, eventos viram registradores de handlers (o “quando iniciar” é o corpo principal do programa) e os blocos de controle viram as estruturas if, for e while do JavaScript ou Python.
Quando iniciareventoDispara quando o projeto começa (botão Play). É o ponto de entrada do script principal de cada ator — use para inicializar variáveis, posição e visibilidade.
Quando iniciar → mude pontuação para 0 → vá para x: 0 y: 0Quando tecla pressionadaeventoDispara a cada vez que a tecla escolhida é pressionada. Para movimento contínuo, prefira o sensor “tecla pressionada?” dentro de um loop Sempre.
Quando este ator for clicadoeventoDispara quando o usuário clica no ator durante a execução. Útil para botões e interações de mouse.
Quando receber [mensagem]eventoDispara quando alguém executa “envie mensagem” com o mesmo nome. É o mecanismo de comunicação entre atores.
Quando receber “game_over” → mostre tela finalEnvie mensagemcomandoTransmite uma mensagem para todos os atores do projeto. Todos os scripts “quando receber” com esse nome são executados.
Semprebloco CRepete o conteúdo indefinidamente, uma vez por quadro (60 vezes por segundo). É o coração do loop de jogo: física, animação e leitura de teclado normalmente vivem aqui.
Repita [n] vezesbloco CExecuta o conteúdo um número fixo de vezes. Vira um for no código gerado.
Repita (tamanho de LISTA) vezes → processa cada itemRepita até [condição]bloco CRepete o conteúdo até a condição booleana se tornar verdadeira. Útil para “empurrar até não tocar mais” em colisões.
Se [condição]bloco CExecuta o conteúdo apenas se a condição for verdadeira. A versão “Se … senão” executa um segundo grupo quando for falsa.
Espere [n] segundoscomandoPausa o script pelo tempo indicado sem travar os outros scripts — eles continuam rodando em paralelo.
Crie clone de [ator]comandoCria uma cópia em tempo de execução do ator escolhido (ou de si mesmo). O clone herda posição, fantasia e os valores atuais das variáveis locais.
Quando clone iniciareventoRoda em cada clone recém-criado — é o “quando iniciar” dos clones. O script principal do ator original não roda nos clones.
Apague este clonecomandoRemove o clone que está executando o script. Sempre apague clones que saíram da tela ou foram consumidos.
