Sono blocchi di colore azzurro e servono per gestire l’interazione degli sprite tra loro, con lo Stage o con l’utente.
I blocchi di questo tipo consentono di percepire, come dati di input, gli eventi esterni (clic del mouse, pressione di un tasto della tastiera, …) e interni (interazione con altri oggetti del programma).
Si tratta di blocchi molto importanti in quanto consentono di realizzare progetti complessi.
Troviamo blocchi di ogni forma: prevalgono i blocchi esagonali e ovali, ma è presente è anche qualche blocco puzzle. I blocchi esagonali e ovali sono idonei a essere utilizzati all’interno di altri blocchi di controllo, al fine di definire, ad es. quando una determinata condizione è vera e o falsa, ecc e quindi, in base a cui può accadere o non accadere un certo evento.
I blocchi esagonali
I blocchi di questo tipo producono sempre un risultato di tipo booleano (cioè vero o falso). In base a tale risultato il blocco contenitore determinerà quale azione intraprendere. Vediamo di analizzare questi blocchi:

I blocchi di questo tipo sono creati appositamente per creare delle condizioni e pertanto possono essere utilizzati in diversi Controlli:
- se < condizione > allora
- se < condizione > allora / altrimenti
- ripeti fino a quando < condizione >
- attendi fino a quando < condizione >
In questi casi il blocco Controllo verifica se la condizione specificata all’interno del blocco Sensore è verificata o no e, di conseguenza, far partire un evento nel caso affermativo oppure un altro evento nel caso negativo.
I blocchi ovali
I blocchi di questo tipo possono essere inseriti all’interno di ogni blocco che necessiti di un “valore” per generare un evento. Blocchi di questo tipo sono detti “di stato” in quanto restituiscono il valore di alcune variabili interne al sistema (cd variabili di stato). Vediamo i blocchi principali:

Come si può vedere, il risultato di questi blocchi Sensore è un valore variabile a seconda della situazione che può determinarsi durante l’esecuzione del programma. Abbinati ai blocchi Controllo si possono impostare degli eventi che accadono, ad es. se il valore è maggio, minore, oppure uguale ad un certo valore.
Il blocco Chiedi … e attendi

E’ un blocco Sensore molto importante: consente di interagire direttamente con l’utente mediante la proposizione di una domanda alla quale l’utente verrà invitato a rispondere mediante digitazione nell’apposito campo di testo. A differenza degli altri blocchi Sensore, è un blocco puzzle, quindi è autonomo e può essere utilizzato in qualsiasi situazione.
La risposta dell’utente viene memorizzata nel blocco risposta (ovale) il quale potrà essere utilizzato per valorizzare una variabile o per determinare il comportamento del programma mediante un istruzione condizionale.