Ampumahiihtopelin toimintojen toteuttaminen mobiililaitteille
Makkonen, Juho (2015)
Makkonen, Juho
Turun ammattikorkeakoulu
2015
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2015061713520
https://urn.fi/URN:NBN:fi:amk-2015061713520
Tiivistelmä
Tämän opinnäytetyön tarkoituksena oli toteuttaa ampumahiihtokilpailun ampumaosuutta kuvaavan pelin toiminnot C#-kielellä. Teoriaosassa tutkitaan sijaintiin pohjautuvan sääominaisuuden toteutustapoja ja haasteita. Lopuksi käsitellään pelin mahdollista jatkokehitystä.
Toimiakseen sääominaisuus tarvitsee verkkoyhteyden, GPS:n ja sopivan ohjelmointirajapinnan. Data noudetaan verkosta sopivassa muodossa. Mobiililaitteen GPS lähettää sijainnin tiedot pelille, ja säätiedot liitetään verkosta peliin ohjelmointirajapinnan avulla. Ominaisuuden voi vaihtoehtoisesti toteuttaa ilman verkkoyhteyttä. Silloin tuulen nopeus ja suunta arvottaisiin.
Lopputuloksena toteutettu demo sisältää päävalikon lisäksi yhden makuuammunta- ja yhden pystyammuntatason, jotka molemmat pelaaja käy läpi kahdesti. Ampumahiihdon sääntöjen mukaan pelaaja ampuu viisi laukausta jokaisella tasolla. Lopuksi peli näyttää osumat ja laskee ampumiseen käytetyn ajan, ja mahdolliset ohilaukauksien aiheuttamat sakkominuutit. Kehitettäessä peliä eteenpäin, se voi ottaa huomioon mobiililaitteen kallistukset ja skaalautua oikein kaikille resoluutioille.
Toimiakseen sääominaisuus tarvitsee verkkoyhteyden, GPS:n ja sopivan ohjelmointirajapinnan. Data noudetaan verkosta sopivassa muodossa. Mobiililaitteen GPS lähettää sijainnin tiedot pelille, ja säätiedot liitetään verkosta peliin ohjelmointirajapinnan avulla. Ominaisuuden voi vaihtoehtoisesti toteuttaa ilman verkkoyhteyttä. Silloin tuulen nopeus ja suunta arvottaisiin.
Lopputuloksena toteutettu demo sisältää päävalikon lisäksi yhden makuuammunta- ja yhden pystyammuntatason, jotka molemmat pelaaja käy läpi kahdesti. Ampumahiihdon sääntöjen mukaan pelaaja ampuu viisi laukausta jokaisella tasolla. Lopuksi peli näyttää osumat ja laskee ampumiseen käytetyn ajan, ja mahdolliset ohilaukauksien aiheuttamat sakkominuutit. Kehitettäessä peliä eteenpäin, se voi ottaa huomioon mobiililaitteen kallistukset ja skaalautua oikein kaikille resoluutioille.