Zmiany

Skocz do: nawigacji, wyszukiwania

Wyścigówka (wersja B)

Dodane 266 bajtów, 16:04, 28 sie 2014
/* Etapy realizacji */
Poglądowy projekt [http://scratch.mit.edu/projects/25826861/ Gra wyścigowa] oraz [http://scratch.mit.edu/projects/25827069/ Wersja z rankingiem zwycięstw]
== Etapy realizacji ===== Wprowadzenie teoretyczne do projektowania gry typu “wyścig”, przygotowanie kostiumów duszków “droga” i “samochód”. ===
==== Wprowadzenie. ====
Czas realizacji 10 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 scenie ponieważ będzie on przydatny dla wszystkich duszków. Dodatkowo stworzymy też nadawanie startu, ułatwi nam to w przyszłości stworzenie menu. 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 15* 30 minut. 
'''Uwaga!'''
Jeśli dysponujemy ograniczonym czasem pracy, zaproponujmy 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 skryptu rozpoczniemy od tworzenia duszka “droga”.
'''Uwaga!'''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 “droga” będącego trasą toru wyścigowego. “Tor Wyścigowy” =====
Jedną z możliwości narysowania trasy jest użycie narzędzia “Elipsa”. Po narysowaniu bazowego kształtu używając narzędzia “Przekształć” modyfikujemy trasę wzbogacając ją o zakręty.
[[Plik:Gra wyscigowa drogaWa torwyscigowy.jpgPNG]]
===== Tworzenie duszka samochodu. =====
Na potrzeby niniejszego scenariusza przygotowane zostały dwie propozycje samochodów: Przygotowujemy grafikę pojazdu, uwzględniając proporcje duszków "TorWyścigowy" i "Samochód"
[[Plik:Gra wyscigowa autaWa samochód.jpgPNG]]
Wskazówka: Kostium duszka, narysowany jako widok z perspektywy lotu ptaka, powinien umożliwić łatwą identyfikację przodu-tyłu pojazdu lub postaci (np.: w przypadku zielonego samochodu jest to wyraźnie zaznaczona przednia szyba pojazdu). ==== Wstęp do budowania Budowanie skryptusterowania 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.:
Intuicyjnym *W jaki sposób zapewnić płynność obrotu pojazdu? Aby poruszać się płynnie po krzywiznach drogi korzystnie jest rozpoczęcie tworzenia skryptu “ruchu” od postaci samochodupołączyć warunek “jeśli klawisz strzałka w lewo/prawo wciśnięty” z klockiem “obróć o X stopni”. W rozmowie *Co zrobić aby samochód był stale widoczny na temat przygotowania takiego skryptu warto ustalić istotne punktyplanszy (unikanie sytuacji, w której pojazd “ucieka” poza planszę)? Rozwiązaniem może być osadzenie pojazdu np.: w centralnym 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 gry “rakieta” tj.: nadanie efektu “ruchu” postaci droga, czyli trasie wyścigu.
* '''W którym momencie samochód ma rozpocząć jazdę?''' Zazwyczaj rozpoczęcie gry klawiszem “Kiedy kliknięto zieloną flagę” inicjuje pojawienie się planszy startowej (intro), na której znajdują się podstawowe instrukcje oraz przycisk rozpoczynający grę “Start”. Warto zatem od razu ustalić, że ruch pojazdu inicjuje inny komunikat, np.: otrzymanie wiadomości “Start”. * '''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 uniknąć sytuacji, w której pojazd “ucieka” poza planszę)?ekran, ''' Rozwiązaniem może być osadzenie pojazdu np.: ustawiamy w centralnym punkcie planszyzakładce skryptów informację określającą pozycję duszka “samochód” zawsze na środku ekranu. * 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 gry “rakieta” tj.: nadanie efektu “ruchu” postaci droga, czyli trasie wyściguOkreślamy warunek umożliwiający obracanie pojazdem poprzez sterowanie klawiszami “strzałka lewo/prawo”.
'''Uwaga!'''[[Plik:Wa skrypt samochod.PNG]]Jeśli zajęcia realizujemy w blokach trwających 45minut, możemy zakończyć ten etap w formie zadania do samodzielnego rozwiązania przez uczniów w domu. Wówczas kolejne zajęcia należy rozpocząć od przypomnienia zrealizowanych etapów oraz od omówienia propozycji uczniów.====Skrypt duszka "Tor Wyścigowy"====
=== Budowanie skryptu sterowania i poruszania sięKonsekwencją osadzenia duszka “samochód” w centralnym punkcie ekranu, tworzenie menu gryjest konieczność niestandardowego podejścia do kodowania jego “jazdy”. =======Skrypt sterowania jazdą samochoduW proponowanym rozwiązaniu, to nie samochód będzie się poruszał, tylko droga po której jedzie.====Czas realizacjiW tym celu tworzymy skrypt ruchu w zakładce duszka “droga”: 20 minut
Proponowane w scenariuszu rozwiązanie zakłada następujące etapy realizacji gry[[Plik:Wa skrypt droga.PNG]]
===== Skrypt Uwaga! W ustawieniach stylu obrotu samochodu (ustawianie kierunku jazdy)=====Aby uniknąć sytuacji w której pojazd “ucieka” poza ekran, ustawiamy w zakładce skryptów informację określającą pozycję duszka “samochód” zawsze na środku ekranu“droga” należy ustawić tryb “nie obracaj”. Określamy warunek umożliwiający obracanie pojazdem poprzez sterowanie klawiszami “strzałka lewo/prawo”Uwaga!W proponowanym skrypcie dodatkowo wprowadzony został element pętli umożliwiającej stałe sprawdzanie czy stan klawisza “strzałka lewo/prawo” Wówczas duszek nie uległ zmianie. Pętla powstała poprzez wprowadzenie polecenia “zawsze nadaj wiadomość” oraz “kiedy otrzymam tick”. To rozwiązanie umożliwia zsynchronizowanie wszystkich pętlireaguje na zmianę kierunku, uruchamianych w tym samym czasie. porusza się zgodnie ze swoim kierunkiem:
[[Plik:Gra wyscigowa skrypt autadroga.jpg]]
===== Skrypt imitujący jazdę samochodu. =Przeszkody====Konsekwencją osadzenia “samochodu” 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”Czas realizacji:30 minut
[[Plik:Gra wyscigowa skrypt auta2Jednym 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ę daleko poza tor wyścigowy, wokół drogi będą do obszary zieleni.jpg]]
Uwaga!W ustawieniach stylu obrotu duszka “droga” należy ustawić tryb “nie obracaj”[[Plik:Wa woda. Wówczas duszek nie reaguje na zmianę kierunku, porusza się zgodnie ze swoim kierunkiemPNG]] [[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:Gra wyscigowa skrypt drogaWa skrypt1.jpgPNG]] A po dodaniu zderzenie, jeżeli samochód dotknie przeszkody gra zostanie zatrzymana: [[Plik:Wa skrypt2.PNG]] Uwaga: Ten sam fragment kodu wprowadzamy w skrypcie obu duszków. Uwaga:W ustawieniach grafiki włączony został styl obrotów w opcji nie obracaj.
===== Ustawienie zmiennej “prędkość” =====
1495
edycji