Zmiany

Skocz do: nawigacji, wyszukiwania

Wyścigówka (wersja C)

Dodane 4413 bajtów, 11:08, 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".'''
== Informacje==
===Orientacyjny czas realizacji===
Orientacyjny czas realizacji jednej z proponowanych wersji: 2x 45minut
===Poziom trudnościi proponowane wersje===* dla klas 1-3 ✪✪✪✰ przejdź do scenariusza [Wyścigówka (wersja A)] lub zobacz gotowy projekt 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 ✪✪✰✰ Wyścigówka [http://scratch.mit.edu/projects/25955675/ Wersja C]
===Gotowe projekty===* '''Wersja z grafiką, bez skryptu dostępna jest [http://scratch.mit.edu/projects/25996540/ tutaj]'''
* Poglądowy projekt [http://scratch.mit.edu/projects/25826861/ Gra wyścigowa]
*[http://scratch.mit.edu/projects/25827069/ Wersja z rankingiem zwycięstw]
Czas realizacji 10 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 ''scena'' 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]]
*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 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” 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 zakładce skryptów 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"====
'''Uwaga:''' Jednocześnie należy wprowadzić we wcześniejszych skryptach korektę o ukrycie duszka po kliknięciu w zieloną flagę oraz pojawienie się go wraz z otrzymaniem komunikatu ''Start''.
=== Meta, check point, dodatki do samochodu. wygrana i przegrana ===
Czas realizacji 20 minut
[[Plik:Wyscigowka meta.PNG]]
 
W skrypcie Puntku Kontrolnego (check point) dodajemy kod
[[Plik:Check pint nieprzejechany.JPG]]
==== Wygrana! ====
[[Plik:Wyscigowka porazka2.PNG]]
 
'''Uwaga:''' w skrypie pojawia się funkcjonalnośc polegająca na przejściu do startu gry, wraz z kliknięciem w duszka Przegrana
 
==Dodatkowe opcje==
===Dodatkowe opcje Wygrana/Start===
Dotychczasowe kody duszków Wygrana/Start zostają rozwinięte w analogiczny sposób:
 
[[Plik:Wygrana opcja.JPG]]
 
===Odliczanie===
Tworzymy duszka ''odliczanie'', który będzie graficzną reprezentacją odliczania przed startem samochodu.
 
[[Plik:Odliczanie kostiumy.JPG]]
 
Skrypt duszka odliczanie umożliwia:
* ustawienie duszka w centralnym punkcie planszy
* pojawienie się duszka w chwili rozpoczęcia gry
* zmianę kostiumów od 5 do hasła ''Go!''
* nadanie sygnału 'Start Gry'
* wyzerowanie czasomierza
'''Uwaga!''' Wprowadzając element odliczania niezbędna jest zmiana nadawania sygnału start w skrypcie sceny (nadawanie TikTak).
 
[[Plik:Odliczanie1.JPG]]
 
Dodatkowo skrypt można wzbogacić o efekty wizualne:
* zmianę rozmiaru odliczanych liczb
* efekt 'duch' widoczny jako rozpływanie się duszka [[Plik:Zmien efekt duch.JPG]]
 
Finałowa wersja skryptu duszka "odliczanie":
 
[[Plik:Odliczanie.JPG]]
 
===Efekt nitro===
 
Nitro jest potoczną nazwą tlenku diazotu (podtlenek azotu, N<small>2</small>O), nieorganiznego związku chemicznego, stosowanego m. in.:
* w anestezjologii i stomatologii, jako gaz znieczulający (tzw. gaz rozweselający, zwany "Głupim Jasiem")
* w samolotach typu Messerchmitt, używanych w czasie II Wojny Swiatowej, jako zwiększenie mocy silników tłokowych poprzez wstrzyknięcie podtlenku do komory spalania
* w produkcji spożywczej, jako dodatek do żywności (E942)
* w motoryzacji, ponieważ gaz ten posiada możliwości generowania przyrostów mocy w silniku spalinowym ([https://www.youtube.com/watch?v=taD6P_L8fGc&list=PL3E31C48608A2E1F1 NOS])
 
W proponowanej wersji gry 'Wyścigówka' dodany zostanie element nitro, '''mający na celu zwiększanie mocy pojazdu, czyli powodując jego przyspieszenie.''' Ponieważ użycie w samochodach 'dopalacza' nitro bywa widoczne jako błyski ognia, narysujemy dwa kostiumy duszka nitro:
 
[[Plik:Nitro.JPG]]
 
'''Skrypt nitro uwzględnia:'''
* pojawienie się efektu nitro wraz z wciśnięciem klawisza spacja
* osadzenie w pozycji [[Plik:Idz do 0 0.JPG]] i kierunku samochodu [[Plik:Ustaw kierunek.JPG]]
* generowanie efektu 'spalania' poprzez pojawienia się klonów duszka nitro wraz z efektem [[Plik:Zmiana efekt duch.JPG]]
* zwięszkanie prędkości [[Plik:Zmimen predkosc.JPG]] wraz z jednoczesnym zmniejszaniem się zapasu nitro w zbiorniku (zmienna nitro)
* zmienną 'Los', która:
** wpływa na wymiar nitro oraz proporcjonalnie występujące zanikanie (efekt duch)
** wyznaczana jest w sposób losowy w zakresie od 5 do 10
[[Plik:Ustaw los.JPG]]
 
'''Skrypt duszka nitro przedstawia się następująco:'''
 
[[Plik:Nitro skrypt.JPG]]
 
==="Ładowanie nitro"===
Dodajemy kolejnego duszka, będącego uzupełnieniem duszka 'nitro'
 
[[Plik:Ladowanie nitro.JPG]]
 
'''Uwaga:''' Warto zwrócić uwagę na nazwy kostiumów, zostaną wykorzystane w kodzie odpowiadającym za zmianę kostiumu!
 
* w chwili rozpoczęcia gry, zbiornik nitro jest pusty (zmienna 'nitro' równa jest 0, graficznie pusty zbiornik reprezentuje kostium ''1'')
* każdorazowo zwolniony klawisz spacja powoduje podniesienie poziomu nitro w zbiorniku, aż będzie pełen (graficznie, reprezentuje to kostium ''5'')
* każdorazowo uruchomiony klawisz spacja, powoduje przyspieszenie samochodu, ale jednocześnie poziom nitro w zbiorniku maleje (zmiany kostiumów od ''5'' do ''1'')
 
W skrypcie zastosowane zostały następujące kody:
* zmianę kostiumów zamyka kod wykorzystujący nazwy kostiumów wyrażone w liczbach:
[[Plik:Zmiana kostiumu nitro.JPG]]
* zwiększanie poziomu nitro przy zwolnionym klawiszu spacja:
[[Plik:Jezeli nie klawisz spacja wcisniety.JPG]]
 
Finalnie skrypt duszka "ładowanie nitro" wygląda w następujący sposób:
 
[[Plik:Nitro pasek.JPG]]