Segregacja odpadów: Różnice pomiędzy wersjami

Z Wiki Mistrzowie Kodowania
Skocz do: nawigacji, wyszukiwania
(Cel)
 
(Nie pokazano 221 wersji utworzonych przez 6 użytkowników)
Linia 1: Linia 1:
 
[[Category:Scenariusze Scratch]] [[Category:Mistrzowie Kodowania]]
 
[[Category:Scenariusze Scratch]] [[Category:Mistrzowie Kodowania]]
Adres do projektu: [[//scratch.mit.edu/projects/25369042/]]
+
 
 +
'''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".'''
 +
 
 +
Adres do projektu: http://scratch.mit.edu/projects/26093943/
 +
 
 
== Cel ==
 
== Cel ==
  
Linia 6: Linia 10:
 
# Stworzenie projektu o segregacji odpadów w środowisku Scratch (wersja zaawansowana)
 
# Stworzenie projektu o segregacji odpadów w środowisku Scratch (wersja zaawansowana)
  
'''Zgodność z podstawą programową'''
+
=== Zgodność z Podstawą Programową ===
  
* określa położenie obiektów względem obranego obiektu,
+
'''Edukacja polonistyczna'''
* posługuje się takimi środkami wyrazu plastycznego, jak: kształt, barwa, faktura;
+
* rozumie sens kodowania oraz dekodowania informacji; odczytuje uproszczone rysunki, piktogramy, znaki informacyjne i napisy,
+
*  obdarza uwagą dzieci i dorosłych, słucha ich wypowiedzi i chce zrozumieć, co przekazują;
+
* Pozycja na liście punktowanej
+
  
== Instrukcje (wersja podstawowa)==
+
#  w zakresie umiejętności społecznych warunkujących porozumiewanie się i kulturę języka:
 +
#* obdarza uwagą dzieci i dorosłych, słucha ich wypowiedzi i chce zrozumieć, co przekazują;
 +
#  w zakresie umiejętności czytania i pisania:
 +
#* rozumie sens kodowania oraz dekodowania informacji; odczytuje uproszczone rysunki, piktogramy, znaki informacyjne i napisy,
 +
 
 +
'''Edukacja przyrodnicza'''
 +
 
 +
#  w zakresie rozumienia i poszanowania świata roślin i zwierząt:
 +
#* zna zagrożenia dla środowiska przyrodniczego ze strony człowieka: np. wyrzucanie odpadów i spalanie śmieci itp.
 +
#* wie, że należy segregować śmieci; rozumie sens stosowania opakowań ekologicznych;
 +
 
 +
'''Zajęcia komputerowe'''
 +
# posługuje się komputerem w podstawowym zakresie: uruchamia program, korzystając z myszy i klawiatury;
 +
# stosuje się do ograniczeń dotyczących korzystania z komputera.
 +
 
 +
== Wprowadzenie ==
 +
<small>Czas na realizację tej części: ok 15 min</small>
 +
 
 +
Na początek proponujemy przeprowadzenie krótkiej dyskusji z uczniami na temat potrzeby i sposobu segregowania śmieci. Stwarzamy uczniom okazję do wypowiedzi na temat segregowania odpadów w ich najbliższym otoczeniu. Pytamy o potrzebę takiej segregacji. Prosimy uczniów o podanie kolorów i rodzajów śmietników do segregacji śmieci, które widują w swojej okolicy.
 +
 
 +
== Jak modyfikować==
 +
=== omówienie projektu bazowego i możliwych sposobów jego modyfikacji ===
 +
<small>Czas na realizację tej części: ok 15 min</small>
 +
 
 +
Po dyskusji na temat segregacji śmieci, proponujemy uczniom zastosowanie wiadomości w praktyce. Prezentujemy i omawiamy z uczniami uniwersalną postać projektu '''ekośmiecie''': http://scratch.mit.edu/projects/26093943/. Scrach-owy projekt polega na łapaniu spadających śmieci (odpadów) do koszy w odpowiednim kolorze. Odpady pojawiają się na ekranie dzięki funkcji klonowania. Klawisz „spacja” odpowiada za zmianę koloru kosza. Za każdy dobrze sklasyfikowany odpad gracz otrzymuje punkt np. gdy szkło wpadnie do odpadów szklanych. W celu prezentacji zasady działania gry, możemy poprosić chętnego ucznia o zagranie. Prosimy uczniów, aby w trakcie gry spróbowali rozszyfrować, jakie śmieci powinny wpadać do poszczególnych śmietników (niebieski - papier, brązowy - biodegradowalne, zielony - szkło). Pracę z projektem rozpoczynamy od zmodyfikowania gry bazowej. Ustalamy z uczniami na czym będzie polegała modyfikacja. Wspólnie wybieramy kolory koszy, w oparciu o zasady segregacji obowiązujące w naszej okolicy. W trakcie rozmowy powinny pojawić się jeszcze inne propozycje:
 +
# w duszku '''kosz''':
 +
#* trzeba dostosować kolory koszy do tych obowiązujących w danym regionie Polski,
 +
#* możemy zmienić nazwy kostiumów duszka '''kosz''', na takie, które mówią jaki rodzaj śmieci te kosze zbierają np.: niebieski możemy nazwać '''papier''')
 +
#* możemy dodać jeszcze inne rodzaje koszy;
 +
# w duszku '''śmieci''':
 +
#* możemy dostosować kolejność kostiumów śmieci do kolejności kostiumów koszy (np.: jeśli pierwszy kostium '''kosza''' to papier, to w duszku '''śmieci''' pierwsze 2 kostiumy będą z kategorii papier)
 +
#* możemy dodać dodatkowe kostiumy do poszczególnych rodzajów śmieci, przy czym należy trzymać się zasady, że w każdym rodzaju śmieci musi być taka sama ilość postaci tych śmieci np.: trzy rodzaje śmieci papierowych, trzy rodzaje śmieci biodegradowalnych oraz trzy rodzaje śmieci ze szkła.
 +
 
 +
=== pobranie projektu bazowego ===
 +
<small>Czas na realizację tej części: ok 10 min</small>
 +
 
 +
Pracę zaczynamy od pobrania wersji bazowej projektu ''Eko śmiecie''. Projekt możemy  pobrać bezpośrednio ze strony scratch-a, korzystając z adresu projektu: http://scratch.mit.edu/projects/25796357/. Powyższy adres można wcześniej zamieścić na szkolnym blogu/ stronie albo dodać projekt do studia Scratch. Gdy już znajdziemy projekt, klikamy w ikonę [[Plik:Ikona4.png|wyświetla wnętrze projektu]] i przechodzimy do wersji roboczej projektu. Jeśli uczniowie pracują on-line wystarczy, że klikną w REMIKS i zostanie on przypisany do ich konta. Jeśli uczniowie pracują off-line, należy wejść w polecenie ''plik'' i wybrać opcję ''pobierz na swój komputer''.
 +
 
 +
[[Plik:Okno1.png|800px|adaptacja gry bazy do konta lub na komputer]]
 +
 
 +
=== dodawanie i edycja śmieci: ===
 +
<small>Czas na realizację tej części: ok 45 min</small>
 +
 
 +
Jedną z modyfikacji projektu jest edycja duszka '''śmieci''' i zmiana jego wyglądu. Zadanie to rozpoczynamy od wejścia w zakładkę '''kostiumy'''. Możemy tam modyfikować istniejące lub tworzyć nowe kostiumy duszka '''śmieci'''. Polecamy tworzyć grafikę '''śmieci''' w trybie pracy wektorowym, gdyż tak utworzona grafika jest lepszej jakości, nawet podczas przybliżania i oddalania. Zmianę trybu pracy edytora graficznego dokonujemy w prawym dolnym rogu okna programu.
 +
 
 +
[[Plik:m1.png|400px|]]
 +
 
 +
W modyfikowanym projekcie bardzo ważne jest, jakie nazwy nadamy poszczególnym duszkom i ich kostiumom. Aby program potrafił prawidłowo odróżnić rodzaj danego śmiecia i połączył go z odpowiednim koszem, w nazwach kostiumów obu duszków musi pojawić się pewna część wspólna. Kolejne kostiumy duszka '''śmieci''' muszą zawierać w swojej nazwie, nazwę kosza do którego są przypisane. Pozostała część nazwy kostiumu duszka '''śmieci''' jest kolejnym numerem porządkowym np. kostiumy duszka '''śmieci''', które powinny wpadać do kosza o nazwie '''bio''' będą miały nazwy: '''bio1, bio2, bio3...'''. Kostiumy duszka '''śmieci''', które powinny wpadać do kosza o nazwie papier, będą miały nazwy: '''papier1, papier2, papier3...'''. Żeby gra działała prawidłowo musimy przestrzegać zasady, aby w każdym rodzaju duszka '''śmieci''' była taka sama ilość kostiumów np. trzy kostiumy śmieci papierowych, trzy kostiumy śmieci z rodzaju szkło itd.
 +
Ma to generalne znaczenie w przedstawionym poniżej fragmencie skryptu:
 +
 
 +
[[Plik:Ok3c.png|kojarzy rodzaj kosza z odpowiednim wyglądem śmiecia]]
 +
 
 +
Im więcej kolorów (rodzajów) śmietników wprowadzimy do gry, tym większy zakres liczb do losowania musimy wpisać (na rysunku powyżej, w czerwonej pętli "losuj od 1 do 3"). W grze bazowej mamy 3 kolory (rodzaje) śmietników, dlatego losujemy liczby od 1 do 3. Analogicznie dzieje się z wyglądami (kostiumami) duszka '''śmieci'''. Im więcej wyglądów danego rodzaju śmieci stworzymy, tym większy zakres liczb do losowania musimy wprowadzić (na rysunku: niebieska pętla). W grze bazowej każdy rodzaj śmieci ma po 2 wyglądy (kostiumy).
 +
 
 +
'''Wskazówka:''' Klocek [[Plik:Klocek11.png|komputer losuje kostiumy z wskazanego przedziału]] zaznaczony czerwoną pętlą w powyższym skrypcie, program scratch odczytuje jako: "wylosuj jeden z 3 różnych kolorów koszy". . Natomiast to, co jest w pętli niebieskiej, dzięki klockowi ''losuj...'' oznacza, że program wybiera spośród dwóch dostępnych kostiumów '''śmieci''' z konkretnej ich kategorii.
 +
 
 +
=== nowe kosze na śmieci: ===
 +
<small>Czas na realizację tej części: ok 20 min</small>
 +
 
 +
Dodawanie nowych rodzajów koszy polega na dodawaniu kolejnych kostiumów dla duszka '''kosz'''. Możemy skopiować wcześniejszy kostium, następnie zmienić jego kolor i nazwę.
 +
[[Plik:Ok4.png|dodawanie kolejnego rodzaju kosza]]
 +
 
 +
'''Wskazówka:''' Musimy pamiętać o odpowiednim nazewnictwie kostiumu '''kosza''' i kostiumów '''śmieci''' pasujących do nowego rodzaju '''kosza'''. Jeśli nowy kostium '''kosza''' nazwiemy np.: ''plastik'', to nowe kostiumy ''śmieci'' będą miały nazwy: ''plastik1''. ''plastik2'',...
 +
 
 +
'''Uwaga!''' W grze została wykorzystana lista '''rodzaje''' - zawierająca rodzaje śmietników. Jest to nowy rodzaj bloku z kategorii '''dane'''. Chcąc dodać do gry bazowej kolejny rodzaj śmietnika musimy pamiętać o dopisaniu go do utworzonej listy '''rodzaje'''.
 +
 
 +
[[Plik:Ok3d.png|dodanie nowego rodzaju śmietnika do listy]]
 +
 
 +
Nowe kostiumy - rodzaje koszy, trzeba również uwzględnić w zakresie liczb do losowania dla rodzajów śmieci w duszku '''śmieci'''.
 +
 
 +
[[Plik:Ok4a1.png|losowanie z ilości możliwych rodzai koszy]]
 +
 
 +
== Jak to działa ==
 +
<small>Czas na realizację tej części: 90 min</small>
 +
 
 +
=== wprowadzenie ===
 +
<small>Czas na realizację tej części: ok 15 min</small>
 +
 
 +
Po wstępnej rozmowie z uczniami na temat segregacji (patrz dział wprowadzenie na samej górze) przejdźmy do omówienia ostatecznego efektu, jaki chcemy otrzymać w grze. Zadaniem uczniów jest stworzyć grę, w której gracz będzie musiał prawidłowo dopasować kolor kosza do spadających śmieci. Za prawidłowe posegregowanie odpadów gracz będzie otrzymywał punkty. Musimy zatem stworzyć:
 +
# duszka '''kosz''', który będzie zmieniał kolor (rodzaj) przy użyciu wybranego klawisza na klawiaturze (np. spacja),
 +
# duszka '''śmieci''', który będzie produkował śmieci (z użyciem klocka ''sklonuj siebie''),
 +
# skrypty pozwalające śmieciom ciągle się produkować oraz sprawdzające prawidłowość posegregowania ich przez gracza -  wprowadzenie nowego bloku: '''lista''' z kategorii bloków '''dane''' ;
 +
# licznik naliczający punkty za prawidłową segregację.
 +
 
 +
=== tworzenie różnego rodzaju koszy do segregacji śmieci ===
 +
<small>Czas na realizację tej części: ok 20 min</small>
 +
 
 +
Postępujemy tak samo, jak w zakładce '''''dodawanie nowych koszy''''' w dziale '''modyfikacja'''.
 +
W wersji podstawowej proponujemy uczniom stworzenie 3 rodzajów (kostiumów) '''koszy''' np: brązowy o nazwie '''bio''', zielony o nazwie '''szkło''' i niebieski o nazwie '''papier'''. Chętni uczniowie mogą stworzyć więcej koszy. Ważne, żeby uwzględnić stworzoną ilość koszy w odpowiednich fragmentach skryptów.
 +
==== Instrukcje dla duszka '''kosz''' ====
 +
Po utworzeniu kostiumów dla duszka '''kosz''' musimy go zaprogramować tak, aby gracz miał możliwość szybkiej zmiany jego koloru (rodzaju). Uczniowie mogą zaproponować dowolne klawisze. Na tym etapie warto zasugerować użycie klawisza spacja. Poprośmy uczniów o zbudowanie skryptu, który pozwoliłby na szybką zmianę kostiumu (koloru kosza) na następny za pomocą klawisza spacja. Poszczególne kolory, to kostiumy duszka '''kosz''':
 +
 
 +
[[Plik:Ok5.png|po naciśnięciu spacji zmienia się kostium duszka (rodzaj kosza)]]
 +
 
 +
=== tworzenie duszka odpowiedzialnego za produkcję ŚMIECI ===
 +
<small>Czas na realizację tej części: ok 20 min</small>
 +
 
 +
Teraz zajmiemy się najtrudniejszym duszkiem, który będzie tworzył nam spadające śmiecie.
 +
Zacznijmy jak zawsze, od stworzenia duszka i nadaniu mu nazwy  '''śmieci'''. Następnie przejdźmy do zakładki jego kostiumów. W tym miejscu pod postaciami kolejnych kostiumów będziemy tworzyli różne rodzaje śmieci. Bardzo ważne jest tu nazewnictwo, zwróćmy uczniom na to szczególną uwagę. Pierwsza część nazwy kostiumu '''śmieci''' jest to nazwa odpowiadająca rodzajowi śmietnika. Jeśli w duszku '''kosz''' jakiś kostium nazywa się np.: '''bio''' to wszystkie śmieci biodegradowalne muszą zaczynać się od '''bio'''. Dalsza część nazwy kostiumu (cyferka) jest to numer indywidualny wyglądu odpadu, (najlepiej od 1 w górę). Przykład: kosz nazywa się '''bio''', tworzymy do niego dwa śmiecie o nazwach: '''bio1''' oraz '''bio2''':
 +
 
 +
[[Plik:ok4b1.png|850px|]]
 +
 
 +
'''Uwaga!''' Wszystkie rodzaje śmieci powinny mieć po tyle samo wyglądów.
 +
 
 +
 
 +
 
 +
Gdy mamy już stworzone wszystkie kostiumy musimy naszego duszka: '''śmieci''' zakodować.
 +
 
 +
==== instrukcje dla duszka śmieci ====
 +
<small>Czas na realizację tej części: ok 35 min</small>
 +
 
 +
Na początku stworzymy zegar, który będzie co 2 sec wytwarzał nam klona.
  
== Jak działa? ==
 
Naszym zadaniem w grze jest segregowanie odpadów do odpowiednich koloru kontenerów.
 
Na samym początku stworzymy duszka którego zadaniem będzie ustalanie koloru śmietnika.
 
Na początku zajmiemy się stworzeniem kostiumów.
 
Ja stworzyłem 3 śmietnik, brązowy, zielony i niebieski. Można dodać ich więcej oczywiście tylko trzeba pamiętać o kolejności.
 
Nazwy kostiumów polecam nazwać pierwszy człon to rodzaj kontenera np. plastik, szkło, drugi człon to będzie indywidualny numer najlepiej po kolej 1,2,..
 
[[Plik:1.png]]
 
Nasz kolory zmieniają się od lewej do prawej.
 
Nasz kod wygląda bardzo prosto. wystarczy ustawić by po przyciśnięciu np. spacji zmienia nam się kostium na następny.
 
[[Plik:2.png]]
 
Nasz wybór koloru śmietnika ustawimy sobie w prawym dolnym rogu.
 
Teraz zajmiemy się stworzeniem pojazdu który będzie wywoził nasze odpady.
 
Zaczniemy równie od narysowania naszego duszka.
 
[[Plik:3.png]]
 
Pomarańczowa ramka wskazuje na przycisk dzięki któremu może zmieniać tryb obrazu z bitmapy na wektory.
 
Teraz zajmiemy się jazdą naszej śmieciary. Kod jest bardzo prosty. Zawsze kiedy będzie wciśnięta strzałka w prawo lub w lewo nasz pojazd przesunie się w odpowiedni kierunek. Dodatkowo dodamy skrypt który sprawi, że nasz kontener nie wjedzie nam w ścianę. Zawsze kiedy dotnie krawędzi zostanie przesunięty w prawo o 10 kratek, natomiast kiedy dotnie naszego duszka odpowiedzialnego za wybór koloru zostanie odepchnięty w lewo.
 
[[Plik:4.png]]
 
Teraz zajmiemy się najtrudniejszym duszkiem który będzie tworzył nam spadające śmiecie.
 
Zaczniemy jak zawsze od stworzenia duszków, bardzo ważne jest tu nazewnictwo. Pierwszy numer nazwy jest to numer odpowiadając rodzajowi śmietnika, jeśli w duszku odpowiadającym za wybieranie koloru śmietnika nazwa np. plastik1 to wszystkie śmieci plastikowe muszą zaczynać się na 1. Dalsza część jest no numer indywidualny wyglądu odpadu najlepiej od 1 w górę, i wszystkie rodzaje śmieci powinny mieć tyle samo wyglądów.
 
[[Plik:5.png]]
 
Teraz wszystko zakodujemy. Na początku stworzymy zegar który będzie co 2 sec tworzył nam klona.
 
 
[[Plik:6a.png]]
 
[[Plik:6a.png]]
Teraz zajmiemy się naszym kolonem. Stworzymy dwie pomocnicze zmienne rodzaj i punkty. Rodzaj będzie przechowywał typ naszego śmiecia, jako id, natomiast punkty będą naliczane podczas zabrania odpowiedniego odpadu.
+
 
 +
Następnie musimy stworzyć skrypt dla klona który się produkuje masowo. Musi on wiedzieć, jak rozróżniać do którego rodzaju kosza wpada, czy gracz wybrał prawidłowy rodzaj kosza oraz, jak naliczać punkt za poprawną segregację. W tym celu potrzebujemy wprowadzenia dwóch zmiennych:
 +
'''''Rodzaj'''''- będzie przechowywał typ naszego śmiecia, jako taki identyfikatora oraz '''''Punkty'''''- będą naliczane podczas zebrania przez '''kosz''' odpowiedniego odpadu.
 +
 
 
[[Plik:6b.png]]
 
[[Plik:6b.png]]
Kod poniżej jest całą zawartością duszka odpowiadającego za śmieci. Kiedy nasz klon zostanie powołany do życia, pojawia się i od razu jest losowany jego rodzaj z podanego przedziału. Następnie zmieniamy jego kostium łącząc ze sobą rodzai i numer wyglądu. Kiedy już mamy nasz wygląd umieszczamy go na losowej pozycji z przedziału x od -200 do 30. Teraz jest bardzo ważny moment w którym sprawdzamy czy nasz duszek wpada do kontenera. Zawsze jeśli dotknie on kosza i posiada odpowiedni rodzaj czyli butelka szklana wpada do zielonego śmietnika naliczane są punkty. Natomiast jeśli źle go przyporządkujemy zostanie on po porostu skasowany, można to przerobić by odejmowało nam punkty przy pomyłce. Do puki nasz odpad nie dotyka kosza będzie on spadał aż dotknie krawędź lub wspomniany kosz.
 
[[Plik:6.png]]
 
  
== Jak modyfikować? ==
+
Aby wprowadzić te zmienne wchodzimy w kategorię klocków: '''dane''' i wybieramy polecenie ''stwórz zmienną''. W oknie nazwy wpisujemy ''rodzaj'' lub ''punkty'' (każdą zmienną tworzymy oddzielnie). Zaznaczamy opcję: ''tylko dla tego duszka'' i klikamy OK. Stworzona przez nas zmienna pojawi się automatycznie w kategorii '''dane'''. Jeśli chcemy aby nie była widoczna na scenie, musimy anulować odhaczenie (ptaszka) po lewej stronie przy jej nazwie. Przy przedstawionych poniżej ustawieniach: zmienna '''''Punkty''''' - widoczna na scenie, zmienna '''''Rodzaj''''' - niewidoczna na scenie
Jeśli znamy już mechanikę działania naszej gry edycja będzie bardzo prosta i nie powinna sprawić nam problemów.
+
 
Wystarczy zmieniać duszki odpowiedzialne za wybieranie koloru śmietnika i duszka odpowiedzialnego za odpady.
+
[[Plik:Okno2.png|nowe zmienne]]
=== Dodawanie i edycja śmieci: ===
+
 
Podstawowa edycja śmieci do zmiana wyglądu. Którą możemy dokonać po wejściu w zakładkę kostiumy. Możemy tam tworzyć nasze śmieci, ja polecam tworzyć je przy pomocy wektorów, są one potem w lepszej jakości nawet podczas przybliżania i oddalania. Można to zmienić w prawym dolnym rogu.
+
'''Uwaga!''' Każdą zmienną wprowadzamy oddzielnie.
[[Plik:m1.png]]
+
 
Bardzo ważne jest tu nazewnictwo naszych duszków, pierwsza liczna oznacza rodzaj odpadu np. plastik, szkło, papier, ten numer ustalamy w duszku odpowiadającemu za wybór koloru kontenera. Reszta nazwy jest indywidualnym numerem wyglądu, muszą być one po koli, najlepiej od jedne w górę.
+
===== tworzenie ''listy'' z rodzajami śmietników =====
Bardzo ważna jest zmiana kodu w kodzie podajemy jaki mamy przedział rodzai śmieci i ile mamy wyglądów danego typu.
+
Program musi zapamiętać stworzone przez nasz rodzaje śmietników, aby skojarzyć je ze śmieciami do nich wpadającymi. W tym celu wprowadzimy nowy blok z kategorii '''dane'''. Będzie nim ''nowa lista'', którą nazwiemy '''rodzaje'''.  
Na czerwono jest zaznaczony przedział ilości śmietników.
+
 
Natomiast na żółto ile mamy kostiumów danego rodzaju np. plastików.
+
[[Plik:Ok4d1.png|tworzenie nowej listy]]
[[Plik:m2.png]]
+
 
=== Nowe kosze na śmieci: ===
+
Żeby lista '''rodzaje''' spełniła prawidłowo swoją funkcję, musimy na nią wprowadzić nazwy koszy, jakich używamy w naszej grze. Wykorzystamy do tego klocek [[Plik:Ok4e.png|wprowadzanie elementów na listę]]. Każdy rodzaj śmietnika dopisujemy do naszej listy '''rodzaje'''. Bloki (każy rodzaj śmietnika w nowym bloku) podpinamy pod blok z zieloną flagą:
Dodawanie koszy jest banalne, trzeba tylko pamiętać o odpowiednim nazewnictwie.
+
 
Wystarczy dodać odpowiednią liczbę duszków i pamiętać by numery się nie powtarzały.
+
[[Plik:Ok4f1.png|wprowadzanie 3 elementów na listę rodzaje]]
[[Plik:m3.png]]
+
 
 +
===== moment losowania śmieci =====
 +
Gdy nasz klon zostanie powołany do życia, pojawia się i od razu powinien być losowany jego rodzaj (z rodzajów śmietników) oraz jego wygląd z możliwych w danym rodzaju śmieci. Posłuży nam do tego klocek: [[Plik:Ok8.png|losowanie rodzaju śmieci]]. Będzie losował jednej z 3 kategorii śmieci (zaznaczon na czerwono) oraz jeden z 2 wyglądów śmiecia z konkretnej kategorii (zaznaczono na niebiesko).
 +
Skrypt klona pozwalający wykonać mu powyższe czynności powinien wyglądać:
 +
 
 +
[[Plik:Ok3.png|losowanie wyglądu śmiecia z określonej kategorii]]
 +
 
 +
 
 +
Musimy również określić powstałemu klonowi obszar jego poruszania się, co umożliwi klocek: [[Plik:Ok3a.png|określamy współrzędne docelowe dla duszka]]. Współrzędna x, określająca duszkowi '''śmieć''' możliwość wyboru miejsca pojawienia się w szerokości sceny oraz współrzędna y narzucająca miejsce u góry sceny.
 +
 
 +
===== sprawdzanie zgodności ŚMIECIA z KOSZEM =====
 +
Następnie kodujemy moment , w którym sprawdzamy, czy nasz duszek wpada do '''kosza'''. Uczniowie intuicyjnie zaproponują użycie klocka warunkowego. Nakierujmy ich na klocek [[Plik:Ok9.png]], ponieważ pojawi się kilka możliwych zakończeń gry.
 +
 
 +
Przeanalizujmy możliwe sytuacje, które mogą się pojawić:
 +
* jeśli duszek dotknie '''kosza''' i posiada on odpowiedni rodzaj, czyli np.:szklana butelka (szkło1) wpada do zielonego śmietnika (szkło) naliczane są punkty:
 +
 
 +
[[Plik:Ok9a.png|część skryptu z odpowiadająca za prawidłowe dopasowanie śmiecia do kosza]], jeśli źle go przyporządkujemy zostanie on po porostu skasowany.
 +
 
 +
* dopóki nasz odpad nie dotknie '''kosza''' będzie spadał, aż dotknie krawędzi sceny i zniknie:
 +
 
 +
[[Plik:Ok9b.png|część skryptu odpowiadająca za dotknięcie krawędzi sceny]]. Dodatkowe wykorzystanie klocka
 +
[[Plik:Ok5b.png|pozwala kontrolować prędkość opadania]] w odpowiednim miejscu skryptu, pozwoli kontrolować prędkością spadania odpadu.
 +
 
 +
Aby gra się zapętlała wykorzystamy klocek kontroli
 +
[[Plik:Ok9c.png|umożliwi ciągłe powtarzanie gry]]
 +
 
 +
Skrypt przedstawiony poniżej jest całą zawartością duszka odpowiadającego za śmieci:
 +
 
 +
[[Plik:6.png]]  [[Plik:Ok5d.png|right|przykładowy wygląd okna programu]]
 +
 
 +
== Co dalej? ==
 +
 
 +
Podstawową grę można zmodyfikować poprzez:
 +
* wprowadzenie skryptu odejmującego punkty za złe dopasowanie śmieci do kosza;
 +
* wprowadzenie efektów dźwiękowych informujących o poprawnym wyborze kosza,
 +
* wprowadzenie warunków określających zakończenie gry.

Aktualna wersja na dzień 12:10, 7 lis 2014


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".

Adres do projektu: http://scratch.mit.edu/projects/26093943/

Cel

  1. Remiks projektu bazowego Eko śmieci i dostosowanie go do zasad segregacji adekwatnych dla danego regionu. (wersja łatwiejsza)
  2. Stworzenie projektu o segregacji odpadów w środowisku Scratch (wersja zaawansowana)

Zgodność z Podstawą Programową

Edukacja polonistyczna

  1. w zakresie umiejętności społecznych warunkujących porozumiewanie się i kulturę języka:
    • obdarza uwagą dzieci i dorosłych, słucha ich wypowiedzi i chce zrozumieć, co przekazują;
  2. w zakresie umiejętności czytania i pisania:
    • rozumie sens kodowania oraz dekodowania informacji; odczytuje uproszczone rysunki, piktogramy, znaki informacyjne i napisy,

Edukacja przyrodnicza

  1. w zakresie rozumienia i poszanowania świata roślin i zwierząt:
    • zna zagrożenia dla środowiska przyrodniczego ze strony człowieka: np. wyrzucanie odpadów i spalanie śmieci itp.
    • wie, że należy segregować śmieci; rozumie sens stosowania opakowań ekologicznych;

Zajęcia komputerowe

  1. posługuje się komputerem w podstawowym zakresie: uruchamia program, korzystając z myszy i klawiatury;
  2. stosuje się do ograniczeń dotyczących korzystania z komputera.

Wprowadzenie

Czas na realizację tej części: ok 15 min

Na początek proponujemy przeprowadzenie krótkiej dyskusji z uczniami na temat potrzeby i sposobu segregowania śmieci. Stwarzamy uczniom okazję do wypowiedzi na temat segregowania odpadów w ich najbliższym otoczeniu. Pytamy o potrzebę takiej segregacji. Prosimy uczniów o podanie kolorów i rodzajów śmietników do segregacji śmieci, które widują w swojej okolicy.

Jak modyfikować

omówienie projektu bazowego i możliwych sposobów jego modyfikacji

Czas na realizację tej części: ok 15 min

Po dyskusji na temat segregacji śmieci, proponujemy uczniom zastosowanie wiadomości w praktyce. Prezentujemy i omawiamy z uczniami uniwersalną postać projektu ekośmiecie: http://scratch.mit.edu/projects/26093943/. Scrach-owy projekt polega na łapaniu spadających śmieci (odpadów) do koszy w odpowiednim kolorze. Odpady pojawiają się na ekranie dzięki funkcji klonowania. Klawisz „spacja” odpowiada za zmianę koloru kosza. Za każdy dobrze sklasyfikowany odpad gracz otrzymuje punkt np. gdy szkło wpadnie do odpadów szklanych. W celu prezentacji zasady działania gry, możemy poprosić chętnego ucznia o zagranie. Prosimy uczniów, aby w trakcie gry spróbowali rozszyfrować, jakie śmieci powinny wpadać do poszczególnych śmietników (niebieski - papier, brązowy - biodegradowalne, zielony - szkło). Pracę z projektem rozpoczynamy od zmodyfikowania gry bazowej. Ustalamy z uczniami na czym będzie polegała modyfikacja. Wspólnie wybieramy kolory koszy, w oparciu o zasady segregacji obowiązujące w naszej okolicy. W trakcie rozmowy powinny pojawić się jeszcze inne propozycje:

  1. w duszku kosz:
    • trzeba dostosować kolory koszy do tych obowiązujących w danym regionie Polski,
    • możemy zmienić nazwy kostiumów duszka kosz, na takie, które mówią jaki rodzaj śmieci te kosze zbierają np.: niebieski możemy nazwać papier)
    • możemy dodać jeszcze inne rodzaje koszy;
  2. w duszku śmieci:
    • możemy dostosować kolejność kostiumów śmieci do kolejności kostiumów koszy (np.: jeśli pierwszy kostium kosza to papier, to w duszku śmieci pierwsze 2 kostiumy będą z kategorii papier)
    • możemy dodać dodatkowe kostiumy do poszczególnych rodzajów śmieci, przy czym należy trzymać się zasady, że w każdym rodzaju śmieci musi być taka sama ilość postaci tych śmieci np.: trzy rodzaje śmieci papierowych, trzy rodzaje śmieci biodegradowalnych oraz trzy rodzaje śmieci ze szkła.

pobranie projektu bazowego

Czas na realizację tej części: ok 10 min

Pracę zaczynamy od pobrania wersji bazowej projektu Eko śmiecie. Projekt możemy pobrać bezpośrednio ze strony scratch-a, korzystając z adresu projektu: http://scratch.mit.edu/projects/25796357/. Powyższy adres można wcześniej zamieścić na szkolnym blogu/ stronie albo dodać projekt do studia Scratch. Gdy już znajdziemy projekt, klikamy w ikonę wyświetla wnętrze projektu i przechodzimy do wersji roboczej projektu. Jeśli uczniowie pracują on-line wystarczy, że klikną w REMIKS i zostanie on przypisany do ich konta. Jeśli uczniowie pracują off-line, należy wejść w polecenie plik i wybrać opcję pobierz na swój komputer.

adaptacja gry bazy do konta lub na komputer

dodawanie i edycja śmieci:

Czas na realizację tej części: ok 45 min

Jedną z modyfikacji projektu jest edycja duszka śmieci i zmiana jego wyglądu. Zadanie to rozpoczynamy od wejścia w zakładkę kostiumy. Możemy tam modyfikować istniejące lub tworzyć nowe kostiumy duszka śmieci. Polecamy tworzyć grafikę śmieci w trybie pracy wektorowym, gdyż tak utworzona grafika jest lepszej jakości, nawet podczas przybliżania i oddalania. Zmianę trybu pracy edytora graficznego dokonujemy w prawym dolnym rogu okna programu.

M1.png

W modyfikowanym projekcie bardzo ważne jest, jakie nazwy nadamy poszczególnym duszkom i ich kostiumom. Aby program potrafił prawidłowo odróżnić rodzaj danego śmiecia i połączył go z odpowiednim koszem, w nazwach kostiumów obu duszków musi pojawić się pewna część wspólna. Kolejne kostiumy duszka śmieci muszą zawierać w swojej nazwie, nazwę kosza do którego są przypisane. Pozostała część nazwy kostiumu duszka śmieci jest kolejnym numerem porządkowym np. kostiumy duszka śmieci, które powinny wpadać do kosza o nazwie bio będą miały nazwy: bio1, bio2, bio3.... Kostiumy duszka śmieci, które powinny wpadać do kosza o nazwie papier, będą miały nazwy: papier1, papier2, papier3.... Żeby gra działała prawidłowo musimy przestrzegać zasady, aby w każdym rodzaju duszka śmieci była taka sama ilość kostiumów np. trzy kostiumy śmieci papierowych, trzy kostiumy śmieci z rodzaju szkło itd. Ma to generalne znaczenie w przedstawionym poniżej fragmencie skryptu:

kojarzy rodzaj kosza z odpowiednim wyglądem śmiecia

Im więcej kolorów (rodzajów) śmietników wprowadzimy do gry, tym większy zakres liczb do losowania musimy wpisać (na rysunku powyżej, w czerwonej pętli "losuj od 1 do 3"). W grze bazowej mamy 3 kolory (rodzaje) śmietników, dlatego losujemy liczby od 1 do 3. Analogicznie dzieje się z wyglądami (kostiumami) duszka śmieci. Im więcej wyglądów danego rodzaju śmieci stworzymy, tym większy zakres liczb do losowania musimy wprowadzić (na rysunku: niebieska pętla). W grze bazowej każdy rodzaj śmieci ma po 2 wyglądy (kostiumy).

Wskazówka: Klocek komputer losuje kostiumy z wskazanego przedziału zaznaczony czerwoną pętlą w powyższym skrypcie, program scratch odczytuje jako: "wylosuj jeden z 3 różnych kolorów koszy". . Natomiast to, co jest w pętli niebieskiej, dzięki klockowi losuj... oznacza, że program wybiera spośród dwóch dostępnych kostiumów śmieci z konkretnej ich kategorii.

nowe kosze na śmieci:

Czas na realizację tej części: ok 20 min

Dodawanie nowych rodzajów koszy polega na dodawaniu kolejnych kostiumów dla duszka kosz. Możemy skopiować wcześniejszy kostium, następnie zmienić jego kolor i nazwę. dodawanie kolejnego rodzaju kosza

Wskazówka: Musimy pamiętać o odpowiednim nazewnictwie kostiumu kosza i kostiumów śmieci pasujących do nowego rodzaju kosza. Jeśli nowy kostium kosza nazwiemy np.: plastik, to nowe kostiumy śmieci będą miały nazwy: plastik1. plastik2,...

Uwaga! W grze została wykorzystana lista rodzaje - zawierająca rodzaje śmietników. Jest to nowy rodzaj bloku z kategorii dane. Chcąc dodać do gry bazowej kolejny rodzaj śmietnika musimy pamiętać o dopisaniu go do utworzonej listy rodzaje.

dodanie nowego rodzaju śmietnika do listy

Nowe kostiumy - rodzaje koszy, trzeba również uwzględnić w zakresie liczb do losowania dla rodzajów śmieci w duszku śmieci.

losowanie z ilości możliwych rodzai koszy

Jak to działa

Czas na realizację tej części: 90 min

wprowadzenie

Czas na realizację tej części: ok 15 min

Po wstępnej rozmowie z uczniami na temat segregacji (patrz dział wprowadzenie na samej górze) przejdźmy do omówienia ostatecznego efektu, jaki chcemy otrzymać w grze. Zadaniem uczniów jest stworzyć grę, w której gracz będzie musiał prawidłowo dopasować kolor kosza do spadających śmieci. Za prawidłowe posegregowanie odpadów gracz będzie otrzymywał punkty. Musimy zatem stworzyć:

  1. duszka kosz, który będzie zmieniał kolor (rodzaj) przy użyciu wybranego klawisza na klawiaturze (np. spacja),
  2. duszka śmieci, który będzie produkował śmieci (z użyciem klocka sklonuj siebie),
  3. skrypty pozwalające śmieciom ciągle się produkować oraz sprawdzające prawidłowość posegregowania ich przez gracza - wprowadzenie nowego bloku: lista z kategorii bloków dane ;
  4. licznik naliczający punkty za prawidłową segregację.

tworzenie różnego rodzaju koszy do segregacji śmieci

Czas na realizację tej części: ok 20 min

Postępujemy tak samo, jak w zakładce dodawanie nowych koszy w dziale modyfikacja. W wersji podstawowej proponujemy uczniom stworzenie 3 rodzajów (kostiumów) koszy np: brązowy o nazwie bio, zielony o nazwie szkło i niebieski o nazwie papier. Chętni uczniowie mogą stworzyć więcej koszy. Ważne, żeby uwzględnić stworzoną ilość koszy w odpowiednich fragmentach skryptów.

Instrukcje dla duszka kosz

Po utworzeniu kostiumów dla duszka kosz musimy go zaprogramować tak, aby gracz miał możliwość szybkiej zmiany jego koloru (rodzaju). Uczniowie mogą zaproponować dowolne klawisze. Na tym etapie warto zasugerować użycie klawisza spacja. Poprośmy uczniów o zbudowanie skryptu, który pozwoliłby na szybką zmianę kostiumu (koloru kosza) na następny za pomocą klawisza spacja. Poszczególne kolory, to kostiumy duszka kosz:

po naciśnięciu spacji zmienia się kostium duszka (rodzaj kosza)

tworzenie duszka odpowiedzialnego za produkcję ŚMIECI

Czas na realizację tej części: ok 20 min

Teraz zajmiemy się najtrudniejszym duszkiem, który będzie tworzył nam spadające śmiecie. Zacznijmy jak zawsze, od stworzenia duszka i nadaniu mu nazwy śmieci. Następnie przejdźmy do zakładki jego kostiumów. W tym miejscu pod postaciami kolejnych kostiumów będziemy tworzyli różne rodzaje śmieci. Bardzo ważne jest tu nazewnictwo, zwróćmy uczniom na to szczególną uwagę. Pierwsza część nazwy kostiumu śmieci jest to nazwa odpowiadająca rodzajowi śmietnika. Jeśli w duszku kosz jakiś kostium nazywa się np.: bio to wszystkie śmieci biodegradowalne muszą zaczynać się od bio. Dalsza część nazwy kostiumu (cyferka) jest to numer indywidualny wyglądu odpadu, (najlepiej od 1 w górę). Przykład: kosz nazywa się bio, tworzymy do niego dwa śmiecie o nazwach: bio1 oraz bio2:

Ok4b1.png

Uwaga! Wszystkie rodzaje śmieci powinny mieć po tyle samo wyglądów.


Gdy mamy już stworzone wszystkie kostiumy musimy naszego duszka: śmieci zakodować.

instrukcje dla duszka śmieci

Czas na realizację tej części: ok 35 min

Na początku stworzymy zegar, który będzie co 2 sec wytwarzał nam klona.

6a.png

Następnie musimy stworzyć skrypt dla klona który się produkuje masowo. Musi on wiedzieć, jak rozróżniać do którego rodzaju kosza wpada, czy gracz wybrał prawidłowy rodzaj kosza oraz, jak naliczać punkt za poprawną segregację. W tym celu potrzebujemy wprowadzenia dwóch zmiennych: Rodzaj- będzie przechowywał typ naszego śmiecia, jako taki identyfikatora oraz Punkty- będą naliczane podczas zebrania przez kosz odpowiedniego odpadu.

6b.png

Aby wprowadzić te zmienne wchodzimy w kategorię klocków: dane i wybieramy polecenie stwórz zmienną. W oknie nazwy wpisujemy rodzaj lub punkty (każdą zmienną tworzymy oddzielnie). Zaznaczamy opcję: tylko dla tego duszka i klikamy OK. Stworzona przez nas zmienna pojawi się automatycznie w kategorii dane. Jeśli chcemy aby nie była widoczna na scenie, musimy anulować odhaczenie (ptaszka) po lewej stronie przy jej nazwie. Przy przedstawionych poniżej ustawieniach: zmienna Punkty - widoczna na scenie, zmienna Rodzaj - niewidoczna na scenie

nowe zmienne

Uwaga! Każdą zmienną wprowadzamy oddzielnie.

tworzenie listy z rodzajami śmietników

Program musi zapamiętać stworzone przez nasz rodzaje śmietników, aby skojarzyć je ze śmieciami do nich wpadającymi. W tym celu wprowadzimy nowy blok z kategorii dane. Będzie nim nowa lista, którą nazwiemy rodzaje.

tworzenie nowej listy

Żeby lista rodzaje spełniła prawidłowo swoją funkcję, musimy na nią wprowadzić nazwy koszy, jakich używamy w naszej grze. Wykorzystamy do tego klocek wprowadzanie elementów na listę. Każdy rodzaj śmietnika dopisujemy do naszej listy rodzaje. Bloki (każy rodzaj śmietnika w nowym bloku) podpinamy pod blok z zieloną flagą:

wprowadzanie 3 elementów na listę rodzaje

moment losowania śmieci

Gdy nasz klon zostanie powołany do życia, pojawia się i od razu powinien być losowany jego rodzaj (z rodzajów śmietników) oraz jego wygląd z możliwych w danym rodzaju śmieci. Posłuży nam do tego klocek: losowanie rodzaju śmieci. Będzie losował jednej z 3 kategorii śmieci (zaznaczon na czerwono) oraz jeden z 2 wyglądów śmiecia z konkretnej kategorii (zaznaczono na niebiesko). Skrypt klona pozwalający wykonać mu powyższe czynności powinien wyglądać:

losowanie wyglądu śmiecia z określonej kategorii


Musimy również określić powstałemu klonowi obszar jego poruszania się, co umożliwi klocek: określamy współrzędne docelowe dla duszka. Współrzędna x, określająca duszkowi śmieć możliwość wyboru miejsca pojawienia się w szerokości sceny oraz współrzędna y narzucająca miejsce u góry sceny.

sprawdzanie zgodności ŚMIECIA z KOSZEM

Następnie kodujemy moment , w którym sprawdzamy, czy nasz duszek wpada do kosza. Uczniowie intuicyjnie zaproponują użycie klocka warunkowego. Nakierujmy ich na klocek Ok9.png, ponieważ pojawi się kilka możliwych zakończeń gry.

Przeanalizujmy możliwe sytuacje, które mogą się pojawić:

  • jeśli duszek dotknie kosza i posiada on odpowiedni rodzaj, czyli np.:szklana butelka (szkło1) wpada do zielonego śmietnika (szkło) naliczane są punkty:

część skryptu z odpowiadająca za prawidłowe dopasowanie śmiecia do kosza, jeśli źle go przyporządkujemy zostanie on po porostu skasowany.

  • dopóki nasz odpad nie dotknie kosza będzie spadał, aż dotknie krawędzi sceny i zniknie:

część skryptu odpowiadająca za dotknięcie krawędzi sceny. Dodatkowe wykorzystanie klocka pozwala kontrolować prędkość opadania w odpowiednim miejscu skryptu, pozwoli kontrolować prędkością spadania odpadu.

Aby gra się zapętlała wykorzystamy klocek kontroli umożliwi ciągłe powtarzanie gry

Skrypt przedstawiony poniżej jest całą zawartością duszka odpowiadającego za śmieci:

6.png
przykładowy wygląd okna programu

Co dalej?

Podstawową grę można zmodyfikować poprzez:

  • wprowadzenie skryptu odejmującego punkty za złe dopasowanie śmieci do kosza;
  • wprowadzenie efektów dźwiękowych informujących o poprawnym wyborze kosza,
  • wprowadzenie warunków określających zakończenie gry.