Animatron-6: Kontrollprogrammet för animatörerna (2 / 9 steg)
Steg 2: skript
Dessa komponenter utgör en grupp, en åtgärd, ett objekt och ett värde. Varje rad representerar en rad i ett skript. Flera rader kan kombineras för att bilda en spelare (ett skript körs parallellt med andra skript.
Exempelvis har vi ögonen slutna och öppna ögon. Att införa en annan kommandot "ScriptPause, nnn"(som pausar för nnn millisekunder), vi kan skriva ett skript för att blinka ögonen vid tre gånger, pausa tre sekunder mellan blinkar.
: Blinky1
PlayMove, EyesClosed, 30
ScriptPause 100
PlayMove, EyesOpen, 30
Scriptpause, 3000
EndScript, Blinky1
Observera den "30" i slutet av raden. Detta värde ger servo tid att reagera och kan ställas per servo varumärke, genom experiment.
En annan snabb skriften flaxar med sina vingar:
: Flappy1
PlayMove, armar upp, 30
ScriptPause, 75
PlayMove, vapen ned, 30
ScriptPause 75
EndScript, Flappy1
: Flappy
Playscript, Flappy1
Playscript, Flappy1
Playscript, Flappy1
EndScript, Flappy
Observera att detta är två skript. En att definiera flaxande vingar och en sekund att flaxa dem tre gånger.
Action-kommandon
Först, det finns för närvarande 16 kommandon som tolken känner igen. En sammanfattning av dessa kommandon följer. (Du kan också få en känsla av historia att lägga till funktioner, placering i listan varje kommando) Om du inte vill bli uttråkad just nu med minutiae av kommandon, hoppa fram till programmet beskrivningen att se hur allt fungerar.
Kommandot | Beskrivning |
PlayMove | Skicka kommandon till controller |
PlayScript | köra skript parallellt. skript måste definieras i samma fil |
StartScript | definiera nytt manus; huvudsakliga skript måste vara sist i filen |
EndScript | slutet av skriptet rutinmässiga definition |
JumpTo | Kommandot GOTO; etiketten måste finnas (inte kontrolleras för) |
Etikett | definition av etiketten som används i "JumpTo" kommando |
SyncPoint | definition av skript som kan synkroniseras med andra skript |
EndSync | definition av steg i skriptet som du vill vänta för synkronisering |
ScriptPause | "Paus" eller "Fördröjning" kommando; Pausar körning för n millisekunder |
Säga | spela upp externa; kommer att orsaka servo definieras i "scbase" (e.g. mun servo) att synkronisera med ljud |
RandomMove | Slumpmässigt utföra en av följande n åtgärder |
RandomPause | Pausa en slumpmässig tid mellan de två gånger som angetts med kommandot |
CallScript | Anropa skriptet snarare än parallellt i sina egna spelare |
EndWait | nätverk kommandot Rensa pauser i utförandet vid en "NetWait"; inte används i skript |
NetWait | Definiera en punkt i skriften som ett nätverk kommando kan orsaka en paus i körningen |
OneOnly | definiera ett kommando som lämnar ett manus om den redan körs i en separat spelare |
ActionSeq | loop sekventiellt genom kommandot grupp i ett skript. |