Przykłady ćwiczeń
Ćwiczenia zbudowane w formacie GS Engine (schemat v2). Każde można pobrać i otworzyć w edytorze.












Owoce do koszyka, zabawki do pudełka, pluszaki na poduszki. Kosze mieszczą wiele elementów (capacity: many), poduszki po jednym (capacity: 1); zły ruch wraca na miejsce, dobry zostaje zablokowany.









Każdy zwierzak trafia do ramki ze swoim imieniem. Upuszczenie na zajętą ramkę zamienia zwierzaki miejscami (onOccupied: swap), więc układankę łatwo poprawić.








Słońce i chmurka do nieba, domek, drzewo, kwiatek i kaczka na łąkę. Łąka leży na niebie wyższą warstwą (przy upuszczeniu na obu wygrywa wyższa layer), a przeciągany element wskakuje na wierzch (bring-to-top).









Rzeczy czerwone do jednego koszyka, żółte do drugiego. Upuszczony element zostaje w koszyku, a jego wygląd mówi, czy to dobry wybór (stany good i bad); zły wybór można poprawić.












Worek to przewijany Container (z overflow: scroll). Trzeba go przewinąć, wyjąć wszystko i rozłożyć: owoce do koszyka, zabawki do pudełka; zły ruch odkłada rzecz z powrotem do worka.






Ćwiczenie otwarte (reguła open): zabawki można postawić na półce albo na dywanie, bez dobrych i złych odpowiedzi. Koniec, gdy wszystkie stoją na miejscach; piłka podskakuje (animacja).








Owoce do koszyka, zabawki zostają. Kotek mruga (animacja z arkusza klatek), a po rozwiązaniu cieszy się: akcja set-state zmienia jego arkusz na radosny.










Litery to przeciągalne elementy z tekstem; trzeba z nich ułożyć słowo pasujące do obrazka (KOT, po angielsku CAT). Litera zmienia kolor po dobrym i złym ruchu.







Na łące są owoce i zabawki. Zadanie: kliknąć wszystkie owoce, pomijając zabawki. Po rozwiązaniu napis polecenia zmienia się na pochwałę (set-state).









Złą, czerwoną linię usuń kliknięciem.
Każdego zwierzaka trzeba połączyć linią z tabliczką jego nazwy (reguła connect, punkty z rolą connectable). Punkty łączenia są narysowane na grafikach jako pierścienie, a punkt zaczepienia linii (anchor) każdego punktu jest wycelowany w środek pierścienia: linię zaczyna się i kończy przy pierścieniu, a kropki na jej końcach wypełniają pierścienie. Zła linia zostaje na czerwono (wrongLines: keep) i blokuje oba punkty, dopóki gracz jej nie kliknie; dobra para zostaje na scenie razem ze swoją zieloną linią i jest zablokowana (lock), więc nie da się jej już zmienić.