Gra platformowa (wersja z grawitacją)

Z Wiki Mistrzowie Kodowania
Skocz do: nawigacji, wyszukiwania

Materiały stworzone w ramach Programu „Mistrzowie Kodowania” finansowanego przez Samsung Electronics Polska

Cele

Celem jest stworzenie gry platformowej w wersji z przewijanym tłem oraz efektem grawitacji.

Informacje

Poziom trudności i proponowane wersje:

Etapy

Scenariusz dla klas gimnazjalnych zawiera rozszerzenie projektu Gra platformowa między innymi o efekt grawitacji. Postać poruszająca się po planszy, docierając do jej skraju, spada. W tej wersji, postać Bohatera posiada możliwość wykonywania wyższych skoków. Dodatkowo wprowadzona zostanie druga poruszająca się horyzontalnie plansza.

Projekt podstawowy

Pierwszym etapem jest zrealizowanie podstawowego projektu dostępnego na stronie Gra platformowa

Względem pierwszego projektu wprowadzone zostały zmiany:

Duszki drzewa

Oddzielenie drzewek od tła teraz poruszają się niezależnie. Skrypt przesuwania jest taki sam jak dla tła, rozwinięty o opcję ukrycia duszków, gdy przesuną się do krawędzi ekranu.

Oddzielenie drzew.JPG

Druga plansza

Podstawowa wersja gry rozbudowana została o dodatkowe plansze:

Plansze.JPG

Duszek plansza2, rozciągająca pole gry przesuwa się identycznie jak duszek plansza, jednak ze zwiększeniem parametru na osi X, stąd w kodzie pojawia się zapis <+440>

Plansza 2.JPG

Dodatkowo pojawia się duszek plansza3, jako góry w tle.

Kompletne skrypty dla trzech plansz:

Plansza 1.

Plansza 1.JPG

Plansza 2. będąca przedłużeniem planszy 1.

Plansza 2kompl.JPG

Plansza 3. będaca wolniej przesuwajacym się tłem:

Plansza 3.JPG

Uwaga: w kodach plansz pojawia się opcja układania warstw, tak aby duszek góry pozostawał w dalszej warstwie niż duszki drzew, plansz i postaci Bohatera.

Wskazówka: Więcej o tworzeniu efektów głębi Moving Background

Grawitacja

Na potrzeby tego projektu, w bloku Dane stworzona została zmienna Grawitacja.

Grawitacja.png

Siła grawitacji ma być przeciwną do siły odbicia postaci od podłoża, tym samym ma powodować, że postać Bohatera będzie spadała w dół ekranu. Elementem zatrzymującym postać będzie plansza, jako podłoże. W momencie gdy postać Bohatera dotyka planszy, wartość zmiennej Grawitacja ma wartość równą 0. Każde odbicie od planszy (skok) wykonane jest poprzez zmianę wartości Y o przypisana wielkość i jednocześnie powoduję modyfikację zmiennej Grawitacja do wyznaczonej wartości, większej niż wartość Y. Dodatkowo wprowadzony zostaje warunek, że postać wykonująca skok w górę, opada tak długo aż dotknie planszy, sukcesywnie pomniejszając wartość Y o wartość zmiennej Grawitacja.

Grawitacja skrypt.png


Dodatki

Wprowadzenie efektu odbicia od podłoża zgodnie z zasadą zachowania energii kinetycznej oraz spadania z przyśpieszeniem ziemskim.