Skip to content

peidevs/WarO_Scala

Repository files navigation

WarO_Scala

The War-O code kata in Scala

A work in progress: this is incomplete and possibly not very idiomatic to Scala.

Details:

  • update MAY 2021
    • replaced ancient Gradle gnarly-ness with application plugin
    • migrated Specs2 unit-tests to JUnit style
    • this is in preparation for a new project using Scala 3
  • to run: ./run.sh
  • to test: ./test.sh
  • uses JDK 11, Gradle 6.5, Scala 2.13.x

Rules:

Use a deck of N cards with no suits, just natural numbers from 1 to N. (as in Rack-O http://en.wikipedia.org/wiki/Rack-O)

Shuffle and deal N cards evenly to X players and a kitty.

For each round:

  • Reveal a card from the kitty. This is the 'prize card'.
  • Each player selects a 'bid' from his/her hand.
  • Bids are revealed: highest bid wins points according to value of the prize card.

After all rounds, player with most points wins.

Example:

Deck is [1,2,3,4,5,6,7,8,9]

John's hand is [2,4,9] Alice's hand is [1,3,8] kitty is [5,6,7]

Round 1, prize card is 5 John bids 4, Alice bids 8 -> Alice wins 5 pts

Round 2, prize card is 6 John bids 9, Alice bids 1 -> John wins 6 pts

Round 3, prize card is 7 John bids 2, Alice bids 3 -> Alice wins 7 pts

Alice wins (12 pts) over John (6 pts)

About

porting the Groovy version to Scala

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published