Zmiany

Skocz do: nawigacji, wyszukiwania

Wyścigówka (wersja A)

Dodane 7427 bajtów, 11:11, 7 lis 2014
[[Category:Scenariusze Scratch]] [[Category:Mistrzowie Kodowania]]
'''Materiały stworzone przez Fundację Coder Dojo Polska w ramach Programu „Mistrzowie Kodowania” finansowanego przez Samsung Electronics Polska, objęte licencją CC BY 3.0 PL "Creative Commons Uznanie Autorstwa 3.0 Polska".'''
 
aplikacja opisana w scenariuszu: http://scratch.mit.edu/projects/26094016/<br />
aplikacja z samą grafiką: http://scratch.mit.edu/projects/26094044/
 
==Informacje==
===Cele===
Celem projektu jest stworzenie przez uczniów gry zręcznościowej typu wyścig. W proponowanym projekcie jest to Gra wyścigowa [http://scratch.mit.edu/projects/26094016/ jazda samochodem] jednak możliwe jest zastąpienie duszka ''samochód '' innymi postaciami, zgodnie z zainteresowaniami uczniów (np.: duszek ''koń '' dla miłośników hippiki, duszek ''rower '' dla osób zainteresowanych kolarstwem)
==== Cele ogólne: ====
* przypomnienie i utrwalenie poznanych wcześniej poleceń i konstrukcji języka Scratch
* opracowanie projektu gry zręcznościowej
* implementacja projektu w środowisku Scratch
==== Cele szczegółowe ====
* uczeń rozumie i potrafi stosować odpowiednie instrukcje strukturalne
* uczeń potrafi konstruować skrypty i implementować grę w środowisku Scratch
=== Zgodność z Podstawą Programową =======Zajęcia komputerowe. ====1) Uczeń:* posługuje się komputerem w podstawowym zakresie: uruchamia program, korzystając z myszy i klawiatury; 2) * wie, jak trzeba korzystać z komputera, żeby nie narażać własnego zdrowia; 3) * stosuje się do ograniczeń dotyczących korzystania z komputera.
===Orientacyjny czas realizacji===
Orientacyjny czas realizacji jednej z proponowanych wersji: '''2 x 45 minut''' ===Poziom trudnościi proponowane wersje=== * dla klas 1-3 ✪✪✪✰ Wyścigówka [http://scratch.mit.edu/projects/25909243/ Wersja A]* dla klas 4-6 ✪✪✪✰ przejdź do scenariusza [Wyścigówka (wersja B)] lub zobacz gotowy projekt Wyścigówka [http://scratch.mit.edu/projects/25488659/ Wersja B]* dla gimnazjum ✪✪✰✰ przejdź do scenariusza [Wyścigówka (wersja C)] lub zobacz gotowy projekt Wyścigówka [http://scratch.mit.edu/projects/25955675/ Wersja C] * Wersja z grafiką, bez skryptu dostępna jest [http://scratch.mit.edu/projects/25996540/ tutaj]* Gotowy projekt ze skryptami: [http://scratch.mit.edu/projects/25909243/ Wyścigówka] 
==Etapy==
Wprowadzenie teoretyczne do projektowania gry typu “wyścig”, przygotowanie kostiumów duszków “droga” i “samochód”.
==== Wprowadzenie. ====
Czas realizacji 15 minut
 
Przedstawienie koncepcji projektu stworzenia gry zręcznościowej. Przypomnienie realizowanych na dotychczasowych zajęciach, wcześniejszych modułów dotyczących sterowania postaciami poprzez użycie klawiszy ''“strzałka lewo/prawo”'', ''“strzałka góra/dół”'' Rozmowa odnosząca się do doświadczeń uczniów związanych z rodzajami gier typu “wyścig”. Skoncentrowanie się na grach, w których występuje element poruszania bohaterem widocznym “z lotu ptaka” (np.: River Ride, Pro Racing GT, Extreme Rally lub [https://www.youtube.com/watch?v=T4Gq5NSnvK4 Reckless Racing] ).
 
=====Przygotowanie elementu startowego=====
W rozmowie na temat gier zręcznościowych, warto poruszyć kwestię momentu rozpoczęcia jazdy samochodu. Analogicznie do sytuacji z rzeczywistego toru wyścigowego, pojazdy zwykle stoją na linii startu w gotowości i czekają, na odmierzenie czasu do startu. W proponowanej wersji gry stworzony został zegar, nadający sygnał cały czas. Zegar najlepiej stworzyć w polu sceny ponieważ będzie on przydatny dla wszystkich duszków. Dodatkowo stworzymy skrypt nadający sygnał ''start!'' - ułatwi nam to w przyszłości stworzenie menu gry. W rozwinięciu gry, między inicjowaniem programu poprzez kliknięcie w zieloną flagę, a nadaniem sygnału ''start!'' można dodać element wizualny lub dźwiękowy w postaci odliczania (np.: 3, 2, 1...).
 
[[Plik:Wa scena skrypt.PNG]]
 
==== Przygotowanie duszka pojazdu oraz trasy wyścigu. ====
Czas realizacji 30 minut.
 
'''Uwaga!'''
Jeśli dysponujemy ograniczonym czasem pracy, możemy wykorzystać projekt posiadający gotowe grafiki ( [http://scratch.mit.edu/projects/25996540/ Wyścigówka - podstawy]) lub możemy zaproponować uczniom stworzenie zarysu duszków, które mogą zostać dopracowane graficznie samodzielnie podczas indywidualnej pracy uczniów w domu.
 
Pierwsze zadanie dotyczy stworzenia podstawowych duszków, tj. pojazdu oraz drogi będącej trasą wyścigu. Kolejność powstawania obu kostiumów nie ma znaczenia, na potrzeby tego scenariusza rozpoczniemy od tworzenia duszka “droga”.
 
W programie Scratch istnieją dwie opcje rysowania kostiumów: tryb bitmapy oraz tryb rysowania wektorowego. Wybór opcji rysowania w trybie wektorowym umożliwia swobodne przybliżanie i oddalanie obrazka, bez utraty jego jakości. Dodatkowo tryb wektorowy oferuje inny zestaw narzędzi graficznych, niż tryb bitmapy.
 
===== Tworzenie duszka “Tor Wyścigowy” =====
Jedną z możliwości narysowania trasy jest użycie narzędzia ''“Elipsa”''. Po narysowaniu bazowego kształtu, za pomocą narzędzia ''“Przekształć”'' modyfikujemy trasę wzbogacając ją o zakręty.
 
[[Plik:Wa torwyscigowy.PNG]]
 
===== Tworzenie duszka samochodu. =====
Przygotowujemy grafikę pojazdu, uwzględniając proporcje duszków ''"TorWyścigowy"'' i ''"Samochód"''
 
[[Plik:Wa samochód.PNG]]
 
=== Budowanie skryptu sterowania i poruszania się, tworzenie menu gry. ===
Czas realizacji: 15 minut
====Skrypt duszka "Samochód"====
Intuicyjnym jest rozpoczęcie tworzenia skryptu “ruchu” od postaci samochodu. W rozmowie na temat przygotowania takiego skryptu warto ustalić istotne punkty, np.:
 
* W jaki sposób zapewnić płynność obrotu pojazdu? Aby poruszać się płynnie po krzywiznach drogi korzystnie jest połączyć warunek ''“jeśli klawisz strzałka w lewo/prawo wciśnięty”'' z klockiem ''“obróć o X stopni”''.
* Co zrobić aby samochód był stale widoczny na planszy (unikanie sytuacji, w której pojazd “ucieka” poza planszę)? Rozwiązaniem może być osadzenie pojazdu w określonym (np.: centralnym - jak w przykładzie) punkcie planszy. Wówczas należy odpowiedzieć na kolejne pytanie:
* W jaki sposób uzyskać efekt “jazdy samochodem”, jeśli “osadzimy” pojazd w centralnym punkcie planszy? Rozwiązanie może nasunąć obserwacja konstrukcji gier typu [https://www.youtube.com/watch?v=oswkLE4mGLI River Ride] tj.: nadanie efektu “ruchu” postaci droga, czyli trasie wyścigu.
 
Aby uniknąć sytuacji w której pojazd “ucieka” poza ekran, '''ustawiamy w skrypcie informację określającą pozycję duszka ''“samochód”'' zawsze na środku ekranu.''' Określamy warunek umożliwiający obracanie pojazdem poprzez sterowanie klawiszami ''“strzałka lewo/prawo”''.
 
[[Plik:Wa skrypt samochod.PNG]]
 
====Skrypt duszka "Tor Wyścigowy"====
 
Konsekwencją osadzenia duszka ''“samochód”'' w centralnym punkcie ekranu, jest konieczność niestandardowego podejścia do kodowania jego “jazdy”. W proponowanym rozwiązaniu, to nie samochód będzie się poruszał, tylko droga po której jedzie. W tym celu tworzymy skrypt ruchu w zakładce duszka ''“droga”'':
 
[[Plik:Wa skrypt droga.PNG]]
 
Uwaga! W ustawieniach stylu obrotu duszka ''“droga”'' należy ustawić tryb “nie obracaj”. Wówczas duszek nie reaguje na zmianę kierunku, porusza się zgodnie ze swoim kierunkiem:
 
[[Plik:Gra wyscigowa skrypt droga.jpg]]
 
====Przeszkody====
Czas realizacji: 30 minut
 
Jednym ze sposobów uniemożliwiającym graczom przejechanie z linii startu do mety "na skróty", jest umiejscowienie wewnątrz Toru Wyścigowego naturalnej przeszkody. W prezentowanym projekcie jest to jezioro, przygotowane jako kopia duszka ''"droga"'' oraz wypełnienie środkowej części kolorem niebieskim. Jezioro można upiększyć roślinami i zwierzakami. Aby uniemożliwić pojazdom ucieczkę poza tor wyścigowy, wokół drogi przeszkodą będą obszary zieleni.
 
[[Plik:Wa woda.PNG]] [[Plik:Wa obszarzielony.PNG]]
 
Część kodu odpowiedzialna za poruszanie się wody oraz obszaru zieleni, może wyglądać w następujący sposób:
 
[[Plik:Wa skrypt1.PNG]]
 
A jeżeli samochód dotknie przeszkody (wypadnie z toru) gra zostanie zatrzymana:
 
[[Plik:Wa skrypt2.PNG]]
 
Uwaga1:
Ten sam fragment kodu wprowadzamy w skrypcie obu duszków.
 
Uwaga2:
W ustawieniach grafiki włączony został styl obrotów w opcji ''"nie obracaj"''.