Zmiany

Skocz do: nawigacji, wyszukiwania

Wyścigówka

Dodane 2178 bajtów, 14:43, 28 sie 2014
/* Ustawienie zmiennej “prędkość” */
Poglądowy projekt [http://scratch.mit.edu/projects/25251429/ Gra wyścigowa]
Poziom ✪✪✰✰'''Materiały stworzone w ramach Programu „Mistrzowie Kodowania” finansowanego przez Samsung Electronics Polska'''
Orientacyjny czas realizacji== Informacje==Poglądowy projekt [http: //scratch.mit.edu/projects/25826861/ Gra wyścigowa] [http://scratch.mit.edu/projects/25827069/ Wersja z rankingiem zwycięstw]
1. moduł. x 45minutWprowadzenie teoretyczne do projektowania gry typu “wyścig”, przygotowanie kostiumów duszków “droga” i “samochód”, skrypt sterowania i poruszania się.Poziom dla klas 4-6 ✪✪✪✰
2. moduł. x 45minutBudowanie skryptu sterowania i poruszania się, tworzenie menu gry. 3. moduł. x 45minut Zaawansowane opcje gry - nitro, przeszkoda, dodatki do samochodu oraz meta i check point.Poziom dla klas gimnazjum ✪✪✰✰
== Cele ==
===== Tworzenie duszka samochodu. =====
Na potrzeby niniejszego scenariusza przygotwane przygotowane zostały dwie propozycje samochodów:
[[Plik:Gra wyscigowa auta.jpg]]
Czas realizacji: 20 minut
Proponowane w scenariuszu rozwiązanie zakłada nastepujące następujące etapy realizacji gry: 
===== Skrypt 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. Określamy warunek umożliwiający obracanie pojazdem poprzez sterowanie klawiszami “strzałka lewo/prawo”
Uwzględnienie prędkości samochodu kodujemy, analogicznie do informacji o ruchu, w skrypcie duszka “droga”. Dodatkowo warto dodać maksymalną prędkość samochodu Tworzymy zmienną dostępną tylko dla tego duszka i ustawimy ją np. na 2.
Na tym etapie skrypt duszka “droga” może wyglądać następująco:
 
Skrypt do uzupełnienia o jeżeli prędkość <0 to ustaw prędkość na 0
[[Plik:Gra wyscigowa skrypt droga3.jpg]]
==== Tworzenie planszy startowej oraz budowane budowanie menu gry. ====
Czas realizacji 20 minut.
Menu prezentowanej wersji gry zawiera jedynie:
- * nazwę gry, umieszczoną na scenie; - * przycisk rozpoczynający grę oraz nadający sygnał ‘Start’;- * miejsce na ranking;- * przycisk zerujący podium.  
===== Plansza startowa (intro)=====
Wskazówka.
Uczniowie mogą przygotować własne wersje menu startowego. Prace nad zaawansowaną grafiką można zorganizować również w formie zadania do samodzielnego wykonania po zajęciach.
Bazowa plansza startowa to tło “scena” z podaną nazwą gry (w tym wypadku Track Car):
 
[[Plik:Gra wyscigowa intro.jpg]]
===== Przycisk “Start” =====
Przycisk “Start” rozpoczynający grę również warto przygotować w trybie wektorowym edytora grafik grafiki programu Scratch. Wówczas zachowa on wyraźne kontury niezależnie od późniejszej modyfikacji wielkości. Podstawowy skrypt przycisku “Start” może wyglądać nastepująconastępująco:
[[Plik:Gra wyscigowa przycisk start.jpg]]
===== Zmienne globalne rankingu.=====
Jednym z elementów uatrakcyjniających gry zręcznościowe jest możliwość porównywania uzyskanych wyników. Aby porównywać rezultaty warto stworzyć zmienne globalne rankingu. W przykładowym scenariuszu zostały stworzone nastepujące zmienne:
- * czas- * nick.Obie zmienne przygotowane zostały dla trzech najlepszych spośród uzyskanych wyników. Zmienne te umożliwią przechowywanie czasu okrążenia oraz nick gracza. Do duszka startu oddamy dodatkowe skrypty odpowiedzialne za ranking. Aby zmienne były widoczne na planszy startowej, a znikały po uruchomieniu gry, należy uzupełnić skrypt duszka “Start”. Jednocześnie na ekranie może zostać dodany licznik z działu klocków “czujniki”: 
Obie zmienne przygotowane zostały dla trzech najlepszych spośród uzyskanych wyników. Zmienne te umożliwią przechowywanie czasu okrążenia oraz nick gracza. Do duszka startu dodamy dodatkowe skrypty odpowiedzialne za ranking. Aby zmienne były widoczne na planszy startowej, a znikały po uruchomieniu gry, należy uzupełnić skrypt duszka “Start”.
[[Plik:Gra wyscigowa zmmienne rankingu.png]]
Jednocześnie na ekranie może zostać dodany licznik z działu klocków “czujniki”:
[[Plik:Gra wyscigowa czujniki.png]]
Dodatkowo stwórzmy duszka który będzie nam resetował podium.
 
[[Plik:Gra wyscigowa reset podium.jpg]]
Na tym etapie menu przykładowe menu może wyglądać następująco:
 
[[Plik:Gra wyscigowa intro2.jpg]]
Uwaga!
Ranking w tej formie nie działa ponieważ wymaga dokończenia poprzez dodanie mety na trasie (patrz: Moduł 3)
=== Zaawansowane opcje gry - nitro, przeszkoda, dodatki do samochodu oraz meta i check point. ===
==== NitroCień samochodu i światła.==== Grafikę gry może uatrakcyjnić dodanie cienia pod samochodem. W tym celu można zduplikowac duszka ''samochód'' oraz pomalować na czarno. Skrypty zastępujemy nowymi, umożliwiającymi poruszanie się duszka ''cień'' razem z duszkiem ''samochód'': [[Plik:Wyscigówka cien.jpg]] Dodatkowo można przygotować duszka ''światła'' [[Plik:Wyscigówka swiatla.jpg]] Do świateł wykorzystujemy opcję [[zmienna lokalna]], która będzie przechowywała stan świateł (włączone/wyłączone). [[Plik:Wyscigowka skrypt swiatla.jpg]] ====Wielka przeszkoda. Jezioro! ====Czas realizacji X minutJednym ze sposobów uniemożliwiającym graczom przejechanie z linii startu do mety "na skróty" jest umiejscowienie wewnątrz pętli ''droga'' 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. [[Plik:Jezioro grafika.jpg]] W ustawieniach grafiki włączony został [[styl obrotów]] w opcji ''nie obracaj''. [[Plik:Jezioro nie obracaj.jpg]] Część kodu odpowiedzialna za poruszanie się naszej wody może wyglądać w następujący sposób: [[Plik:Jezioro skrypt.jpg]] ==== Meta i Check Point. ==== Aby wygrać wyścig trzeba dotrzeć do mety pokonując trasę. Tworzymy duszka ''meta'' oraz tzw. ''check point'' sprawdzające czy gracz na pewno przejechał przez wyznaczoną trasę. W prezentowanej wersji stworzone zostały tylko dwa punkty kontrolne, położone tuż przed metą. W skrypcie umieszczone zostały zmienne: ''okrążenie'' przechowujące ilość pokonanych okrążeń, ''pierwsze_sprawdzenie'' oraz ''drugie_ sprawdzenie'', informujące czy dane punkty kontrolne (check point) zostały zaliczone. [[Plik:Check point meta1.jpg]] [[Plik:Check point meta2.jpg]] Teraz stworzymy metę - reprezentowaną graficznie jako jasny, prosty odcinek. Duszek mety również w ustawieniach [[styl obrotów]] ma zaznaczoną opcję ''nie obracaj''. [[Plik:Skrypt meta.jpg]] ==== Przegrana ====Do gry można dodać duszka sygnalizującego przegraną, w sytuacji, gdy samochód wjedzie do jeziora. Skrypt takiego napisu ''przegrana'' może wyglądać w następujący sposób: [[Plik:Duszek przegrana.jpg]] Innym rozwiązaniem może być wypowiedź kierowcy samochodu np. „O nie! Toniemy! Przegraliśmy!”.
===== Kostium “nitro” =Wygrana! Ranking zwycięstw ====Im więcej niekonwencjonalnych dodatków, tym większa frajda z gryGra jest gotowa. Dlatego w scenariuszu znalazło się miejsce dla nitro! Jest Można ożywić ranking poprzez stworzenie duszka ''wygrana''. Będzie to nowy duszeknapis informujący o wygranej, posiadający kilka kostiumów….a wszystko po to aby imitować efekt przyspieszeniaprzy okazji sprawdzający czy nasz znaleźliśmy się na podium.Wskazówka:Wygląd duszka “nitro” zależy wyłącznie od inwencji tworzących grę. Mogą to być kwadraty, iskierki, gwiazdki itpOpcjonalnie cały ranking można wyzerować przypisanym klawiszem. W przygotowanej wersji nitro wygląda w następujący sposób:
Uwaga! Na każdym etapie prac warto pamiętać o nadawaniu prostych i czytelnych nazw kostiumów, zmiennych, nazw plansz itp. Klarowna nazwa ułatwia np.[[Plik: przygotowanie skryptu losowania kostiumówRanking.png]]
1495
edycji