Bruke klassar og objekt i eit spel
Før du gjer denne oppgåva, tilrår vi at du les artikkelen "Objekt og klassar" og artikkelen "Subklassar og arv".
Sjå for deg at du skal lage eit spel. I spelet skal ein vere eit menneskeliknande dyr med magiske evner som må gjennom ei rekke prøvingar for å nå målet sitt.
Når spelet startar, skal brukaren kunne lage sin eigen hovudkarakter med spesifikke eigenskapar. Desse eigenskapane kan vere til dømes brukarnamn, spelarklasse (som magikar, krigar og så vidare), dyreart, kjønn, våpen, magiske evner, helsepoeng, magipoeng og artefaktar. Alle desse eigenskapane skal lagrast i eit spelarobjekt som blir oppretta når spelet startar.
Lag ein klasse som kan brukast til å opprette nye spelarobjekt. Legg inn alle dei nødvendige objektvariablane i konstruktøren.
Lag metodar i klassen spelar som blir brukt når spelaren blir skadd eller heila, altså for å trekke frå eller legge til helsepoeng.
Lag ein klasse for å lagre artefaktar som spelaren finn i spelet. Denne klassen skal ha objektvariablar som namn, type og beskriving.
Lag ein klasse for å lagre medisinar eller heilande artefaktar som spelaren kan finne i spelet. Denne klassen skal vere ein subklasse av artefaktar-klassen og skal arve objektvariablar frå artefaktar-klassen. I tillegg skal subklassen ha ein objektvariabel som beskriv kor mange helsepoeng spelaren får når medisinen blir brukt.
Lag ein metode i spelar-klassen for å lagre artefaktar som spelaren vel å ta med seg i spelar-objektet. Artefaktane ein spelar har, bør lagrast som ein array med artefakt-objekt.
Lag òg ein subklasse av artefaktar-klassen for våpen og ein metode i spelar-klassen for å lagre våpen spelaren ber med seg. Denne subklassen må ha eigne objektvariablar for kor mykje skade det gjer, type våpen (som slagvåpen, prosjektil, magisk) og kor mange gonger våpenet kan brukast (til dømes dersom våpenet har eit visst tal på prosjektil eller blir øydelagt over tid).
Ekstraoppgåve
Kva må du gjere dersom det skal vere mogleg å lagre spelet for å komme tilbake og halde fram der ein var, med dei same artefaktane og våpena?