handscore 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. data/lib/handscore.rb +15 -0
  2. metadata +67 -0
data/lib/handscore.rb ADDED
@@ -0,0 +1,15 @@
1
+
2
+ class Array
3
+ # Extend the Array class to create a handScore method
4
+ # It sorts the array so that the Aces are at the end. Aces are initially
5
+ # assumed to have a score of 11. Basically, if the score of the hand
6
+ # is > 21 and we're working with an Ace, make the ace 1 not 11. Also, if
7
+ # we encounter an Ace and we're not at the end of the hand, we take that
8
+ # into consideration by subtracting the value of the remaining Aces. Only
9
+ # really for the unlikely event we get a 10 an Ace and another Ace
10
+
11
+ def handScore
12
+ sort.each_with_index.inject(0){|sum, (current, i)| sum+current > 21-(length-(i+1)) && current==11 ? sum+1 : sum+current}
13
+
14
+ end
15
+ end
metadata ADDED
@@ -0,0 +1,67 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: handscore
3
+ version: !ruby/object:Gem::Version
4
+ hash: 29
5
+ prerelease: false
6
+ segments:
7
+ - 0
8
+ - 0
9
+ - 1
10
+ version: 0.0.1
11
+ platform: ruby
12
+ authors:
13
+ - Tony O'Keeffe
14
+ autorequire:
15
+ bindir: bin
16
+ cert_chain: []
17
+
18
+ date: 2011-12-17 00:00:00 +00:00
19
+ default_executable:
20
+ dependencies: []
21
+
22
+ description: Gem creation as part of WAF project
23
+ email: tony.okeeffe@student.ncirl.ie
24
+ executables: []
25
+
26
+ extensions: []
27
+
28
+ extra_rdoc_files: []
29
+
30
+ files:
31
+ - lib/handscore.rb
32
+ has_rdoc: true
33
+ homepage:
34
+ licenses: []
35
+
36
+ post_install_message:
37
+ rdoc_options: []
38
+
39
+ require_paths:
40
+ - lib
41
+ required_ruby_version: !ruby/object:Gem::Requirement
42
+ none: false
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ hash: 3
47
+ segments:
48
+ - 0
49
+ version: "0"
50
+ required_rubygems_version: !ruby/object:Gem::Requirement
51
+ none: false
52
+ requirements:
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ hash: 3
56
+ segments:
57
+ - 0
58
+ version: "0"
59
+ requirements: []
60
+
61
+ rubyforge_project:
62
+ rubygems_version: 1.3.7
63
+ signing_key:
64
+ specification_version: 3
65
+ summary: Simple extendsion to Array class to be used with blackjack
66
+ test_files: []
67
+