hazama_kuroo 0.2.1 → 0.2.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0cbf6d04d5196b2969f36c1a85c902ec7cb458beeee9127dc7425684ff03bef1
4
- data.tar.gz: 4c13a822d68055f0192e051d309b6d0ff7097f783d1a98948055c24a3e0b2e50
3
+ metadata.gz: eb4e52212e9fe62c012a395d740c1232bb92384556b278778614c118bf25eb09
4
+ data.tar.gz: e960731526e56c3dcf6c9051a7ad57e0324bc8301169327cb1bc37f82ea24c72
5
5
  SHA512:
6
- metadata.gz: a4750a94114732d51832fbccfc2c33973d6a5f8cb697e637d7017189d5ba032c10da65fe31e2ad6de6df1eaafef35cb9e43b188342b021861b48e86a4076a11e
7
- data.tar.gz: 3b0ae5c5d1f2fc9859d53b114dc83b957c829c8a279ebf89921d740c95a3498ba79022b04b519c0ed123f868f4bbbb18401e54ad5411bebecc194e5d80a35a77
6
+ metadata.gz: 467ec766b9963fa9dcbd5a6dca19b172c7da57cbf16f858acbcee2b0fa4f74b4e8accd2bd1ce0e6fabfbb739b58f8aca9a355f3758d2583081fcdb1368baf472
7
+ data.tar.gz: 8c6b26224ebe46c1d1849a5f4d92a01463d02a42b516b75b41cfb04b619e03fcf2726a4a9311c50dce2acafc657883339eb10cfed49d89d75682ba00b53e0c8d
@@ -1,3 +1,3 @@
1
1
  module HazamaKuroo
2
- VERSION = "0.2.1"
2
+ VERSION = "0.2.3"
3
3
  end
data/lib/hazama_kuroo.rb CHANGED
@@ -4,144 +4,35 @@ require "hazama_kuroo/version"
4
4
  module HazamaKuroo
5
5
  # 実行メソッド
6
6
  def self.run
7
- cs = gen
8
- puts 'Game Start'
9
- hk = dft cs
10
- puts "HZM: #{hk[0][0]} ***"
11
- yu = dft cs
12
- puts "YOU: #{yu[0][0]} #{yu[1][0]}"
13
- ooe yu[0]
14
- sio yu[0]
15
- ooe yu[1]
16
- sio yu[1]
17
7
 
18
- f = 1
19
- while f do
20
- print 'Hit? [y/n] '
21
- while s = gets do
22
- case s.chomp
23
- when 'y'
24
- yu << (deal cs)
25
- puts "YOU: #{yu[-1][0]}"
26
- ooe yu[-1]
27
- sio yu[-1]
28
- (puts 'Lose'; f = false) if 21 < (sum yu)
29
- when 'n'
30
- std yu, hk, cs
31
- f = false
32
- else
33
- puts ope
34
- exit
35
- end
36
- break
37
- end
38
- end
39
- end
40
-
41
- # カードを 52 枚用意する
42
- def self.gen
43
- ms = %w[S C H D]
44
- c = []
45
- ms.each do |m|
46
- ns = []
47
- [*1..13].each do |n|
48
- case n
49
- when 1
50
- ns << ([] << "#{m}-A" << 'A' << 0 << 0)
51
- when 11
52
- ns << ([] << "#{m}-J" << 10 << 0)
53
- when 12
54
- ns << ([] << "#{m}-Q" << 10 << 0)
55
- when 13
56
- ns << ([] << "#{m}-K" << 10 << 0)
57
- else
58
- ns << ([] << "#{m}-#{n}" << n << 0)
59
- end
60
- end
61
- c << ns
62
- end
63
- c
64
- end
65
-
66
- # 初期デッキを作る
67
- def self.dft cs
68
- [] << (deal cs) << (deal cs)
69
- end
70
-
71
- # カードを配る
72
- def self.deal cs
73
- while 1 do
74
- m = rand(4)
75
- n = rand(11)
76
- (cs[m][n][2] = 1; break) if 0 == cs[m][n][2]
77
- end
78
- cs[m][n]
79
- end
80
-
81
- # Ace をどうするか
82
- def self.ooe a
83
- if 'A' == a[1] && 0 == a[3]
84
-
85
- print "#{a[0]}? [1/11] "
86
- s = gets
87
- case s.chomp
88
- when '1'
89
- a[1] = 1
90
- when '11'
91
- a[1] = 11
92
- else
93
- a[1] = nil
94
- end
95
- a[3] = 1
96
- end
97
- end
98
-
99
- # 不正操作だったら強制終了
100
- def self.sio c
101
- if c[1].nil?
102
- puts ope
103
- exit
104
- end
105
- end
106
-
107
- # 勝負する
108
- def self.std y, d, cs
109
- a = sum y
110
- puts "Hole Card: #{d[1][0]}"
111
- b = dbd d, cs, a
112
- if 21 < b || b < a
113
- puts 'Win!'
114
- elsif a < b
115
- puts 'Lose'
116
- else
117
- puts 'Draw'
118
- end
119
- end
120
-
121
- # 合計
122
- def self.sum a
123
- s = 0
124
- a.each do |b|
125
- s += b[1]
126
- end
127
- s
128
- end
129
-
130
- # stand 後のディーラーの作業
131
- def self.dbd d, cs, a
132
- d[0][1] = 11 if 'A' == d[0][1]
133
- s = d[0][1] + ('A' == d[1][1] ? (11 == d[0][1] ? 1 : 11) : d[1][1])
134
-
135
- while s < 17 || s <= a do
136
- t = deal cs
137
- puts "HZM: #{t[0]}"
138
- s += ('A' == t[1] ? (s < 10 ? 11 : 1) : t[1])
139
- end
140
- s
141
- end
8
+ puts"Game\sStart";eval$s=%w!c=[];52.times{|i|j=i%13;k=case(
9
+ j)when(0);"A"when(10 );"J"when(11);"Q"whe n(12);"K"else;j+1
10
+ ; end;case(i)when(0. .9);c[i]=["S-#{k}",k ]when(10..12);c[i
11
+ ] =["S-"+k,10]w hen( 13..22);c[i]=["C-#{k }",k]when(23..25)
12
+ ; c[i]=[" C -" +k ,10]wh e n(2 6..3 5) ;c[ i]
13
+ = ["H-#{ k} ", k]when( 36..38);c [i ]= ["H -"+ k, 10] wh
14
+ e n(39.. 48) ; c[i]=[" D-#{k}",k ]els e; c[i]=[" D- "+ k,1
15
+ 0 ];end} ; d=[];4.t imes{d< <c.d el ete _at ( ran
16
+ d (c.siz e))};p uts"HZM:\s #{d[0] [0]} \s *** ";p uts "YO
17
+ U :\s#{d [2][0 ]}\s#{ d[ 3][0]} "; 2. tim es {|i |j=d
18
+ [ i+ 2][ 0];k= d[i+2] [1] ;if ("A" ==k)
19
+ ;print"#{j}?\s[1/11]\s";s=gets;ca se(s.chomp)when("1" );d[i
20
+ +2][1]=1when("11");d[i+2][1]=11;e lse;puts"Failed\sT he\sO
21
+ ps.";exit;end;end};f=1;z=d[2][1]+ d[3][1];while(f)do;print"
22
+ Hit?\s[y/n]\s";while(s=gets)do;case(s.chomp)when("y");x=c.d
23
+ elete_at(r and(c.size));puts "YOU:\s#{x[0]}";if("A"== x[1])
24
+ ; prin t"#{x[0]}?\s[1/11 ]\s";s =gets;case(s.chom p)whe
25
+ n ("1" );z +=1;when("11");z+ =11;else;puts"Failed\sTh e\sOp
26
+ s .";e xit ;end ;els e; z+= x[ 1];e nd;i f( 21< z
27
+ ) ;put s"L ose ";f =f al se ;e nd; whe n(" n" ); f= fa ls
28
+ e ;put s"Hole\ Ca rd:\s# { d[1] [0]}";( d[ 0][1]= 1 1)i
29
+ f ("A" ==d [0] [1 ]);y=d [0][ 1]+ (" A"==d[ 1][
30
+ 1 ]?(1 1= =d[ 0][ 1] ?1:11) :d [1] [1] );w hi le(y<1 7) do
31
+ ; t=c. de let e_ at (r an d( c. siz e) ); pu ts "H Z
32
+ M :\s #{t [0] }" ;y+ =( "A" ==t [1 ]?( y
33
+ <10?11:1):t[1]);end;((21<y||y<z)?(p uts"Win"):((z<y)?(puts"
34
+ Lose"):(puts"Draw")));else;puts"Fa iled\sThe\sOps.";exit;en
35
+ d;break;end;end!*"";if(false);p"Did\syou\senjoy\sit?\n";end
142
36
 
143
- # 不正操作
144
- def self.ope
145
- 'Failed The Ops.'
146
37
  end
147
38
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hazama_kuroo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.1
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - jinroq
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-03-01 00:00:00.000000000 Z
11
+ date: 2019-03-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler