Úvod do Bloků
MOCPilot používá vizuální systém blokového programování, který vzhledem i chováním připomíná Scratch. Každý blok má konkrétní roli a platné kombinace určují řízení toku i toku dat ve skriptu. Využívá logiku přetahování a interakční vzory podobné Scratchi, aby bylo vytváření programů pohodlné a známé.
Jde o odlišný blokový systém s vlastní sadou bloků a vlastním chováním. Programy MOCPilot nejsou kompatibilní s projekty Scratch: programy MOCPilot nelze importovat do Scratch a programy Scratch nelze importovat do MOCPilot.
Tvary bloků a jejich význam
Startovní bloky (Hat)
Spustí skript při výskytu konkrétní události. Další bloky lze připojit pouze pod něj.
Příkazové bloky (Stack)
Hlavní příkazové bloky, které provádějí akce.
C bloky
Řídicí bloky tvaru C, které obsahují vnořené blokové sekvence (cykly/podmínky).
Reportovací bloky (Reporter)
Vrací hodnoty, například čísla nebo text.
Booleovské bloky
Vrací pouze true nebo false, obvykle se používají v podmínkách.
Ukončovací bloky (Cap)
Ukončí skript a neumožní připojení bloků pod sebe.
Bloková sekvence
Bloková sekvence je řada propojených bloků, která běží jako jeden tok skriptu shora dolů. Sekvence obvykle začíná událostním blokem a následně provádí připojené bloky v daném pořadí.
Model běhu skriptu
- Skript obvykle začíná událostním blokem.
- Propojené stack bloky se spouštějí shora dolů.
- Více skriptů může běžet paralelně.
- Pro synchronizaci skriptů se používají bloky zpráv/vysílání.
- Bloková sekvence je sada bloků propojených dohromady.
Data a hodnoty
- Reportovací bloky lze vnořovat do vstupů příkazů/podmínek.
- Proměnné ukládají znovu použitelné hodnoty napříč bloky a skripty.
- Seznamy ukládají uspořádané kolekce pro historii, fronty a vyhledávací data.
Události a časování
- Událostní bloky reagují na vstup uživatele, stav hubu, senzory nebo zprávy.
- Události založené na časovači a senzorech se mohou spouštět často.
- Pro omezení rušivých opakovaných spuštění používejte prahy, filtrování nebo krátké čekání.
Hub, porty a ovladače
- Hub bloky pracují v kontextu hubu a portu.
- Některé bloky jsou dostupné jen pro konkrétní rodiny hubů/zařízení.
- Bloky dashboardu a gamepadu poskytují vstupy za běhu a ovládání UI.
Doporučený postup
- Začněte jedním událostním blokem a minimálním skriptem.
- Včas ověřte směr a rozsahy motorů/senzorů.
- Opakovanou logiku oddělte pomocí zpráv a pomocných skriptů.
- Před finálním laděním přidejte ochrany (limity, zastavení, záložní hodnoty).
Časté chyby
- Chybějící vstupní událostní blok znamená, že se skript nikdy nespustí.
- Špatně zvolený hub/port způsobí, že neuvidíte žádný efekt.
- Míchání typů hodnot (text/číslo/boolean) může vést k neplatné logice.
- Události s vysokou frekvencí bez filtrování mohou přetížit chování programu.
Struktura dokumentace v této sekci
Používejte stránky kategorií v tomto pořadí:
- Světla
- Motory
- Senzory
- Události
- Ovládání
- Operátory
- Proměnné
- Seznamy
- Moje bloky
- Ovladače dashboardu
- Gamepad