Huomaa että olet vuoden 2017 materiaaleissa.
Palaa nykyisiin materiaalehin.
Ohjelmointi 1, syksy 2016, luento 13
13. luento: ma 16.10.2017 klo 12:15-14:00: Merkkijonojen paloittelu. Harjoitustyön aloittaminen.
Muu sisältö: pelikenttä merkkijonosta
- M: 17. Merkkijonojen paloittelu
- Pelikenttä merkkijonosta:
- Matriisit.cs - matriisiesimerkkejä
- AngryLego.cs - peli aluille, kenttä merkkijonosta (ks: ruutukenttä)
- Katso myös video GalaxyTripin tekemisestä ja sen lähdekoodi.
- Muita "livenä tehtyjä" harjoitustyön tasoisia "pelejä":
- Tiernapoikapeli yliopiston pikkujouluja varten 2013:
- 2013 esimerkki: AmebaDanceWars refaktorointi, if-lauseiden vähentäminen olioita käyttämällä
- pohjaksi AmebaDanceWars.cs
- koko muutoshistoria
- .cs (diff) - lisätty Ameba-luokka ja omaAmeba osaa tanssia
- .cs (diff) - lisätty !VastusAmeba-luokka, joka osaa arpoa ja tehdä omat liikeensä
- .cs (diff) - lisätty !OmaAmeba-luokka, joka osaa tallettaa omat suoritukset ja periaatteessa laskea pisteet
- .cs (diff) - lisätty !SuoritusValmis-delegaatti -tyyppi, jolla ameba voi ilmoittaa, että pyydetty homma on tehty
- .cs (diff) - vaihdettu luokan nimeksi !TanssiAmeba ja lisätty joukko taustatanssijoita, korjattu myös että arpoo liikkeitä tason mukaan (ennen otti määrän aina Begin-metodin suoritushetkellä).
- muunneltu versio olioilla AmebaDanceWars.cs
- Luennon koodit versionhallinnassa (valmista ohjelmaa varten ota hakemistosta .exe, .dll ja content-kansion kaikki tiedostot).
- luento videona MP4 alkuperäinen, MP4 kännykkäversio
- Kuvaaja.cs - pohja demo 7 tehtäville
- Taulukot.cs - pohja taulukkotehtäville
- AngryLego.cs - luentojen yksinkertaisin versio, muutama seinä, ei vielä liikettä
- Luennolle tehdyt koodit versionhallinnassa
- Luennon koodit versionhallinnassa
- 13. luento videona Osa 1 ja2 MP4 alkuperäinen, MP4 kännykkäversio
Luentoesimerkkien haku versionhallinnasta
Versionhallinnasta voit hakea koodit: siirry komentorivillä uuteen hakemistoon ja anna jompikumpi alla olevvista komennoista. Tai jos haluat molemmat, niin kumpikin omaan hakemistoonsa. TortoiseSVN:llä vastaavasti tee uusi hakemisto ja ota hiiren oikealla TortoiseSVN/Export ja anna ao. repon nimi.
Komentoriviltä lähtötilanne luennolle: mene sopivaan hakemistoon ja
svn export https://svn.cc.jyu.fi/srv/svn/ohj1/esimerkit/2017s/luennot/live13
Komentoriviltä lopputilanne luennolle:
svn export https://svn.cc.jyu.fi/srv/svn/ohj1/esimerkit/2017s/luennot/luento13
Solutionin käyttö Windowsissa:
- pitäisi riittää kun klikkaa Solution (.sln) -tiedostoa
Solutionin käyttö Macissä/Xamarinissa/MonoDevelopissa (jatkossa IDE)
- jos solutionissa on vain konsoli-projekteja, pitäisi riittää avata solution omassa IDE:ssä
Mikäli solutionissa on Jypeli-projekteja niin jokaista Jypeli-projektia kohti:
- Luo uusi Jypeli-solution johonkin toiseen hakemistoon, projekti mielellään samalle nimelle kuin projekti jota olet "siirtämässä".
- Poista projektista varsinainen "peli"-tiedosto (.cs).
- Klikkaa hiiren oikealla (tms.) projektin nimeä ja valitse
Add/Add files - etsi ja valitse vastaavan Windows projektin
.cs-tiedosto ja valitse se Add a link to the filejos haluat että muutoksissa muuttuu alkuperäinen tiedosto (jos esim teet yhteistyötä kaverin kanssa jolla on Windows kone) taiCopyjos haluat että muutokset tulevat vain sinun projektissasi olevaan tiedostoon.- Mene
contect-hakemiston päälle ja etsi ja valitse kaikki projektiin kuuluvat kuvat ja ääänet yms (löytyy Windows-projektinContent-loppuisesta hakemistosta). - Näiden kohdalla valitse
Copy. - Nyt projekti pitäisi olla valmis ajettavaksi. Jos on kyseessä vanha projekti, jossa on
using WP7, niin poista tällaiset rivit, samoinContinuemetodi ja mahdolliset kiithtyvyysanturiin liittyvät rivit.
Pelejä
- AngryLego
- Ameba Dance Wars
- Tiernapojat
Mitä tulostaa
Merkkijonojen pilkkominen
- Miksi? Katso esim Korpin kalenteri
- myös demo 7 Kuvaaja
Kysymyksiä
Angry Lego
Muista että voi tehdä muunkin harjoitustyön kuin pelin ja sille on omat perusteelliset sivunsa: Työaikaraportti tutorial.
- aloittamisesta katso vinkkejä
- KentanMuokkaus - muutetaan taulukko merkkijonoksi
- AngryLego.cs - peli aluille, kenttä merkkijonosta (ks: ruutukenttä)
These are the current permissions for this document; please modify if needed. You can always modify these permissions from the manage page.