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 file
jos haluat että muutoksissa muuttuu alkuperäinen tiedosto (jos esim teet yhteistyötä kaverin kanssa jolla on Windows kone) taiCopy
jos 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, samoinContinue
metodi 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.