wiki:TehtavatTiistai
Last modified 9 years ago Last modified on 2010-06-14 22:54:50

Tehtävät (klo 9:00-10:30)

ENNEN KUIN JATKAT ETEENPÄIN: Tee maanantaina aloitettu Pong-tutoriaali valmiiksi. Jatka vasta sitten tästä eteenpäin.

Tästä eteenpäin sinun täytyy soveltaa oppimasi asioita. Näihin tehtäviin löydät apuja ohjewikistä, mutta mitään erillisiä tutoriaaleja ei näihin tehtäviin ole olemassa .

Tehtävä 1 (maanantailta, jos et ehtinyt aiemmin): Tee uusi FysiikkaPeli-projekti nimeltä Lumiukko. Tee lumiukko kolmesta ympyrästä. Ympyröiden säteet ovat 80, 40 ja 20. Ensimmäisen ympyrän X-koordinaatti on 20 ja Y-koordinaatti 10. Mitkä ovat seuraavien ympyröiden oikeat paikat (koordinaatit)? Valmis lumiukko näyttää tältä. Miten lumiukko tehdään aliohjelmilla? (Ohje: Tee LuoPallo-aliohjelma, joka ottaa parametreinä ympyrän säteen, double sade, sekä koordinaatit double x, double y.)

Tehtävä 2: Tee uusi FysiikkaPeli-projekti nimeltä Ympyroita. Tee aliohjelma PiirraYmpyra, joka piirtää yhden ympyrän (säde 10) satunnaiseen paikkaan ruudulla. Ohje: Aliohjelma on void-tyyppinen (ei palautusarvoa). Luo ympyrä ja lisää se pelikentälle kuten pong-esimerkissä tehtiin. Muuta pallon X- ja Y-koordinaatit double-tyypin satunnaisluvuiksi. Ohjeet satunnaislukujen luomiseen löydät täältä. Huom! Pallon on pysyttävä pelikentän sisäpuolella, huomioi tämä koordinaateissa. Pelikentän mitat saat kirjoittamalla Level.Left, Level.Right, Level.Top ja Level.Bottom.

Tehtävä 3: Jatka edellistä tehtävää siten, että ruudulle ilmestyy kolme palloa yhden sijaan. Miten saat ruudulle näkymään 20 palloa? Vinkki: käytä for-silmukkaa.

Tehtävä 4: Jatka edellistä tehtävää siten, että niiden pallojen joiden X- ja Y-koordinaatit ovat positiivisia eli >0, väri on punainen. Vastaavasti niiden pallojen, joiden X- ja Y-koordinaatit ovat negatiivisia eli <0, väri on keltainen. Valmis tehtävä näyttää tältä. Ohje: tarkista if-ehtolauseella (mikä on ehtolause), että pallo.X ja pallo.Y ovat >0. Vastaavasti negatiiviselle puolelle else if -lauseella.

Tässä vielä apuja ohjelmointiin:

Tehtävät (klo 12:15-15:00)

Tehtävä: Aloita pelin suunnittelu. Kirjoita suunnitelmasi omalle wiki-sivullesi. Suunnitelmassa tulee olla ainakin

  • tekijöiden nimet
  • tietoja pelistä (pelin nimi, pelaajien lukumäärä, onko peli windowsille vai XBoxille)
  • pelin taustatarina tai kuvaus pelin teemasta
  • kuvaus pelin ideasta, eli mitä pelissä on tarkoitus tehdä
  • hahmotelma pelistä piirrettynä paperille
  • toteutuksen suunnitelma, eli mitä tekisin ja missä järjestyksessä, ja millä aikataululla

Suunnittelua jatketaan keskiviikkona!

Lisätehtäviä

Lisätehtävä 1: Tee aliohjelma (mikä on aliohjelma), joka antaa ruudulle luvun 5. Ohje: Tee ensin aliohjelma AnnaLuku, joka palauttaa int-tyyppisen arvon. Kutsu tekemääsi aliohjelmaa, ja ota sen palauttama arvo talteen int luku -muuttujaan. Lopuksi näytä luku ruudulla MessageDisplay-viestinäytön avulla (miten MessageDisplay toimii) sijoittamalla siihen luku-muuttujan arvo. Huom! Arvo täytyy muuttaa merkkijonoksi (ks. Tyyppimuunnokset)

Lisätehtävä 2: Tee aliohjelma (jatka muokkaamalla äskeistä tehtävää) LaskeYhteen, joka laskee yhteen annetut kaksi kokonaislukua, ja tulostaa vastauksen viestikenttään. Ohje: Tee aliohjelma LaskeYhteen, joka ottaa vastaan kaksi kokonaislukua parametreina, esimerkiksi int a ja int b. Laske luvut yhteen aliohjelman sisällä, ja palauta lopputulos. Näytä vastaus ruudulla kuten lisätehtävässä 1.

Lisätehtävä 3: Tee pieni tasohyppelypeli (voit aloittaa TasoHyppely-projektimallista). Luo uusi PlatformCharacter-olio, ja tutki, millaisia ominaisuuksia sillä on. Saatko olion räjähtämään, kun se osuu seinään?

Attachments