0119 kap 5 - spel

Efter kapitel fem är det dags att skriva ett nytt spel på egen hand.

Observera att private och public ska användas på avsett vis.

Koden ska vara vacker.

Dokumentera koden. Skriv kommentarer över metoderna. Skriv även kommentarer för klasserna.

/**
 * Kommentar ...
 */

En kort spelöversikt följer.

  1. Pelikanen kan bara flytta diagonalt. Bokstaven U motsvarar snett upp vänster. I motsvarar snett upp höger. B motsvarar snett ner vänster. L motsvarar snett ner höger.

  2. Pelikanen samlar guld- och silvermynt.

  3. Pelikanen kan som mest bära 3 mynt.

  4. Guld och silvermynt kan lämnas i banken. Guld är värt 3 och silver är värt 1.

  5. I varje "frame" finns det en chans, tre på tusen, att ett nytt silvermynt dyker upp på en slumpmässig position.

  6. På samma sätt för guldmynt men chansen är ett på tusen.

  7. Från banken finns det en risk, en på tusen, att det försvinner en peng varje "frame". Saldot på banken kan inte bli negativt.

  8. Pelikanen har hälsan 3 från start.

  9. När hälsan blir 0 visas texten "Game over" och spelet stoppas.

  10. Döskallen försvinner då den har minskat pelikanens hälsa med ett, men om pelikanens hälsa blir 0 stannar döskallen och pelikanen kvar.

  11. Döskallen äter guldmynt.

  12. Döskallen flytta sig -5, 0 eller 5 pixlar i x-led varje "frame". Slumpen bestämmer. På samma sätt i y-led.

Klassdiagram

Pelican

  • health
  • noSilver
  • noGold
  1. act()
  2. move()
  3. checkCollision()
  4. showHealt()
  5. showCoins()
  6. getNoCoins()

Objektvariabeln noSilver håller ordning på antalet silvermynt som plockats. "no" i noSilver är en förkortning för number of.

Skull

  • -
  1. act()
  2. move()
  3. checkCollision()

TreasureWorld

  • money
  1. act()
  2. prepare()
  3. removeMoney()
  4. addCoins()
  5. addMoney()

Metoden addMoney tar en parameter amount som anger hur mycket som ska sättas in.