Skapa ett Black Jack spel
Skapa ett objektorienterat Black Jack spel i terminalen.
#Förkunskaper
Du har jobbat igenom artiklarna “Kom igång med objekt”, “Klass relationer” och gjort uppgiften Skapa objekt efter UML-diagram.
#Introduktion
Du kan återanvända klasserna från mappen deck
i kursmoment 2.
Det är helt enligt reglerna att ändra på klassfilerna så det passar in och det räcker med att använda en kortlek.
Starta spelet via en fil du döper till main.py
.
#Regler
Ess räknas som 1
Klädda kort räknas som 10
Övriga kort (2-10) har sitt egna värde
Om spelaren får 21 går turen över till nästa spelare
Om spelaren får över 21 är spelaren ute och turen går över till nästa spelare
Dealern tar kort automatiskt så länge summan är under 17
# Ställ dig i kurskatalogen
cd me
cp -r kmom02/deck/* kmom03/blackjack/
#Krav
Vid start ska antal spelare väljas
Dealern delar ut 2 kort vardera och ett till sig själv som visas för alla
Om spelarens första 2 kort är ett ess och 10 eller klätt kort har spelaren Black Jack och turen går över till nästa
Spelet går vidare med spelare 1’s tur att välja mellan att stanna eller ta kort
När alla spelare gjort sina val är det dealerns tur
När dealern är klar presenteras vinnaren (spelaren med högst summa)
# Flytta till kurskatalogen
dbwebb validate blackjack
dbwebb publish blackjack
Rätta eventuella fel som dyker upp och validera igen. När det ser grönt ut så är du klar.
#Extrauppgift
Lägg till fler funktioner till ditt Black Jack.
Ess räknas som 1 eller 11
Lägg till en funktion för att hantera insats
Lägg till funktionalitet för att dubbla och splitta korten
Lägg till en möjlighet att spara och ladda in ett spel
Om instats är implementerat, lägg till en highscore med spelarna som vunnit mest
Skapa en arvsrelation för spelarna och dealern.
#Tips från coachen
Debugga och felsök genom att skriva ut variablernas olika innehåll med print()
.
Validera ofta. Så slipper du en massa valideringsfel i slutet av övningen.
Lycka till och hojta till i forumet om du behöver hjälp!
#Revision history
- 2017-01-25: (A, lew) Första versionen.