Jeszcze więcej duszków. Klonowanie, stemplowanie i komunikaty
Wyścigi – scenariusz projektu
Projekt będzie polegał na opracowaniu programu symulującego wyścigi. Od twojego wyboru zależy, jacy zawodnicy lub zawodniczki wezmą udział w danej konkurencji. Może to być bieg lekkoatletyczny, wyścig zwierząt, samochodów albo motocykli. Zawodom towarzyszyć powinna publiczność dopingująca swoich faworytów. Gdy konkurencja się zakończy, część publiczności będzie się cieszyła ze zwycięstwa swojego zawodnika, druga zaś będzie spokojnie stała po przegranej.
Zobacz przykładowe działanie aplikacji na poniższym filmie.

Film dostępny pod adresem /preview/resource/RvNX6mjMkFgBa
Film: Przykładowe działanie programu symulującego wyścigi.
Zaplanuj scenerię dla projektu - zastanów się, gdzie umieścisz publiczność, tory wyścigowe, punkt startu oraz mety. Czy użytkownik będzie na nich patrzył z boku, a może z góry?
Projektujemy działania duszków
Zastanów się nad możliwym przebiegiem wyścigu i zapisz algorytmy, według których poruszać się będzie każdy zawodnik. Pamiętaj, żeby zaplanować ruch w taki sposób, by szanse na zwycięstwo obu zawodników były takie same oraz by w czasie wyścigu mogli zmieniać się na prowadzeniu. Symulacja dzięki temu będzie bardziej dynamiczna.
Zapisz algorytm, który będzie rozpoznawał, że zawodnik osiągnął linię mety.
Określ, w jaki sposób rozpoznać, że zawodnik wygrał lub przegrał.
Opisz w jaki sposób powinien zachowywać się duszek - kibic? Zapisz algorytmy postępowania kibica w trakcie wyścigu, a także po przegranej lub wygranej zawodnika któremu będzie kibicować.
Jak można było zauważyć na filmie z przykładem działania programu, poszczególnym zawodnikom kibicuje całkiem duża grupa publiczności. Ustalmy najpierw działanie pojedynczego kibica, w dalszej części materiału zajmiemy się ich powielaniem.
Tworzymy aplikację - budujemy skrypty
Mając zaprojektowane działania dla poszczególnych duszków, możesz przystąpić do stworzenia skryptów.
Przygotuj tło sceny na potrzeby wyścigów, dodaj dwa duszki - zawodników oraz dwa duszki - kibiców (po jednym dla każdego zawodnika), ewentualnie inne duszki - jeśli zostały uwzględnione w twoim planie. Nie zapomnij odpowiednio nazwać każdego duszka.
To jak przygotujesz tło sceny będzie miało wpływ na pozycje startowe zawodników, czy miejsca kibiców. Nie musisz sugerować się poniższymi wartościami. W twoich skryptach zawodnicy mogą ścigać się, np. w innym miejscu sceny.
Stwórz skrypty dla każdego z duszków zgodnie z przygotowanymi algorytmami ich działania. Następnie przetestuj program. Uruchom go parokrotnie. Czy zawodnicy zwyciężają na zmianę? Czy każdego z zawodników dopinguje jeden kibic, który cieszy się, w przypadku zwycięstwa lub jest smutny, w przypadku przegranej?
Zwiększamy liczbę kibiców
Podczas zawodów jednego zawodnika lub drużynę dopinguje zazwyczaj wielu kibiców. Dlatego także w twojej symulacji wyścigów warto zadbać o odpowiednią liczbę widzów.
Zmodyfikuj działanie duszka - kibica tak, aby zwiększyć liczbę widzów dopingujących danego zawodnika. Wykorzystaj w tym celu mechanizm klonowaniamechanizm klonowania.
Zadania uzupełniające
Dodaj do aplikacji wyświetlanie czasów poszczególnych zawodników w podobny sposób, jak widać na filmie z przykładową aplikacją.
Dodaj do aplikacji wyświetlanie miejsca, które zajął dany zawodnik, w podobny sposób, jak widać na filmie z przykładową aplikacją.
Przeprowadź kilkanaście wyścigów i zanotuj, ile razy wygrali poszczególni zawodnicy. Wyniki porównaj z kolegami i koleżankami. Czy można przyjąć, że przy odpowiednio wielu próbach, każdy z zawodników wygra mniej więcej tyle samo razy?
Zmodyfikuj aplikację w taki sposób, aby automatycznie po zakończeniu wyścigu startował następny. Niech program automatycznie zlicza i wyświetla łączną liczbę wygranych dla poszczególnych zawodników. Uruchom program i obserwuj wyniki. Czy twoje wcześniejsze obserwacje potwierdzają się?
Wykorzystaj poniższe pole na zapisanie swoich notatek i przemyśleń.













